From 07b2aeb2348ba3c159350f3580213229387726cc Mon Sep 17 00:00:00 2001 From: Boris Batkin Date: Tue, 29 Oct 2024 16:46:14 -0700 Subject: [PATCH 1/5] less s\r errors 1 less s/r in old parser. name_in_namespace in typeinfo 2 less s/r in new parser. name_in_namespace. dimlist --- src/parser/ds2_parser.cpp | 5517 +- src/parser/ds2_parser.output | 69431 ++++++++++++------------- src/parser/ds2_parser.ypp | 58 +- src/parser/ds_parser.cpp | 7017 ++- src/parser/ds_parser.output | 92403 ++++++++++++++++----------------- src/parser/ds_parser.ypp | 1 - src/parser/parser_impl.cpp | 21 +- 7 files changed, 86691 insertions(+), 87757 deletions(-) diff --git a/src/parser/ds2_parser.cpp b/src/parser/ds2_parser.cpp index 467b5cbd5..9672722d5 100644 --- a/src/parser/ds2_parser.cpp +++ b/src/parser/ds2_parser.cpp @@ -526,80 +526,81 @@ enum yysymbol_kind_t YYSYMBOL_table_type_pair = 388, /* table_type_pair */ YYSYMBOL_dim_list = 389, /* dim_list */ YYSYMBOL_type_declaration_no_options = 390, /* type_declaration_no_options */ - YYSYMBOL_391_37 = 391, /* $@37 */ - YYSYMBOL_392_38 = 392, /* $@38 */ - YYSYMBOL_393_39 = 393, /* $@39 */ - YYSYMBOL_394_40 = 394, /* $@40 */ - YYSYMBOL_395_41 = 395, /* $@41 */ - YYSYMBOL_396_42 = 396, /* $@42 */ - YYSYMBOL_397_43 = 397, /* $@43 */ - YYSYMBOL_398_44 = 398, /* $@44 */ - YYSYMBOL_399_45 = 399, /* $@45 */ - YYSYMBOL_400_46 = 400, /* $@46 */ - YYSYMBOL_401_47 = 401, /* $@47 */ - YYSYMBOL_402_48 = 402, /* $@48 */ - YYSYMBOL_403_49 = 403, /* $@49 */ - YYSYMBOL_404_50 = 404, /* $@50 */ - YYSYMBOL_405_51 = 405, /* $@51 */ - YYSYMBOL_406_52 = 406, /* $@52 */ - YYSYMBOL_407_53 = 407, /* $@53 */ - YYSYMBOL_408_54 = 408, /* $@54 */ - YYSYMBOL_409_55 = 409, /* $@55 */ - YYSYMBOL_410_56 = 410, /* $@56 */ - YYSYMBOL_411_57 = 411, /* $@57 */ - YYSYMBOL_412_58 = 412, /* $@58 */ - YYSYMBOL_413_59 = 413, /* $@59 */ - YYSYMBOL_414_60 = 414, /* $@60 */ - YYSYMBOL_415_61 = 415, /* $@61 */ - YYSYMBOL_416_62 = 416, /* $@62 */ - YYSYMBOL_417_63 = 417, /* $@63 */ - YYSYMBOL_type_declaration = 418, /* type_declaration */ - YYSYMBOL_tuple_alias_declaration = 419, /* tuple_alias_declaration */ - YYSYMBOL_420_64 = 420, /* $@64 */ - YYSYMBOL_421_65 = 421, /* $@65 */ - YYSYMBOL_422_66 = 422, /* $@66 */ - YYSYMBOL_variant_alias_declaration = 423, /* variant_alias_declaration */ - YYSYMBOL_424_67 = 424, /* $@67 */ - YYSYMBOL_425_68 = 425, /* $@68 */ - YYSYMBOL_426_69 = 426, /* $@69 */ - YYSYMBOL_bitfield_alias_declaration = 427, /* bitfield_alias_declaration */ - YYSYMBOL_428_70 = 428, /* $@70 */ - YYSYMBOL_429_71 = 429, /* $@71 */ - YYSYMBOL_430_72 = 430, /* $@72 */ - YYSYMBOL_make_decl = 431, /* make_decl */ - YYSYMBOL_make_struct_fields = 432, /* make_struct_fields */ - YYSYMBOL_make_struct_single = 433, /* make_struct_single */ - YYSYMBOL_make_struct_dim = 434, /* make_struct_dim */ - YYSYMBOL_use_initializer = 435, /* use_initializer */ - YYSYMBOL_make_struct_decl = 436, /* make_struct_decl */ - YYSYMBOL_437_73 = 437, /* $@73 */ - YYSYMBOL_438_74 = 438, /* $@74 */ - YYSYMBOL_439_75 = 439, /* $@75 */ - YYSYMBOL_440_76 = 440, /* $@76 */ - YYSYMBOL_441_77 = 441, /* $@77 */ - YYSYMBOL_442_78 = 442, /* $@78 */ - YYSYMBOL_443_79 = 443, /* $@79 */ - YYSYMBOL_444_80 = 444, /* $@80 */ - YYSYMBOL_make_map_tuple = 445, /* make_map_tuple */ - YYSYMBOL_make_tuple_call = 446, /* make_tuple_call */ - YYSYMBOL_447_81 = 447, /* $@81 */ - YYSYMBOL_448_82 = 448, /* $@82 */ - YYSYMBOL_make_dim_decl = 449, /* make_dim_decl */ - YYSYMBOL_450_83 = 450, /* $@83 */ - YYSYMBOL_451_84 = 451, /* $@84 */ - YYSYMBOL_452_85 = 452, /* $@85 */ - YYSYMBOL_453_86 = 453, /* $@86 */ - YYSYMBOL_454_87 = 454, /* $@87 */ - YYSYMBOL_455_88 = 455, /* $@88 */ - YYSYMBOL_456_89 = 456, /* $@89 */ - YYSYMBOL_457_90 = 457, /* $@90 */ - YYSYMBOL_458_91 = 458, /* $@91 */ - YYSYMBOL_459_92 = 459, /* $@92 */ - YYSYMBOL_expr_map_tuple_list = 460, /* expr_map_tuple_list */ - YYSYMBOL_make_table_decl = 461, /* make_table_decl */ - YYSYMBOL_array_comprehension_where = 462, /* array_comprehension_where */ - YYSYMBOL_optional_comma = 463, /* optional_comma */ - YYSYMBOL_array_comprehension = 464 /* array_comprehension */ + YYSYMBOL_type_declaration_no_options_no_dim = 391, /* type_declaration_no_options_no_dim */ + YYSYMBOL_392_37 = 392, /* $@37 */ + YYSYMBOL_393_38 = 393, /* $@38 */ + YYSYMBOL_394_39 = 394, /* $@39 */ + YYSYMBOL_395_40 = 395, /* $@40 */ + YYSYMBOL_396_41 = 396, /* $@41 */ + YYSYMBOL_397_42 = 397, /* $@42 */ + YYSYMBOL_398_43 = 398, /* $@43 */ + YYSYMBOL_399_44 = 399, /* $@44 */ + YYSYMBOL_400_45 = 400, /* $@45 */ + YYSYMBOL_401_46 = 401, /* $@46 */ + YYSYMBOL_402_47 = 402, /* $@47 */ + YYSYMBOL_403_48 = 403, /* $@48 */ + YYSYMBOL_404_49 = 404, /* $@49 */ + YYSYMBOL_405_50 = 405, /* $@50 */ + YYSYMBOL_406_51 = 406, /* $@51 */ + YYSYMBOL_407_52 = 407, /* $@52 */ + YYSYMBOL_408_53 = 408, /* $@53 */ + YYSYMBOL_409_54 = 409, /* $@54 */ + YYSYMBOL_410_55 = 410, /* $@55 */ + YYSYMBOL_411_56 = 411, /* $@56 */ + YYSYMBOL_412_57 = 412, /* $@57 */ + YYSYMBOL_413_58 = 413, /* $@58 */ + YYSYMBOL_414_59 = 414, /* $@59 */ + YYSYMBOL_415_60 = 415, /* $@60 */ + YYSYMBOL_416_61 = 416, /* $@61 */ + YYSYMBOL_417_62 = 417, /* $@62 */ + YYSYMBOL_418_63 = 418, /* $@63 */ + YYSYMBOL_type_declaration = 419, /* type_declaration */ + YYSYMBOL_tuple_alias_declaration = 420, /* tuple_alias_declaration */ + YYSYMBOL_421_64 = 421, /* $@64 */ + YYSYMBOL_422_65 = 422, /* $@65 */ + YYSYMBOL_423_66 = 423, /* $@66 */ + YYSYMBOL_variant_alias_declaration = 424, /* variant_alias_declaration */ + YYSYMBOL_425_67 = 425, /* $@67 */ + YYSYMBOL_426_68 = 426, /* $@68 */ + YYSYMBOL_427_69 = 427, /* $@69 */ + YYSYMBOL_bitfield_alias_declaration = 428, /* bitfield_alias_declaration */ + YYSYMBOL_429_70 = 429, /* $@70 */ + YYSYMBOL_430_71 = 430, /* $@71 */ + YYSYMBOL_431_72 = 431, /* $@72 */ + YYSYMBOL_make_decl = 432, /* make_decl */ + YYSYMBOL_make_struct_fields = 433, /* make_struct_fields */ + YYSYMBOL_make_struct_single = 434, /* make_struct_single */ + YYSYMBOL_make_struct_dim = 435, /* make_struct_dim */ + YYSYMBOL_use_initializer = 436, /* use_initializer */ + YYSYMBOL_make_struct_decl = 437, /* make_struct_decl */ + YYSYMBOL_438_73 = 438, /* $@73 */ + YYSYMBOL_439_74 = 439, /* $@74 */ + YYSYMBOL_440_75 = 440, /* $@75 */ + YYSYMBOL_441_76 = 441, /* $@76 */ + YYSYMBOL_442_77 = 442, /* $@77 */ + YYSYMBOL_443_78 = 443, /* $@78 */ + YYSYMBOL_444_79 = 444, /* $@79 */ + YYSYMBOL_445_80 = 445, /* $@80 */ + YYSYMBOL_make_map_tuple = 446, /* make_map_tuple */ + YYSYMBOL_make_tuple_call = 447, /* make_tuple_call */ + YYSYMBOL_448_81 = 448, /* $@81 */ + YYSYMBOL_449_82 = 449, /* $@82 */ + YYSYMBOL_make_dim_decl = 450, /* make_dim_decl */ + YYSYMBOL_451_83 = 451, /* $@83 */ + YYSYMBOL_452_84 = 452, /* $@84 */ + YYSYMBOL_453_85 = 453, /* $@85 */ + YYSYMBOL_454_86 = 454, /* $@86 */ + YYSYMBOL_455_87 = 455, /* $@87 */ + YYSYMBOL_456_88 = 456, /* $@88 */ + YYSYMBOL_457_89 = 457, /* $@89 */ + YYSYMBOL_458_90 = 458, /* $@90 */ + YYSYMBOL_459_91 = 459, /* $@91 */ + YYSYMBOL_460_92 = 460, /* $@92 */ + YYSYMBOL_expr_map_tuple_list = 461, /* expr_map_tuple_list */ + YYSYMBOL_make_table_decl = 462, /* make_table_decl */ + YYSYMBOL_array_comprehension_where = 463, /* array_comprehension_where */ + YYSYMBOL_optional_comma = 464, /* optional_comma */ + YYSYMBOL_array_comprehension = 465 /* array_comprehension */ }; typedef enum yysymbol_kind_t yysymbol_kind_t; @@ -930,14 +931,14 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 2 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 10589 +#define YYLAST 10581 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 209 /* YYNNTS -- Number of nonterminals. */ -#define YYNNTS 256 +#define YYNNTS 257 /* YYNRULES -- Number of rules. */ -#define YYNRULES 763 +#define YYNRULES 764 /* YYNSTATES -- Number of states. */ #define YYNSTATES 1390 @@ -1006,83 +1007,83 @@ static const yytype_uint8 yytranslate[] = /* YYRLINE[YYN] -- Source line where rule number YYN was defined. */ static const yytype_int16 yyrline[] = { - 0, 524, 524, 525, 530, 531, 532, 533, 534, 535, - 536, 537, 538, 539, 540, 541, 542, 546, 552, 553, - 554, 558, 559, 563, 581, 582, 583, 584, 588, 592, - 597, 606, 614, 630, 635, 643, 643, 682, 700, 704, - 707, 711, 717, 726, 729, 735, 736, 740, 744, 745, - 749, 752, 758, 764, 767, 773, 774, 778, 779, 780, - 789, 790, 794, 795, 801, 802, 803, 804, 805, 809, - 815, 821, 827, 835, 845, 854, 861, 862, 863, 864, - 865, 866, 870, 875, 883, 884, 885, 889, 890, 891, - 892, 893, 894, 895, 896, 902, 905, 911, 914, 920, - 921, 922, 926, 939, 957, 960, 968, 979, 990, 1001, - 1004, 1011, 1015, 1022, 1023, 1027, 1028, 1029, 1033, 1036, - 1043, 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, 1135, 1153, 1154, 1155, 1159, - 1165, 1165, 1182, 1186, 1197, 1210, 1211, 1212, 1213, 1214, - 1215, 1216, 1217, 1218, 1219, 1220, 1221, 1222, 1223, 1224, - 1225, 1226, 1227, 1231, 1236, 1242, 1248, 1249, 1253, 1257, - 1264, 1265, 1276, 1280, 1283, 1291, 1291, 1291, 1297, 1300, - 1304, 1308, 1315, 1321, 1325, 1329, 1332, 1335, 1343, 1346, - 1354, 1360, 1366, 1367, 1368, 1372, 1373, 1377, 1378, 1382, - 1387, 1395, 1401, 1413, 1416, 1422, 1422, 1422, 1425, 1425, - 1425, 1430, 1430, 1430, 1438, 1438, 1438, 1444, 1454, 1465, - 1480, 1483, 1489, 1490, 1497, 1508, 1509, 1510, 1514, 1515, - 1516, 1517, 1521, 1526, 1534, 1535, 1539, 1546, 1550, 1556, - 1557, 1558, 1559, 1560, 1561, 1562, 1566, 1567, 1568, 1569, - 1570, 1571, 1572, 1573, 1574, 1575, 1576, 1577, 1578, 1579, - 1580, 1581, 1582, 1583, 1584, 1588, 1595, 1607, 1612, 1622, - 1626, 1633, 1636, 1636, 1636, 1641, 1641, 1641, 1654, 1658, - 1662, 1667, 1674, 1674, 1674, 1681, 1685, 1694, 1698, 1701, - 1707, 1708, 1709, 1710, 1711, 1712, 1713, 1714, 1715, 1716, - 1717, 1718, 1719, 1720, 1721, 1722, 1723, 1724, 1725, 1726, - 1727, 1728, 1729, 1730, 1731, 1732, 1733, 1734, 1735, 1736, - 1737, 1738, 1739, 1740, 1741, 1742, 1748, 1749, 1750, 1751, - 1752, 1765, 1766, 1767, 1768, 1769, 1770, 1771, 1772, 1773, - 1774, 1775, 1776, 1779, 1782, 1783, 1786, 1786, 1786, 1789, - 1794, 1798, 1802, 1802, 1802, 1807, 1810, 1814, 1814, 1814, - 1819, 1822, 1823, 1824, 1825, 1826, 1827, 1828, 1829, 1830, - 1832, 1836, 1840, 1841, 1842, 1843, 1844, 1845, 1846, 1850, - 1854, 1858, 1862, 1866, 1870, 1874, 1878, 1882, 1889, 1890, - 1894, 1895, 1896, 1900, 1901, 1905, 1906, 1907, 1911, 1912, - 1916, 1927, 1930, 1930, 1949, 1948, 1962, 1961, 1977, 1986, - 1996, 1997, 2001, 2004, 2013, 2014, 2018, 2021, 2024, 2040, - 2049, 2050, 2054, 2057, 2060, 2074, 2075, 2079, 2085, 2091, - 2094, 2098, 2107, 2108, 2109, 2113, 2114, 2118, 2125, 2130, - 2139, 2145, 2156, 2159, 2164, 2175, 2178, 2178, 2198, 2199, - 2203, 2204, 2205, 2209, 2212, 2212, 2230, 2234, 2241, 2244, - 2257, 2274, 2275, 2276, 2281, 2281, 2307, 2311, 2312, 2313, - 2317, 2327, 2330, 2336, 2341, 2336, 2356, 2357, 2361, 2362, - 2366, 2372, 2373, 2377, 2378, 2379, 2383, 2386, 2392, 2397, - 2392, 2411, 2418, 2423, 2432, 2438, 2449, 2450, 2451, 2452, - 2453, 2454, 2455, 2456, 2457, 2458, 2459, 2460, 2461, 2462, - 2463, 2464, 2465, 2466, 2467, 2468, 2469, 2470, 2471, 2472, - 2473, 2474, 2475, 2479, 2480, 2481, 2482, 2483, 2484, 2485, - 2486, 2490, 2501, 2505, 2512, 2524, 2531, 2540, 2545, 2555, - 2568, 2568, 2568, 2581, 2585, 2592, 2596, 2603, 2604, 2605, - 2606, 2607, 2622, 2628, 2628, 2628, 2632, 2637, 2644, 2644, - 2651, 2655, 2659, 2664, 2669, 2674, 2679, 2683, 2687, 2692, - 2696, 2700, 2705, 2705, 2705, 2711, 2718, 2718, 2718, 2723, - 2723, 2723, 2729, 2729, 2729, 2734, 2738, 2738, 2738, 2743, - 2743, 2743, 2752, 2756, 2756, 2756, 2761, 2761, 2761, 2770, - 2774, 2774, 2774, 2779, 2779, 2779, 2788, 2788, 2788, 2794, - 2794, 2794, 2803, 2806, 2817, 2833, 2838, 2843, 2833, 2868, - 2873, 2879, 2868, 2904, 2909, 2914, 2904, 2944, 2945, 2946, - 2947, 2948, 2952, 2959, 2966, 2972, 2978, 2985, 2992, 2998, - 3008, 3016, 3021, 3028, 3029, 3033, 3033, 3033, 3041, 3041, - 3041, 3048, 3048, 3048, 3055, 3055, 3055, 3066, 3072, 3078, - 3084, 3084, 3084, 3094, 3102, 3102, 3102, 3112, 3112, 3112, - 3122, 3122, 3122, 3132, 3140, 3140, 3140, 3148, 3155, 3155, - 3155, 3165, 3168, 3174, 3182, 3190, 3198, 3211, 3212, 3216, - 3217, 3222, 3225, 3228 + 0, 525, 525, 526, 531, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 547, 553, 554, + 555, 559, 560, 564, 582, 583, 584, 585, 589, 593, + 598, 607, 615, 631, 636, 644, 644, 683, 701, 705, + 708, 712, 718, 727, 730, 736, 737, 741, 745, 746, + 750, 753, 759, 765, 768, 774, 775, 779, 780, 781, + 790, 791, 795, 796, 802, 803, 804, 805, 806, 810, + 816, 822, 828, 836, 846, 855, 862, 863, 864, 865, + 866, 867, 871, 876, 884, 885, 886, 890, 891, 892, + 893, 894, 895, 896, 897, 903, 906, 912, 915, 921, + 922, 923, 927, 940, 958, 961, 969, 980, 991, 1002, + 1005, 1012, 1016, 1023, 1024, 1028, 1029, 1030, 1034, 1037, + 1044, 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, 1136, 1154, 1155, 1156, 1160, + 1166, 1166, 1183, 1187, 1198, 1211, 1212, 1213, 1214, 1215, + 1216, 1217, 1218, 1219, 1220, 1221, 1222, 1223, 1224, 1225, + 1226, 1227, 1228, 1232, 1237, 1243, 1249, 1250, 1254, 1258, + 1265, 1266, 1280, 1283, 1291, 1291, 1291, 1297, 1300, 1304, + 1308, 1315, 1321, 1325, 1329, 1332, 1335, 1343, 1346, 1354, + 1360, 1366, 1367, 1368, 1372, 1373, 1377, 1378, 1382, 1387, + 1395, 1401, 1413, 1416, 1422, 1422, 1422, 1425, 1425, 1425, + 1430, 1430, 1430, 1438, 1438, 1438, 1444, 1454, 1465, 1480, + 1483, 1489, 1490, 1497, 1508, 1509, 1510, 1514, 1515, 1516, + 1517, 1521, 1526, 1534, 1535, 1539, 1546, 1550, 1556, 1557, + 1558, 1559, 1560, 1561, 1562, 1566, 1567, 1568, 1569, 1570, + 1571, 1572, 1573, 1574, 1575, 1576, 1577, 1578, 1579, 1580, + 1581, 1582, 1583, 1584, 1588, 1595, 1607, 1612, 1622, 1626, + 1633, 1636, 1636, 1636, 1641, 1641, 1641, 1654, 1658, 1662, + 1667, 1674, 1674, 1674, 1681, 1685, 1694, 1698, 1701, 1707, + 1708, 1709, 1710, 1711, 1712, 1713, 1714, 1715, 1716, 1717, + 1718, 1719, 1720, 1721, 1722, 1723, 1724, 1725, 1726, 1727, + 1728, 1729, 1730, 1731, 1732, 1733, 1734, 1735, 1736, 1737, + 1738, 1739, 1740, 1741, 1742, 1748, 1749, 1750, 1751, 1752, + 1765, 1766, 1767, 1768, 1769, 1770, 1771, 1772, 1773, 1774, + 1775, 1776, 1779, 1782, 1783, 1786, 1786, 1786, 1789, 1794, + 1798, 1802, 1802, 1802, 1807, 1810, 1814, 1814, 1814, 1819, + 1822, 1823, 1824, 1825, 1826, 1827, 1828, 1829, 1830, 1832, + 1836, 1840, 1841, 1842, 1843, 1844, 1845, 1846, 1850, 1854, + 1858, 1862, 1866, 1870, 1874, 1878, 1882, 1889, 1890, 1894, + 1895, 1896, 1900, 1901, 1905, 1906, 1907, 1911, 1912, 1916, + 1927, 1930, 1930, 1949, 1948, 1962, 1961, 1977, 1986, 1996, + 1997, 2001, 2004, 2013, 2014, 2018, 2021, 2024, 2040, 2049, + 2050, 2054, 2057, 2060, 2074, 2075, 2079, 2085, 2091, 2094, + 2098, 2107, 2108, 2109, 2113, 2114, 2118, 2125, 2130, 2139, + 2145, 2156, 2159, 2164, 2175, 2178, 2178, 2198, 2199, 2203, + 2204, 2205, 2209, 2212, 2212, 2230, 2234, 2241, 2244, 2257, + 2274, 2275, 2276, 2281, 2281, 2307, 2311, 2312, 2313, 2317, + 2327, 2330, 2336, 2341, 2336, 2356, 2357, 2361, 2362, 2366, + 2372, 2373, 2377, 2378, 2379, 2383, 2386, 2392, 2397, 2392, + 2411, 2418, 2423, 2432, 2438, 2449, 2450, 2451, 2452, 2453, + 2454, 2455, 2456, 2457, 2458, 2459, 2460, 2461, 2462, 2463, + 2464, 2465, 2466, 2467, 2468, 2469, 2470, 2471, 2472, 2473, + 2474, 2475, 2479, 2480, 2481, 2482, 2483, 2484, 2485, 2486, + 2490, 2501, 2505, 2512, 2524, 2531, 2540, 2545, 2555, 2568, + 2568, 2568, 2581, 2585, 2592, 2596, 2600, 2604, 2611, 2614, + 2632, 2633, 2634, 2635, 2636, 2636, 2636, 2640, 2645, 2652, + 2652, 2659, 2663, 2667, 2672, 2677, 2682, 2687, 2691, 2695, + 2700, 2704, 2708, 2713, 2713, 2713, 2719, 2726, 2726, 2726, + 2731, 2731, 2731, 2737, 2737, 2737, 2742, 2746, 2746, 2746, + 2751, 2751, 2751, 2760, 2764, 2764, 2764, 2769, 2769, 2769, + 2778, 2782, 2782, 2782, 2787, 2787, 2787, 2796, 2796, 2796, + 2802, 2802, 2802, 2811, 2814, 2825, 2841, 2846, 2851, 2841, + 2876, 2881, 2887, 2876, 2912, 2917, 2922, 2912, 2952, 2953, + 2954, 2955, 2956, 2960, 2967, 2974, 2980, 2986, 2993, 3000, + 3006, 3016, 3024, 3029, 3036, 3037, 3041, 3041, 3041, 3049, + 3049, 3049, 3056, 3056, 3056, 3063, 3063, 3063, 3074, 3080, + 3086, 3092, 3092, 3092, 3102, 3110, 3110, 3110, 3120, 3120, + 3120, 3130, 3130, 3130, 3140, 3148, 3148, 3148, 3156, 3163, + 3163, 3163, 3173, 3176, 3182, 3190, 3198, 3206, 3219, 3220, + 3224, 3225, 3230, 3233, 3236 }; #endif @@ -1196,10 +1197,11 @@ static const char *const yytname[] = "enum_basic_type_declaration", "structure_type_declaration", "auto_type_declaration", "bitfield_bits", "bitfield_alias_bits", "bitfield_type_declaration", "$@35", "$@36", "table_type_pair", - "dim_list", "type_declaration_no_options", "$@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", "type_declaration", + "dim_list", "type_declaration_no_options", + "type_declaration_no_options_no_dim", "$@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", "type_declaration", "tuple_alias_declaration", "$@64", "$@65", "$@66", "variant_alias_declaration", "$@67", "$@68", "$@69", "bitfield_alias_declaration", "$@70", "$@71", "$@72", "make_decl", @@ -1219,12 +1221,12 @@ yysymbol_name (yysymbol_kind_t yysymbol) } #endif -#define YYPACT_NINF (-1244) +#define YYPACT_NINF (-1229) #define yypact_value_is_default(Yyn) \ ((Yyn) == YYPACT_NINF) -#define YYTABLE_NINF (-674) +#define YYTABLE_NINF (-675) #define yytable_value_is_error(Yyn) \ ((Yyn) == YYTABLE_NINF) @@ -1233,145 +1235,145 @@ yysymbol_name (yysymbol_kind_t yysymbol) STATE-NUM. */ static const yytype_int16 yypact[] = { - -1244, 27, -1244, -1244, 44, -116, 96, 430, -1244, -84, - 430, 430, 430, -1244, 24, 271, -1244, -1244, -120, -1244, - -1244, -1244, 338, -1244, -2, -1244, -1244, -1244, -1244, -1244, - -1244, -1244, -1244, -1244, -1244, -89, -1244, -4, 16, 41, - -1244, -1244, 96, 46, -1244, -1244, -1244, 80, 103, -1244, - -1244, -2, 116, 124, 140, 227, 256, -1244, -1244, -1244, - 271, 271, 271, 240, -1244, 366, -102, -1244, -1244, -1244, - -1244, 469, 481, 482, -1244, 484, 15, 44, 257, -116, - 250, 295, -1244, 329, 380, -1244, -1244, -1244, 494, -1244, - -1244, -1244, -1244, 408, 386, -1244, -1244, -45, 44, 271, - 271, 271, 271, -1244, -1244, -1244, -1244, -1244, -1244, -1244, - 411, -1244, -1244, -1244, -1244, -1244, 405, -1244, -1244, -1244, - -1244, -1244, 305, 97, -1244, -1244, -1244, -1244, 525, -1244, - -1244, 398, -1244, -1244, -1244, 414, 416, 436, -1244, -1244, - 433, -1244, 55, -1244, 198, 487, 366, 10428, -1244, 448, - 514, -1244, 423, -1244, -1244, 485, -1244, -1244, -1244, -1244, - -1244, -1244, -1244, 76, -1244, 6261, -1244, -1244, -1244, -1244, - -1244, 9137, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, - -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, - -1244, -1244, -1244, -1244, -1244, -1244, -1244, 599, 610, -1244, - 443, 483, 461, 488, -1244, 492, -1244, 490, 44, 447, - 284, -1244, -1244, -1244, 97, -1244, 474, 478, 479, 462, - 486, 496, -1244, -1244, -1244, 464, -1244, -1244, -1244, -1244, - -1244, 506, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, - -1244, -1244, -1244, 512, -1244, -1244, -1244, 513, 515, -1244, - -1244, -1244, -1244, 516, 517, 467, 24, -1244, -1244, -1244, - -1244, -1244, 3710, 493, 504, -1244, -1244, 546, 550, -1244, - -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, - -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, 551, - 472, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, - -1244, -1244, -1244, 651, -1244, -1244, -1244, -1244, -1244, -1244, - -1244, -1244, -1244, -1244, -1244, -1244, 553, 473, -1244, -1244, - -97, 540, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, - -1244, -1244, -1244, -1244, 543, 555, -1244, 423, -1244, 44, - 521, 684, 308, -1244, -1244, -1244, -1244, -1244, 5918, -1244, - -1244, 566, -1244, 154, 222, 225, -1244, -1244, 5918, -46, - -1244, -1244, -1244, 7, -1244, -1244, 47, -1244, 3200, -1244, - 530, 1258, -1244, 556, 1397, 176, -1244, -1244, -1244, -1244, - 575, 607, -1244, 535, -1244, 64, -1244, -19, 6261, -1244, - 1818, 579, 24, -1244, -1244, -1244, 284, -1244, 5918, 581, - 582, 6261, -1244, 50, 6261, 6261, 6261, 560, 561, -1244, - -1244, 31, 544, 563, 19, -1244, 214, 545, 567, 568, - 549, 570, 238, 572, -1244, 249, 574, 583, 5918, 5918, - 564, 571, 573, 576, 584, 585, -1244, -1244, -1244, -1244, - -1244, -1244, -1244, -1244, -1244, 3396, 5918, 5918, 5918, 5918, - 5918, 2812, 5918, -1244, 565, -1244, -1244, -1244, 590, -1244, - -1244, -1244, -1244, 569, -1244, -1244, -1244, -1244, -1244, -1244, - -35, 1535, -1244, 591, -1244, -1244, -1244, -1244, -1244, -1244, - 6261, 6261, 578, 609, 6261, 443, 6261, 443, 6261, 443, - 6353, 613, 6347, -1244, 5918, -1244, -1244, -1244, -1244, 594, - -1244, -1244, 8580, 5918, -1244, 3710, 625, -1244, 8, -1244, - 627, 493, 629, 620, -1244, 630, 632, -1244, -1244, 5918, - -1244, -1244, 297, -123, -1244, 493, -1244, 5918, -1244, -1244, - 601, 3590, -1244, 483, 3784, 5918, 645, -1244, 637, 657, - 3978, 483, 4172, 781, -1244, 649, 653, 618, 816, -1244, - -1244, -1244, -1244, -1244, -1244, -1244, 656, 658, 659, 660, - 662, -1244, -1244, 763, -1244, 663, 9021, 664, -1244, 661, - -1244, 36, -1244, 6383, -1244, 793, 520, -1244, -1244, -1244, - 5918, 174, 219, 665, 306, -1244, -1244, -1244, 640, 641, - -1244, 24, -1244, 667, 676, 677, -1244, 5918, 6261, 5918, - 5918, -1244, -1244, 5918, -1244, -1244, 5918, -1244, -1244, 5918, - -1244, 6261, 311, 311, 5918, 5918, 5918, 5918, 5918, 5918, - 522, 297, 9168, -1244, 669, 311, 311, -83, 311, 311, - 297, 835, 671, 9793, 671, 235, 3006, 652, -1244, 655, - 569, -1244, 1105, 10308, 5918, 5918, -1244, -1244, 5918, 5918, - 5918, 5918, 703, 5918, 310, 5918, 5918, 5918, 5918, 5918, - 5918, 5918, 5918, 5918, 4366, 5918, 5918, 5918, 5918, 5918, - 5918, 5918, 5918, 5918, 5918, -37, 5918, -1244, 4560, 390, - 397, -1244, -1244, -30, 410, 540, 413, 540, 418, 540, - -1244, 143, -1244, 224, -1244, 6261, 666, 688, -1244, -1244, - 8613, -1244, 696, 6261, -1244, -1244, 6261, -1244, -1244, 6475, - 672, 825, -1244, -21, -1244, 9267, 297, 5918, 9793, 855, - 5918, 9793, 9267, 691, -1244, 690, 719, 9793, -1244, 5918, - 9793, 705, -1244, -1244, 5918, 673, -1244, -1244, -1244, -1244, - -1244, -1244, -65, -1244, 5918, 5918, 5918, 5918, 5918, 5918, - 5918, 5918, 5918, 5918, 5918, 5918, 5918, 5918, 5918, 5918, - 5918, 5918, 5918, 579, -1244, -1244, 868, 423, -1244, 718, - -1244, 5918, 9356, -1244, -1244, -1244, 6261, 6261, 6261, 6261, - 811, 5918, 4754, 6261, -1244, -1244, -1244, 6261, 671, 533, - 669, 6574, 6261, 6261, 6605, 6261, 6261, 671, 6261, 6261, - 671, 6261, 624, 6704, 6796, 6829, 6921, 7020, 7051, -1244, - 5918, 450, 5, 5918, 5918, 712, 12, 297, 5918, 680, - 681, 683, 686, 251, -1244, -1244, 687, 89, 2616, -1244, - 119, 708, 689, 693, 443, 2022, -1244, 652, 704, 692, - -1244, -1244, 709, 710, -1244, -1244, 181, 181, 400, 400, - 10167, 10167, 713, 20, 714, -1244, 8705, -59, -59, 591, - 181, 181, 10021, 930, 9939, 9825, 10340, 9392, 10053, 10135, - 783, 400, 400, 163, 163, 20, 20, 20, 341, 5918, - 717, 722, 357, 5918, 891, 8797, -1244, 125, -1244, -1244, - 747, -1244, -1244, 737, -1244, 738, -1244, 742, 6353, -1244, - 613, -1244, 288, 493, -1244, 5918, -1244, -1244, 493, 493, - -1244, 5918, 767, -1244, 768, -1244, 6261, -1244, 5918, -1244, - 34, 9793, 483, 9793, -1244, 5918, -1244, -1244, 9793, -1244, - 7150, 5918, 769, -1244, -1244, 9793, 9793, 9793, 9793, 9793, - 9793, 9793, 9793, 9793, 9793, 9793, 9793, 9793, 9793, 9793, - 9793, 9793, 9793, 9793, -1244, 761, 495, 866, 762, -1244, - 9481, -1244, -1244, -1244, -1244, 493, 670, 893, 425, -1244, - -78, 729, 774, 7242, 426, 6261, 6261, 6261, 1196, 739, - 6261, 741, 744, -1244, 1240, 1329, -1244, 1398, 1570, 749, - 2346, 2417, 750, 2552, 652, -1244, -1244, -1244, -1244, -1244, - 743, 9563, 5918, 9793, -1244, -1244, 5918, 35, 9793, -1244, - -1244, 5918, 5918, 6261, 443, 5918, 5918, 5918, -23, 6112, - -1244, 358, -1244, -53, 540, -1244, 443, -1244, 5918, -1244, - 5918, 4948, 5918, -1244, 758, 752, -1244, -1244, 5918, 753, - -1244, 8830, 5918, 5142, 754, -1244, 8922, -1244, -1244, -1244, - -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, - -1244, -1244, -1244, -1244, 6261, 755, 7275, -1244, 901, -11, - 9793, 5918, -1244, 9793, 2226, 483, 7367, -1244, 149, -1244, - -1244, -1244, 388, -1244, 4, -1244, -1244, -1244, -1244, -1244, - 100, -1244, 759, -1244, 293, -1244, -1244, 2748, 2932, 3189, - -1244, -1244, 3197, 5918, -1244, -1244, -1244, -1244, -1244, -1244, - -1244, -1244, -1244, -1244, 756, 5336, -1244, 391, 393, 5918, - 7466, 7497, 3385, 540, 7596, 9793, 9793, 760, 2616, 770, - 121, 785, 814, 815, 818, -1244, 118, 30, 540, 6261, - 7688, 6261, 7721, -1244, 158, 7813, -1244, 5918, 9907, 5918, - -1244, 7912, -1244, 184, 5918, -1244, -1244, -1244, -1244, -1244, - 493, 5918, -1244, 820, 5918, 207, -1244, 438, 966, 821, - 56, 951, 4, -1244, -1244, 495, 782, 784, -1244, -1244, - 826, 5918, -1244, -1244, -1244, -1244, 786, 787, 669, 5918, - 5918, 5918, 788, 811, 789, 791, 5530, -1244, 208, 5918, - 5918, 396, -1244, -1244, -1244, 804, 137, -1244, 203, 5918, - 5918, 5918, -1244, -1244, -1244, -1244, -53, 794, 5724, -1244, - -1244, 483, 3516, -1244, 427, -1244, -1244, -1244, 6261, 7943, - 8042, -1244, -1244, 8134, 795, -1244, 9793, 483, 483, -1244, - -1244, 792, -1244, 2420, 827, -1244, 6261, 50, -1244, -1244, - 951, 297, 811, 811, 817, 8167, 799, 800, 801, 5918, - 5918, 802, 400, 400, 400, 5918, -1244, 811, 359, -1244, - 8259, -1244, 837, 9595, 5918, 157, -1244, 5918, 5918, 806, - 8358, 9793, 9793, -1244, -1244, 5918, 9825, -1244, -1244, -1244, - 439, -1244, -1244, -1244, -1244, -1244, -1244, 5918, -1244, -1244, - -1244, -1244, -1244, 9793, -1244, 635, 5918, 10428, -1244, -1244, - 359, 359, 5918, -1244, 811, 811, 359, 671, 669, -1244, - 671, 359, 708, -8, -1244, 954, 839, 809, 9595, -1244, - 157, 9793, 9793, -1244, 144, 9907, -1244, -1244, -1244, 8389, - 5918, 9677, 842, 10428, 45, 66, 8488, 359, 359, 83, - 812, 819, 822, 101, 359, -1244, 5918, -1244, -1244, 813, - -1244, 5918, 5918, -1244, 483, 9711, -1244, -1244, 483, -1244, - -1244, -1244, 111, 112, -1244, -1244, -1244, -1244, -1244, 708, - 9793, -1244, 9793, 9793, 438, -1244, -1244, -1244, -1244, -1244 + -1229, 27, -1229, -1229, 25, -97, 151, 159, -1229, -42, + 159, 159, 159, -1229, -96, 80, -1229, -1229, -98, -1229, + -1229, -1229, 331, -1229, 20, -1229, -1229, -1229, -1229, -1229, + -1229, -1229, -1229, -1229, -1229, 13, -1229, 50, 65, 92, + -1229, -1229, 151, 19, -1229, -1229, -1229, 156, 271, -1229, + -1229, 20, 181, 244, 313, 348, -1229, -1229, -1229, 80, + 80, 80, 283, -1229, 465, -38, -1229, -1229, -1229, -1229, + 214, 466, 467, -1229, 481, 21, 25, 336, -97, 291, + 344, -1229, 347, 363, -1229, -1229, -1229, 493, -1229, -1229, + -1229, 378, 383, -1229, -1229, -51, 25, 80, 80, 80, + 80, -1229, -1229, -1229, -1229, -1229, -1229, -1229, 407, -1229, + -1229, -1229, -1229, -1229, 406, -1229, -1229, -1229, -1229, -1229, + 267, 76, -1229, -1229, -1229, -1229, 516, -1229, -1229, 408, + -1229, -1229, -1229, 431, 440, 450, -1229, -1229, 458, -1229, + 122, -1229, 254, 489, 465, 10420, -1229, 448, 525, -1229, + 426, -1229, -1229, 443, -1229, -1229, -1229, -1229, -1229, -1229, + -1229, 160, -1229, 1527, -1229, -1229, -1229, -1229, -1229, 9239, + -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, + -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, + -1229, -1229, -1229, -1229, -1229, 607, 610, -1229, 441, 477, + 335, 478, -1229, 487, -1229, 484, 25, 449, 265, -1229, + -1229, -1229, 76, -1229, 471, 473, 474, 456, 479, 483, + -1229, -1229, -1229, 457, -1229, -1229, -1229, -1229, -1229, 485, + -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, + -1229, 486, -1229, -1229, -1229, 488, 490, -1229, -1229, -1229, + -1229, 495, 498, 464, -96, -1229, -1229, -1229, -1229, -1229, + -1229, 48, 492, 501, -1229, -1229, 510, 522, -1229, -1229, + -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, + -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, 523, 482, + -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, + -1229, -1229, 666, -1229, -1229, -1229, -1229, -1229, -1229, -1229, + -1229, -1229, -1229, -1229, -1229, 527, 496, -1229, -1229, -112, + 511, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, + -1229, -1229, -1229, 513, 526, -1229, 426, -1229, 25, 499, + 654, 361, -1229, -1229, -1229, -1229, -1229, 6112, -1229, -1229, + 536, -1229, 208, 234, 235, -1229, -1229, 6112, -143, -1229, + -1229, -1229, 35, -1229, -1229, -6, -1229, 3200, -1229, 500, + 1258, -1229, 521, 1355, 53, -1229, -1229, -1229, -1229, 543, + 575, -1229, 503, -1229, 117, -1229, -37, 1527, -1229, 1818, + 547, -96, -1229, -1229, -1229, 265, -1229, 6112, 548, 551, + 1527, -1229, -26, 1527, 1527, 1527, 529, 531, -1229, -1229, + 44, 512, 533, 15, -1229, 165, 514, 535, 537, 518, + 539, 198, 540, -1229, 219, 544, 545, 6112, 6112, 530, + 532, 534, 538, 541, 542, -1229, -1229, -1229, -1229, -1229, + -1229, -1229, -1229, -1229, 3396, 6112, 6112, 6112, 6112, 6112, + 2812, 6112, -1229, 520, -1229, -1229, -1229, 546, -1229, -1229, + -1229, -1229, 549, -1229, -1229, -1229, -1229, -1229, -1229, -66, + 1535, -1229, 550, -1229, -1229, -1229, -1229, -1229, -1229, 1527, + 1527, 515, 570, 1527, 441, 1527, 441, 1527, 441, 6455, + 574, 6449, -1229, 6112, -1229, -1229, -1229, -1229, 553, -1229, + -1229, 8682, 3590, -1229, -1229, 578, -1229, 1, -1229, 569, + 492, 571, 563, -1229, 573, 577, -1229, -1229, 6112, -1229, + -1229, 276, -111, -1229, 492, -1229, 6112, -1229, -1229, 554, + 3784, -1229, 477, 3978, 6112, 587, -1229, 581, 595, 4172, + 477, 4366, 717, -1229, 586, 588, 556, 752, -1229, -1229, + -1229, -1229, -1229, -1229, -1229, 596, 597, 599, 600, 603, + -1229, -1229, 701, -1229, 604, 9123, 594, -1229, 606, -1229, + 14, -1229, 6485, -1229, 735, 135, -1229, -1229, -1229, 6112, + 322, 325, 605, 163, -1229, -1229, -1229, 576, 582, -1229, + -96, -1229, 608, 609, 615, -1229, 6112, 1527, 6112, 6112, + -1229, -1229, 6112, -1229, -1229, 6112, -1229, -1229, 6112, -1229, + 1527, 173, 173, 6112, 6112, 6112, 6112, 6112, 6112, 396, + 276, 9270, -1229, 623, 173, 173, -58, 173, 173, 276, + 793, 634, 9895, 634, 170, 3006, 618, -1229, 616, 549, + -1229, 1397, 10301, 6112, 6112, -1229, -1229, 6112, 6112, 6112, + 6112, 656, 6112, 337, 6112, 6112, 6112, 6112, 6112, 6112, + 6112, 6112, 6112, 4560, 6112, 6112, 6112, 6112, 6112, 6112, + 6112, 6112, 6112, 6112, -30, 6112, -1229, 4754, 384, 386, + -1229, -1229, 216, 389, 511, 397, 511, 400, 511, -1229, + 258, -1229, 270, -1229, 1527, 619, 648, -1229, -1229, -1229, + 8715, -1229, 657, 1527, -1229, -1229, 1527, -1229, -1229, 6577, + 622, 786, -1229, -53, -1229, 9369, 276, 6112, 9895, 826, + 6112, 9895, 9369, 664, -1229, 663, 690, 9895, -1229, 6112, + 9895, 676, -1229, -1229, 6112, 642, -1229, -1229, -1229, -1229, + -1229, -1229, -69, -1229, 6112, 6112, 6112, 6112, 6112, 6112, + 6112, 6112, 6112, 6112, 6112, 6112, 6112, 6112, 6112, 6112, + 6112, 6112, 6112, 547, -1229, -1229, 840, 426, -1229, 688, + -1229, 6112, 9458, -1229, -1229, -1229, 1527, 1527, 1527, 1527, + 781, 6112, 4948, 1527, -1229, -1229, -1229, 1527, 634, 279, + 623, 6676, 1527, 1527, 6707, 1527, 1527, 634, 1527, 1527, + 634, 1527, 668, 6806, 6898, 6931, 7023, 7122, 7153, -1229, + 6112, 461, 10, 6112, 6112, 681, 12, 276, 6112, 651, + 650, 652, 653, 236, -1229, -1229, 655, 142, 2616, -1229, + 171, 683, 667, 669, 441, 2022, -1229, 618, 689, 670, + -1229, -1229, 691, 672, -1229, -1229, 463, 463, 1077, 1077, + 10237, 10237, 673, 31, 674, -1229, 8807, -65, -65, 550, + 463, 463, 930, 330, 680, 9927, 10389, 9494, 10041, 10123, + 10155, 1077, 1077, 705, 705, 31, 31, 31, 369, 6112, + 675, 679, 373, 6112, 884, 8899, -1229, 176, -1229, -1229, + 725, -1229, -1229, 702, -1229, 704, -1229, 706, 6455, -1229, + 574, -1229, 301, 492, -1229, 6112, -1229, -1229, 492, 492, + -1229, 6112, 729, -1229, 731, -1229, 1527, -1229, 6112, -1229, + 23, 9895, 477, 9895, -1229, 6112, -1229, -1229, 9895, -1229, + 7252, 6112, 736, -1229, -1229, 9895, 9895, 9895, 9895, 9895, + 9895, 9895, 9895, 9895, 9895, 9895, 9895, 9895, 9895, 9895, + 9895, 9895, 9895, 9895, -1229, 726, 494, 832, 728, -1229, + 9583, -1229, -1229, -1229, -1229, 492, 715, 716, 403, -1229, + -43, 699, 744, 7344, 413, 1527, 1527, 1527, 723, 707, + 1527, 709, 710, -1229, 724, 732, -1229, 737, 738, 711, + 740, 741, 722, 743, 618, -1229, -1229, -1229, -1229, -1229, + 727, 9665, 6112, 9895, -1229, -1229, 6112, 34, 9895, -1229, + -1229, 6112, 6112, 1527, 441, 6112, 6112, 6112, 130, 6306, + -1229, 374, -1229, -5, 511, -1229, 441, -1229, 6112, -1229, + 6112, 5142, 6112, -1229, 730, 739, -1229, -1229, 6112, 742, + -1229, 8932, 6112, 5336, 745, -1229, 9024, -1229, -1229, -1229, + -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, + -1229, -1229, -1229, -1229, 1527, 748, 7377, -1229, 868, -25, + 9895, 6112, -1229, 9895, 2226, 477, 7469, -1229, 178, -1229, + -1229, -1229, 358, -1229, 9, -1229, -1229, -1229, -1229, -1229, + 126, -1229, 749, -1229, 306, -1229, -1229, 747, 756, 757, + -1229, -1229, 759, 6112, -1229, -1229, -1229, -1229, -1229, -1229, + -1229, -1229, -1229, -1229, 751, 5530, -1229, 376, 380, 6112, + 7568, 7599, 760, 511, 7698, 9895, 9895, 753, 2616, 755, + 127, 750, 768, 769, 772, -1229, 155, 54, 511, 1527, + 7790, 1527, 7823, -1229, 180, 7915, -1229, 6112, 10009, 6112, + -1229, 8014, -1229, 201, 6112, -1229, -1229, -1229, -1229, -1229, + 492, 6112, -1229, 773, 6112, 202, -1229, 264, 909, 787, + 105, 889, 9, -1229, -1229, 494, 761, 763, -1229, -1229, + 792, 6112, -1229, -1229, -1229, -1229, 764, 765, 623, 6112, + 6112, 6112, 766, 781, 767, 770, 5724, -1229, 203, 6112, + 6112, 387, -1229, -1229, -1229, 771, 147, -1229, 207, 6112, + 6112, 6112, -1229, -1229, -1229, -1229, -5, 754, 5918, -1229, + -1229, 477, 775, -1229, 414, -1229, -1229, -1229, 1527, 8045, + 8144, -1229, -1229, 8236, 774, -1229, 9895, 477, 477, -1229, + -1229, 777, -1229, 2420, 801, -1229, 1527, -26, -1229, -1229, + 889, 276, 781, 781, 779, 8269, 778, 780, 782, 6112, + 6112, 783, 1077, 1077, 1077, 6112, -1229, 781, 375, -1229, + 8361, -1229, 802, 9697, 6112, 315, -1229, 6112, 6112, 784, + 8460, 9895, 9895, -1229, -1229, 6112, 9927, -1229, -1229, -1229, + 416, -1229, -1229, -1229, -1229, -1229, -1229, 6112, -1229, -1229, + -1229, -1229, -1229, 9895, -1229, -26, 6112, 10420, -1229, -1229, + 375, 375, 6112, -1229, 781, 781, 375, 634, 623, -1229, + 634, 375, 683, -20, -1229, 923, 806, 788, 9697, -1229, + 315, 9895, 9895, -1229, 152, 10009, -1229, -1229, -1229, 8491, + 6112, 9779, 812, 10420, -8, -2, 8590, 375, 375, 91, + 785, 789, 790, 109, 375, -1229, 6112, -1229, -1229, 794, + -1229, 6112, 6112, -1229, 477, 9813, -1229, -1229, 477, -1229, + -1229, -1229, 110, 124, -1229, -1229, -1229, -1229, -1229, 683, + 9895, -1229, 9895, 9895, 264, -1229, -1229, -1229, -1229, -1229 }; /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM. @@ -1379,207 +1381,207 @@ static const yytype_int16 yypact[] = means the default is an error. */ static const yytype_int16 yydefact[] = { - 2, 113, 1, 265, 0, 0, 0, 531, 266, 0, - 531, 531, 531, 16, 0, 0, 15, 3, 0, 10, - 9, 8, 0, 7, 518, 6, 11, 5, 4, 13, + 2, 113, 1, 264, 0, 0, 0, 530, 265, 0, + 530, 530, 530, 16, 0, 0, 15, 3, 0, 10, + 9, 8, 0, 7, 517, 6, 11, 5, 4, 13, 12, 14, 85, 86, 84, 93, 95, 37, 50, 47, - 48, 39, 0, 45, 38, 533, 532, 0, 0, 22, - 21, 518, 0, 0, 0, 0, 240, 35, 100, 101, - 0, 0, 0, 102, 104, 111, 0, 99, 17, 552, - 551, 206, 537, 553, 519, 520, 0, 0, 0, 0, - 40, 0, 46, 0, 0, 43, 534, 536, 18, 693, - 685, 689, 242, 0, 0, 110, 105, 0, 0, 0, - 0, 0, 0, 114, 208, 207, 210, 205, 539, 538, - 0, 555, 554, 558, 522, 521, 524, 91, 92, 89, - 90, 88, 0, 0, 87, 96, 51, 49, 45, 42, - 41, 0, 19, 20, 23, 0, 0, 0, 241, 33, - 36, 109, 0, 106, 107, 108, 112, 0, 540, 541, - 548, 515, 458, 24, 25, 0, 80, 81, 78, 79, - 77, 76, 82, 0, 44, 0, 694, 686, 690, 34, - 103, 0, 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, 0, 0, 120, - 115, 0, 0, 0, 549, 0, 559, 516, 0, 459, - 0, 26, 27, 28, 0, 94, 0, 0, 0, 0, - 0, 0, 566, 586, 567, 602, 568, 572, 573, 574, - 575, 592, 579, 580, 581, 582, 583, 584, 585, 587, - 588, 589, 590, 655, 571, 578, 591, 662, 669, 569, - 576, 570, 577, 0, 0, 0, 0, 601, 617, 620, - 618, 619, 682, 535, 607, 486, 492, 174, 175, 172, - 123, 124, 126, 125, 127, 128, 129, 130, 156, 157, - 154, 155, 147, 158, 159, 148, 145, 146, 173, 167, - 0, 171, 160, 161, 162, 163, 134, 135, 136, 131, - 132, 133, 144, 0, 150, 151, 149, 142, 143, 138, - 137, 139, 140, 141, 122, 121, 166, 0, 152, 153, - 458, 118, 233, 211, 593, 596, 599, 600, 594, 597, - 595, 598, 542, 543, 546, 556, 523, 458, 97, 0, - 0, 507, 505, 525, 83, 623, 646, 649, 0, 652, - 642, 0, 610, 656, 663, 670, 676, 679, 0, 0, - 632, 637, 631, 0, 645, 634, 0, 641, 0, 636, - 621, 0, 608, 759, 687, 691, 176, 177, 170, 165, - 178, 168, 164, 0, 116, 264, 480, 0, 0, 209, - 0, 528, 0, 550, 471, 560, 0, 98, 0, 0, - 0, 0, 506, 0, 0, 0, 0, 0, 0, 366, - 367, 0, 0, 0, 0, 360, 0, 0, 0, 0, - 0, 0, 0, 0, 592, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 447, 309, 311, 310, - 312, 313, 314, 315, 29, 0, 0, 0, 0, 0, - 0, 0, 0, 295, 296, 364, 363, 441, 361, 434, - 433, 432, 431, 113, 437, 362, 436, 435, 407, 368, - 408, 0, 369, 0, 365, 697, 701, 698, 699, 700, - 0, 0, 0, 0, 0, 115, 0, 115, 0, 115, - 0, 0, 0, 628, 236, 639, 640, 633, 635, 0, - 638, 622, 0, 0, 684, 683, 760, 695, 240, 487, - 0, 482, 0, 0, 493, 0, 0, 179, 169, 0, - 262, 263, 0, 458, 117, 119, 235, 0, 60, 61, - 0, 255, 253, 0, 0, 0, 0, 254, 0, 0, - 0, 0, 0, 212, 215, 0, 0, 0, 0, 228, - 223, 220, 219, 221, 222, 234, 0, 67, 68, 65, - 66, 227, 229, 268, 218, 0, 64, 526, 529, 759, - 547, 472, 517, 0, 509, 510, 0, 503, 504, 502, - 0, 0, 0, 0, 613, 715, 718, 245, 0, 248, - 252, 0, 284, 0, 0, 0, 744, 0, 0, 0, - 0, 275, 278, 0, 281, 748, 0, 724, 730, 0, - 721, 0, 396, 397, 0, 0, 0, 0, 0, 0, - 0, 0, 728, 751, 759, 373, 372, 409, 371, 370, - 0, 0, 759, 290, 759, 297, 0, 304, 233, 296, - 113, 214, 0, 0, 0, 0, 398, 399, 0, 0, + 48, 39, 0, 45, 38, 532, 531, 0, 0, 22, + 21, 517, 0, 0, 0, 240, 35, 100, 101, 0, + 0, 0, 102, 104, 111, 0, 99, 17, 551, 550, + 206, 536, 552, 518, 519, 0, 0, 0, 0, 40, + 0, 46, 0, 0, 43, 533, 535, 18, 694, 686, + 690, 0, 0, 110, 105, 0, 0, 0, 0, 0, + 0, 114, 208, 207, 210, 205, 538, 537, 0, 554, + 553, 557, 521, 520, 523, 91, 92, 89, 90, 88, + 0, 0, 87, 96, 51, 49, 45, 42, 41, 0, + 19, 20, 23, 0, 0, 0, 241, 33, 36, 109, + 0, 106, 107, 108, 112, 0, 539, 540, 547, 514, + 457, 24, 25, 0, 80, 81, 78, 79, 77, 76, + 82, 0, 44, 0, 695, 687, 691, 34, 103, 0, + 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, 0, 0, 120, 115, 0, + 0, 0, 548, 0, 558, 515, 0, 458, 0, 26, + 27, 28, 0, 94, 0, 0, 0, 0, 0, 0, + 565, 585, 566, 601, 567, 571, 572, 573, 574, 591, + 578, 579, 580, 581, 582, 583, 584, 586, 587, 588, + 589, 656, 570, 577, 590, 663, 670, 568, 575, 569, + 576, 0, 0, 0, 0, 600, 620, 623, 621, 622, + 683, 618, 534, 606, 485, 491, 174, 175, 172, 123, + 124, 126, 125, 127, 128, 129, 130, 156, 157, 154, + 155, 147, 158, 159, 148, 145, 146, 173, 167, 0, + 171, 160, 161, 162, 163, 134, 135, 136, 131, 132, + 133, 144, 0, 150, 151, 149, 142, 143, 138, 137, + 139, 140, 141, 122, 121, 166, 0, 152, 153, 457, + 118, 233, 211, 592, 595, 598, 599, 593, 596, 594, + 597, 541, 542, 545, 555, 522, 457, 97, 0, 0, + 506, 504, 524, 83, 624, 647, 650, 0, 653, 643, + 0, 609, 657, 664, 671, 677, 680, 0, 0, 633, + 638, 632, 0, 646, 635, 0, 642, 0, 637, 619, + 0, 607, 760, 688, 692, 176, 177, 170, 165, 178, + 168, 164, 0, 116, 263, 479, 0, 0, 209, 0, + 527, 0, 549, 470, 559, 0, 98, 0, 0, 0, + 0, 505, 0, 0, 0, 0, 0, 0, 365, 366, + 0, 0, 0, 0, 359, 0, 0, 0, 0, 0, + 0, 0, 0, 591, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 446, 308, 310, 309, 311, + 312, 313, 314, 29, 0, 0, 0, 0, 0, 0, + 0, 0, 294, 295, 363, 362, 440, 360, 433, 432, + 431, 430, 113, 436, 361, 435, 434, 406, 367, 407, + 0, 368, 0, 364, 698, 702, 699, 700, 701, 0, + 0, 0, 0, 0, 115, 0, 115, 0, 115, 0, + 0, 0, 629, 236, 640, 641, 634, 636, 0, 639, + 615, 0, 0, 685, 684, 761, 696, 240, 486, 0, + 481, 0, 0, 492, 0, 0, 179, 169, 0, 261, + 262, 0, 457, 117, 119, 235, 0, 60, 61, 0, + 254, 252, 0, 0, 0, 0, 253, 0, 0, 0, + 0, 0, 212, 215, 0, 0, 0, 0, 228, 223, + 220, 219, 221, 222, 234, 0, 67, 68, 65, 66, + 227, 229, 267, 218, 0, 64, 525, 528, 760, 546, + 471, 516, 0, 508, 509, 0, 502, 503, 501, 0, + 0, 0, 0, 612, 716, 719, 244, 0, 247, 251, + 0, 283, 0, 0, 0, 745, 0, 0, 0, 0, + 274, 277, 0, 280, 749, 0, 725, 731, 0, 722, + 0, 395, 396, 0, 0, 0, 0, 0, 0, 0, + 0, 729, 752, 760, 372, 371, 408, 370, 369, 0, + 0, 760, 289, 760, 296, 0, 303, 233, 295, 113, + 214, 0, 0, 0, 0, 397, 398, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 352, 0, 626, 0, 0, - 0, 603, 605, 0, 0, 118, 0, 118, 0, 118, - 484, 0, 490, 0, 604, 0, 0, 237, 630, 615, - 0, 609, 0, 0, 488, 688, 0, 494, 692, 0, - 0, 561, 478, 497, 481, 0, 0, 0, 256, 0, - 0, 243, 0, 0, 232, 0, 0, 54, 72, 0, - 258, 0, 230, 231, 0, 0, 217, 224, 225, 226, - 260, 267, 0, 216, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 351, 0, 627, 0, 0, 0, + 602, 604, 0, 0, 118, 0, 118, 0, 118, 483, + 0, 489, 0, 603, 0, 0, 237, 631, 614, 617, + 0, 608, 0, 0, 487, 689, 0, 493, 693, 0, + 0, 560, 477, 496, 480, 0, 0, 0, 255, 0, + 0, 242, 0, 0, 232, 0, 0, 54, 72, 0, + 257, 0, 230, 231, 0, 0, 217, 224, 225, 226, + 259, 266, 0, 216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 760, 544, 557, 0, 458, 508, 0, - 512, 0, 0, 624, 647, 650, 0, 0, 0, 0, - 713, 236, 0, 0, 734, 737, 740, 0, 759, 0, - 759, 0, 0, 0, 0, 0, 0, 759, 0, 0, - 759, 0, 0, 0, 0, 0, 0, 0, 0, 32, - 0, 30, 0, 0, 760, 0, 0, 0, 760, 0, - 0, 0, 0, 342, 339, 341, 0, 240, 0, 355, - 0, 710, 0, 0, 115, 0, 297, 304, 0, 0, - 420, 419, 0, 0, 421, 425, 374, 375, 387, 388, - 385, 386, 0, 414, 0, 405, 0, 438, 439, 440, - 376, 377, 392, 393, 394, 395, 0, 0, 390, 391, - 389, 383, 384, 379, 378, 380, 381, 382, 0, 0, - 0, 348, 0, 0, 0, 0, 358, 0, 653, 643, - 0, 611, 657, 0, 664, 0, 671, 0, 0, 677, - 0, 680, 0, 238, 627, 0, 616, 696, 483, 489, - 479, 0, 0, 496, 0, 495, 0, 498, 0, 73, - 0, 257, 0, 244, 74, 0, 52, 53, 259, 233, - 0, 0, 0, 274, 273, 326, 327, 329, 328, 330, - 320, 321, 322, 331, 332, 318, 319, 333, 334, 323, - 324, 325, 317, 527, 530, 0, 465, 468, 0, 511, - 0, 514, 625, 648, 651, 614, 0, 0, 0, 714, + 0, 0, 0, 761, 543, 556, 0, 457, 507, 0, + 511, 0, 0, 625, 648, 651, 0, 0, 0, 0, + 714, 236, 0, 0, 735, 738, 741, 0, 760, 0, + 760, 0, 0, 0, 0, 0, 0, 760, 0, 0, + 760, 0, 0, 0, 0, 0, 0, 0, 0, 32, + 0, 30, 0, 0, 761, 0, 0, 0, 761, 0, + 0, 0, 0, 341, 338, 340, 0, 240, 0, 354, + 0, 711, 0, 0, 115, 0, 296, 303, 0, 0, + 419, 418, 0, 0, 420, 424, 373, 374, 386, 387, + 384, 385, 0, 413, 0, 404, 0, 437, 438, 439, + 375, 376, 391, 392, 393, 394, 0, 0, 389, 390, + 388, 382, 383, 378, 377, 379, 380, 381, 0, 0, + 0, 347, 0, 0, 0, 0, 357, 0, 654, 644, + 0, 610, 658, 0, 665, 0, 672, 0, 0, 678, + 0, 681, 0, 238, 628, 0, 616, 697, 482, 488, + 478, 0, 0, 495, 0, 494, 0, 497, 0, 73, + 0, 256, 0, 243, 74, 0, 52, 53, 258, 233, + 0, 0, 0, 273, 272, 325, 326, 328, 327, 329, + 319, 320, 321, 330, 331, 317, 318, 332, 333, 322, + 323, 324, 316, 526, 529, 0, 464, 467, 0, 510, + 0, 513, 626, 649, 652, 613, 0, 0, 0, 715, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 410, 0, 0, 411, 0, 0, 0, - 0, 0, 0, 0, 304, 442, 443, 444, 445, 446, - 0, 0, 0, 727, 752, 753, 0, 0, 291, 733, - 400, 0, 0, 0, 115, 0, 0, 0, 0, 0, - 357, 0, 356, 0, 118, 308, 115, 416, 0, 422, - 0, 0, 0, 403, 0, 0, 426, 430, 0, 0, - 406, 0, 0, 0, 0, 349, 0, 353, 401, 359, - 654, 644, 606, 612, 658, 660, 665, 667, 672, 674, - 485, 678, 491, 681, 0, 0, 0, 563, 564, 499, - 501, 0, 261, 75, 0, 0, 0, 269, 0, 545, - 466, 467, 468, 469, 460, 473, 513, 716, 719, 246, - 0, 250, 0, 249, 0, 287, 285, 0, 0, 0, - 745, 743, 0, 0, 754, 276, 279, 282, 749, 747, - 725, 731, 729, 722, 0, 0, 31, 0, 0, 0, - 0, 0, 0, 118, 0, 703, 702, 0, 0, 0, - 0, 0, 0, 0, 0, 302, 0, 0, 118, 0, - 0, 0, 0, 337, 0, 0, 427, 0, 415, 0, - 404, 0, 350, 0, 0, 402, 354, 661, 668, 675, - 239, 236, 562, 0, 0, 0, 213, 57, 62, 0, - 505, 463, 460, 461, 462, 465, 0, 0, 247, 251, - 0, 0, 286, 735, 738, 741, 0, 0, 759, 0, - 0, 0, 0, 713, 0, 0, 0, 448, 0, 0, - 0, 0, 340, 457, 343, 0, 0, 335, 0, 0, - 0, 0, 300, 301, 299, 298, 0, 0, 0, 292, - 306, 0, 0, 456, 0, 454, 338, 451, 0, 0, - 0, 450, 351, 0, 0, 565, 500, 0, 0, 55, - 56, 0, 69, 0, 0, 270, 0, 0, 464, 474, - 463, 0, 713, 713, 0, 0, 0, 0, 0, 0, - 0, 0, 277, 280, 283, 0, 726, 713, 0, 412, - 0, 449, 757, 757, 0, 0, 346, 0, 0, 0, - 0, 705, 704, 303, 305, 0, 293, 307, 417, 423, - 0, 455, 453, 452, 629, 71, 58, 0, 63, 67, - 68, 65, 66, 64, 70, 0, 0, 0, 476, 470, - 0, 0, 0, 288, 713, 713, 0, 759, 759, 755, - 759, 0, 711, 0, 413, 0, 0, 0, 757, 344, - 0, 707, 706, 336, 0, 294, 418, 424, 428, 0, + 0, 0, 0, 409, 0, 0, 410, 0, 0, 0, + 0, 0, 0, 0, 303, 441, 442, 443, 444, 445, + 0, 0, 0, 728, 753, 754, 0, 0, 290, 734, + 399, 0, 0, 0, 115, 0, 0, 0, 0, 0, + 356, 0, 355, 0, 118, 307, 115, 415, 0, 421, + 0, 0, 0, 402, 0, 0, 425, 429, 0, 0, + 405, 0, 0, 0, 0, 348, 0, 352, 400, 358, + 655, 645, 605, 611, 659, 661, 666, 668, 673, 675, + 484, 679, 490, 682, 0, 0, 0, 562, 563, 498, + 500, 0, 260, 75, 0, 0, 0, 268, 0, 544, + 465, 466, 467, 468, 459, 472, 512, 717, 720, 245, + 0, 249, 0, 248, 0, 286, 284, 0, 0, 0, + 746, 744, 0, 0, 755, 275, 278, 281, 750, 748, + 726, 732, 730, 723, 0, 0, 31, 0, 0, 0, + 0, 0, 0, 118, 0, 704, 703, 0, 0, 0, + 0, 0, 0, 0, 0, 301, 0, 0, 118, 0, + 0, 0, 0, 336, 0, 0, 426, 0, 414, 0, + 403, 0, 349, 0, 0, 401, 353, 662, 669, 676, + 239, 236, 561, 0, 0, 0, 213, 57, 62, 0, + 504, 462, 459, 460, 461, 464, 0, 0, 246, 250, + 0, 0, 285, 736, 739, 742, 0, 0, 760, 0, + 0, 0, 0, 714, 0, 0, 0, 447, 0, 0, + 0, 0, 339, 456, 342, 0, 0, 334, 0, 0, + 0, 0, 299, 300, 298, 297, 0, 0, 0, 291, + 305, 0, 0, 455, 0, 453, 337, 450, 0, 0, + 0, 449, 350, 0, 0, 564, 499, 0, 0, 55, + 56, 0, 69, 0, 0, 269, 0, 0, 463, 473, + 462, 0, 714, 714, 0, 0, 0, 0, 0, 0, + 0, 0, 276, 279, 282, 0, 727, 714, 0, 411, + 0, 448, 758, 758, 0, 0, 345, 0, 0, 0, + 0, 706, 705, 302, 304, 0, 292, 306, 416, 422, + 0, 454, 452, 451, 630, 71, 58, 0, 63, 67, + 68, 65, 66, 64, 70, 0, 0, 0, 475, 469, + 0, 0, 0, 287, 714, 714, 0, 760, 760, 756, + 760, 0, 712, 0, 412, 0, 0, 0, 758, 343, + 0, 708, 707, 335, 0, 293, 417, 423, 427, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 723, 0, 763, 761, 0, - 347, 0, 0, 429, 0, 0, 272, 475, 0, 717, - 720, 289, 0, 0, 742, 746, 756, 750, 732, 712, - 758, 762, 709, 708, 57, 271, 477, 736, 739, 59 + 0, 0, 0, 0, 0, 724, 0, 764, 762, 0, + 346, 0, 0, 428, 0, 0, 271, 474, 0, 718, + 721, 288, 0, 0, 743, 747, 757, 751, 733, 713, + 759, 763, 710, 709, 57, 270, 476, 737, 740, 59 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -1244, -1244, -1244, -1244, -1244, -1244, 394, 944, -1244, -1244, - -1244, 1020, -1244, -1244, -1244, 981, -1244, 900, -1244, -1244, - 950, -1244, -1244, -1244, -354, -1244, -1244, -211, -1244, -1244, - -1244, -1244, -1244, -1244, 823, -1244, -1244, -55, 936, -1244, - -1244, -1244, 315, -1244, -431, -478, -675, -1244, -1244, -1244, - -1243, -1244, -1244, -528, -1244, -1244, -617, -762, -1244, -14, - -1244, -1244, -1244, -1244, -1244, -208, -207, -205, -204, -1244, - -1244, -1244, 1039, -1244, -1244, -1244, -1244, -1244, -1244, -1244, - -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -402, -1244, - 595, -175, -1244, -803, -1244, -1244, -1244, -1244, -1244, -1244, - -1204, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, - 491, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -144, -130, - -201, -132, -27, -1244, -1244, -1244, -1244, -1244, 538, -1244, - -473, -1244, -1244, -476, -1244, -1244, -707, -187, -574, -104, - -1244, -376, -1244, -1244, 1018, -1244, -1244, -1244, 309, -1244, - 511, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, - -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -593, - -161, -1244, 675, -1244, -1244, -1244, -1244, -1244, -1244, -1244, - -1244, -298, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, - -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, - -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -140, - -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, - -1244, -1244, 678, -620, 104, -864, -1136, -1244, -1244, -1244, - -1244, -1244, -1244, -1244, -1244, -1244, -796, -1244, -1244, -1244, - -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, - -1244, -596, -1244, -1193, -527, -1244 + -1229, -1229, -1229, -1229, -1229, -1229, 366, 902, -1229, -1229, + -1229, 986, -1229, -1229, -1229, 950, -1229, 870, -1229, -1229, + 920, -1229, -1229, -1229, -384, -1229, -1229, -241, -1229, -1229, + -1229, -1229, -1229, -1229, 791, -1229, -1229, -56, 908, -1229, + -1229, -1229, 194, -1229, -438, -474, -656, -1229, -1229, -1229, + -1228, -1229, -1229, -527, -1229, -1229, -619, -764, -1229, -14, + -1229, -1229, -1229, -1229, -1229, -238, -237, -236, -235, -1229, + -1229, -1229, 1009, -1229, -1229, -1229, -1229, -1229, -1229, -1229, + -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -429, -1229, + 557, -205, -1229, -787, -1229, -1229, -1229, -1229, -1229, -1229, + -1220, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, + 491, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -144, -160, + -234, -162, -68, -1229, -1229, -1229, -1229, -1229, 497, -1229, + -480, -1229, -1229, -483, -1229, -1229, -705, -233, -572, -155, + -1229, -379, -1229, -1229, 969, -1229, -1229, -1229, 259, -1229, + 601, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, + -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -595, + -161, -1229, 613, -1229, -1229, -1229, -1229, -1229, -1229, -1229, + -1229, -299, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, + -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, + -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, + -140, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, + -1229, -1229, -1229, 617, -624, 58, -949, -944, -1229, -1229, + -1229, -1229, -1229, -1229, -1229, -1229, -1229, -799, -1229, -1229, + -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, + -1229, -1229, -594, -1229, -1195, -529, -1229 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - 0, 1, 16, 134, 51, 17, 155, 161, 620, 455, - 140, 456, 94, 19, 20, 43, 44, 85, 21, 39, - 40, 545, 546, 1241, 1242, 547, 1244, 548, 549, 550, - 551, 552, 553, 554, 162, 163, 35, 36, 37, 209, - 63, 64, 65, 66, 22, 321, 389, 200, 23, 106, - 201, 107, 147, 323, 457, 555, 390, 696, 902, 458, - 556, 588, 779, 1178, 459, 557, 558, 559, 560, 561, - 562, 522, 563, 742, 1078, 933, 564, 460, 792, 1189, - 793, 1190, 795, 1191, 461, 783, 1182, 462, 632, 1220, - 463, 1135, 1136, 834, 464, 641, 465, 565, 466, 467, - 825, 468, 1013, 1275, 1014, 1330, 469, 884, 1156, 470, - 633, 1139, 1336, 1141, 1337, 1228, 1363, 472, 385, 1175, - 1249, 1082, 1084, 958, 571, 767, 1307, 1343, 386, 387, - 510, 691, 374, 515, 693, 375, 1017, 712, 580, 403, - 342, 343, 207, 337, 75, 116, 25, 152, 568, 569, - 47, 48, 131, 26, 110, 149, 203, 27, 391, 955, - 393, 205, 206, 73, 113, 395, 28, 150, 335, 713, - 473, 332, 259, 260, 683, 373, 261, 483, 1053, 583, - 370, 262, 404, 962, 695, 481, 1051, 405, 963, 406, - 964, 480, 1050, 484, 1054, 485, 1157, 486, 1056, 487, - 1158, 488, 1058, 489, 1159, 490, 1061, 491, 1063, 511, - 29, 136, 265, 512, 30, 137, 266, 516, 31, 135, - 264, 702, 474, 1322, 832, 1323, 970, 475, 777, 1176, - 778, 1177, 801, 1195, 798, 1193, 623, 476, 799, 1194, - 477, 975, 1256, 976, 1257, 977, 1258, 787, 1186, 796, - 1192, 624, 478, 1326, 507, 479 + 0, 1, 16, 132, 51, 17, 153, 159, 619, 454, + 138, 455, 92, 19, 20, 43, 44, 84, 21, 39, + 40, 544, 545, 1241, 1242, 546, 1244, 547, 548, 549, + 550, 551, 552, 553, 160, 161, 35, 36, 37, 207, + 62, 63, 64, 65, 22, 320, 388, 198, 23, 104, + 199, 105, 145, 322, 456, 554, 389, 695, 902, 457, + 555, 587, 779, 1178, 458, 556, 557, 558, 559, 560, + 561, 521, 562, 742, 1078, 933, 563, 459, 792, 1189, + 793, 1190, 795, 1191, 460, 783, 1182, 461, 631, 1220, + 462, 1135, 1136, 834, 463, 640, 464, 564, 465, 466, + 825, 467, 1013, 1275, 1014, 1330, 468, 884, 1156, 469, + 632, 1139, 1336, 1141, 1337, 1228, 1363, 471, 384, 1175, + 1249, 1082, 1084, 958, 570, 767, 1307, 1343, 385, 386, + 509, 690, 373, 514, 692, 374, 1017, 712, 579, 402, + 341, 342, 205, 336, 74, 114, 25, 150, 567, 568, + 47, 48, 129, 26, 108, 147, 201, 27, 390, 955, + 392, 203, 204, 72, 111, 394, 28, 148, 334, 713, + 472, 331, 257, 258, 682, 372, 259, 482, 1053, 582, + 369, 260, 261, 403, 962, 694, 480, 1051, 404, 963, + 405, 964, 479, 1050, 483, 1054, 484, 1157, 485, 1056, + 486, 1158, 487, 1058, 488, 1159, 489, 1061, 490, 1063, + 510, 29, 134, 264, 511, 30, 135, 265, 515, 31, + 133, 263, 702, 473, 1322, 832, 1323, 970, 474, 777, + 1176, 778, 1177, 801, 1195, 798, 1193, 622, 475, 799, + 1194, 476, 975, 1256, 976, 1257, 977, 1258, 787, 1186, + 796, 1192, 623, 477, 1326, 506, 478 }; /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If @@ -1587,1247 +1589,1247 @@ static const yytype_int16 yydefgoto[] = number is the opposite. If YYTABLE_NINF, syntax error. */ static const yytype_int16 yytable[] = { - 57, 67, 771, 790, 258, 719, 918, 685, 210, 687, - 893, 689, 895, 728, 897, 692, 831, 690, 1004, 971, - 572, 835, 125, 593, 1002, 263, 383, 2, 812, 117, - 118, 1006, 637, 3, 1026, 407, 408, 816, 38, 495, - 642, 643, 764, -113, 654, 655, 67, 67, 67, 1173, - 634, 68, 383, 1071, 1119, 414, 4, 1266, 5, 74, - 6, 416, 32, 33, 1342, 652, 7, 81, 654, 655, - 520, 1329, 1131, 505, 826, 102, 8, 49, 1132, 497, - 1327, 340, 9, 1090, 208, 67, 67, 67, 67, 76, - 878, 879, 697, 99, 100, 101, 341, 815, 422, 423, - 1368, 103, 82, 576, 913, 819, 10, 820, 384, 1174, - 208, 156, 157, 521, 913, 880, 1310, 1311, 675, 676, - 594, 595, 50, 920, 881, 1133, 1360, 1091, 11, 12, - 1134, 1321, 425, 426, 638, 1359, 646, 647, 493, 932, - 766, 890, 675, 676, 652, 93, 653, 654, 655, 656, - 657, 257, 523, 338, 1021, 891, 914, 915, 494, 916, - 141, 55, 917, 1354, 882, 883, 1218, 915, 55, 119, - 371, 453, 639, 77, 120, 577, 121, 122, 1347, 1348, - 1127, 578, 914, 642, 643, 56, 524, 919, 703, 914, - 496, 1114, 56, 396, 924, 788, 78, 1355, 13, 322, - 445, 642, 643, 596, 797, 34, 765, 800, 1018, 837, - 258, 914, 914, 258, 913, 587, 1354, 14, 79, 123, - 1016, 675, 676, 597, 1007, 913, 93, 258, 579, 15, - 498, 1016, 77, 451, 830, 83, 1246, 1354, 15, 402, - 258, 86, 359, 258, 258, 258, 913, 84, 525, 499, - 1369, 158, 1210, 214, 1354, 500, 159, 41, 160, 122, - 170, 979, 913, 982, 581, 582, 584, 915, 1277, 913, - 989, 1370, 1354, 992, 87, 1361, 887, 89, 915, 646, - 647, 215, 1354, 1354, 397, 90, 42, 652, 1374, 653, - 654, 655, 656, 657, 55, 1216, 1019, 646, 647, 915, - 789, 91, 905, 821, 58, 652, 1378, 653, 654, 655, - 656, 657, 1074, 802, 898, 915, 1387, 1388, 56, 258, - 258, 1217, 915, 258, 1020, 258, 1169, 258, 899, 258, - 1049, 642, 643, 59, -659, 905, 99, 513, 101, -659, - 679, 680, 69, 70, 684, 71, 686, 514, 688, 1137, - 831, 672, 673, 674, 1170, 371, 1024, 257, -659, 773, - 257, 905, 1164, 1226, 675, 676, 934, 670, 671, 672, - 673, 674, 55, 72, 257, 95, 96, 97, 570, 697, - 1021, 821, 675, 676, 905, 905, 822, 257, 92, 1232, - 257, 257, 257, 93, 1072, 900, 56, 257, 598, 1234, - 371, 60, -666, 1272, 774, -673, 1279, -666, 55, 901, - -673, 126, 1237, 1271, 143, 144, 145, 146, 599, 823, - 642, 643, 605, 1211, 1062, 1060, -666, 646, 647, -673, - 340, -345, 56, 608, 1171, 652, -345, 258, 654, 655, - 656, 657, 606, 710, 98, 341, 1344, 1345, 1205, 1238, - 258, 84, 1349, 609, 1083, -345, 128, 1353, 711, 1064, - 1239, 1240, 854, 1221, 1180, 61, 257, 257, 153, 154, - 257, 855, 257, 1065, 257, 62, 257, 776, 1181, 966, - 967, 841, 845, 1372, 1373, 400, 45, 371, 401, 978, - 129, 402, 46, 1039, 984, 985, 859, 987, 988, 1278, - 990, 991, 1040, 993, 99, 100, 101, 1188, 1208, 1044, - 1129, 826, 675, 676, 644, 645, 646, 647, 1045, 1130, - 1090, 52, 53, 54, 652, 104, 653, 654, 655, 656, - 657, 105, 658, 659, 258, 324, 1123, 108, 111, 325, - 114, 130, 258, 109, 112, 258, 115, 1167, 1138, 139, - 132, 1080, 360, 326, 327, 903, 133, 1081, 328, 329, - 330, 331, 1199, 908, 1200, 360, 909, 1274, 905, 138, - 905, 371, 148, 905, 151, 888, 165, 782, 371, 361, - 362, 82, 889, 166, 257, 167, 670, 671, 672, 673, - 674, 371, 361, 362, 371, 892, 169, 257, 894, 371, - 1117, 675, 676, 896, 1118, 168, 371, 371, 371, 1219, - 1089, 1096, 1289, 211, 212, 258, 258, 258, 258, 204, - 371, 824, 258, 957, 1338, 99, 258, 1362, 202, 1144, - 208, 258, 258, 318, 258, 258, 965, 258, 258, 968, - 258, 1153, 363, 974, 319, 577, 364, 320, 211, 212, - 213, 578, 322, 334, 339, 363, 360, 333, 345, 364, - 336, 1261, 346, 347, 1318, 372, 348, 360, 351, 1165, - 349, 358, 380, 1306, 371, 379, 382, 1097, 1098, 1099, - 350, 257, 1102, 361, 362, 153, 154, 809, 810, 257, - 352, 770, 257, 1287, 361, 362, 353, 354, 579, 355, - 356, 357, 360, 365, 980, 1037, 366, 376, 367, 1295, - 1296, 377, 378, 1198, 381, 1122, 365, 1201, 981, 366, - 388, 367, 368, 392, 394, 398, 399, 482, 369, 361, - 362, 1340, 503, 506, 1379, 368, 517, 258, 518, 519, - 567, 369, 574, 575, 585, 586, 363, 592, 591, 600, - 364, 601, 602, 603, 604, 258, 607, 363, 610, 697, - 577, 364, 257, 257, 257, 257, 578, 611, 614, 257, - 682, 15, 635, 257, 513, 615, 1069, 616, 257, 257, - 617, 257, 257, 681, 257, 257, 701, 257, 618, 619, - 1350, 1351, 363, 1352, 636, 678, 364, 698, 704, 705, - 706, 707, 708, 642, 643, 716, 723, 365, 724, 994, - 366, 725, 367, 579, 258, 258, 258, 731, 365, 258, - 732, 366, 734, 367, 733, 735, 368, 736, 741, 737, - 738, 739, 369, 740, 743, 769, 1384, 368, 763, 471, - 1386, 1222, 762, 369, 780, 781, 814, 817, 818, 492, - 775, 784, 258, 365, 833, 1087, 366, 1317, 367, 502, - 785, 786, 836, 1320, 852, 905, 907, 912, 922, 925, - 926, 904, 368, 927, 929, 956, 911, 931, 369, 959, - 969, 566, 1005, 1009, 257, 1021, 1010, 1011, 1027, 573, - 1012, 1015, 1047, 1029, 1022, 1023, 1028, 644, 645, 646, - 647, 648, 257, 258, 649, 650, 651, 652, 1052, 653, - 654, 655, 656, 657, 1030, 658, 659, 1031, 1032, 612, - 613, 1042, 1055, 1057, 1160, 360, 1043, 1059, 1067, 1068, - 1077, 1079, 1083, 1085, 1093, 1094, 622, 625, 626, 627, - 628, 629, 1146, 1163, 1101, 1103, 1212, 1115, 1305, 1104, - 642, 643, 361, 362, 1109, 1112, 1147, 1149, 1154, 1161, - 1196, 257, 257, 257, 1179, 1207, 257, 668, 669, 670, - 671, 672, 673, 674, 1209, 1213, 1214, 1243, 258, 1215, - 258, 1235, 1245, 1248, 675, 676, 1252, 1254, 1253, 1276, - 1259, 1260, 1265, 1267, 700, 1268, 1297, 1284, 1304, 257, - 1294, 1224, 1312, 1314, 1315, 1316, 1356, 1319, 1325, 1357, - 709, 1333, 1358, 1367, 811, 363, 1381, 1375, 715, 364, - 124, 18, 718, 80, 1376, 721, 722, 1377, 164, 127, - 1389, 727, 1298, 730, 142, 1299, 1300, 344, 1301, 1302, - 24, 1283, 1250, 1251, 644, 645, 646, 647, 648, 1308, - 257, 649, 650, 651, 652, 1172, 653, 654, 655, 656, - 657, 714, 658, 659, 1309, 640, 1247, 258, 660, 88, - 662, 772, 954, 0, 1092, 0, 365, 0, 1088, 366, - 0, 367, 0, 0, 0, 258, 589, 0, 1290, 590, - 622, 791, 0, 0, 794, 368, 0, 0, 0, 0, - 0, 369, 0, 0, 0, 803, 804, 805, 806, 807, - 808, 665, 666, 667, 668, 669, 670, 671, 672, 673, - 674, 0, 0, 838, 0, 257, 0, 257, 0, 0, - 0, 675, 676, 0, 0, 846, 847, 0, 0, 848, - 849, 850, 851, 0, 853, 0, 856, 857, 858, 860, - 861, 862, 863, 864, 865, 867, 868, 869, 870, 871, - 872, 873, 874, 875, 876, 877, 0, 885, 0, 0, - 0, 0, 0, 0, 0, 222, 223, 224, 0, 226, - 227, 228, 229, 230, 424, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 0, 244, 245, 246, - 0, 0, 249, 250, 251, 252, 0, 0, 921, 0, - 0, 923, 0, 0, 257, 0, 0, 0, 0, 0, - 928, 0, 0, 0, 0, 930, 0, 0, 360, 0, - 0, 0, 257, 0, 0, 935, 936, 937, 938, 939, + 56, 66, 256, 771, 790, 719, 208, 691, 918, 689, + 684, 831, 686, 728, 688, 1004, 571, 971, 835, 592, + 123, -113, 633, 262, 636, 812, 496, 2, 893, 1002, + 895, 1006, 897, 3, 816, 115, 116, 382, 382, 764, + 80, 492, 1071, 32, 33, 66, 66, 66, 406, 407, + 1026, 641, 642, 1119, 1173, 1329, 4, 38, 5, 651, + 6, 493, 653, 654, 696, 55, 7, 494, 413, 653, + 654, 504, 913, 67, 415, 81, 8, 339, 1327, 1342, + 359, 73, 9, 66, 66, 66, 66, 97, 98, 99, + 154, 155, 340, 383, 815, 206, 206, 878, 879, 576, + 913, 575, 819, 637, 820, 577, 10, 360, 361, 826, + 1360, 421, 422, 57, 1174, 1368, 593, 594, 1090, 49, + 1131, 920, 880, 519, 914, 915, 1132, 916, 11, 12, + 917, 881, 766, 1359, 522, 932, 674, 675, 91, 100, + 452, 638, 58, 674, 675, 424, 425, 645, 646, 255, + 337, 1354, 578, 915, 139, 651, 370, 652, 653, 654, + 655, 656, 1091, 1354, 50, 101, 520, 788, 523, 1354, + 362, 882, 883, 1133, 363, 117, 797, 497, 1134, 800, + 118, 703, 119, 120, 765, 1355, 34, 914, 919, 914, + 1218, 75, 395, 641, 642, 924, 498, 1369, 13, 595, + 914, 837, 499, 1370, 1018, 55, 830, 1114, 82, 256, + 59, 914, 256, 444, 512, 45, 15, 14, 495, 596, + 83, 46, 1007, 321, 513, 121, 256, 76, 586, 15, + 156, 364, 674, 675, 365, 157, 366, 158, 120, 256, + 358, 55, 256, 256, 256, 77, 450, 524, 887, 1266, + 367, 913, 913, 93, 94, 95, 368, 1016, 1210, 979, + 576, 982, 1354, 580, 581, 583, 577, 913, 989, 78, + 102, 992, 913, 1016, 60, 1238, 103, 913, 1277, 91, + 1354, 1354, 396, 1361, 61, 1246, 1239, 1240, 401, 645, + 646, 141, 142, 143, 144, 1354, 1374, 651, 789, 76, + 653, 654, 655, 656, 915, 915, 770, 1021, 1310, 1311, + 1074, 802, 41, 578, 1378, 1387, 821, 85, 256, 256, + 915, 822, 256, 1321, 256, 915, 256, 168, 256, 1388, + 915, 55, 1216, 1127, 776, 68, 69, 212, 70, 678, + 679, 42, 88, 683, 370, 685, 831, 687, 1019, 597, + 641, 642, 696, 905, 823, 1169, 255, 905, 1217, 255, + 1024, 1344, 1345, 934, 1164, 213, 71, 1349, 1137, 598, + 1347, 1348, 1353, 255, 674, 675, 1020, 569, 905, 905, + 905, 1049, 604, 1170, 1021, 1226, 255, 890, -660, 255, + 255, 255, 97, -660, 99, 1072, 255, 1234, 1372, 1373, + 1272, 891, 605, 607, 1171, 89, 1232, 1237, 1271, 323, + 1279, 339, -660, 324, -667, -674, -344, 1062, 1060, -667, + -674, -344, 710, 608, 1083, 1211, 340, 325, 326, 898, + 151, 152, 327, 328, 329, 330, 256, 711, -667, -674, + -344, 900, 86, 899, 643, 644, 645, 646, 647, 256, + 980, 648, 649, 650, 651, 901, 652, 653, 654, 655, + 656, 821, 657, 658, 981, 255, 255, 1205, 659, 255, + 661, 255, 1064, 255, 90, 255, 55, 1180, 966, 967, + 841, 845, 1221, 641, 642, 91, 1065, 96, 978, 854, + 124, 1181, 83, 984, 985, 859, 987, 988, 855, 990, + 991, 1278, 993, 370, 1208, 126, 370, 773, 127, 1188, + 774, 664, 665, 666, 667, 668, 669, 670, 671, 672, + 673, 1039, 106, 109, 128, 1044, 1129, 826, 107, 110, + 1040, 674, 675, 256, 1045, 1130, 1090, 112, 399, 136, + 1123, 400, 256, 113, 401, 256, 137, 1199, 1167, 130, + 1080, 1200, 1138, 905, 903, 131, 1081, 905, 1274, 151, + 152, 809, 810, 908, 905, 370, 909, 370, 146, 888, + 370, 889, 81, 1117, 892, 149, 782, 1118, 370, 645, + 646, 370, 894, 255, 370, 896, 163, 651, 1089, 652, + 653, 654, 655, 656, 370, 370, 255, 370, 1096, 1289, + 164, 1338, 1144, 97, 98, 99, 209, 210, 211, 165, + 1219, 52, 53, 54, 1153, 256, 256, 256, 256, 166, + 824, 167, 256, 957, 209, 210, 256, 97, 200, 1362, + 202, 256, 256, 206, 256, 256, 965, 256, 256, 968, + 256, 317, 1165, 974, 318, 319, 321, 332, 333, 669, + 670, 671, 672, 673, 335, 344, 338, 345, 346, 1261, + 347, 350, 371, 348, 674, 675, 1318, 349, 357, 351, + 352, 375, 353, 370, 354, 1306, 1097, 1098, 1099, 355, + 255, 1102, 356, 376, 377, 378, 1198, 379, 380, 255, + 1201, 387, 255, 391, 1287, 393, 398, 481, 505, 381, + 641, 642, 502, 397, 516, 1037, 517, 518, 566, 573, + 1295, 1296, 574, 584, 1122, 585, 590, 591, 599, 600, + 680, 601, 602, 603, 606, 641, 642, 634, 609, 610, + 1379, 681, 696, 1340, 613, 512, 614, 256, 615, 701, + 704, 705, 616, 706, 707, 617, 618, 708, 723, 725, + 635, 15, 724, 731, 677, 256, 697, 732, 716, 733, + 734, 735, 255, 255, 255, 255, 741, 736, 737, 255, + 738, 739, 762, 255, 740, 743, 1069, 769, 255, 255, + 780, 255, 255, 763, 255, 255, 781, 255, 1350, 1351, + 775, 1352, 784, 785, 643, 644, 645, 646, 647, 786, + 814, 648, 649, 650, 651, 817, 652, 653, 654, 655, + 656, 818, 657, 658, 256, 256, 256, 852, 659, 256, + 833, 645, 646, 836, 904, 905, 911, 907, 912, 651, + 1317, 652, 653, 654, 655, 656, 1320, 1384, 470, 922, + 1222, 1386, 925, 926, 927, 929, 931, 956, 491, 959, + 969, 1005, 256, 994, 1009, 1010, 1011, 1012, 501, 1015, + 1021, 664, 665, 666, 667, 668, 669, 670, 671, 672, + 673, 1023, 1022, 1027, 1028, 1029, 1030, 1031, 1032, 1042, + 565, 674, 675, 1043, 255, 1047, 1052, 1055, 572, 1057, + 1067, 1059, 1068, 671, 672, 673, 1079, 1077, 1083, 1085, + 1087, 1088, 255, 256, 1093, 1094, 674, 675, 1100, 1105, + 1163, 1212, 1101, 1103, 1146, 1104, 1109, 1106, 611, 612, + 1243, 1248, 1107, 1108, 1160, 1110, 1111, 1112, 1113, 1213, + 1214, 1115, 1183, 1215, 1235, 621, 624, 625, 626, 627, + 628, 1184, 1185, 1147, 1187, 1204, 1149, 1305, 1245, 1154, + 641, 642, 1161, 1254, 1179, 1196, 1276, 1284, 1207, 1209, + 1288, 255, 255, 255, 1312, 1252, 255, 1253, 1259, 1260, + 1265, 1267, 1304, 1325, 1268, 1356, 1357, 122, 256, 1294, + 256, 1297, 1314, 1367, 1315, 811, 1316, 18, 1319, 1333, + 1375, 1358, 79, 700, 1376, 1377, 162, 1381, 125, 255, + 1389, 1224, 1298, 343, 140, 1299, 1300, 1301, 1302, 709, + 24, 1283, 1250, 1251, 1172, 1247, 1308, 715, 1309, 714, + 87, 718, 954, 588, 721, 722, 639, 589, 1092, 0, + 727, 0, 730, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 643, 644, 645, 646, 647, 0, + 255, 648, 649, 650, 651, 0, 652, 653, 654, 655, + 656, 0, 657, 658, 0, 0, 0, 256, 0, 0, + 772, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 256, 0, 0, 1290, 621, + 791, 0, 0, 794, 0, 0, 0, 641, 642, 0, + 0, 0, 0, 0, 803, 804, 805, 806, 807, 808, + 0, 664, 665, 666, 667, 668, 669, 670, 671, 672, + 673, 0, 0, 0, 0, 255, 0, 255, 0, 0, + 0, 674, 675, 0, 846, 847, 0, 0, 848, 849, + 850, 851, 0, 853, 0, 856, 857, 858, 860, 861, + 862, 863, 864, 865, 867, 868, 869, 870, 871, 872, + 873, 874, 875, 876, 877, 0, 885, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 643, 644, 645, 646, 0, 0, 0, 0, 0, + 0, 651, 0, 652, 653, 654, 655, 656, 921, 657, + 658, 923, 0, 0, 255, 0, 0, 0, 0, 0, + 928, 0, 0, 0, 0, 930, 0, 0, 0, 0, + 0, 0, 255, 0, 0, 935, 936, 937, 938, 939, 940, 941, 942, 943, 944, 945, 946, 947, 948, 949, - 950, 951, 952, 953, 0, 361, 362, 839, 0, 0, - 0, 824, 960, 0, 0, 0, 840, 0, 0, 0, - 0, 0, 360, 973, 0, 0, 216, 0, 0, 0, - 0, 0, 217, 0, 0, 0, 0, 0, 218, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 219, 361, - 362, 1001, 0, 0, 1003, 622, 220, 0, 0, 1008, - 0, 0, 0, 0, 0, 0, 824, 0, 363, 0, - 0, 221, 364, 0, 0, 0, 566, 0, 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, 360, 363, 0, 0, 0, 364, 0, 0, 0, - 1041, 0, 0, 0, 1046, 0, 0, 0, 0, 365, - 0, 1100, 366, 0, 367, 0, 0, 0, 361, 362, - 0, 0, 0, 0, 0, 55, 1008, 0, 368, 0, - 0, 0, 1066, 0, 369, 0, 0, 0, 255, 1070, - 0, 0, 0, 0, 0, 216, 1073, 0, 0, 56, - 0, 217, 1076, 365, 0, 1105, 366, 218, 367, 0, - 360, 0, 0, 0, 0, 0, 0, 219, 0, 0, - 0, 0, 368, 0, 0, 220, 0, 0, 369, 0, - 0, 363, 0, 0, 0, 364, 0, 361, 362, 0, - 221, 0, 0, 0, 256, 0, 504, 222, 223, 224, + 950, 951, 952, 953, 0, 0, 0, 0, 0, 0, + 0, 824, 960, 669, 670, 671, 672, 673, 0, 0, + 0, 0, 0, 973, 0, 0, 214, 0, 674, 675, + 0, 0, 215, 0, 0, 0, 0, 0, 216, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 217, 0, + 0, 1001, 0, 0, 1003, 621, 218, 0, 0, 1008, + 0, 0, 0, 0, 0, 0, 824, 0, 0, 0, + 0, 219, 0, 0, 0, 0, 565, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1041, 0, 0, 214, 1046, 0, 0, 0, 0, 215, + 0, 0, 0, 0, 0, 216, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 217, 1008, 0, 0, 0, + 0, 0, 1066, 218, 0, 0, 0, 0, 253, 1070, + 0, 0, 0, 0, 0, 838, 1073, 0, 219, 55, + 0, 0, 1076, 0, 0, 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, - 0, 0, 1120, 1121, 0, 0, 1124, 1125, 1126, 0, - 1008, 0, 365, 0, 1106, 366, 0, 367, 0, 1140, - 363, 1142, 0, 1145, 364, 0, 0, 0, 0, 1148, - 0, 368, 0, 1151, 55, 0, 0, 369, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 255, 0, 0, - 0, 0, 0, 0, 0, 642, 643, 0, 508, 0, - 0, 0, 0, 0, 0, 566, 0, 0, 509, 0, + 245, 246, 247, 248, 249, 250, 251, 252, 0, 0, + 0, 0, 0, 0, 254, 0, 503, 220, 221, 222, + 0, 224, 225, 226, 227, 228, 423, 230, 231, 232, + 233, 234, 235, 236, 237, 238, 239, 240, 0, 242, + 243, 244, 0, 0, 247, 248, 249, 250, 0, 0, + 0, 0, 1120, 1121, 0, 253, 1124, 1125, 1126, 0, + 1008, 0, 0, 0, 0, 0, 507, 0, 0, 1140, + 0, 1142, 0, 1145, 0, 0, 508, 0, 0, 1148, + 0, 0, 0, 1151, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 214, 0, 0, 0, 839, + 0, 215, 0, 0, 0, 641, 642, 216, 840, 0, + 0, 254, 0, 0, 0, 565, 0, 217, 0, 0, + 0, 0, 0, 0, 0, 218, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 365, 0, 1107, 366, 0, 367, 0, 0, 0, - 0, 0, 0, 0, 622, 0, 0, 0, 0, 0, - 368, 0, 360, 256, 0, 0, 369, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 361, - 362, 0, 0, 0, 0, 0, 0, 0, 1229, 0, - 1230, 0, 0, 0, 0, 1233, 0, 0, 0, 644, - 645, 646, 647, 648, 0, 1236, 649, 650, 651, 652, - 0, 653, 654, 655, 656, 657, 0, 658, 659, 0, - 0, 0, 1255, 660, 661, 662, 0, 0, 0, 663, - 1262, 1263, 1264, 0, 0, 0, 0, 1270, 0, 0, - 622, 1273, 363, 0, 0, 0, 364, 0, 0, 0, + 219, 0, 0, 0, 621, 0, 0, 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, + 0, 0, 0, 0, 0, 0, 0, 0, 1229, 0, + 1230, 0, 0, 0, 0, 1233, 0, 0, 0, 643, + 644, 645, 646, 647, 0, 1236, 648, 649, 650, 651, + 0, 652, 653, 654, 655, 656, 0, 657, 658, 0, + 0, 0, 1255, 659, 660, 661, 0, 253, 0, 662, + 1262, 1263, 1264, 0, 0, 0, 0, 1270, 55, 0, + 621, 1273, 0, 0, 0, 0, 0, 0, 0, 0, 1280, 1281, 1282, 0, 0, 0, 0, 0, 0, 1286, - 0, 0, 0, 0, 664, 0, 665, 666, 667, 668, - 669, 670, 671, 672, 673, 674, 0, 0, 0, 0, - 0, 0, 0, 0, 1303, 0, 675, 676, 0, 0, - 677, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 622, 0, 365, 0, 1108, 366, 0, 367, 0, + 0, 0, 0, 0, 663, 0, 664, 665, 666, 667, + 668, 669, 670, 671, 672, 673, 0, 0, 0, 0, + 0, 0, 0, 254, 1303, 0, 674, 675, 0, 0, + 676, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 621, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1328, 0, 0, 1331, 1332, - 0, 0, 368, 0, 0, 0, 1335, 0, 369, 0, + 0, 0, 0, 0, 0, 0, 1335, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1339, 0, 0, 0, 0, 0, 0, 0, 0, 1341, 0, 0, 0, 0, 0, 1346, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 526, - 0, 0, 407, 408, 3, 0, 527, 528, 529, 0, - 530, 1365, 409, 410, 411, 412, 413, 0, 0, 0, - 0, 0, 414, 531, 415, 532, 533, 1380, 416, 0, - 0, 0, 1382, 1383, 0, 534, 417, 0, 0, 535, - 0, 536, 418, 0, 0, 419, 0, 8, 420, 537, - 0, 538, 421, 0, 0, 539, 540, 0, 0, 0, - 0, 0, 541, 0, 0, 422, 423, 0, 222, 223, - 224, 0, 226, 227, 228, 229, 230, 424, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 0, - 244, 245, 246, 0, 0, 249, 250, 251, 252, 425, - 426, 427, 542, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 428, 429, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 525, + 0, 0, 406, 407, 3, 0, 526, 527, 528, 0, + 529, 1365, 408, 409, 410, 411, 412, 0, 0, 0, + 0, 0, 413, 530, 414, 531, 532, 1380, 415, 0, + 0, 0, 1382, 1383, 0, 533, 416, 0, 0, 534, + 0, 535, 417, 0, 0, 418, 0, 8, 419, 536, + 0, 537, 420, 0, 0, 538, 539, 0, 0, 0, + 0, 0, 540, 0, 0, 421, 422, 0, 220, 221, + 222, 0, 224, 225, 226, 227, 228, 423, 230, 231, + 232, 233, 234, 235, 236, 237, 238, 239, 240, 0, + 242, 243, 244, 0, 0, 247, 248, 249, 250, 424, + 425, 426, 541, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 55, 0, 0, 0, 0, - 0, 0, 0, 430, 431, 432, 433, 434, 0, 435, - 0, 436, 437, 438, 439, 440, 441, 442, 443, 56, - 444, 0, 0, 0, 0, 0, 0, 445, 543, 544, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 446, 447, 448, 0, 14, 0, - 0, 449, 450, 0, 0, 0, 0, 0, 0, 0, - 451, 0, 452, 526, 453, 454, 407, 408, 3, 0, - 527, 528, 529, 0, 530, 0, 409, 410, 411, 412, - 413, 0, 0, 0, 0, 0, 414, 531, 415, 532, - 533, 0, 416, 0, 0, 0, 0, 0, 0, 534, - 417, 0, 0, 535, 0, 536, 418, 0, 0, 419, - 0, 8, 420, 537, 0, 538, 421, 0, 0, 539, - 540, 0, 0, 0, 0, 0, 541, 0, 0, 422, - 423, 0, 222, 223, 224, 0, 226, 227, 228, 229, - 230, 424, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 0, 244, 245, 246, 0, 0, 249, - 250, 251, 252, 425, 426, 427, 542, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 428, 429, + 0, 0, 0, 429, 430, 431, 432, 433, 0, 434, + 0, 435, 436, 437, 438, 439, 440, 441, 442, 55, + 443, 0, 0, 0, 0, 0, 0, 444, 542, 543, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 55, - 0, 0, 0, 0, 0, 0, 0, 430, 431, 432, - 433, 434, 0, 435, 0, 436, 437, 438, 439, 440, - 441, 442, 443, 56, 444, 0, 0, 0, 0, 0, - 0, 445, 1025, 544, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 446, 447, - 448, 0, 14, 0, 0, 449, 450, 0, 0, 0, - 0, 0, 0, 0, 451, 0, 452, 526, 453, 454, - 407, 408, 3, 0, 527, 528, 529, 0, 530, 0, - 409, 410, 411, 412, 413, 0, 0, 0, 0, 0, - 414, 531, 415, 532, 533, 0, 416, 0, 0, 0, - 0, 0, 0, 534, 417, 0, 0, 535, 0, 536, - 418, 0, 0, 419, 0, 8, 420, 537, 0, 538, - 421, 0, 0, 539, 540, 0, 0, 0, 0, 0, - 541, 0, 0, 422, 423, 0, 222, 223, 224, 0, - 226, 227, 228, 229, 230, 424, 232, 233, 234, 235, - 236, 237, 238, 239, 240, 241, 242, 0, 244, 245, - 246, 0, 0, 249, 250, 251, 252, 425, 426, 427, - 542, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 428, 429, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 445, 446, 447, 0, 14, 0, + 0, 448, 449, 0, 0, 0, 0, 0, 0, 0, + 450, 0, 451, 525, 452, 453, 406, 407, 3, 0, + 526, 527, 528, 0, 529, 0, 408, 409, 410, 411, + 412, 0, 0, 0, 0, 0, 413, 530, 414, 531, + 532, 0, 415, 0, 0, 0, 0, 0, 0, 533, + 416, 0, 0, 534, 0, 535, 417, 0, 0, 418, + 0, 8, 419, 536, 0, 537, 420, 0, 0, 538, + 539, 0, 0, 0, 0, 0, 540, 0, 0, 421, + 422, 0, 220, 221, 222, 0, 224, 225, 226, 227, + 228, 423, 230, 231, 232, 233, 234, 235, 236, 237, + 238, 239, 240, 0, 242, 243, 244, 0, 0, 247, + 248, 249, 250, 424, 425, 426, 541, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 55, 0, 0, 0, 0, 0, 0, - 0, 430, 431, 432, 433, 434, 0, 435, 360, 436, - 437, 438, 439, 440, 441, 442, 443, 56, 444, 0, - 0, 0, 0, 0, 0, 445, 1166, 544, 0, 0, - 0, 0, 0, 0, 0, 361, 362, 0, 0, 0, - 0, 0, 446, 447, 448, 0, 14, 0, 0, 449, - 450, 0, 0, 0, 407, 408, 0, 0, 451, 0, - 452, 0, 453, 454, 409, 410, 411, 412, 413, 0, - 0, 0, 0, 0, 414, 531, 415, 532, 0, 360, - 416, 0, 0, 0, 0, 0, 0, 0, 417, 0, - 0, 0, 0, 0, 418, 0, 0, 419, 363, 0, - 420, 537, 364, 0, 421, 0, 361, 362, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 422, 423, 0, - 222, 223, 224, 0, 226, 227, 228, 229, 230, 424, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, - 242, 0, 244, 245, 246, 0, 0, 249, 250, 251, - 252, 425, 426, 427, 542, 0, 0, 0, 0, 365, - 0, 1110, 366, 0, 367, 0, 428, 429, 0, 363, - 0, 0, 0, 364, 0, 0, 0, 0, 368, 0, - 0, 0, 0, 0, 369, 0, 0, 55, 0, 0, - 0, 0, 0, 0, 0, 430, 431, 432, 433, 434, - 0, 435, 0, 436, 437, 438, 439, 440, 441, 442, - 443, 56, 444, 0, 360, 0, 0, 0, 0, 445, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 365, 0, 1111, 366, 0, 367, 446, 447, 448, 0, - 14, 361, 362, 449, 450, 0, 0, 0, 0, 368, - 407, 408, 451, 0, 452, 369, 453, 454, 630, 0, - 409, 410, 411, 412, 413, 0, 0, 0, 0, 0, - 414, 0, 415, 0, 0, 0, 416, 0, 0, 0, - 0, 0, 0, 0, 417, 0, 0, 0, 0, 0, - 418, 0, 0, 419, 631, 0, 420, 0, 0, 0, - 421, 0, 0, 0, 363, 0, 0, 0, 364, 0, - 0, 0, 0, 422, 423, 0, 222, 223, 224, 0, - 226, 227, 228, 229, 230, 424, 232, 233, 234, 235, - 236, 237, 238, 239, 240, 241, 242, 0, 244, 245, - 246, 0, 0, 249, 250, 251, 252, 425, 426, 427, + 0, 0, 0, 0, 0, 0, 0, 429, 430, 431, + 432, 433, 0, 434, 0, 435, 436, 437, 438, 439, + 440, 441, 442, 55, 443, 0, 0, 0, 0, 0, + 0, 444, 1025, 543, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 445, 446, + 447, 0, 14, 0, 0, 448, 449, 0, 0, 0, + 0, 0, 0, 0, 450, 0, 451, 525, 452, 453, + 406, 407, 3, 0, 526, 527, 528, 0, 529, 0, + 408, 409, 410, 411, 412, 0, 0, 0, 0, 0, + 413, 530, 414, 531, 532, 0, 415, 0, 0, 0, + 0, 0, 0, 533, 416, 0, 0, 534, 0, 535, + 417, 0, 0, 418, 0, 8, 419, 536, 0, 537, + 420, 0, 0, 538, 539, 0, 0, 0, 0, 0, + 540, 0, 0, 421, 422, 0, 220, 221, 222, 0, + 224, 225, 226, 227, 228, 423, 230, 231, 232, 233, + 234, 235, 236, 237, 238, 239, 240, 0, 242, 243, + 244, 0, 0, 247, 248, 249, 250, 424, 425, 426, + 541, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 428, 429, 0, 365, 0, 1113, 366, 0, - 367, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 55, 368, 0, 0, 0, 0, 0, - 369, 430, 431, 432, 433, 434, 0, 435, 826, 436, - 437, 438, 439, 440, 441, 442, 443, 827, 444, 0, - 360, 0, 0, 0, 0, 445, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 446, 447, 448, 0, 14, 361, 362, 449, - 450, 0, 0, 0, 0, 0, 407, 408, 451, 0, - 452, 0, 453, 454, 630, 0, 409, 410, 411, 412, - 413, 0, 0, 0, 0, 0, 414, 0, 415, 0, - 0, 0, 416, 0, 0, 0, 0, 0, 0, 0, - 417, 0, 0, 0, 0, 0, 418, 0, 0, 419, - 631, 0, 420, 0, 0, 0, 421, 0, 0, 0, - 363, 0, 0, 0, 364, 0, 0, 0, 0, 422, - 423, 0, 222, 223, 224, 0, 226, 227, 228, 229, - 230, 424, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 0, 244, 245, 246, 0, 0, 249, - 250, 251, 252, 425, 426, 427, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 428, 429, - 0, 365, 0, 1183, 366, 0, 367, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 55, - 368, 0, 0, 0, 0, 0, 369, 430, 431, 432, - 433, 434, 0, 435, 360, 436, 437, 438, 439, 440, - 441, 442, 443, 56, 444, 0, 0, 0, 0, 0, - 0, 445, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 361, 362, 0, 0, 0, 0, 0, 446, 447, - 448, 0, 14, 0, 0, 449, 450, 0, 0, 0, - 407, 408, 0, 0, 451, 0, 452, 0, 453, 454, - 409, 410, 411, 412, 413, 0, 0, 0, 0, 0, - 414, 0, 415, 0, 0, 0, 416, 0, 0, 0, - 0, 0, 0, 0, 417, 0, 0, 0, 0, 0, - 418, 0, 0, 419, 363, 0, 420, 0, 364, 0, - 421, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 422, 423, 0, 222, 223, 224, 0, - 226, 227, 228, 229, 230, 424, 232, 233, 234, 235, - 236, 237, 238, 239, 240, 241, 242, 0, 244, 245, - 246, 0, 0, 249, 250, 251, 252, 425, 426, 427, - 0, 0, 0, 0, 0, 365, 0, 1184, 366, 0, - 367, 0, 428, 429, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 368, 0, 0, 0, 0, 0, - 369, 0, 0, 55, 0, 0, 0, 0, 0, 0, - 0, 430, 431, 432, 433, 434, 0, 435, 826, 436, - 437, 438, 439, 440, 441, 442, 443, 827, 444, 0, - 0, 0, 0, 0, 0, 445, 0, 0, 0, 0, + 0, 429, 430, 431, 432, 433, 0, 434, 0, 435, + 436, 437, 438, 439, 440, 441, 442, 55, 443, 0, + 0, 0, 0, 0, 0, 444, 1166, 543, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 446, 447, 448, 0, 14, 0, 0, 449, - 450, 0, 0, 0, 407, 408, 0, 0, 828, 0, - 452, 829, 453, 454, 409, 410, 411, 412, 413, 0, - 0, 360, 0, 0, 414, 0, 415, 0, 0, 360, - 416, 0, 0, 0, 0, 0, 0, 0, 417, 0, - 0, 0, 0, 0, 418, 0, 0, 419, 361, 362, - 420, 0, 0, 0, 421, 0, 361, 362, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 422, 423, 0, - 222, 223, 224, 0, 226, 227, 228, 229, 230, 424, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, - 242, 0, 244, 245, 246, 0, 0, 249, 250, 251, - 252, 425, 426, 427, 0, 0, 0, 0, 0, 0, - 0, 363, 0, 0, 0, 364, 428, 429, 0, 363, - 0, 0, 0, 364, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 55, 0, 0, - 0, 0, 0, 0, 0, 430, 431, 432, 433, 434, - 0, 435, 0, 436, 437, 438, 439, 440, 441, 442, - 443, 56, 444, 0, 0, 0, 0, 0, 0, 445, - 0, 0, 365, 0, 1185, 366, 0, 367, 0, 0, - 365, 0, 1187, 366, 0, 367, 446, 447, 448, 0, - 14, 368, 0, 449, 450, 0, 0, 369, 0, 368, - 407, 408, 451, 501, 452, 369, 453, 454, 621, 0, - 409, 410, 411, 412, 413, 0, 0, 360, 0, 0, - 414, 0, 415, 0, 0, 0, 416, 0, 0, 0, - 0, 0, 0, 0, 417, 0, 0, 0, 0, 0, - 418, 0, 0, 419, 361, 362, 420, 0, 0, 0, - 421, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 422, 423, 0, 222, 223, 224, 0, - 226, 227, 228, 229, 230, 424, 232, 233, 234, 235, - 236, 237, 238, 239, 240, 241, 242, 0, 244, 245, - 246, 0, 0, 249, 250, 251, 252, 425, 426, 427, - 0, 0, 0, 0, 0, 0, 0, 363, 0, 0, - 0, 364, 428, 429, 0, 0, 0, 0, 0, 0, + 0, 0, 445, 446, 447, 0, 14, 0, 0, 448, + 449, 0, 0, 0, 406, 407, 0, 0, 450, 0, + 451, 0, 452, 453, 408, 409, 410, 411, 412, 0, + 0, 0, 0, 0, 413, 530, 414, 531, 0, 0, + 415, 0, 0, 0, 0, 0, 0, 0, 416, 0, + 0, 0, 0, 0, 417, 0, 0, 418, 0, 0, + 419, 536, 0, 0, 420, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 421, 422, 0, + 220, 221, 222, 0, 224, 225, 226, 227, 228, 423, + 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, + 240, 0, 242, 243, 244, 0, 0, 247, 248, 249, + 250, 424, 425, 426, 541, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 55, 0, 0, 0, 0, 0, 0, - 0, 430, 431, 432, 433, 434, 0, 435, 360, 436, - 437, 438, 439, 440, 441, 442, 443, 56, 444, 0, - 0, 0, 0, 0, 0, 445, 0, 0, 365, 0, - 1204, 366, 0, 367, 0, 361, 362, 0, 0, 0, - 0, 0, 446, 447, 448, 0, 14, 368, 0, 449, - 450, 0, 0, 369, 407, 408, 0, 0, 451, 0, - 452, 0, 453, 454, 409, 410, 411, 412, 413, 0, - 0, 0, 0, 0, 414, 0, 415, 0, 0, 0, - 416, 0, 0, 0, 0, 0, 0, 0, 417, 0, - 0, 0, 0, 0, 418, 0, 0, 419, 363, 0, - 420, 0, 364, 0, 421, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 422, 423, 0, - 222, 223, 224, 0, 226, 227, 228, 229, 230, 424, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, - 242, 0, 244, 245, 246, 0, 0, 249, 250, 251, - 252, 425, 426, 427, 0, 0, 0, 0, 0, 365, - 0, 1288, 366, 0, 367, 0, 428, 429, 0, 0, - 0, 0, 0, 0, 0, 717, 0, 0, 368, 0, - 0, 0, 0, 0, 369, 0, 0, 55, 0, 0, - 0, 0, 0, 0, 0, 430, 431, 432, 433, 434, - 0, 435, 360, 436, 437, 438, 439, 440, 441, 442, - 443, 56, 444, 0, 0, 0, 0, 0, 0, 445, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 361, - 362, 0, 0, 0, 0, 0, 446, 447, 448, 0, - 14, 0, 0, 449, 450, 0, 0, 0, 407, 408, - 0, 0, 451, 0, 452, 0, 453, 454, 409, 410, - 411, 412, 413, 0, 0, 0, 0, 0, 414, 0, - 415, 0, 0, 0, 416, 0, 0, 0, 0, 0, - 0, 0, 417, 0, 0, 0, 0, 0, 418, 0, - 0, 419, 363, 0, 420, 0, 364, 0, 421, 0, - 0, 0, 0, 0, 720, 0, 0, 0, 0, 0, - 0, 422, 423, 0, 222, 223, 224, 0, 226, 227, - 228, 229, 230, 424, 232, 233, 234, 235, 236, 237, - 238, 239, 240, 241, 242, 0, 244, 245, 246, 0, - 0, 249, 250, 251, 252, 425, 426, 427, 0, 0, - 0, 0, 0, 365, 0, 0, 366, 0, 367, 0, - 428, 429, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 368, 0, 0, 0, 0, 0, 369, 0, - 0, 55, 0, 0, 0, 0, 0, 0, 0, 430, - 431, 432, 433, 434, 0, 435, 0, 436, 437, 438, - 439, 440, 441, 442, 443, 56, 444, 0, 0, 0, - 0, 0, 0, 445, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 446, 447, 448, 0, 14, 0, 0, 449, 450, 0, - 0, 0, 407, 408, 0, 0, 451, 0, 452, 0, - 453, 454, 409, 410, 411, 412, 413, 0, 0, 0, - 0, 0, 414, 0, 415, 0, 0, 0, 416, 0, - 0, 0, 0, 0, 0, 0, 417, 0, 0, 0, - 0, 0, 418, 0, 0, 419, 0, 0, 420, 0, - 0, 0, 421, 0, 0, 726, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 422, 423, 0, 222, 223, - 224, 0, 226, 227, 228, 229, 230, 424, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 0, - 244, 245, 246, 0, 0, 249, 250, 251, 252, 425, - 426, 427, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 428, 429, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 429, 430, 431, 432, 433, + 0, 434, 0, 435, 436, 437, 438, 439, 440, 441, + 442, 55, 443, 0, 0, 0, 0, 0, 0, 444, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 55, 0, 0, 0, 0, - 0, 0, 0, 430, 431, 432, 433, 434, 0, 435, - 0, 436, 437, 438, 439, 440, 441, 442, 443, 56, - 444, 0, 0, 0, 0, 0, 0, 445, 0, 0, + 0, 0, 0, 0, 0, 0, 445, 446, 447, 0, + 14, 0, 0, 448, 449, 0, 0, 0, 0, 0, + 406, 407, 450, 0, 451, 0, 452, 453, 629, 0, + 408, 409, 410, 411, 412, 0, 0, 0, 0, 0, + 413, 0, 414, 0, 0, 0, 415, 0, 0, 0, + 0, 0, 0, 0, 416, 0, 0, 0, 0, 0, + 417, 0, 0, 418, 630, 0, 419, 0, 0, 0, + 420, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 421, 422, 0, 220, 221, 222, 0, + 224, 225, 226, 227, 228, 423, 230, 231, 232, 233, + 234, 235, 236, 237, 238, 239, 240, 0, 242, 243, + 244, 0, 0, 247, 248, 249, 250, 424, 425, 426, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 446, 447, 448, 0, 14, 0, - 0, 449, 450, 0, 0, 0, 407, 408, 0, 0, - 451, 0, 452, 0, 453, 454, 409, 410, 411, 412, - 413, 0, 0, 0, 0, 0, 414, 0, 415, 0, - 0, 0, 416, 0, 0, 0, 0, 0, 0, 0, - 417, 0, 0, 0, 0, 0, 418, 0, 0, 419, - 0, 0, 420, 0, 0, 0, 421, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 422, - 423, 0, 222, 223, 224, 0, 226, 227, 228, 229, - 230, 424, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 0, 244, 245, 246, 0, 0, 249, - 250, 251, 252, 425, 426, 427, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 428, 429, - 0, 0, 0, 0, 0, 0, 0, 729, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 55, - 0, 0, 0, 0, 0, 0, 0, 430, 431, 432, - 433, 434, 0, 435, 0, 436, 437, 438, 439, 440, - 441, 442, 443, 56, 444, 0, 0, 0, 0, 0, - 0, 445, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 446, 447, - 448, 0, 14, 0, 0, 449, 450, 0, 0, 0, - 407, 408, 0, 0, 451, 0, 452, 0, 453, 454, - 409, 410, 411, 412, 413, 0, 0, 866, 0, 0, - 414, 0, 415, 0, 0, 0, 416, 0, 0, 0, - 0, 0, 0, 0, 417, 0, 0, 0, 0, 0, - 418, 0, 0, 419, 0, 0, 420, 0, 0, 0, - 421, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 422, 423, 0, 222, 223, 224, 0, - 226, 227, 228, 229, 230, 424, 232, 233, 234, 235, - 236, 237, 238, 239, 240, 241, 242, 0, 244, 245, - 246, 0, 0, 249, 250, 251, 252, 425, 426, 427, + 0, 0, 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 428, 429, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 55, 0, 0, 0, 0, 0, 0, - 0, 430, 431, 432, 433, 434, 0, 435, 0, 436, - 437, 438, 439, 440, 441, 442, 443, 56, 444, 0, - 0, 0, 0, 0, 0, 445, 0, 0, 0, 0, + 0, 429, 430, 431, 432, 433, 0, 434, 826, 435, + 436, 437, 438, 439, 440, 441, 442, 827, 443, 0, + 0, 0, 0, 0, 0, 444, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 446, 447, 448, 0, 14, 0, 0, 449, - 450, 0, 0, 0, 407, 408, 0, 0, 451, 0, - 452, 0, 453, 454, 409, 410, 411, 412, 413, 0, - 0, 0, 0, 0, 414, 0, 415, 0, 0, 0, - 416, 0, 0, 0, 0, 0, 0, 0, 417, 0, - 0, 0, 0, 0, 418, 0, 0, 419, 0, 0, - 420, 0, 0, 0, 421, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 422, 423, 0, - 222, 223, 224, 0, 226, 227, 228, 229, 230, 424, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, - 242, 0, 244, 245, 246, 0, 0, 249, 250, 251, - 252, 425, 426, 427, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 428, 429, 0, 0, + 0, 0, 445, 446, 447, 0, 14, 0, 0, 448, + 449, 0, 0, 0, 0, 0, 406, 407, 450, 0, + 451, 0, 452, 453, 629, 0, 408, 409, 410, 411, + 412, 0, 0, 0, 0, 0, 413, 0, 414, 0, + 0, 0, 415, 0, 0, 0, 0, 0, 0, 0, + 416, 0, 0, 0, 0, 0, 417, 0, 0, 418, + 630, 0, 419, 0, 0, 0, 420, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 421, + 422, 0, 220, 221, 222, 0, 224, 225, 226, 227, + 228, 423, 230, 231, 232, 233, 234, 235, 236, 237, + 238, 239, 240, 0, 242, 243, 244, 0, 0, 247, + 248, 249, 250, 424, 425, 426, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 55, 0, 0, - 0, 0, 0, 0, 0, 430, 431, 432, 433, 434, - 0, 435, 0, 436, 437, 438, 439, 440, 441, 442, - 443, 56, 444, 0, 0, 0, 0, 0, 0, 445, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 446, 447, 448, 0, - 14, 0, 0, 449, 450, 0, 0, 0, 407, 408, - 0, 0, 451, 0, 452, 886, 453, 454, 409, 410, - 411, 412, 413, 0, 0, 0, 0, 0, 414, 0, - 415, 0, 0, 0, 416, 0, 0, 0, 0, 0, - 0, 0, 417, 0, 0, 0, 0, 0, 418, 0, - 0, 419, 0, 0, 420, 0, 0, 0, 421, 0, + 0, 0, 0, 0, 0, 0, 0, 429, 430, 431, + 432, 433, 0, 434, 0, 435, 436, 437, 438, 439, + 440, 441, 442, 55, 443, 0, 0, 0, 0, 0, + 0, 444, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 445, 446, + 447, 0, 14, 0, 0, 448, 449, 0, 0, 0, + 406, 407, 0, 0, 450, 0, 451, 0, 452, 453, + 408, 409, 410, 411, 412, 0, 0, 0, 0, 0, + 413, 0, 414, 0, 0, 0, 415, 0, 0, 0, + 0, 0, 0, 0, 416, 0, 0, 0, 0, 0, + 417, 0, 0, 418, 0, 0, 419, 0, 0, 0, + 420, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 421, 422, 0, 220, 221, 222, 0, + 224, 225, 226, 227, 228, 423, 230, 231, 232, 233, + 234, 235, 236, 237, 238, 239, 240, 0, 242, 243, + 244, 0, 0, 247, 248, 249, 250, 424, 425, 426, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 422, 423, 0, 222, 223, 224, 0, 226, 227, - 228, 229, 230, 424, 232, 233, 234, 235, 236, 237, - 238, 239, 240, 241, 242, 0, 244, 245, 246, 0, - 0, 249, 250, 251, 252, 425, 426, 427, 0, 0, + 0, 0, 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 428, 429, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 55, 0, 0, 0, 0, 0, 0, 0, 430, - 431, 432, 433, 434, 0, 435, 0, 436, 437, 438, - 439, 440, 441, 442, 443, 56, 444, 0, 0, 0, - 0, 0, 0, 445, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 972, 0, - 446, 447, 448, 0, 14, 0, 0, 449, 450, 0, - 0, 0, 407, 408, 0, 0, 451, 0, 452, 0, - 453, 454, 409, 410, 411, 412, 413, 0, 0, 0, - 0, 0, 414, 0, 415, 0, 0, 0, 416, 0, - 0, 0, 0, 0, 0, 0, 417, 0, 0, 0, - 0, 0, 418, 0, 0, 419, 0, 0, 420, 0, - 0, 0, 421, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 422, 423, 0, 222, 223, - 224, 0, 226, 227, 228, 229, 230, 424, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 0, - 244, 245, 246, 0, 0, 249, 250, 251, 252, 425, - 426, 427, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 428, 429, 0, 0, 0, 0, + 0, 429, 430, 431, 432, 433, 0, 434, 826, 435, + 436, 437, 438, 439, 440, 441, 442, 827, 443, 0, + 0, 0, 0, 0, 0, 444, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 55, 0, 0, 0, 0, - 0, 0, 0, 430, 431, 432, 433, 434, 0, 435, - 0, 436, 437, 438, 439, 440, 441, 442, 443, 56, - 444, 0, 0, 0, 0, 0, 0, 445, 0, 0, + 0, 0, 445, 446, 447, 0, 14, 0, 0, 448, + 449, 0, 0, 0, 406, 407, 0, 0, 828, 0, + 451, 829, 452, 453, 408, 409, 410, 411, 412, 0, + 0, 0, 0, 0, 413, 0, 414, 0, 0, 0, + 415, 0, 0, 0, 0, 0, 0, 0, 416, 0, + 0, 0, 0, 0, 417, 0, 0, 418, 0, 0, + 419, 0, 0, 0, 420, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 421, 422, 0, + 220, 221, 222, 0, 224, 225, 226, 227, 228, 423, + 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, + 240, 0, 242, 243, 244, 0, 0, 247, 248, 249, + 250, 424, 425, 426, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 446, 447, 448, 0, 14, 0, - 0, 449, 450, 0, 0, 0, 407, 408, 0, 0, - 451, 0, 452, 1143, 453, 454, 409, 410, 411, 412, - 413, 0, 0, 0, 0, 0, 414, 0, 415, 0, - 0, 0, 416, 0, 0, 0, 0, 0, 0, 0, - 417, 0, 0, 0, 0, 0, 418, 0, 0, 419, - 0, 0, 420, 0, 0, 0, 421, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 422, - 423, 0, 222, 223, 224, 0, 226, 227, 228, 229, - 230, 424, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 0, 244, 245, 246, 0, 0, 249, - 250, 251, 252, 425, 426, 427, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 428, 429, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 55, - 0, 0, 0, 0, 0, 0, 0, 430, 431, 432, - 433, 434, 0, 435, 0, 436, 437, 438, 439, 440, - 441, 442, 443, 56, 444, 0, 0, 0, 0, 0, - 0, 445, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 446, 447, - 448, 0, 14, 0, 0, 449, 450, 0, 0, 0, - 407, 408, 0, 0, 451, 0, 452, 1152, 453, 454, - 409, 410, 411, 412, 413, 0, 0, 0, 0, 0, - 414, 0, 415, 0, 0, 0, 416, 0, 0, 0, - 0, 0, 0, 0, 417, 0, 0, 0, 0, 0, - 418, 0, 0, 419, 0, 0, 420, 0, 0, 0, - 421, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 422, 423, 0, 222, 223, 224, 0, - 226, 227, 228, 229, 230, 424, 232, 233, 234, 235, - 236, 237, 238, 239, 240, 241, 242, 0, 244, 245, - 246, 0, 0, 249, 250, 251, 252, 425, 426, 427, + 0, 0, 0, 0, 0, 429, 430, 431, 432, 433, + 0, 434, 0, 435, 436, 437, 438, 439, 440, 441, + 442, 55, 443, 0, 0, 0, 0, 0, 0, 444, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 428, 429, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 445, 446, 447, 0, + 14, 0, 0, 448, 449, 0, 0, 0, 0, 0, + 406, 407, 450, 500, 451, 0, 452, 453, 620, 0, + 408, 409, 410, 411, 412, 0, 0, 0, 0, 0, + 413, 0, 414, 0, 0, 0, 415, 0, 0, 0, + 0, 0, 0, 0, 416, 0, 0, 0, 0, 0, + 417, 0, 0, 418, 0, 0, 419, 0, 0, 0, + 420, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 421, 422, 0, 220, 221, 222, 0, + 224, 225, 226, 227, 228, 423, 230, 231, 232, 233, + 234, 235, 236, 237, 238, 239, 240, 0, 242, 243, + 244, 0, 0, 247, 248, 249, 250, 424, 425, 426, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 55, 0, 0, 0, 0, 0, 0, - 0, 430, 431, 432, 433, 434, 0, 435, 0, 436, - 437, 438, 439, 440, 441, 442, 443, 56, 444, 0, - 0, 0, 0, 0, 0, 445, 0, 0, 0, 0, + 0, 0, 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 446, 447, 448, 0, 14, 0, 0, 449, - 450, 0, 0, 0, 407, 408, 0, 0, 451, 0, - 452, 1197, 453, 454, 409, 410, 411, 412, 413, 0, - 0, 0, 0, 0, 414, 0, 415, 0, 0, 0, - 416, 0, 0, 0, 0, 0, 0, 0, 417, 0, - 0, 0, 0, 0, 418, 0, 0, 419, 0, 0, - 420, 0, 0, 0, 421, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 422, 423, 0, - 222, 223, 224, 0, 226, 227, 228, 229, 230, 424, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, - 242, 0, 244, 245, 246, 0, 0, 249, 250, 251, - 252, 425, 426, 427, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 428, 429, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 55, 0, 0, - 0, 0, 0, 0, 0, 430, 431, 432, 433, 434, - 0, 435, 0, 436, 437, 438, 439, 440, 441, 442, - 443, 56, 444, 0, 0, 0, 0, 0, 0, 445, + 0, 429, 430, 431, 432, 433, 0, 434, 0, 435, + 436, 437, 438, 439, 440, 441, 442, 55, 443, 0, + 0, 0, 0, 0, 0, 444, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 446, 447, 448, 0, - 14, 0, 0, 449, 450, 0, 0, 0, 407, 408, - 0, 0, 451, 0, 452, 1269, 453, 454, 409, 410, - 411, 412, 413, 0, 0, 0, 0, 0, 414, 0, - 415, 0, 0, 0, 416, 0, 0, 0, 0, 0, - 0, 0, 417, 0, 0, 0, 0, 0, 418, 0, - 0, 419, 0, 0, 420, 0, 0, 0, 421, 0, + 0, 0, 445, 446, 447, 0, 14, 0, 0, 448, + 449, 0, 0, 0, 406, 407, 0, 0, 450, 0, + 451, 0, 452, 453, 408, 409, 410, 411, 412, 0, + 0, 0, 0, 0, 413, 0, 414, 0, 0, 0, + 415, 0, 0, 0, 0, 0, 0, 0, 416, 0, + 0, 0, 0, 0, 417, 0, 0, 418, 0, 0, + 419, 0, 0, 0, 420, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 421, 422, 0, + 220, 221, 222, 0, 224, 225, 226, 227, 228, 423, + 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, + 240, 0, 242, 243, 244, 0, 0, 247, 248, 249, + 250, 424, 425, 426, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 422, 423, 0, 222, 223, 224, 0, 226, 227, - 228, 229, 230, 424, 232, 233, 234, 235, 236, 237, - 238, 239, 240, 241, 242, 0, 244, 245, 246, 0, - 0, 249, 250, 251, 252, 425, 426, 427, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 428, 429, 0, 0, 0, 0, 0, 0, 0, 1285, + 0, 0, 0, 0, 0, 429, 430, 431, 432, 433, + 0, 434, 0, 435, 436, 437, 438, 439, 440, 441, + 442, 55, 443, 0, 0, 0, 0, 0, 0, 444, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 55, 0, 0, 0, 0, 0, 0, 0, 430, - 431, 432, 433, 434, 0, 435, 0, 436, 437, 438, - 439, 440, 441, 442, 443, 56, 444, 0, 0, 0, - 0, 0, 0, 445, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 445, 446, 447, 0, + 14, 0, 0, 448, 449, 0, 0, 0, 406, 407, + 0, 0, 450, 699, 451, 0, 452, 453, 408, 409, + 410, 411, 412, 0, 0, 0, 0, 0, 413, 0, + 414, 0, 0, 0, 415, 0, 0, 0, 0, 0, + 0, 0, 416, 0, 0, 0, 0, 0, 417, 0, + 0, 418, 0, 0, 419, 0, 0, 0, 420, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 446, 447, 448, 0, 14, 0, 0, 449, 450, 0, - 0, 0, 407, 408, 0, 0, 451, 0, 452, 0, - 453, 454, 409, 410, 411, 412, 413, 0, 0, 0, - 0, 0, 414, 0, 415, 0, 0, 0, 416, 0, - 0, 0, 0, 0, 0, 0, 417, 0, 0, 0, - 0, 0, 418, 0, 0, 419, 0, 0, 420, 0, - 0, 0, 421, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 422, 423, 0, 222, 223, - 224, 0, 226, 227, 228, 229, 230, 424, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 0, - 244, 245, 246, 0, 0, 249, 250, 251, 252, 425, - 426, 427, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 428, 429, 0, 0, 0, 0, + 0, 421, 422, 0, 220, 221, 222, 0, 224, 225, + 226, 227, 228, 423, 230, 231, 232, 233, 234, 235, + 236, 237, 238, 239, 240, 0, 242, 243, 244, 0, + 0, 247, 248, 249, 250, 424, 425, 426, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 55, 0, 0, 0, 0, - 0, 0, 0, 430, 431, 432, 433, 434, 0, 435, - 0, 436, 437, 438, 439, 440, 441, 442, 443, 56, - 444, 0, 0, 0, 0, 0, 0, 445, 0, 0, + 427, 428, 0, 0, 0, 0, 0, 0, 0, 717, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 446, 447, 448, 0, 14, 0, - 0, 449, 450, 0, 0, 0, 407, 408, 0, 0, - 451, 0, 452, 0, 453, 454, 409, 410, 411, 412, - 413, 0, 0, 0, 0, 0, 414, 0, 415, 0, - 0, 0, 416, 0, 0, 0, 0, 0, 0, 0, - 417, 0, 0, 0, 0, 0, 418, 0, 0, 419, - 0, 0, 420, 0, 0, 0, 421, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 422, - 423, 0, 222, 223, 224, 0, 226, 227, 228, 229, - 230, 424, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 0, 244, 245, 246, 0, 0, 249, - 250, 251, 252, 425, 426, 427, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 428, 429, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 429, + 430, 431, 432, 433, 0, 434, 0, 435, 436, 437, + 438, 439, 440, 441, 442, 55, 443, 0, 0, 0, + 0, 0, 0, 444, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 55, - 0, 0, 0, 0, 0, 0, 0, 430, 431, 432, - 433, 434, 0, 435, 0, 436, 437, 438, 439, 440, - 441, 442, 443, 56, 444, 0, 0, 0, 0, 216, - 0, 445, 0, 0, 0, 217, 0, 0, 0, 0, - 0, 218, 0, 0, 0, 0, 0, 0, 446, 447, - 448, 219, 14, 0, 0, 449, 450, 0, 0, 220, - 0, 0, 0, 0, 1128, 0, 452, 0, 453, 454, - 0, 0, 0, 0, 221, 0, 0, 0, 0, 0, - 0, 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, 0, 0, 0, 642, 643, 0, - 0, 216, 0, 0, 0, 0, 0, 217, 0, 0, - 0, 0, 0, 218, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 219, 0, 0, 0, 0, 55, 0, - 0, 220, 0, 642, 643, 0, 0, 0, 0, 0, - 0, 255, 0, 0, 0, 0, 221, 0, 0, 0, - 0, 0, 56, 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, 0, 0, 0, 0, - 0, 644, 645, 646, 647, 648, 0, 256, 649, 650, - 651, 652, 0, 653, 654, 655, 656, 657, 0, 658, - 659, 0, 0, 0, 0, 660, 661, 662, 0, 0, - 55, 663, 0, 0, 0, 642, 643, 644, 645, 646, - 647, 648, 0, 255, 649, 650, 651, 652, 0, 653, - 654, 655, 656, 657, 508, 658, 659, 0, 0, 0, - 0, 660, 661, 662, 0, 0, 664, 663, 665, 666, - 667, 668, 669, 670, 671, 672, 673, 674, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 675, 676, - 0, 0, 694, 0, 0, 0, 0, 0, 0, 256, - 0, 0, 664, 0, 665, 666, 667, 668, 669, 670, - 671, 672, 673, 674, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 675, 676, 0, 0, 768, 644, - 645, 646, 647, 648, 642, 643, 649, 650, 651, 652, - 0, 653, 654, 655, 656, 657, 0, 658, 659, 0, - 0, 0, 0, 660, 661, 662, 0, 0, 0, 663, - 0, 0, 0, 0, 0, 642, 643, 0, 0, 0, + 445, 446, 447, 0, 14, 0, 0, 448, 449, 0, + 0, 0, 406, 407, 0, 0, 450, 0, 451, 0, + 452, 453, 408, 409, 410, 411, 412, 0, 0, 0, + 0, 0, 413, 0, 414, 0, 0, 0, 415, 0, + 0, 0, 0, 0, 0, 0, 416, 0, 0, 0, + 0, 0, 417, 0, 0, 418, 0, 0, 419, 0, + 0, 0, 420, 0, 0, 0, 0, 0, 720, 0, + 0, 0, 0, 0, 0, 421, 422, 0, 220, 221, + 222, 0, 224, 225, 226, 227, 228, 423, 230, 231, + 232, 233, 234, 235, 236, 237, 238, 239, 240, 0, + 242, 243, 244, 0, 0, 247, 248, 249, 250, 424, + 425, 426, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 664, 0, 665, 666, 667, 668, - 669, 670, 671, 672, 673, 674, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 675, 676, 0, 0, - 910, 0, 0, 0, 0, 0, 0, 0, 644, 645, - 646, 647, 648, 0, 0, 649, 650, 651, 652, 0, - 653, 654, 655, 656, 657, 0, 658, 659, 0, 0, - 0, 0, 660, 661, 662, 0, 0, 0, 663, 644, - 645, 646, 647, 648, 642, 643, 649, 650, 651, 652, - 0, 653, 654, 655, 656, 657, 0, 658, 659, 0, - 0, 0, 0, 660, 661, 662, 0, 0, 0, 663, - 0, 0, 0, 664, 0, 665, 666, 667, 668, 669, - 670, 671, 672, 673, 674, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 675, 676, 0, 0, 983, - 0, 0, 0, 0, 664, 0, 665, 666, 667, 668, - 669, 670, 671, 672, 673, 674, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 675, 676, 0, 0, - 986, 0, 0, 0, 0, 0, 642, 643, 644, 645, - 646, 647, 648, 0, 0, 649, 650, 651, 652, 0, - 653, 654, 655, 656, 657, 0, 658, 659, 0, 0, - 0, 0, 660, 661, 662, 0, 0, 0, 663, 642, - 643, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 429, 430, 431, 432, 433, 0, 434, + 0, 435, 436, 437, 438, 439, 440, 441, 442, 55, + 443, 0, 0, 0, 0, 0, 0, 444, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 445, 446, 447, 0, 14, 0, + 0, 448, 449, 0, 0, 0, 406, 407, 0, 0, + 450, 0, 451, 0, 452, 453, 408, 409, 410, 411, + 412, 0, 0, 0, 0, 0, 413, 0, 414, 0, + 0, 0, 415, 0, 0, 0, 0, 0, 0, 0, + 416, 0, 0, 0, 0, 0, 417, 0, 0, 418, + 0, 0, 419, 0, 0, 0, 420, 0, 0, 726, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 421, + 422, 0, 220, 221, 222, 0, 224, 225, 226, 227, + 228, 423, 230, 231, 232, 233, 234, 235, 236, 237, + 238, 239, 240, 0, 242, 243, 244, 0, 0, 247, + 248, 249, 250, 424, 425, 426, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 664, 0, 665, 666, 667, 668, 669, - 670, 671, 672, 673, 674, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 675, 676, 0, 0, 995, - 644, 645, 646, 647, 648, 0, 0, 649, 650, 651, - 652, 0, 653, 654, 655, 656, 657, 0, 658, 659, - 0, 0, 0, 0, 660, 661, 662, 0, 0, 0, - 663, 642, 643, 644, 645, 646, 647, 648, 0, 0, - 649, 650, 651, 652, 0, 653, 654, 655, 656, 657, - 0, 658, 659, 0, 0, 0, 0, 660, 661, 662, - 0, 0, 0, 663, 0, 664, 0, 665, 666, 667, - 668, 669, 670, 671, 672, 673, 674, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 675, 676, 0, - 0, 996, 0, 0, 0, 0, 0, 0, 664, 0, - 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 675, 676, 0, 0, 997, 644, 645, 646, 647, 648, - 642, 643, 649, 650, 651, 652, 0, 653, 654, 655, - 656, 657, 0, 658, 659, 0, 0, 0, 0, 660, - 661, 662, 0, 0, 0, 663, 0, 0, 0, 0, - 0, 642, 643, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 429, 430, 431, + 432, 433, 0, 434, 0, 435, 436, 437, 438, 439, + 440, 441, 442, 55, 443, 0, 0, 0, 0, 0, + 0, 444, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 445, 446, + 447, 0, 14, 0, 0, 448, 449, 0, 0, 0, + 406, 407, 0, 0, 450, 0, 451, 0, 452, 453, + 408, 409, 410, 411, 412, 0, 0, 0, 0, 0, + 413, 0, 414, 0, 0, 0, 415, 0, 0, 0, + 0, 0, 0, 0, 416, 0, 0, 0, 0, 0, + 417, 0, 0, 418, 0, 0, 419, 0, 0, 0, + 420, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 421, 422, 0, 220, 221, 222, 0, + 224, 225, 226, 227, 228, 423, 230, 231, 232, 233, + 234, 235, 236, 237, 238, 239, 240, 0, 242, 243, + 244, 0, 0, 247, 248, 249, 250, 424, 425, 426, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 427, 428, 0, 0, 0, 0, 0, 0, + 0, 729, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 664, 0, 665, 666, 667, 668, 669, 670, 671, 672, - 673, 674, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 675, 676, 0, 0, 998, 0, 0, 0, - 0, 0, 0, 0, 644, 645, 646, 647, 648, 0, - 0, 649, 650, 651, 652, 0, 653, 654, 655, 656, - 657, 0, 658, 659, 0, 0, 0, 0, 660, 661, - 662, 0, 0, 0, 663, 644, 645, 646, 647, 648, - 642, 643, 649, 650, 651, 652, 0, 653, 654, 655, - 656, 657, 0, 658, 659, 0, 0, 0, 0, 660, - 661, 662, 0, 0, 0, 663, 0, 0, 0, 664, - 0, 665, 666, 667, 668, 669, 670, 671, 672, 673, - 674, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 675, 676, 0, 0, 999, 0, 0, 0, 0, - 664, 0, 665, 666, 667, 668, 669, 670, 671, 672, - 673, 674, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 675, 676, 0, 0, 1000, 0, 0, 0, - 0, 0, 642, 643, 644, 645, 646, 647, 648, 0, - 0, 649, 650, 651, 652, 0, 653, 654, 655, 656, - 657, 0, 658, 659, 0, 0, 0, 0, 660, 661, - 662, 0, 0, 0, 663, 642, 643, 0, 0, 0, + 0, 429, 430, 431, 432, 433, 0, 434, 0, 435, + 436, 437, 438, 439, 440, 441, 442, 55, 443, 0, + 0, 0, 0, 0, 0, 444, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 445, 446, 447, 0, 14, 0, 0, 448, + 449, 0, 0, 0, 406, 407, 0, 0, 450, 0, + 451, 0, 452, 453, 408, 409, 410, 411, 412, 0, + 0, 866, 0, 0, 413, 0, 414, 0, 0, 0, + 415, 0, 0, 0, 0, 0, 0, 0, 416, 0, + 0, 0, 0, 0, 417, 0, 0, 418, 0, 0, + 419, 0, 0, 0, 420, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 421, 422, 0, + 220, 221, 222, 0, 224, 225, 226, 227, 228, 423, + 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, + 240, 0, 242, 243, 244, 0, 0, 247, 248, 249, + 250, 424, 425, 426, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 664, - 0, 665, 666, 667, 668, 669, 670, 671, 672, 673, - 674, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 675, 676, 0, 0, 1075, 644, 645, 646, 647, - 648, 0, 0, 649, 650, 651, 652, 0, 653, 654, - 655, 656, 657, 0, 658, 659, 0, 0, 0, 0, - 660, 661, 662, 0, 0, 0, 663, 642, 643, 644, - 645, 646, 647, 648, 0, 0, 649, 650, 651, 652, - 0, 653, 654, 655, 656, 657, 0, 658, 659, 0, - 0, 0, 0, 660, 661, 662, 0, 0, 0, 663, - 0, 664, 0, 665, 666, 667, 668, 669, 670, 671, - 672, 673, 674, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 675, 676, 0, 0, 1095, 0, 0, - 0, 0, 0, 0, 664, 0, 665, 666, 667, 668, - 669, 670, 671, 672, 673, 674, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 675, 676, 0, 0, - 1162, 644, 645, 646, 647, 648, 642, 643, 649, 650, - 651, 652, 0, 653, 654, 655, 656, 657, 0, 658, - 659, 0, 0, 0, 0, 660, 661, 662, 0, 0, - 0, 663, 0, 0, 0, 0, 0, 642, 643, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 429, 430, 431, 432, 433, + 0, 434, 0, 435, 436, 437, 438, 439, 440, 441, + 442, 55, 443, 0, 0, 0, 0, 0, 0, 444, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 664, 0, 665, 666, - 667, 668, 669, 670, 671, 672, 673, 674, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 675, 676, - 0, 0, 1168, 0, 0, 0, 0, 0, 0, 0, - 644, 645, 646, 647, 648, 0, 0, 649, 650, 651, - 652, 0, 653, 654, 655, 656, 657, 0, 658, 659, - 0, 0, 0, 0, 660, 661, 662, 0, 0, 0, - 663, 644, 645, 646, 647, 648, 642, 643, 649, 650, - 651, 652, 0, 653, 654, 655, 656, 657, 0, 658, - 659, 0, 0, 0, 0, 660, 661, 662, 0, 0, - 0, 663, 0, 0, 0, 664, 0, 665, 666, 667, - 668, 669, 670, 671, 672, 673, 674, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 675, 676, 0, - 0, 1202, 0, 0, 0, 0, 664, 0, 665, 666, - 667, 668, 669, 670, 671, 672, 673, 674, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 675, 676, - 0, 0, 1203, 0, 0, 0, 0, 0, 642, 643, - 644, 645, 646, 647, 648, 0, 0, 649, 650, 651, - 652, 0, 653, 654, 655, 656, 657, 0, 658, 659, - 0, 0, 0, 0, 660, 661, 662, 0, 0, 0, - 663, 642, 643, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 445, 446, 447, 0, + 14, 0, 0, 448, 449, 0, 0, 0, 406, 407, + 0, 0, 450, 0, 451, 0, 452, 453, 408, 409, + 410, 411, 412, 0, 0, 0, 0, 0, 413, 0, + 414, 0, 0, 0, 415, 0, 0, 0, 0, 0, + 0, 0, 416, 0, 0, 0, 0, 0, 417, 0, + 0, 418, 0, 0, 419, 0, 0, 0, 420, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 421, 422, 0, 220, 221, 222, 0, 224, 225, + 226, 227, 228, 423, 230, 231, 232, 233, 234, 235, + 236, 237, 238, 239, 240, 0, 242, 243, 244, 0, + 0, 247, 248, 249, 250, 424, 425, 426, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 664, 0, 665, 666, 667, - 668, 669, 670, 671, 672, 673, 674, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 675, 676, 0, - 0, 1206, 644, 645, 646, 647, 648, 0, 0, 649, - 650, 651, 652, 0, 653, 654, 655, 656, 657, 0, - 658, 659, 0, 0, 0, 0, 660, 661, 662, 0, - 0, 0, 663, 642, 643, 644, 645, 646, 647, 648, - 0, 0, 649, 650, 651, 652, 0, 653, 654, 655, - 656, 657, 0, 658, 659, 0, 0, 0, 0, 660, - 661, 662, 0, 0, 0, 663, 0, 664, 0, 665, - 666, 667, 668, 669, 670, 671, 672, 673, 674, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 675, - 676, 0, 0, 1223, 0, 0, 0, 0, 0, 0, - 664, 0, 665, 666, 667, 668, 669, 670, 671, 672, - 673, 674, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 675, 676, 0, 0, 1225, 644, 645, 646, - 647, 648, 642, 643, 649, 650, 651, 652, 0, 653, - 654, 655, 656, 657, 0, 658, 659, 0, 0, 0, - 0, 660, 661, 662, 0, 0, 0, 663, 0, 0, - 0, 0, 0, 642, 643, 0, 0, 0, 0, 0, + 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 429, + 430, 431, 432, 433, 0, 434, 0, 435, 436, 437, + 438, 439, 440, 441, 442, 55, 443, 0, 0, 0, + 0, 0, 0, 444, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 664, 0, 665, 666, 667, 668, 669, 670, - 671, 672, 673, 674, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 675, 676, 0, 0, 1227, 0, - 0, 0, 0, 0, 0, 0, 644, 645, 646, 647, - 648, 0, 0, 649, 650, 651, 652, 0, 653, 654, - 655, 656, 657, 0, 658, 659, 0, 0, 0, 0, - 660, 661, 662, 0, 0, 0, 663, 644, 645, 646, - 647, 648, 642, 643, 649, 650, 651, 652, 0, 653, - 654, 655, 656, 657, 0, 658, 659, 0, 0, 0, - 0, 660, 661, 662, 0, 0, 0, 663, 0, 0, - 0, 664, 0, 665, 666, 667, 668, 669, 670, 671, - 672, 673, 674, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 675, 676, 0, 0, 1231, 0, 0, - 0, 0, 664, 0, 665, 666, 667, 668, 669, 670, - 671, 672, 673, 674, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 675, 676, 0, 0, 1291, 0, - 0, 0, 0, 0, 642, 643, 644, 645, 646, 647, - 648, 0, 0, 649, 650, 651, 652, 0, 653, 654, - 655, 656, 657, 0, 658, 659, 0, 0, 0, 0, - 660, 661, 662, 0, 0, 0, 663, 642, 643, 0, + 445, 446, 447, 0, 14, 0, 0, 448, 449, 0, + 0, 0, 406, 407, 0, 0, 450, 0, 451, 886, + 452, 453, 408, 409, 410, 411, 412, 0, 0, 0, + 0, 0, 413, 0, 414, 0, 0, 0, 415, 0, + 0, 0, 0, 0, 0, 0, 416, 0, 0, 0, + 0, 0, 417, 0, 0, 418, 0, 0, 419, 0, + 0, 0, 420, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 421, 422, 0, 220, 221, + 222, 0, 224, 225, 226, 227, 228, 423, 230, 231, + 232, 233, 234, 235, 236, 237, 238, 239, 240, 0, + 242, 243, 244, 0, 0, 247, 248, 249, 250, 424, + 425, 426, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 429, 430, 431, 432, 433, 0, 434, + 0, 435, 436, 437, 438, 439, 440, 441, 442, 55, + 443, 0, 0, 0, 0, 0, 0, 444, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 664, 0, 665, 666, 667, 668, 669, 670, 671, - 672, 673, 674, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 675, 676, 0, 0, 1292, 644, 645, - 646, 647, 648, 0, 0, 649, 650, 651, 652, 0, - 653, 654, 655, 656, 657, 0, 658, 659, 0, 0, - 0, 0, 660, 661, 662, 0, 0, 0, 663, 642, - 643, 644, 645, 646, 647, 648, 0, 0, 649, 650, - 651, 652, 0, 653, 654, 655, 656, 657, 0, 658, - 659, 0, 0, 0, 0, 660, 661, 662, 0, 0, - 0, 663, 0, 664, 0, 665, 666, 667, 668, 669, - 670, 671, 672, 673, 674, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 675, 676, 0, 0, 1293, - 0, 0, 0, 0, 0, 0, 664, 0, 665, 666, - 667, 668, 669, 670, 671, 672, 673, 674, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 675, 676, - 0, 0, 1313, 644, 645, 646, 647, 648, 642, 643, - 649, 650, 651, 652, 0, 653, 654, 655, 656, 657, - 0, 658, 659, 0, 0, 0, 0, 660, 661, 662, - 0, 0, 0, 663, 0, 0, 0, 0, 0, 642, - 643, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 972, 0, 445, 446, 447, 0, 14, 0, + 0, 448, 449, 0, 0, 0, 406, 407, 0, 0, + 450, 0, 451, 0, 452, 453, 408, 409, 410, 411, + 412, 0, 0, 0, 0, 0, 413, 0, 414, 0, + 0, 0, 415, 0, 0, 0, 0, 0, 0, 0, + 416, 0, 0, 0, 0, 0, 417, 0, 0, 418, + 0, 0, 419, 0, 0, 0, 420, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 421, + 422, 0, 220, 221, 222, 0, 224, 225, 226, 227, + 228, 423, 230, 231, 232, 233, 234, 235, 236, 237, + 238, 239, 240, 0, 242, 243, 244, 0, 0, 247, + 248, 249, 250, 424, 425, 426, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 664, 0, - 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 675, 676, 0, 0, 1324, 0, 0, 0, 0, 0, - 0, 0, 644, 645, 646, 647, 648, 0, 0, 649, - 650, 651, 652, 0, 653, 654, 655, 656, 657, 0, - 658, 659, 0, 0, 0, 0, 660, 661, 662, 0, - 0, 0, 663, 644, 645, 646, 647, 648, 642, 643, - 649, 650, 651, 652, 0, 653, 654, 655, 656, 657, - 0, 658, 659, 0, 0, 0, 0, 660, 661, 662, - 0, 0, 0, 663, 0, 0, 0, 664, 0, 665, - 666, 667, 668, 669, 670, 671, 672, 673, 674, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 675, - 676, 0, 0, 1334, 0, 0, 0, 0, 664, 0, - 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, + 0, 0, 0, 0, 0, 0, 0, 429, 430, 431, + 432, 433, 0, 434, 0, 435, 436, 437, 438, 439, + 440, 441, 442, 55, 443, 0, 0, 0, 0, 0, + 0, 444, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 445, 446, + 447, 0, 14, 0, 0, 448, 449, 0, 0, 0, + 406, 407, 0, 0, 450, 0, 451, 1143, 452, 453, + 408, 409, 410, 411, 412, 0, 0, 0, 0, 0, + 413, 0, 414, 0, 0, 0, 415, 0, 0, 0, + 0, 0, 0, 0, 416, 0, 0, 0, 0, 0, + 417, 0, 0, 418, 0, 0, 419, 0, 0, 0, + 420, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 421, 422, 0, 220, 221, 222, 0, + 224, 225, 226, 227, 228, 423, 230, 231, 232, 233, + 234, 235, 236, 237, 238, 239, 240, 0, 242, 243, + 244, 0, 0, 247, 248, 249, 250, 424, 425, 426, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 675, 676, 0, 0, 1364, 0, 0, 0, 0, 0, - 642, 643, 644, 645, 646, 647, 648, 0, 0, 649, - 650, 651, 652, 0, 653, 654, 655, 656, 657, 0, - 658, 659, 0, 0, 0, 0, 660, 661, 662, 0, - 0, 0, 663, 642, 643, 0, 0, 0, 0, 0, + 0, 0, 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 664, 0, 665, - 666, 667, 668, 669, 670, 671, 672, 673, 674, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 675, - 676, 0, 0, 1371, 644, 645, 646, 647, 648, 0, - 0, 649, 650, 651, 652, 0, 653, 654, 655, 656, - 657, 0, 658, 659, 0, 0, 0, 0, 660, 661, - 662, 0, 0, 0, 663, 642, 643, 644, 645, 646, - 647, 648, 0, 0, 649, 650, 651, 652, 0, 653, - 654, 655, 656, 657, 0, 658, 659, 0, 0, 0, - 0, 660, 661, 662, 0, 0, 0, 663, 0, 664, - 0, 665, 666, 667, 668, 669, 670, 671, 672, 673, - 674, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 675, 676, 699, 0, 0, 0, 0, 0, 0, - 0, 0, 664, 0, 665, 666, 667, 668, 669, 670, - 671, 672, 673, 674, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 675, 676, 906, 642, 643, 644, - 645, 646, 647, 648, 0, 0, 649, 650, 651, 652, - 0, 653, 654, 655, 656, 657, 0, 658, 659, 0, - 0, 0, 0, 660, 661, 662, 0, 0, 0, 663, - 642, 643, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 429, 430, 431, 432, 433, 0, 434, 0, 435, + 436, 437, 438, 439, 440, 441, 442, 55, 443, 0, + 0, 0, 0, 0, 0, 444, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 445, 446, 447, 0, 14, 0, 0, 448, + 449, 0, 0, 0, 406, 407, 0, 0, 450, 0, + 451, 1152, 452, 453, 408, 409, 410, 411, 412, 0, + 0, 0, 0, 0, 413, 0, 414, 0, 0, 0, + 415, 0, 0, 0, 0, 0, 0, 0, 416, 0, + 0, 0, 0, 0, 417, 0, 0, 418, 0, 0, + 419, 0, 0, 0, 420, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 421, 422, 0, + 220, 221, 222, 0, 224, 225, 226, 227, 228, 423, + 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, + 240, 0, 242, 243, 244, 0, 0, 247, 248, 249, + 250, 424, 425, 426, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 664, 0, 665, 666, 667, 668, - 669, 670, 671, 672, 673, 674, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 675, 676, 1033, 0, - 0, 644, 645, 646, 647, 648, 0, 0, 649, 650, - 651, 652, 0, 653, 654, 655, 656, 657, 0, 658, - 659, 0, 0, 0, 0, 660, 661, 662, 0, 0, - 0, 663, 642, 643, 644, 645, 646, 647, 648, 0, - 0, 649, 650, 651, 652, 0, 653, 654, 655, 656, - 657, 0, 658, 659, 0, 0, 0, 0, 660, 661, - 662, 0, 0, 0, 663, 0, 664, 0, 665, 666, - 667, 668, 669, 670, 671, 672, 673, 674, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 675, 676, - 1048, 0, 0, 0, 0, 0, 0, 0, 0, 664, - 0, 665, 666, 667, 668, 669, 670, 671, 672, 673, - 674, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 675, 676, 1150, 0, 0, 644, 645, 646, 647, - 648, 642, 643, 649, 650, 651, 652, 0, 653, 654, - 655, 656, 657, 0, 658, 659, 0, 0, 0, 0, - 660, 661, 662, 0, 0, 0, 663, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 429, 430, 431, 432, 433, + 0, 434, 0, 435, 436, 437, 438, 439, 440, 441, + 442, 55, 443, 0, 0, 0, 0, 0, 0, 444, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 445, 446, 447, 0, + 14, 0, 0, 448, 449, 0, 0, 0, 406, 407, + 0, 0, 450, 0, 451, 1197, 452, 453, 408, 409, + 410, 411, 412, 0, 0, 0, 0, 0, 413, 0, + 414, 0, 0, 0, 415, 0, 0, 0, 0, 0, + 0, 0, 416, 0, 0, 0, 0, 0, 417, 0, + 0, 418, 0, 0, 419, 0, 0, 0, 420, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 664, 0, 665, 666, 667, 668, 669, 670, 671, - 672, 673, 674, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 675, 676, 1155, 0, 744, 745, 746, - 747, 748, 749, 750, 751, 644, 645, 646, 647, 648, - 752, 753, 649, 650, 651, 652, 754, 653, 654, 655, - 656, 657, 755, 658, 659, 756, 757, 267, 268, 660, - 661, 662, 758, 759, 760, 663, 0, 0, 0, 0, - 0, 0, 0, 0, 269, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 642, 643, - 0, 0, -316, 0, 0, 0, 0, 0, 0, 761, - 664, 0, 665, 666, 667, 668, 669, 670, 671, 672, - 673, 674, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 675, 676, 0, 0, 0, 0, 0, 0, + 0, 421, 422, 0, 220, 221, 222, 0, 224, 225, + 226, 227, 228, 423, 230, 231, 232, 233, 234, 235, + 236, 237, 238, 239, 240, 0, 242, 243, 244, 0, + 0, 247, 248, 249, 250, 424, 425, 426, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 270, 271, 272, 273, 274, 275, 276, - 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 287, 0, 0, 288, 289, 290, 0, 0, 291, 292, - 293, 294, 295, 0, 0, 296, 297, 298, 299, 300, - 301, 302, 644, 645, 646, 647, 648, 642, 643, 649, - 650, 651, 652, 0, 653, 654, 655, 656, 657, 0, - 658, 659, 0, 0, 813, 0, 660, 661, 662, 0, - 0, 0, 663, 0, 0, 0, 303, 0, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313, 0, 0, - 314, 315, 0, 0, 0, 0, 0, 0, 316, 317, - 0, 0, 0, 0, 0, 0, 0, 664, 0, 665, - 666, 667, 668, 669, 670, 671, 672, 673, 674, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 675, - 676, 0, 0, 0, 0, 0, 642, 643, 0, 0, - 0, 644, 645, 646, 647, 648, 0, 0, 649, 650, - 651, 652, 0, 653, 654, 655, 656, 657, 0, 658, - 659, 0, 0, 0, 0, 660, 661, 662, 0, 0, - 0, 663, 642, 643, 0, 0, 0, 0, 0, 0, + 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 322, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 664, 0, 665, 666, - 667, 668, 669, 670, 671, 672, 673, 674, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 675, 676, - 644, 645, 646, 647, 648, 0, 0, 649, 650, 651, - 652, 0, 653, 654, 655, 656, 657, 0, 658, 659, - 0, 0, 0, 0, 660, 661, 662, 0, 0, 0, - 663, 642, 643, 0, 0, 0, 644, 645, 646, 647, - 648, 0, 0, 649, 650, 651, 652, 0, 653, 654, - 655, 656, 657, 0, 658, 659, 0, 961, 0, 0, - 660, 661, 662, 0, 0, 664, 663, 665, 666, 667, - 668, 669, 670, 671, 672, 673, 674, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 675, 676, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 429, + 430, 431, 432, 433, 0, 434, 0, 435, 436, 437, + 438, 439, 440, 441, 442, 55, 443, 0, 0, 0, + 0, 0, 0, 444, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 664, 1038, 665, 666, 667, 668, 669, 670, 671, - 672, 673, 674, 642, 643, 0, 0, 0, 0, 0, - 0, 0, 0, 675, 676, 644, 645, 646, 647, 648, - 0, 0, 649, 650, 651, 652, 0, 653, 654, 655, - 656, 657, 0, 658, 659, 642, 643, 0, 0, 660, - 661, 662, 0, 0, 0, 663, 0, 0, 0, 0, + 445, 446, 447, 0, 14, 0, 0, 448, 449, 0, + 0, 0, 406, 407, 0, 0, 450, 0, 451, 1269, + 452, 453, 408, 409, 410, 411, 412, 0, 0, 0, + 0, 0, 413, 0, 414, 0, 0, 0, 415, 0, + 0, 0, 0, 0, 0, 0, 416, 0, 0, 0, + 0, 0, 417, 0, 0, 418, 0, 0, 419, 0, + 0, 0, 420, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 421, 422, 0, 220, 221, + 222, 0, 224, 225, 226, 227, 228, 423, 230, 231, + 232, 233, 234, 235, 236, 237, 238, 239, 240, 0, + 242, 243, 244, 0, 0, 247, 248, 249, 250, 424, + 425, 426, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 427, 428, 0, 0, 0, 0, + 0, 0, 0, 1285, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 429, 430, 431, 432, 433, 0, 434, + 0, 435, 436, 437, 438, 439, 440, 441, 442, 55, + 443, 0, 0, 0, 0, 0, 0, 444, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1086, 0, 0, 0, 0, 0, 0, 0, - 664, 0, 665, 666, 667, 668, 669, 670, 671, 672, - 673, 674, 0, 0, 0, 0, 0, 644, 645, 646, - 647, 648, 675, 676, 649, 650, 651, 652, 0, 653, - 654, 655, 656, 657, 0, 658, 659, 642, 643, 0, - 0, 660, 661, 662, 0, 0, 0, 663, 0, 644, - 645, 646, 647, 648, 0, 0, 649, 650, 651, 652, - 0, 653, 654, 655, 656, 657, 0, 658, 659, 0, - 1116, 642, 643, 660, 661, 662, 0, 0, 0, 663, - 0, 0, 664, 0, 665, 666, 667, 668, 669, 670, - 671, 672, 673, 674, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 675, 676, 1325, 0, 0, 0, - 0, 0, 0, 0, 664, 0, 665, 666, 667, 668, - 669, 670, 671, 672, 673, 674, 0, 0, 0, 0, - 0, 644, 645, 646, 647, 648, 675, 676, 649, 650, - 651, 652, 0, 653, 654, 655, 656, 657, 0, 658, - 659, 0, 0, 642, 643, 660, 661, 662, 0, 0, - 0, 663, 0, 0, 0, 644, 645, 646, 647, 648, - 0, 0, 649, 650, 651, 652, 0, 653, 654, 655, - 656, 657, 0, 658, 659, 642, 643, 0, 1366, 660, - 661, 662, 0, 0, 0, 663, 664, 0, 665, 666, - 667, 668, 669, 670, 671, 672, 673, 674, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 675, 676, - 0, 0, 1385, 0, 0, 0, 0, 0, 0, 0, - 664, 0, 665, 666, 667, 668, 669, 670, 671, 672, - 673, 674, 0, 0, 0, 0, 0, 644, 645, 646, - 647, 648, 675, 676, 649, 650, 651, 652, 0, 653, - 654, 655, 656, 657, 0, 658, 659, 642, 643, 0, - 0, 660, 661, 662, 0, 0, 0, 663, 0, 644, - 645, 646, 647, 648, 0, 0, 649, 650, 651, 652, - 0, 653, 654, 655, 656, 657, 0, 658, 659, 642, - 643, 0, 0, 660, 661, 662, 0, 0, 0, -674, - 0, 0, 664, 0, 665, 666, 667, 668, 669, 670, - 671, 672, 673, 674, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 675, 676, 0, 0, 0, 0, - 0, 0, 0, 0, 664, 0, 665, 666, 667, 668, - 669, 670, 671, 672, 673, 674, 0, 0, 0, 0, - 0, 644, 645, 646, 647, 648, 675, 676, 649, 650, - 651, 652, 0, 653, 654, 655, 656, 657, 0, 658, - 659, 642, 643, 0, 0, 660, 661, 662, 0, 0, - 0, 0, 0, 644, 645, 646, 647, 648, 0, 0, - 649, 650, 651, 652, 0, 653, 654, 655, 656, 657, - 0, 658, 659, 642, 643, 0, 0, 660, 0, 0, - 0, 0, 0, 0, 0, 0, 664, 0, 665, 666, - 667, 668, 669, 670, 671, 672, 673, 674, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 675, 676, + 0, 0, 0, 0, 445, 446, 447, 0, 14, 0, + 0, 448, 449, 0, 0, 0, 406, 407, 0, 0, + 450, 0, 451, 0, 452, 453, 408, 409, 410, 411, + 412, 0, 0, 0, 0, 0, 413, 0, 414, 0, + 0, 0, 415, 0, 0, 0, 0, 0, 0, 0, + 416, 0, 0, 0, 0, 0, 417, 0, 0, 418, + 0, 0, 419, 0, 0, 0, 420, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 421, + 422, 0, 220, 221, 222, 0, 224, 225, 226, 227, + 228, 423, 230, 231, 232, 233, 234, 235, 236, 237, + 238, 239, 240, 0, 242, 243, 244, 0, 0, 247, + 248, 249, 250, 424, 425, 426, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, - 0, 0, 0, 0, 0, 644, 645, 646, 647, 648, - 675, 676, 649, 650, 651, 652, 0, 653, 654, 655, - 656, 657, 0, 658, 659, 642, 643, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 644, 645, 646, - 647, 648, 0, 0, 649, 650, 651, 652, 0, 653, - 654, 655, 656, 657, 0, 658, 659, 642, 643, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 665, 666, 667, 668, 669, 670, 671, 672, - 673, 674, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 675, 676, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 666, 667, 668, 669, 670, - 671, 672, 673, 674, 0, 0, 0, 0, 0, 644, - 645, 646, 647, 648, 675, 676, 649, 650, 651, 652, - 0, 653, 654, 655, 656, 657, 0, 658, 659, 0, + 0, 0, 0, 0, 0, 0, 0, 429, 430, 431, + 432, 433, 0, 434, 0, 435, 436, 437, 438, 439, + 440, 441, 442, 55, 443, 0, 0, 0, 0, 0, + 0, 444, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 445, 446, + 447, 0, 14, 0, 0, 448, 449, 0, 0, 0, + 406, 407, 0, 0, 450, 0, 451, 0, 452, 453, + 408, 409, 410, 411, 412, 0, 0, 0, 0, 0, + 413, 0, 414, 0, 0, 0, 415, 0, 0, 0, + 0, 0, 0, 0, 416, 0, 0, 0, 0, 0, + 417, 0, 0, 418, 0, 0, 419, 0, 0, 0, + 420, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 421, 422, 0, 220, 221, 222, 0, + 224, 225, 226, 227, 228, 423, 230, 231, 232, 233, + 234, 235, 236, 237, 238, 239, 240, 0, 242, 243, + 244, 0, 0, 247, 248, 249, 250, 424, 425, 426, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 644, 645, 646, 647, 648, 0, 0, 649, 0, - 0, 652, 0, 653, 654, 655, 656, 657, 0, 658, - 659, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 667, 668, - 669, 670, 671, 672, 673, 674, 842, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 675, 676, 0, 0, + 0, 0, 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 668, 669, 670, 671, 672, 673, 674, 1034, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 675, 676, - 0, 0, 0, 0, 0, 0, 0, 0, 222, 223, - 224, 0, 226, 227, 228, 229, 230, 424, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 0, - 244, 245, 246, 0, 0, 249, 250, 251, 252, 0, - 222, 223, 224, 0, 226, 227, 228, 229, 230, 424, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, - 242, 0, 244, 245, 246, 0, 0, 249, 250, 251, - 252, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 843, 0, 171, 0, 0, 0, 0, 0, 0, 844, + 0, 429, 430, 431, 432, 433, 0, 434, 0, 435, + 436, 437, 438, 439, 440, 441, 442, 55, 443, 641, + 642, 0, 0, 214, 0, 444, 0, 0, 0, 215, + 0, 0, 0, 0, 0, 216, 0, 0, 0, 0, + 0, 0, 445, 446, 447, 217, 14, 0, 0, 448, + 449, 0, 0, 218, 0, 641, 642, 0, 1128, 0, + 451, 0, 452, 453, 0, 0, 0, 0, 219, 0, + 0, 0, 0, 0, 0, 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, 0, 0, + 0, 0, 0, 643, 644, 645, 646, 647, 0, 0, + 648, 649, 650, 651, 0, 652, 653, 654, 655, 656, + 0, 657, 658, 0, 0, 0, 0, 659, 660, 661, + 0, 0, 0, 662, 0, 0, 0, 641, 642, 643, + 644, 645, 646, 647, 0, 253, 648, 649, 650, 651, + 0, 652, 653, 654, 655, 656, 507, 657, 658, 0, + 0, 0, 0, 659, 660, 661, 0, 0, 663, 662, + 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 674, 675, 0, 0, 693, 0, 0, 0, 0, 0, + 0, 254, 0, 0, 663, 0, 664, 665, 666, 667, + 668, 669, 670, 671, 672, 673, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 674, 675, 0, 0, + 768, 643, 644, 645, 646, 647, 641, 642, 648, 649, + 650, 651, 0, 652, 653, 654, 655, 656, 0, 657, + 658, 0, 0, 0, 0, 659, 660, 661, 0, 0, + 0, 662, 0, 0, 0, 0, 0, 641, 642, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 663, 0, 664, 665, + 666, 667, 668, 669, 670, 671, 672, 673, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 674, 675, + 0, 0, 910, 0, 0, 0, 0, 0, 0, 0, + 643, 644, 645, 646, 647, 0, 0, 648, 649, 650, + 651, 0, 652, 653, 654, 655, 656, 0, 657, 658, + 0, 0, 0, 0, 659, 660, 661, 0, 0, 0, + 662, 643, 644, 645, 646, 647, 641, 642, 648, 649, + 650, 651, 0, 652, 653, 654, 655, 656, 0, 657, + 658, 0, 0, 0, 0, 659, 660, 661, 0, 0, + 0, 662, 0, 0, 0, 663, 0, 664, 665, 666, + 667, 668, 669, 670, 671, 672, 673, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 674, 675, 0, + 0, 983, 0, 0, 0, 0, 663, 0, 664, 665, + 666, 667, 668, 669, 670, 671, 672, 673, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 674, 675, + 0, 0, 986, 0, 0, 0, 0, 0, 641, 642, + 643, 644, 645, 646, 647, 0, 0, 648, 649, 650, + 651, 0, 652, 653, 654, 655, 656, 0, 657, 658, + 0, 0, 0, 0, 659, 660, 661, 0, 0, 0, + 662, 641, 642, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 663, 0, 664, 665, 666, + 667, 668, 669, 670, 671, 672, 673, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 674, 675, 0, + 0, 995, 643, 644, 645, 646, 647, 0, 0, 648, + 649, 650, 651, 0, 652, 653, 654, 655, 656, 0, + 657, 658, 0, 0, 0, 0, 659, 660, 661, 0, + 0, 0, 662, 641, 642, 643, 644, 645, 646, 647, + 0, 0, 648, 649, 650, 651, 0, 652, 653, 654, + 655, 656, 0, 657, 658, 0, 0, 0, 0, 659, + 660, 661, 0, 0, 0, 662, 0, 663, 0, 664, + 665, 666, 667, 668, 669, 670, 671, 672, 673, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 674, + 675, 0, 0, 996, 0, 0, 0, 0, 0, 0, + 663, 0, 664, 665, 666, 667, 668, 669, 670, 671, + 672, 673, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 674, 675, 0, 0, 997, 643, 644, 645, + 646, 647, 641, 642, 648, 649, 650, 651, 0, 652, + 653, 654, 655, 656, 0, 657, 658, 0, 0, 0, + 0, 659, 660, 661, 0, 0, 0, 662, 0, 0, + 0, 0, 0, 641, 642, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 663, 0, 664, 665, 666, 667, 668, 669, + 670, 671, 672, 673, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 674, 675, 0, 0, 998, 0, + 0, 0, 0, 0, 0, 0, 643, 644, 645, 646, + 647, 0, 0, 648, 649, 650, 651, 0, 652, 653, + 654, 655, 656, 0, 657, 658, 0, 0, 0, 0, + 659, 660, 661, 0, 0, 0, 662, 643, 644, 645, + 646, 647, 641, 642, 648, 649, 650, 651, 0, 652, + 653, 654, 655, 656, 0, 657, 658, 0, 0, 0, + 0, 659, 660, 661, 0, 0, 0, 662, 0, 0, + 0, 663, 0, 664, 665, 666, 667, 668, 669, 670, + 671, 672, 673, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 674, 675, 0, 0, 999, 0, 0, + 0, 0, 663, 0, 664, 665, 666, 667, 668, 669, + 670, 671, 672, 673, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 674, 675, 0, 0, 1000, 0, + 0, 0, 0, 0, 641, 642, 643, 644, 645, 646, + 647, 0, 0, 648, 649, 650, 651, 0, 652, 653, + 654, 655, 656, 0, 657, 658, 0, 0, 0, 0, + 659, 660, 661, 0, 0, 0, 662, 641, 642, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 663, 0, 664, 665, 666, 667, 668, 669, 670, + 671, 672, 673, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 674, 675, 0, 0, 1075, 643, 644, + 645, 646, 647, 0, 0, 648, 649, 650, 651, 0, + 652, 653, 654, 655, 656, 0, 657, 658, 0, 0, + 0, 0, 659, 660, 661, 0, 0, 0, 662, 641, + 642, 643, 644, 645, 646, 647, 0, 0, 648, 649, + 650, 651, 0, 652, 653, 654, 655, 656, 0, 657, + 658, 0, 0, 0, 0, 659, 660, 661, 0, 0, + 0, 662, 0, 663, 0, 664, 665, 666, 667, 668, + 669, 670, 671, 672, 673, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 674, 675, 0, 0, 1095, + 0, 0, 0, 0, 0, 0, 663, 0, 664, 665, + 666, 667, 668, 669, 670, 671, 672, 673, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 674, 675, + 0, 0, 1162, 643, 644, 645, 646, 647, 641, 642, + 648, 649, 650, 651, 0, 652, 653, 654, 655, 656, + 0, 657, 658, 0, 0, 0, 0, 659, 660, 661, + 0, 0, 0, 662, 0, 0, 0, 0, 0, 641, + 642, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 663, 0, + 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 674, 675, 0, 0, 1168, 0, 0, 0, 0, 0, + 0, 0, 643, 644, 645, 646, 647, 0, 0, 648, + 649, 650, 651, 0, 652, 653, 654, 655, 656, 0, + 657, 658, 0, 0, 0, 0, 659, 660, 661, 0, + 0, 0, 662, 643, 644, 645, 646, 647, 641, 642, + 648, 649, 650, 651, 0, 652, 653, 654, 655, 656, + 0, 657, 658, 0, 0, 0, 0, 659, 660, 661, + 0, 0, 0, 662, 0, 0, 0, 663, 0, 664, + 665, 666, 667, 668, 669, 670, 671, 672, 673, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 674, + 675, 0, 0, 1202, 0, 0, 0, 0, 663, 0, + 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 674, 675, 0, 0, 1203, 0, 0, 0, 0, 0, + 641, 642, 643, 644, 645, 646, 647, 0, 0, 648, + 649, 650, 651, 0, 652, 653, 654, 655, 656, 0, + 657, 658, 0, 0, 0, 0, 659, 660, 661, 0, + 0, 0, 662, 641, 642, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 663, 0, 664, + 665, 666, 667, 668, 669, 670, 671, 672, 673, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 674, + 675, 0, 0, 1206, 643, 644, 645, 646, 647, 0, + 0, 648, 649, 650, 651, 0, 652, 653, 654, 655, + 656, 0, 657, 658, 0, 0, 0, 0, 659, 660, + 661, 0, 0, 0, 662, 641, 642, 643, 644, 645, + 646, 647, 0, 0, 648, 649, 650, 651, 0, 652, + 653, 654, 655, 656, 0, 657, 658, 0, 0, 0, + 0, 659, 660, 661, 0, 0, 0, 662, 0, 663, + 0, 664, 665, 666, 667, 668, 669, 670, 671, 672, + 673, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 674, 675, 0, 0, 1223, 0, 0, 0, 0, + 0, 0, 663, 0, 664, 665, 666, 667, 668, 669, + 670, 671, 672, 673, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 674, 675, 0, 0, 1225, 643, + 644, 645, 646, 647, 641, 642, 648, 649, 650, 651, + 0, 652, 653, 654, 655, 656, 0, 657, 658, 0, + 0, 0, 0, 659, 660, 661, 0, 0, 0, 662, + 0, 0, 0, 0, 0, 641, 642, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 663, 0, 664, 665, 666, 667, + 668, 669, 670, 671, 672, 673, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 674, 675, 0, 0, + 1227, 0, 0, 0, 0, 0, 0, 0, 643, 644, + 645, 646, 647, 0, 0, 648, 649, 650, 651, 0, + 652, 653, 654, 655, 656, 0, 657, 658, 0, 0, + 0, 0, 659, 660, 661, 0, 0, 0, 662, 643, + 644, 645, 646, 647, 641, 642, 648, 649, 650, 651, + 0, 652, 653, 654, 655, 656, 0, 657, 658, 0, + 0, 0, 0, 659, 660, 661, 0, 0, 0, 662, + 0, 0, 0, 663, 0, 664, 665, 666, 667, 668, + 669, 670, 671, 672, 673, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 674, 675, 0, 0, 1231, + 0, 0, 0, 0, 663, 0, 664, 665, 666, 667, + 668, 669, 670, 671, 672, 673, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 674, 675, 0, 0, + 1291, 0, 0, 0, 0, 0, 641, 642, 643, 644, + 645, 646, 647, 0, 0, 648, 649, 650, 651, 0, + 652, 653, 654, 655, 656, 0, 657, 658, 0, 0, + 0, 0, 659, 660, 661, 0, 0, 0, 662, 641, + 642, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 663, 0, 664, 665, 666, 667, 668, + 669, 670, 671, 672, 673, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 674, 675, 0, 0, 1292, + 643, 644, 645, 646, 647, 0, 0, 648, 649, 650, + 651, 0, 652, 653, 654, 655, 656, 0, 657, 658, + 0, 0, 0, 0, 659, 660, 661, 0, 0, 0, + 662, 641, 642, 643, 644, 645, 646, 647, 0, 0, + 648, 649, 650, 651, 0, 652, 653, 654, 655, 656, + 0, 657, 658, 0, 0, 0, 0, 659, 660, 661, + 0, 0, 0, 662, 0, 663, 0, 664, 665, 666, + 667, 668, 669, 670, 671, 672, 673, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 674, 675, 0, + 0, 1293, 0, 0, 0, 0, 0, 0, 663, 0, + 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 674, 675, 0, 0, 1313, 643, 644, 645, 646, 647, + 641, 642, 648, 649, 650, 651, 0, 652, 653, 654, + 655, 656, 0, 657, 658, 0, 0, 0, 0, 659, + 660, 661, 0, 0, 0, 662, 0, 0, 0, 0, + 0, 641, 642, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 663, 0, 664, 665, 666, 667, 668, 669, 670, 671, + 672, 673, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 674, 675, 0, 0, 1324, 0, 0, 0, + 0, 0, 0, 0, 643, 644, 645, 646, 647, 0, + 0, 648, 649, 650, 651, 0, 652, 653, 654, 655, + 656, 0, 657, 658, 0, 0, 0, 0, 659, 660, + 661, 0, 0, 0, 662, 643, 644, 645, 646, 647, + 641, 642, 648, 649, 650, 651, 0, 652, 653, 654, + 655, 656, 0, 657, 658, 0, 0, 0, 0, 659, + 660, 661, 0, 0, 0, 662, 0, 0, 0, 663, + 0, 664, 665, 666, 667, 668, 669, 670, 671, 672, + 673, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 674, 675, 0, 0, 1334, 0, 0, 0, 0, + 663, 0, 664, 665, 666, 667, 668, 669, 670, 671, + 672, 673, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 674, 675, 0, 0, 1364, 0, 0, 0, + 0, 0, 641, 642, 643, 644, 645, 646, 647, 0, + 0, 648, 649, 650, 651, 0, 652, 653, 654, 655, + 656, 0, 657, 658, 0, 0, 0, 0, 659, 660, + 661, 0, 0, 0, 662, 641, 642, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 663, + 0, 664, 665, 666, 667, 668, 669, 670, 671, 672, + 673, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 674, 675, 0, 0, 1371, 643, 644, 645, 646, + 647, 0, 0, 648, 649, 650, 651, 0, 652, 653, + 654, 655, 656, 0, 657, 658, 0, 0, 0, 0, + 659, 660, 661, 0, 0, 0, 662, 641, 642, 643, + 644, 645, 646, 647, 0, 0, 648, 649, 650, 651, + 0, 652, 653, 654, 655, 656, 0, 657, 658, 0, + 0, 0, 0, 659, 660, 661, 0, 0, 0, 662, + 0, 663, 0, 664, 665, 666, 667, 668, 669, 670, + 671, 672, 673, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 674, 675, 698, 0, 0, 0, 0, + 0, 0, 0, 0, 663, 0, 664, 665, 666, 667, + 668, 669, 670, 671, 672, 673, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 674, 675, 906, 641, + 642, 643, 644, 645, 646, 647, 0, 0, 648, 649, + 650, 651, 0, 652, 653, 654, 655, 656, 0, 657, + 658, 0, 0, 0, 0, 659, 660, 661, 0, 0, + 0, 662, 641, 642, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 663, 0, 664, 665, + 666, 667, 668, 669, 670, 671, 672, 673, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 674, 675, + 1033, 0, 0, 643, 644, 645, 646, 647, 0, 0, + 648, 649, 650, 651, 0, 652, 653, 654, 655, 656, + 0, 657, 658, 0, 0, 0, 0, 659, 660, 661, + 0, 0, 0, 662, 641, 642, 643, 644, 645, 646, + 647, 0, 0, 648, 649, 650, 651, 0, 652, 653, + 654, 655, 656, 0, 657, 658, 0, 0, 0, 0, + 659, 660, 661, 0, 0, 0, 662, 0, 663, 0, + 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 674, 675, 1048, 0, 0, 0, 0, 0, 0, 0, + 0, 663, 0, 664, 665, 666, 667, 668, 669, 670, + 671, 672, 673, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 674, 675, 1150, 0, 0, 643, 644, + 645, 646, 647, 641, 642, 648, 649, 650, 651, 0, + 652, 653, 654, 655, 656, 0, 657, 658, 0, 0, + 0, 0, 659, 660, 661, 0, 0, 0, 662, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 663, 0, 664, 665, 666, 667, 668, + 669, 670, 671, 672, 673, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 674, 675, 1155, 0, 744, + 745, 746, 747, 748, 749, 750, 751, 643, 644, 645, + 646, 647, 752, 753, 648, 649, 650, 651, 754, 652, + 653, 654, 655, 656, 755, 657, 658, 756, 757, 266, + 267, 659, 660, 661, 758, 759, 760, 662, 0, 0, + 0, 0, 0, 0, 0, 0, 268, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 641, 642, 0, 0, -315, 0, 0, 0, 0, 0, + 0, 761, 663, 0, 664, 665, 666, 667, 668, 669, + 670, 671, 672, 673, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 674, 675, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 269, 270, 271, 272, 273, + 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, + 284, 285, 286, 0, 0, 287, 288, 289, 0, 0, + 290, 291, 292, 293, 294, 0, 0, 295, 296, 297, + 298, 299, 300, 301, 643, 644, 645, 646, 647, 641, + 642, 648, 649, 650, 651, 0, 652, 653, 654, 655, + 656, 0, 657, 658, 0, 0, 813, 0, 659, 660, + 661, 0, 0, 0, 662, 0, 0, 0, 302, 0, + 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, + 0, 0, 313, 314, 0, 0, 0, 0, 0, 0, + 315, 316, 0, 0, 0, 0, 0, 0, 0, 663, + 0, 664, 665, 666, 667, 668, 669, 670, 671, 672, + 673, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 674, 675, 0, 0, 0, 0, 0, 641, 642, + 0, 0, 0, 643, 644, 645, 646, 647, 0, 0, + 648, 649, 650, 651, 0, 652, 653, 654, 655, 656, + 0, 657, 658, 0, 0, 0, 0, 659, 660, 661, + 0, 0, 0, 662, 641, 642, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 321, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 663, 0, + 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 674, 675, 643, 644, 645, 646, 647, 0, 0, 648, + 649, 650, 651, 0, 652, 653, 654, 655, 656, 0, + 657, 658, 0, 0, 0, 0, 659, 660, 661, 0, + 0, 0, 662, 641, 642, 0, 0, 0, 643, 644, + 645, 646, 647, 0, 0, 648, 649, 650, 651, 0, + 652, 653, 654, 655, 656, 0, 657, 658, 0, 961, + 0, 0, 659, 660, 661, 0, 0, 663, 662, 664, + 665, 666, 667, 668, 669, 670, 671, 672, 673, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 674, + 675, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 663, 1038, 664, 665, 666, 667, 668, + 669, 670, 671, 672, 673, 641, 642, 0, 0, 0, + 0, 0, 0, 0, 0, 674, 675, 643, 644, 645, + 646, 647, 0, 0, 648, 649, 650, 651, 0, 652, + 653, 654, 655, 656, 0, 657, 658, 641, 642, 0, + 0, 659, 660, 661, 0, 0, 0, 662, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1035, 0, 0, 0, 0, 0, 172, 0, - 173, 1036, 174, 175, 176, 177, 178, 0, 179, 180, - 181, 182, 183, 184, 185, 186, 187, 188, 189, 0, - 190, 191, 192, 0, 0, 193, 194, 195, 196, 0, + 0, 0, 0, 0, 1086, 0, 0, 0, 0, 0, + 0, 0, 663, 0, 664, 665, 666, 667, 668, 669, + 670, 671, 672, 673, 0, 0, 0, 0, 0, 643, + 644, 645, 646, 647, 674, 675, 648, 649, 650, 651, + 0, 652, 653, 654, 655, 656, 0, 657, 658, 641, + 642, 0, 0, 659, 660, 661, 0, 0, 0, 662, + 0, 643, 644, 645, 646, 647, 0, 0, 648, 649, + 650, 651, 0, 652, 653, 654, 655, 656, 0, 657, + 658, 0, 1116, 641, 642, 659, 660, 661, 0, 0, + 0, 662, 0, 0, 663, 0, 664, 665, 666, 667, + 668, 669, 670, 671, 672, 673, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 674, 675, 1325, 0, + 0, 0, 0, 0, 0, 0, 663, 0, 664, 665, + 666, 667, 668, 669, 670, 671, 672, 673, 0, 0, + 0, 0, 0, 643, 644, 645, 646, 647, 674, 675, + 648, 649, 650, 651, 0, 652, 653, 654, 655, 656, + 0, 657, 658, 0, 0, 641, 642, 659, 660, 661, + 0, 0, 0, 662, 0, 0, 0, 643, 644, 645, + 646, 647, 0, 0, 648, 649, 650, 651, 0, 652, + 653, 654, 655, 656, 0, 657, 658, 641, 642, 0, + 1366, 659, 660, 661, 0, 0, 0, 662, 663, 0, + 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 197, 198, 0, 0, 0, 0, + 674, 675, 0, 0, 1385, 0, 0, 0, 0, 0, + 0, 0, 663, 0, 664, 665, 666, 667, 668, 669, + 670, 671, 672, 673, 0, 0, 0, 0, 0, 643, + 644, 645, 646, 647, 674, 675, 648, 649, 650, 651, + 0, 652, 653, 654, 655, 656, 0, 657, 658, 641, + 642, 0, 0, 659, 660, 661, 0, 0, 0, 662, + 0, 643, 644, 645, 646, 647, 0, 0, 648, 649, + 650, 651, 0, 652, 653, 654, 655, 656, 0, 657, + 658, 641, 642, 0, 0, 659, 660, 661, 0, 0, + 0, -675, 0, 0, 663, 0, 664, 665, 666, 667, + 668, 669, 670, 671, 672, 673, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 674, 675, 0, 0, + 0, 0, 0, 0, 0, 0, 663, 0, 664, 665, + 666, 667, 668, 669, 670, 671, 672, 673, 0, 0, + 0, 0, 0, 643, 644, 645, 646, 647, 674, 675, + 648, 649, 650, 651, 0, 652, 653, 654, 655, 656, + 0, 657, 658, 641, 642, 0, 0, 659, 660, 661, + 0, 0, 0, 0, 0, 643, 644, 645, 646, 647, + 0, 0, 648, 649, 650, 651, 0, 652, 653, 654, + 655, 656, 0, 657, 658, 641, 642, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 663, 0, + 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 674, 675, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 665, 666, 667, 668, 669, 670, 671, + 672, 673, 0, 0, 0, 0, 0, 643, 644, 645, + 646, 647, 674, 675, 648, 649, 650, 651, 0, 652, + 653, 654, 655, 656, 0, 657, 658, 641, 642, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 643, + 644, 645, 646, 647, 0, 0, 648, 649, 650, 651, + 0, 652, 653, 654, 655, 656, 0, 657, 658, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 666, 667, 668, 669, + 670, 671, 672, 673, 0, 0, 0, 0, 0, 842, + 0, 0, 0, 0, 674, 675, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 667, + 668, 669, 670, 671, 672, 673, 0, 0, 0, 0, + 0, 643, 644, 645, 646, 647, 674, 675, 648, 0, + 0, 651, 0, 652, 653, 654, 655, 656, 0, 657, + 658, 220, 221, 222, 0, 224, 225, 226, 227, 228, + 423, 230, 231, 232, 233, 234, 235, 236, 237, 238, + 239, 240, 0, 242, 243, 244, 0, 0, 247, 248, + 249, 250, 0, 0, 0, 0, 0, 1034, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 199 + 0, 667, 668, 669, 670, 671, 672, 673, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 674, 675, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 843, 169, 0, 0, 0, 0, 220, + 221, 222, 844, 224, 225, 226, 227, 228, 423, 230, + 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, + 0, 242, 243, 244, 0, 0, 247, 248, 249, 250, + 170, 0, 171, 0, 172, 173, 174, 175, 176, 0, + 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, + 187, 0, 188, 189, 190, 0, 0, 191, 192, 193, + 194, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 195, 196, 0, 0, + 0, 1035, 0, 0, 0, 0, 0, 0, 0, 0, + 1036, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 197 }; static const yytype_int16 yycheck[] = { - 14, 15, 576, 599, 165, 533, 713, 485, 152, 487, - 685, 489, 687, 541, 689, 491, 636, 490, 814, 781, - 396, 638, 77, 4, 19, 165, 149, 0, 621, 14, - 15, 19, 463, 6, 837, 4, 5, 630, 154, 32, - 20, 21, 569, 7, 127, 128, 60, 61, 62, 45, - 452, 171, 149, 19, 19, 24, 29, 1193, 31, 61, - 33, 30, 18, 19, 1307, 124, 39, 21, 127, 128, - 6, 1275, 125, 371, 152, 177, 49, 161, 131, 32, - 1273, 146, 55, 161, 207, 99, 100, 101, 102, 178, - 127, 128, 494, 138, 139, 140, 161, 624, 67, 68, - 1343, 203, 56, 401, 125, 632, 79, 634, 205, 105, - 207, 14, 15, 49, 125, 152, 1252, 1253, 201, 202, - 101, 102, 206, 716, 161, 178, 1330, 205, 101, 102, - 183, 1267, 101, 102, 169, 1328, 116, 117, 184, 204, - 571, 171, 201, 202, 124, 137, 126, 127, 128, 129, - 130, 165, 171, 208, 177, 185, 177, 178, 204, 180, - 205, 137, 183, 171, 201, 202, 136, 178, 137, 154, - 181, 206, 207, 177, 159, 125, 161, 162, 1314, 1315, - 203, 131, 177, 20, 21, 161, 205, 715, 180, 177, - 183, 994, 161, 337, 722, 597, 180, 205, 171, 169, - 169, 20, 21, 184, 606, 161, 170, 609, 828, 640, - 371, 177, 177, 374, 125, 184, 171, 190, 177, 204, - 131, 201, 202, 204, 817, 125, 137, 388, 178, 202, - 183, 131, 177, 202, 636, 189, 180, 171, 202, 183, - 401, 161, 256, 404, 405, 406, 125, 201, 388, 202, - 205, 154, 131, 177, 171, 208, 159, 161, 161, 162, - 205, 788, 125, 790, 404, 405, 406, 178, 131, 125, - 797, 205, 171, 800, 171, 131, 678, 161, 178, 116, - 117, 205, 171, 171, 339, 161, 190, 124, 205, 126, - 127, 128, 129, 130, 137, 177, 177, 116, 117, 178, - 598, 161, 177, 146, 33, 124, 205, 126, 127, 128, - 129, 130, 929, 611, 171, 178, 205, 205, 161, 480, - 481, 203, 178, 484, 205, 486, 177, 488, 185, 490, - 205, 20, 21, 62, 180, 177, 138, 161, 140, 185, - 480, 481, 4, 5, 484, 7, 486, 171, 488, 1024, - 970, 188, 189, 190, 205, 181, 834, 371, 204, 185, - 374, 177, 1069, 205, 201, 202, 742, 186, 187, 188, - 189, 190, 137, 35, 388, 60, 61, 62, 392, 781, - 177, 146, 201, 202, 177, 177, 151, 401, 161, 205, - 404, 405, 406, 137, 922, 171, 161, 411, 184, 1161, - 181, 130, 180, 1199, 185, 180, 203, 185, 137, 185, - 185, 154, 205, 205, 99, 100, 101, 102, 204, 184, - 20, 21, 184, 1130, 900, 898, 204, 116, 117, 204, - 146, 180, 161, 184, 46, 124, 185, 598, 127, 128, - 129, 130, 204, 146, 204, 161, 1310, 1311, 1123, 11, - 611, 201, 1316, 204, 66, 204, 161, 1321, 161, 171, - 22, 23, 152, 1138, 171, 194, 480, 481, 163, 164, - 484, 161, 486, 185, 488, 204, 490, 171, 185, 777, - 778, 642, 643, 1347, 1348, 177, 56, 181, 180, 787, - 161, 183, 62, 152, 792, 793, 657, 795, 796, 1206, - 798, 799, 161, 801, 138, 139, 140, 1103, 1128, 152, - 152, 152, 201, 202, 114, 115, 116, 117, 161, 161, - 161, 10, 11, 12, 124, 56, 126, 127, 128, 129, - 130, 62, 132, 133, 695, 74, 1014, 56, 56, 78, - 56, 161, 703, 62, 62, 706, 62, 1075, 1026, 163, - 56, 56, 32, 92, 93, 695, 62, 62, 97, 98, - 99, 100, 171, 703, 171, 32, 706, 171, 177, 161, - 177, 181, 161, 177, 169, 185, 178, 591, 181, 59, - 60, 56, 185, 169, 598, 169, 186, 187, 188, 189, - 190, 181, 59, 60, 181, 185, 163, 611, 185, 181, - 1002, 201, 202, 185, 1006, 169, 181, 181, 181, 1137, - 185, 185, 185, 163, 164, 776, 777, 778, 779, 105, - 181, 635, 783, 767, 185, 138, 787, 1334, 180, 1031, - 207, 792, 793, 34, 795, 796, 776, 798, 799, 779, - 801, 1043, 122, 783, 34, 125, 126, 204, 163, 164, - 165, 131, 169, 161, 207, 122, 32, 169, 184, 126, - 170, 1188, 184, 184, 1260, 161, 204, 32, 204, 1071, - 184, 204, 21, 1247, 181, 203, 203, 975, 976, 977, - 184, 695, 980, 59, 60, 163, 164, 165, 166, 703, - 184, 171, 706, 1221, 59, 60, 184, 184, 178, 184, - 184, 184, 32, 183, 171, 866, 186, 161, 188, 1237, - 1238, 161, 161, 1115, 161, 1013, 183, 1119, 185, 186, - 180, 188, 202, 180, 169, 204, 42, 161, 208, 59, - 60, 1305, 202, 177, 1354, 202, 161, 898, 131, 204, - 161, 208, 161, 161, 184, 184, 122, 184, 204, 204, - 126, 184, 184, 204, 184, 916, 184, 122, 184, 1161, - 125, 126, 776, 777, 778, 779, 131, 184, 204, 783, - 161, 202, 207, 787, 161, 204, 916, 204, 792, 793, - 204, 795, 796, 205, 798, 799, 161, 801, 204, 204, - 1317, 1318, 122, 1320, 204, 204, 126, 203, 171, 170, - 180, 171, 170, 20, 21, 204, 161, 183, 171, 185, - 186, 154, 188, 178, 975, 976, 977, 36, 183, 980, - 171, 186, 204, 188, 171, 9, 202, 171, 65, 171, - 171, 171, 208, 171, 171, 42, 1364, 202, 177, 348, - 1368, 1139, 178, 208, 204, 204, 177, 12, 177, 358, - 185, 184, 1013, 183, 202, 185, 186, 1259, 188, 368, - 184, 184, 207, 1265, 161, 177, 170, 42, 13, 178, - 180, 205, 202, 154, 169, 7, 204, 204, 208, 161, - 69, 390, 170, 203, 898, 177, 205, 204, 184, 398, - 204, 204, 1, 184, 205, 202, 204, 114, 115, 116, - 117, 118, 916, 1064, 121, 122, 123, 124, 161, 126, - 127, 128, 129, 130, 204, 132, 133, 204, 204, 428, - 429, 204, 185, 185, 1064, 32, 204, 185, 161, 161, - 161, 170, 66, 171, 205, 161, 445, 446, 447, 448, - 449, 450, 184, 42, 205, 204, 161, 204, 1246, 205, - 20, 21, 59, 60, 205, 205, 204, 204, 204, 204, - 204, 975, 976, 977, 205, 205, 980, 184, 185, 186, - 187, 188, 189, 190, 204, 161, 161, 11, 1139, 161, - 1141, 161, 161, 32, 201, 202, 204, 161, 204, 185, - 204, 204, 204, 204, 503, 204, 204, 203, 171, 1013, - 205, 1141, 185, 204, 204, 204, 52, 205, 171, 170, - 519, 205, 203, 171, 620, 122, 203, 205, 527, 126, - 76, 1, 531, 42, 205, 534, 535, 205, 128, 79, - 1384, 540, 1243, 542, 98, 1243, 1243, 214, 1243, 1243, - 1, 1216, 1172, 1175, 114, 115, 116, 117, 118, 1250, - 1064, 121, 122, 123, 124, 1082, 126, 127, 128, 129, - 130, 523, 132, 133, 1251, 470, 1170, 1228, 138, 51, - 140, 580, 763, -1, 970, -1, 183, -1, 185, 186, - -1, 188, -1, -1, -1, 1246, 411, -1, 1228, 411, - 599, 600, -1, -1, 603, 202, -1, -1, -1, -1, - -1, 208, -1, -1, -1, 614, 615, 616, 617, 618, - 619, 181, 182, 183, 184, 185, 186, 187, 188, 189, - 190, -1, -1, 18, -1, 1139, -1, 1141, -1, -1, - -1, 201, 202, -1, -1, 644, 645, -1, -1, 648, - 649, 650, 651, -1, 653, -1, 655, 656, 657, 658, + 14, 15, 163, 575, 598, 532, 150, 490, 713, 489, + 484, 635, 486, 540, 488, 814, 395, 781, 637, 4, + 76, 7, 451, 163, 462, 620, 32, 0, 684, 19, + 686, 19, 688, 6, 629, 14, 15, 149, 149, 568, + 21, 184, 19, 18, 19, 59, 60, 61, 4, 5, + 837, 20, 21, 19, 45, 1275, 29, 154, 31, 124, + 33, 204, 127, 128, 493, 161, 39, 32, 24, 127, + 128, 370, 125, 171, 30, 56, 49, 146, 1273, 1307, + 32, 61, 55, 97, 98, 99, 100, 138, 139, 140, + 14, 15, 161, 205, 623, 207, 207, 127, 128, 125, + 125, 400, 631, 169, 633, 131, 79, 59, 60, 152, + 1330, 67, 68, 33, 105, 1343, 101, 102, 161, 161, + 125, 716, 152, 6, 177, 178, 131, 180, 101, 102, + 183, 161, 570, 1328, 171, 204, 201, 202, 137, 177, + 206, 207, 62, 201, 202, 101, 102, 116, 117, 163, + 206, 171, 178, 178, 205, 124, 181, 126, 127, 128, + 129, 130, 205, 171, 206, 203, 49, 596, 205, 171, + 122, 201, 202, 178, 126, 154, 605, 183, 183, 608, + 159, 180, 161, 162, 170, 205, 161, 177, 715, 177, + 136, 178, 336, 20, 21, 722, 202, 205, 171, 184, + 177, 639, 208, 205, 828, 161, 635, 994, 189, 370, + 130, 177, 373, 169, 161, 56, 202, 190, 183, 204, + 201, 62, 817, 169, 171, 204, 387, 177, 184, 202, + 154, 183, 201, 202, 186, 159, 188, 161, 162, 400, + 254, 161, 403, 404, 405, 180, 202, 387, 677, 1193, + 202, 125, 125, 59, 60, 61, 208, 131, 131, 788, + 125, 790, 171, 403, 404, 405, 131, 125, 797, 177, + 56, 800, 125, 131, 194, 11, 62, 125, 131, 137, + 171, 171, 338, 131, 204, 180, 22, 23, 183, 116, + 117, 97, 98, 99, 100, 171, 205, 124, 597, 177, + 127, 128, 129, 130, 178, 178, 171, 177, 1252, 1253, + 929, 610, 161, 178, 205, 205, 146, 161, 479, 480, + 178, 151, 483, 1267, 485, 178, 487, 205, 489, 205, + 178, 161, 177, 203, 171, 4, 5, 177, 7, 479, + 480, 190, 161, 483, 181, 485, 970, 487, 177, 184, + 20, 21, 781, 177, 184, 177, 370, 177, 203, 373, + 834, 1310, 1311, 742, 1069, 205, 35, 1316, 1024, 204, + 1314, 1315, 1321, 387, 201, 202, 205, 391, 177, 177, + 177, 205, 184, 205, 177, 205, 400, 171, 180, 403, + 404, 405, 138, 185, 140, 922, 410, 1161, 1347, 1348, + 1199, 185, 204, 184, 46, 161, 205, 205, 205, 74, + 203, 146, 204, 78, 180, 180, 180, 900, 898, 185, + 185, 185, 146, 204, 66, 1130, 161, 92, 93, 171, + 163, 164, 97, 98, 99, 100, 597, 161, 204, 204, + 204, 171, 171, 185, 114, 115, 116, 117, 118, 610, + 171, 121, 122, 123, 124, 185, 126, 127, 128, 129, + 130, 146, 132, 133, 185, 479, 480, 1123, 138, 483, + 140, 485, 171, 487, 161, 489, 161, 171, 777, 778, + 641, 642, 1138, 20, 21, 137, 185, 204, 787, 152, + 154, 185, 201, 792, 793, 656, 795, 796, 161, 798, + 799, 1206, 801, 181, 1128, 161, 181, 185, 161, 1103, + 185, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 190, 152, 56, 56, 161, 152, 152, 152, 62, 62, + 161, 201, 202, 694, 161, 161, 161, 56, 177, 161, + 1014, 180, 703, 62, 183, 706, 163, 171, 1075, 56, + 56, 171, 1026, 177, 694, 62, 62, 177, 171, 163, + 164, 165, 166, 703, 177, 181, 706, 181, 161, 185, + 181, 185, 56, 1002, 185, 169, 590, 1006, 181, 116, + 117, 181, 185, 597, 181, 185, 178, 124, 185, 126, + 127, 128, 129, 130, 181, 181, 610, 181, 185, 185, + 169, 185, 1031, 138, 139, 140, 163, 164, 165, 169, + 1137, 10, 11, 12, 1043, 776, 777, 778, 779, 169, + 634, 163, 783, 767, 163, 164, 787, 138, 180, 1334, + 105, 792, 793, 207, 795, 796, 776, 798, 799, 779, + 801, 34, 1071, 783, 34, 204, 169, 169, 161, 186, + 187, 188, 189, 190, 170, 184, 207, 184, 184, 1188, + 204, 204, 161, 184, 201, 202, 1260, 184, 204, 184, + 184, 161, 184, 181, 184, 1247, 975, 976, 977, 184, + 694, 980, 184, 161, 161, 203, 1115, 21, 161, 703, + 1119, 180, 706, 180, 1221, 169, 42, 161, 177, 203, + 20, 21, 202, 204, 161, 866, 131, 204, 161, 161, + 1237, 1238, 161, 184, 1013, 184, 204, 184, 204, 184, + 205, 184, 204, 184, 184, 20, 21, 207, 184, 184, + 1354, 161, 1161, 1305, 204, 161, 204, 898, 204, 161, + 171, 170, 204, 180, 171, 204, 204, 170, 161, 154, + 204, 202, 171, 36, 204, 916, 203, 171, 204, 171, + 204, 9, 776, 777, 778, 779, 65, 171, 171, 783, + 171, 171, 178, 787, 171, 171, 916, 42, 792, 793, + 204, 795, 796, 177, 798, 799, 204, 801, 1317, 1318, + 185, 1320, 184, 184, 114, 115, 116, 117, 118, 184, + 177, 121, 122, 123, 124, 12, 126, 127, 128, 129, + 130, 177, 132, 133, 975, 976, 977, 161, 138, 980, + 202, 116, 117, 207, 205, 177, 204, 170, 42, 124, + 1259, 126, 127, 128, 129, 130, 1265, 1364, 347, 13, + 1139, 1368, 178, 180, 154, 169, 204, 7, 357, 161, + 69, 170, 1013, 185, 203, 205, 204, 204, 367, 204, + 177, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 190, 202, 205, 184, 204, 184, 204, 204, 204, 204, + 389, 201, 202, 204, 898, 1, 161, 185, 397, 185, + 161, 185, 161, 188, 189, 190, 170, 161, 66, 171, + 185, 185, 916, 1064, 205, 161, 201, 202, 185, 185, + 42, 161, 205, 204, 184, 205, 205, 185, 427, 428, + 11, 32, 185, 185, 1064, 185, 185, 205, 185, 161, + 161, 204, 185, 161, 161, 444, 445, 446, 447, 448, + 449, 185, 185, 204, 185, 185, 204, 1246, 161, 204, + 20, 21, 204, 161, 205, 204, 185, 203, 205, 204, + 185, 975, 976, 977, 185, 204, 980, 204, 204, 204, + 204, 204, 171, 171, 204, 52, 170, 75, 1139, 205, + 1141, 204, 204, 171, 204, 619, 204, 1, 205, 205, + 205, 203, 42, 502, 205, 205, 126, 203, 78, 1013, + 1384, 1141, 1243, 212, 96, 1243, 1243, 1243, 1243, 518, + 1, 1216, 1172, 1175, 1082, 1170, 1250, 526, 1251, 522, + 51, 530, 763, 410, 533, 534, 469, 410, 970, -1, + 539, -1, 541, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 114, 115, 116, 117, 118, -1, + 1064, 121, 122, 123, 124, -1, 126, 127, 128, 129, + 130, -1, 132, 133, -1, -1, -1, 1228, -1, -1, + 579, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 1246, -1, -1, 1228, 598, + 599, -1, -1, 602, -1, -1, -1, 20, 21, -1, + -1, -1, -1, -1, 613, 614, 615, 616, 617, 618, + -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 190, -1, -1, -1, -1, 1139, -1, 1141, -1, -1, + -1, 201, 202, -1, 643, 644, -1, -1, 647, 648, + 649, 650, -1, 652, -1, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, - 669, 670, 671, 672, 673, 674, -1, 676, -1, -1, - -1, -1, -1, -1, -1, 70, 71, 72, -1, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, - -1, -1, 97, 98, 99, 100, -1, -1, 717, -1, - -1, 720, -1, -1, 1228, -1, -1, -1, -1, -1, - 729, -1, -1, -1, -1, 734, -1, -1, 32, -1, + 669, 670, 671, 672, 673, -1, 675, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 114, 115, 116, 117, -1, -1, -1, -1, -1, + -1, 124, -1, 126, 127, 128, 129, 130, 717, 132, + 133, 720, -1, -1, 1228, -1, -1, -1, -1, -1, + 729, -1, -1, -1, -1, 734, -1, -1, -1, -1, -1, -1, 1246, -1, -1, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, - 759, 760, 761, 762, -1, 59, 60, 152, -1, -1, - -1, 1275, 771, -1, -1, -1, 161, -1, -1, -1, - -1, -1, 32, 782, -1, -1, 18, -1, -1, -1, + 759, 760, 761, 762, -1, -1, -1, -1, -1, -1, + -1, 1275, 771, 186, 187, 188, 189, 190, -1, -1, + -1, -1, -1, 782, -1, -1, 18, -1, 201, 202, -1, -1, 24, -1, -1, -1, -1, -1, 30, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 40, 59, - 60, 810, -1, -1, 813, 814, 48, -1, -1, 818, - -1, -1, -1, -1, -1, -1, 1330, -1, 122, -1, - -1, 63, 126, -1, -1, -1, 835, -1, 70, 71, + -1, -1, -1, -1, -1, -1, -1, -1, 40, -1, + -1, 810, -1, -1, 813, 814, 48, -1, -1, 818, + -1, -1, -1, -1, -1, -1, 1330, -1, -1, -1, + -1, 63, -1, -1, -1, -1, 835, -1, 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, 32, 122, -1, -1, -1, 126, -1, -1, -1, - 879, -1, -1, -1, 883, -1, -1, -1, -1, 183, - -1, 185, 186, -1, 188, -1, -1, -1, 59, 60, - -1, -1, -1, -1, -1, 137, 905, -1, 202, -1, - -1, -1, 911, -1, 208, -1, -1, -1, 150, 918, - -1, -1, -1, -1, -1, 18, 925, -1, -1, 161, - -1, 24, 931, 183, -1, 185, 186, 30, 188, -1, - 32, -1, -1, -1, -1, -1, -1, 40, -1, -1, - -1, -1, 202, -1, -1, 48, -1, -1, 208, -1, - -1, 122, -1, -1, -1, 126, -1, 59, 60, -1, - 63, -1, -1, -1, 206, -1, 208, 70, 71, 72, + 102, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 879, -1, -1, 18, 883, -1, -1, -1, -1, 24, + -1, -1, -1, -1, -1, 30, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 40, 905, -1, -1, -1, + -1, -1, 911, 48, -1, -1, -1, -1, 150, 918, + -1, -1, -1, -1, -1, 18, 925, -1, 63, 161, + -1, -1, 931, -1, -1, 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, -1, -1, + -1, -1, -1, -1, 206, -1, 208, 70, 71, 72, + -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, + 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, + 93, 94, -1, -1, 97, 98, 99, 100, -1, -1, + -1, -1, 1011, 1012, -1, 150, 1015, 1016, 1017, -1, + 1019, -1, -1, -1, -1, -1, 161, -1, -1, 1028, + -1, 1030, -1, 1032, -1, -1, 171, -1, -1, 1038, + -1, -1, -1, 1042, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 18, -1, -1, -1, 152, + -1, 24, -1, -1, -1, 20, 21, 30, 161, -1, + -1, 206, -1, -1, -1, 1074, -1, 40, -1, -1, + -1, -1, -1, -1, -1, 48, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 63, -1, -1, -1, 1103, -1, -1, 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, - -1, -1, 1011, 1012, -1, -1, 1015, 1016, 1017, -1, - 1019, -1, 183, -1, 185, 186, -1, 188, -1, 1028, - 122, 1030, -1, 1032, 126, -1, -1, -1, -1, 1038, - -1, 202, -1, 1042, 137, -1, -1, 208, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 150, -1, -1, - -1, -1, -1, -1, -1, 20, 21, -1, 161, -1, - -1, -1, -1, -1, -1, 1074, -1, -1, 171, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 183, -1, 185, 186, -1, 188, -1, -1, -1, - -1, -1, -1, -1, 1103, -1, -1, -1, -1, -1, - 202, -1, 32, 206, -1, -1, 208, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 59, - 60, -1, -1, -1, -1, -1, -1, -1, 1147, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 1147, -1, 1149, -1, -1, -1, -1, 1154, -1, -1, -1, 114, 115, 116, 117, 118, -1, 1164, 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, -1, - -1, -1, 1181, 138, 139, 140, -1, -1, -1, 144, - 1189, 1190, 1191, -1, -1, -1, -1, 1196, -1, -1, - 1199, 1200, 122, -1, -1, -1, 126, -1, -1, -1, + -1, -1, 1181, 138, 139, 140, -1, 150, -1, 144, + 1189, 1190, 1191, -1, -1, -1, -1, 1196, 161, -1, + 1199, 1200, -1, -1, -1, -1, -1, -1, -1, -1, 1209, 1210, 1211, -1, -1, -1, -1, -1, -1, 1218, -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, - -1, -1, -1, -1, 1243, -1, 201, 202, -1, -1, + -1, -1, -1, 206, 1243, -1, 201, 202, -1, -1, 205, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 1260, -1, 183, -1, 185, 186, -1, 188, -1, + -1, 1260, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1274, -1, -1, 1277, 1278, - -1, -1, 202, -1, -1, -1, 1285, -1, 208, -1, + -1, -1, -1, -1, -1, -1, 1285, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1297, -1, -1, -1, -1, -1, -1, -1, -1, 1306, -1, -1, -1, -1, -1, 1312, -1, -1, -1, -1, -1, -1, @@ -2845,7 +2847,7 @@ static const yytype_int16 yycheck[] = 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 137, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, 170, 171, @@ -2865,7 +2867,7 @@ static const yytype_int16 yycheck[] = 98, 99, 100, 101, 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 137, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, @@ -2886,85 +2888,85 @@ static const yytype_int16 yycheck[] = 104, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 137, -1, -1, -1, -1, -1, -1, - -1, 145, 146, 147, 148, 149, -1, 151, 32, 153, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, 170, 171, -1, -1, - -1, -1, -1, -1, -1, 59, 60, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 186, 187, 188, -1, 190, -1, -1, 193, 194, -1, -1, -1, 4, 5, -1, -1, 202, -1, 204, -1, 206, 207, 14, 15, 16, 17, 18, -1, - -1, -1, -1, -1, 24, 25, 26, 27, -1, 32, + -1, -1, -1, -1, 24, 25, 26, 27, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, - -1, -1, -1, -1, 44, -1, -1, 47, 122, -1, - 50, 51, 126, -1, 54, -1, 59, 60, -1, -1, + -1, -1, -1, -1, 44, -1, -1, 47, -1, -1, + 50, 51, -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, - 100, 101, 102, 103, 104, -1, -1, -1, -1, 183, - -1, 185, 186, -1, 188, -1, 116, 117, -1, 122, - -1, -1, -1, 126, -1, -1, -1, -1, 202, -1, - -1, -1, -1, -1, 208, -1, -1, 137, -1, -1, + 100, 101, 102, 103, 104, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, -1, 32, -1, -1, -1, -1, 169, + 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 183, -1, 185, 186, -1, 188, 186, 187, 188, -1, - 190, 59, 60, 193, 194, -1, -1, -1, -1, 202, - 4, 5, 202, -1, 204, 208, 206, 207, 12, -1, + -1, -1, -1, -1, -1, -1, 186, 187, 188, -1, + 190, -1, -1, 193, 194, -1, -1, -1, -1, -1, + 4, 5, 202, -1, 204, -1, 206, 207, 12, -1, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, 48, -1, 50, -1, -1, -1, - 54, -1, -1, -1, 122, -1, -1, -1, 126, -1, + 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 116, 117, -1, 183, -1, 185, 186, -1, - 188, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 137, 202, -1, -1, -1, -1, -1, - 208, 145, 146, 147, 148, 149, -1, 151, 152, 153, + -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 145, 146, 147, 148, 149, -1, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, - 32, -1, -1, -1, -1, 169, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 186, 187, 188, -1, 190, 59, 60, 193, + -1, -1, 186, 187, 188, -1, 190, -1, -1, 193, 194, -1, -1, -1, -1, -1, 4, 5, 202, -1, 204, -1, 206, 207, 12, -1, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, 48, -1, 50, -1, -1, -1, 54, -1, -1, -1, - 122, -1, -1, -1, 126, -1, -1, -1, -1, 67, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, - -1, 183, -1, 185, 186, -1, 188, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 137, - 202, -1, -1, -1, -1, -1, 208, 145, 146, 147, - 148, 149, -1, 151, 32, 153, 154, 155, 156, 157, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, + 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 59, 60, -1, -1, -1, -1, -1, 186, 187, + -1, -1, -1, -1, -1, -1, -1, -1, 186, 187, 188, -1, 190, -1, -1, 193, 194, -1, -1, -1, 4, 5, -1, -1, 202, -1, 204, -1, 206, 207, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, - 44, -1, -1, 47, 122, -1, 50, -1, 126, -1, + 44, -1, -1, 47, -1, -1, 50, -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, - -1, -1, -1, -1, -1, 183, -1, 185, 186, -1, - 188, -1, 116, 117, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 202, -1, -1, -1, -1, -1, - 208, -1, -1, 137, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, @@ -2972,77 +2974,77 @@ static const yytype_int16 yycheck[] = -1, -1, 186, 187, 188, -1, 190, -1, -1, 193, 194, -1, -1, -1, 4, 5, -1, -1, 202, -1, 204, 205, 206, 207, 14, 15, 16, 17, 18, -1, - -1, 32, -1, -1, 24, -1, 26, -1, -1, 32, + -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, - -1, -1, -1, -1, 44, -1, -1, 47, 59, 60, - 50, -1, -1, -1, 54, -1, 59, 60, -1, -1, + -1, -1, -1, -1, 44, -1, -1, 47, -1, -1, + 50, -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, - -1, 122, -1, -1, -1, 126, 116, 117, -1, 122, - -1, -1, -1, 126, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 137, -1, -1, + -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, - -1, -1, 183, -1, 185, 186, -1, 188, -1, -1, - 183, -1, 185, 186, -1, 188, 186, 187, 188, -1, - 190, 202, -1, 193, 194, -1, -1, 208, -1, 202, - 4, 5, 202, 203, 204, 208, 206, 207, 12, -1, - 14, 15, 16, 17, 18, -1, -1, 32, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 186, 187, 188, -1, + 190, -1, -1, 193, 194, -1, -1, -1, -1, -1, + 4, 5, 202, 203, 204, -1, 206, 207, 12, -1, + 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, - 44, -1, -1, 47, 59, 60, 50, -1, -1, -1, + 44, -1, -1, 47, -1, -1, 50, -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, - -1, -1, -1, -1, -1, -1, -1, 122, -1, -1, - -1, 126, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 137, -1, -1, -1, -1, -1, -1, - -1, 145, 146, 147, 148, 149, -1, 151, 32, 153, + -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, - -1, -1, -1, -1, -1, 169, -1, -1, 183, -1, - 185, 186, -1, 188, -1, 59, 60, -1, -1, -1, - -1, -1, 186, 187, 188, -1, 190, 202, -1, 193, - 194, -1, -1, 208, 4, 5, -1, -1, 202, -1, + -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 186, 187, 188, -1, 190, -1, -1, 193, + 194, -1, -1, -1, 4, 5, -1, -1, 202, -1, 204, -1, 206, 207, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, - -1, -1, -1, -1, 44, -1, -1, 47, 122, -1, - 50, -1, 126, -1, 54, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 44, -1, -1, 47, -1, -1, + 50, -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, - 100, 101, 102, 103, -1, -1, -1, -1, -1, 183, - -1, 185, 186, -1, 188, -1, 116, 117, -1, -1, - -1, -1, -1, -1, -1, 125, -1, -1, 202, -1, - -1, -1, -1, -1, 208, -1, -1, 137, -1, -1, + 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, - -1, 151, 32, 153, 154, 155, 156, 157, 158, 159, + -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 59, - 60, -1, -1, -1, -1, -1, 186, 187, 188, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 186, 187, 188, -1, 190, -1, -1, 193, 194, -1, -1, -1, 4, 5, - -1, -1, 202, -1, 204, -1, 206, 207, 14, 15, + -1, -1, 202, 203, 204, -1, 206, 207, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, - -1, 47, 122, -1, 50, -1, 126, -1, 54, -1, - -1, -1, -1, -1, 60, -1, -1, -1, -1, -1, + -1, 47, -1, -1, 50, -1, -1, -1, 54, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, - -1, -1, -1, 183, -1, -1, 186, -1, 188, -1, - 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 202, -1, -1, -1, -1, -1, 208, -1, - -1, 137, -1, -1, -1, -1, -1, -1, -1, 145, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 116, 117, -1, -1, -1, -1, -1, -1, -1, 125, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, @@ -3053,7 +3055,7 @@ static const yytype_int16 yycheck[] = -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, -1, -1, 50, -1, - -1, -1, 54, -1, -1, 57, -1, -1, -1, -1, + -1, -1, 54, -1, -1, -1, -1, -1, 60, -1, -1, -1, -1, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, @@ -3061,7 +3063,7 @@ static const yytype_int16 yycheck[] = 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 137, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, @@ -3072,15 +3074,15 @@ static const yytype_int16 yycheck[] = 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, - -1, -1, 50, -1, -1, -1, 54, -1, -1, -1, + -1, -1, 50, -1, -1, -1, 54, -1, -1, 57, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, - -1, -1, -1, -1, -1, -1, -1, 125, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 137, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, @@ -3088,7 +3090,7 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, 186, 187, 188, -1, 190, -1, -1, 193, 194, -1, -1, -1, 4, 5, -1, -1, 202, -1, 204, -1, 206, 207, - 14, 15, 16, 17, 18, -1, -1, 21, -1, -1, + 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, -1, -1, 50, -1, -1, -1, @@ -3099,8 +3101,8 @@ static const yytype_int16 yycheck[] = 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, + -1, 125, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 137, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, @@ -3108,7 +3110,7 @@ static const yytype_int16 yycheck[] = -1, -1, 186, 187, 188, -1, 190, -1, -1, 193, 194, -1, -1, -1, 4, 5, -1, -1, 202, -1, 204, -1, 206, 207, 14, 15, 16, 17, 18, -1, - -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, + -1, 21, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, -1, -1, 50, -1, -1, -1, 54, -1, -1, -1, -1, -1, @@ -3119,14 +3121,14 @@ static const yytype_int16 yycheck[] = 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 137, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 186, 187, 188, -1, 190, -1, -1, 193, 194, -1, -1, -1, 4, 5, - -1, -1, 202, -1, 204, 205, 206, 207, 14, 15, + -1, -1, 202, -1, 204, -1, 206, 207, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, @@ -3139,13 +3141,13 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 137, -1, -1, -1, -1, -1, -1, -1, 145, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 184, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 186, 187, 188, -1, 190, -1, -1, 193, 194, -1, - -1, -1, 4, 5, -1, -1, 202, -1, 204, -1, + -1, -1, 4, 5, -1, -1, 202, -1, 204, 205, 206, 207, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, @@ -3158,14 +3160,14 @@ static const yytype_int16 yycheck[] = 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 137, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 186, 187, 188, -1, 190, -1, + -1, -1, 184, -1, 186, 187, 188, -1, 190, -1, -1, 193, 194, -1, -1, -1, 4, 5, -1, -1, - 202, -1, 204, 205, 206, 207, 14, 15, 16, 17, + 202, -1, 204, -1, 206, 207, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, @@ -3177,7 +3179,7 @@ static const yytype_int16 yycheck[] = 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 137, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, @@ -3197,7 +3199,7 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 137, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, @@ -3216,7 +3218,7 @@ static const yytype_int16 yycheck[] = 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 137, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, @@ -3234,15 +3236,15 @@ static const yytype_int16 yycheck[] = 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 116, 117, -1, -1, -1, -1, -1, -1, -1, 125, + 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 137, -1, -1, -1, -1, -1, -1, -1, 145, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 186, 187, 188, -1, 190, -1, -1, 193, 194, -1, - -1, -1, 4, 5, -1, -1, 202, -1, 204, -1, + -1, -1, 4, 5, -1, -1, 202, -1, 204, 205, 206, 207, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, @@ -3254,8 +3256,8 @@ static const yytype_int16 yycheck[] = 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, + -1, -1, -1, 125, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 137, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, @@ -3274,38 +3276,182 @@ static const yytype_int16 yycheck[] = 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 137, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 162, -1, -1, -1, -1, 18, - -1, 169, -1, -1, -1, 24, -1, -1, -1, -1, - -1, 30, -1, -1, -1, -1, -1, -1, 186, 187, - 188, 40, 190, -1, -1, 193, 194, -1, -1, 48, - -1, -1, -1, -1, 202, -1, 204, -1, 206, 207, - -1, -1, -1, -1, 63, -1, -1, -1, -1, -1, - -1, 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, -1, -1, -1, 20, 21, -1, - -1, 18, -1, -1, -1, -1, -1, 24, -1, -1, - -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 40, -1, -1, -1, -1, 137, -1, - -1, 48, -1, 20, 21, -1, -1, -1, -1, -1, - -1, 150, -1, -1, -1, -1, 63, -1, -1, -1, - -1, -1, 161, 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, -1, -1, -1, -1, - -1, 114, 115, 116, 117, 118, -1, 206, 121, 122, + 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, + -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 186, 187, + 188, -1, 190, -1, -1, 193, 194, -1, -1, -1, + 4, 5, -1, -1, 202, -1, 204, -1, 206, 207, + 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, + 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, + -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, + 44, -1, -1, 47, -1, -1, 50, -1, -1, -1, + 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 67, 68, -1, 70, 71, 72, -1, + 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, + 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, + 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, + 154, 155, 156, 157, 158, 159, 160, 161, 162, 20, + 21, -1, -1, 18, -1, 169, -1, -1, -1, 24, + -1, -1, -1, -1, -1, 30, -1, -1, -1, -1, + -1, -1, 186, 187, 188, 40, 190, -1, -1, 193, + 194, -1, -1, 48, -1, 20, 21, -1, 202, -1, + 204, -1, 206, 207, -1, -1, -1, -1, 63, -1, + -1, -1, -1, -1, -1, 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, -1, -1, + -1, -1, -1, 114, 115, 116, 117, 118, -1, -1, + 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, + -1, 132, 133, -1, -1, -1, -1, 138, 139, 140, + -1, -1, -1, 144, -1, -1, -1, 20, 21, 114, + 115, 116, 117, 118, -1, 150, 121, 122, 123, 124, + -1, 126, 127, 128, 129, 130, 161, 132, 133, -1, + -1, -1, -1, 138, 139, 140, -1, -1, 179, 144, + 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 201, 202, -1, -1, 205, -1, -1, -1, -1, -1, + -1, 206, -1, -1, 179, -1, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 201, 202, -1, -1, + 205, 114, 115, 116, 117, 118, 20, 21, 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, -1, -1, -1, -1, 138, 139, 140, -1, -1, - 137, 144, -1, -1, -1, 20, 21, 114, 115, 116, - 117, 118, -1, 150, 121, 122, 123, 124, -1, 126, - 127, 128, 129, 130, 161, 132, 133, -1, -1, -1, - -1, 138, 139, 140, -1, -1, 179, 144, 181, 182, + -1, 144, -1, -1, -1, -1, -1, 20, 21, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 201, 202, - -1, -1, 205, -1, -1, -1, -1, -1, -1, 206, + -1, -1, 205, -1, -1, -1, -1, -1, -1, -1, + 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, + 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, + -1, -1, -1, -1, 138, 139, 140, -1, -1, -1, + 144, 114, 115, 116, 117, 118, 20, 21, 121, 122, + 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, + 133, -1, -1, -1, -1, 138, 139, 140, -1, -1, + -1, 144, -1, -1, -1, 179, -1, 181, 182, 183, + 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 201, 202, -1, + -1, 205, -1, -1, -1, -1, 179, -1, 181, 182, + 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 201, 202, + -1, -1, 205, -1, -1, -1, -1, -1, 20, 21, + 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, + 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, + -1, -1, -1, -1, 138, 139, 140, -1, -1, -1, + 144, 20, 21, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 179, -1, 181, 182, 183, + 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 201, 202, -1, + -1, 205, 114, 115, 116, 117, 118, -1, -1, 121, + 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, + 132, 133, -1, -1, -1, -1, 138, 139, 140, -1, + -1, -1, 144, 20, 21, 114, 115, 116, 117, 118, + -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, + 129, 130, -1, 132, 133, -1, -1, -1, -1, 138, + 139, 140, -1, -1, -1, 144, -1, 179, -1, 181, + 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 201, + 202, -1, -1, 205, -1, -1, -1, -1, -1, -1, + 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, + 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 201, 202, -1, -1, 205, 114, 115, 116, + 117, 118, 20, 21, 121, 122, 123, 124, -1, 126, + 127, 128, 129, 130, -1, 132, 133, -1, -1, -1, + -1, 138, 139, 140, -1, -1, -1, 144, -1, -1, + -1, -1, -1, 20, 21, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, + 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 201, 202, -1, -1, 205, -1, + -1, -1, -1, -1, -1, -1, 114, 115, 116, 117, + 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, + 128, 129, 130, -1, 132, 133, -1, -1, -1, -1, + 138, 139, 140, -1, -1, -1, 144, 114, 115, 116, + 117, 118, 20, 21, 121, 122, 123, 124, -1, 126, + 127, 128, 129, 130, -1, 132, 133, -1, -1, -1, + -1, 138, 139, 140, -1, -1, -1, 144, -1, -1, + -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, + 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 201, 202, -1, -1, 205, -1, -1, + -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, + 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 201, 202, -1, -1, 205, -1, + -1, -1, -1, -1, 20, 21, 114, 115, 116, 117, + 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, + 128, 129, 130, -1, 132, 133, -1, -1, -1, -1, + 138, 139, 140, -1, -1, -1, 144, 20, 21, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, + 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 201, 202, -1, -1, 205, 114, 115, + 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, + 126, 127, 128, 129, 130, -1, 132, 133, -1, -1, + -1, -1, 138, 139, 140, -1, -1, -1, 144, 20, + 21, 114, 115, 116, 117, 118, -1, -1, 121, 122, + 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, + 133, -1, -1, -1, -1, 138, 139, 140, -1, -1, + -1, 144, -1, 179, -1, 181, 182, 183, 184, 185, + 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 201, 202, -1, -1, 205, + -1, -1, -1, -1, -1, -1, 179, -1, 181, 182, + 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 201, 202, + -1, -1, 205, 114, 115, 116, 117, 118, 20, 21, + 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, + -1, 132, 133, -1, -1, -1, -1, 138, 139, 140, + -1, -1, -1, 144, -1, -1, -1, -1, -1, 20, + 21, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 179, -1, + 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 201, 202, -1, -1, 205, -1, -1, -1, -1, -1, + -1, -1, 114, 115, 116, 117, 118, -1, -1, 121, + 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, + 132, 133, -1, -1, -1, -1, 138, 139, 140, -1, + -1, -1, 144, 114, 115, 116, 117, 118, 20, 21, + 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, + -1, 132, 133, -1, -1, -1, -1, 138, 139, 140, + -1, -1, -1, 144, -1, -1, -1, 179, -1, 181, + 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 201, + 202, -1, -1, 205, -1, -1, -1, -1, 179, -1, + 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 201, 202, -1, -1, 205, -1, -1, -1, -1, -1, + 20, 21, 114, 115, 116, 117, 118, -1, -1, 121, + 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, + 132, 133, -1, -1, -1, -1, 138, 139, 140, -1, + -1, -1, 144, 20, 21, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 179, -1, 181, + 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 201, + 202, -1, -1, 205, 114, 115, 116, 117, 118, -1, + -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, + 130, -1, 132, 133, -1, -1, -1, -1, 138, 139, + 140, -1, -1, -1, 144, 20, 21, 114, 115, 116, + 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, + 127, 128, 129, 130, -1, 132, 133, -1, -1, -1, + -1, 138, 139, 140, -1, -1, -1, 144, -1, 179, + -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 201, 202, -1, -1, 205, -1, -1, -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 201, 202, -1, -1, 205, 114, @@ -3385,330 +3531,186 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 201, 202, -1, -1, 205, 114, 115, 116, 117, - 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, - 128, 129, 130, -1, 132, 133, -1, -1, -1, -1, - 138, 139, 140, -1, -1, -1, 144, 20, 21, 114, - 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, - -1, 126, 127, 128, 129, 130, -1, 132, 133, -1, - -1, -1, -1, 138, 139, 140, -1, -1, -1, 144, - -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 201, 202, -1, -1, 205, -1, -1, - -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 201, 202, -1, -1, - 205, 114, 115, 116, 117, 118, 20, 21, 121, 122, - 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, - 133, -1, -1, -1, -1, 138, 139, 140, -1, -1, - -1, 144, -1, -1, -1, -1, -1, 20, 21, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 179, -1, 181, 182, - 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 201, 202, - -1, -1, 205, -1, -1, -1, -1, -1, -1, -1, - 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, - 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, - -1, -1, -1, -1, 138, 139, 140, -1, -1, -1, - 144, 114, 115, 116, 117, 118, 20, 21, 121, 122, - 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, - 133, -1, -1, -1, -1, 138, 139, 140, -1, -1, - -1, 144, -1, -1, -1, 179, -1, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 201, 202, -1, - -1, 205, -1, -1, -1, -1, 179, -1, 181, 182, - 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 201, 202, - -1, -1, 205, -1, -1, -1, -1, -1, 20, 21, - 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, - 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, - -1, -1, -1, -1, 138, 139, 140, -1, -1, -1, - 144, 20, 21, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 179, -1, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 201, 202, -1, - -1, 205, 114, 115, 116, 117, 118, -1, -1, 121, - 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, - 132, 133, -1, -1, -1, -1, 138, 139, 140, -1, - -1, -1, 144, 20, 21, 114, 115, 116, 117, 118, - -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, - 129, 130, -1, 132, 133, -1, -1, -1, -1, 138, - 139, 140, -1, -1, -1, 144, -1, 179, -1, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 201, - 202, -1, -1, 205, -1, -1, -1, -1, -1, -1, - 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 201, 202, -1, -1, 205, 114, 115, 116, - 117, 118, 20, 21, 121, 122, 123, 124, -1, 126, - 127, 128, 129, 130, -1, 132, 133, -1, -1, -1, - -1, 138, 139, 140, -1, -1, -1, 144, -1, -1, - -1, -1, -1, 20, 21, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 201, 202, -1, -1, 205, -1, - -1, -1, -1, -1, -1, -1, 114, 115, 116, 117, - 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, - 128, 129, 130, -1, 132, 133, -1, -1, -1, -1, - 138, 139, 140, -1, -1, -1, 144, 114, 115, 116, - 117, 118, 20, 21, 121, 122, 123, 124, -1, 126, - 127, 128, 129, 130, -1, 132, 133, -1, -1, -1, - -1, 138, 139, 140, -1, -1, -1, 144, -1, -1, - -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 201, 202, -1, -1, 205, -1, -1, - -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 201, 202, -1, -1, 205, -1, - -1, -1, -1, -1, 20, 21, 114, 115, 116, 117, + -1, 201, 202, -1, -1, 205, 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, -1, -1, -1, -1, - 138, 139, 140, -1, -1, -1, 144, 20, 21, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 138, 139, 140, -1, -1, -1, 144, 20, 21, 114, + 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, + -1, 126, 127, 128, 129, 130, -1, 132, 133, -1, + -1, -1, -1, 138, 139, 140, -1, -1, -1, 144, -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 201, 202, -1, -1, 205, 114, 115, - 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, - 126, 127, 128, 129, 130, -1, 132, 133, -1, -1, - -1, -1, 138, 139, 140, -1, -1, -1, 144, 20, + -1, -1, -1, 201, 202, 203, -1, -1, -1, -1, + -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 201, 202, 203, 20, 21, 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, -1, -1, -1, -1, 138, 139, 140, -1, -1, - -1, 144, -1, 179, -1, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 201, 202, -1, -1, 205, + -1, 144, 20, 21, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 201, 202, - -1, -1, 205, 114, 115, 116, 117, 118, 20, 21, + 203, -1, -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, -1, -1, -1, -1, 138, 139, 140, - -1, -1, -1, 144, -1, -1, -1, -1, -1, 20, - 21, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 179, -1, + -1, -1, -1, 144, 20, 21, 114, 115, 116, 117, + 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, + 128, 129, 130, -1, 132, 133, -1, -1, -1, -1, + 138, 139, 140, -1, -1, -1, 144, -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 201, 202, -1, -1, 205, -1, -1, -1, -1, -1, - -1, -1, 114, 115, 116, 117, 118, -1, -1, 121, - 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, - 132, 133, -1, -1, -1, -1, 138, 139, 140, -1, - -1, -1, 144, 114, 115, 116, 117, 118, 20, 21, - 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, - -1, 132, 133, -1, -1, -1, -1, 138, 139, 140, - -1, -1, -1, 144, -1, -1, -1, 179, -1, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 201, - 202, -1, -1, 205, -1, -1, -1, -1, 179, -1, - 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, + 201, 202, 203, -1, -1, -1, -1, -1, -1, -1, + -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, + 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 201, 202, 203, -1, -1, 114, 115, + 116, 117, 118, 20, 21, 121, 122, 123, 124, -1, + 126, 127, 128, 129, 130, -1, 132, 133, -1, -1, + -1, -1, 138, 139, 140, -1, -1, -1, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 201, 202, -1, -1, 205, -1, -1, -1, -1, -1, - 20, 21, 114, 115, 116, 117, 118, -1, -1, 121, - 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, - 132, 133, -1, -1, -1, -1, 138, 139, 140, -1, - -1, -1, 144, 20, 21, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 179, -1, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 201, - 202, -1, -1, 205, 114, 115, 116, 117, 118, -1, - -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, - 130, -1, 132, 133, -1, -1, -1, -1, 138, 139, - 140, -1, -1, -1, 144, 20, 21, 114, 115, 116, - 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, - 127, 128, 129, 130, -1, 132, 133, -1, -1, -1, - -1, 138, 139, 140, -1, -1, -1, 144, -1, 179, - -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, - 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 201, 202, 203, -1, -1, -1, -1, -1, -1, - -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 201, 202, 203, 20, 21, 114, - 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, - -1, 126, 127, 128, 129, 130, -1, 132, 133, -1, - -1, -1, -1, 138, 139, 140, -1, -1, -1, 144, - 20, 21, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 179, -1, 181, 182, 183, 184, 185, + 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 201, 202, 203, -1, 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, 20, + 21, 138, 139, 140, 141, 142, 143, 144, -1, -1, + -1, -1, -1, -1, -1, -1, 37, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 20, 21, -1, -1, 171, -1, -1, -1, -1, -1, + -1, 178, 179, -1, 181, 182, 183, 184, 185, 186, + 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 201, 202, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 201, 202, 203, -1, - -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, - 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, - 133, -1, -1, -1, -1, 138, 139, 140, -1, -1, - -1, 144, 20, 21, 114, 115, 116, 117, 118, -1, - -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, - 130, -1, 132, 133, -1, -1, -1, -1, 138, 139, - 140, -1, -1, -1, 144, -1, 179, -1, 181, 182, - 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 201, 202, - 203, -1, -1, -1, -1, -1, -1, -1, -1, 179, + -1, -1, -1, -1, -1, 106, 107, 108, 109, 110, + 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, + 121, 122, 123, -1, -1, 126, 127, 128, -1, -1, + 131, 132, 133, 134, 135, -1, -1, 138, 139, 140, + 141, 142, 143, 144, 114, 115, 116, 117, 118, 20, + 21, 121, 122, 123, 124, -1, 126, 127, 128, 129, + 130, -1, 132, 133, -1, -1, 136, -1, 138, 139, + 140, -1, -1, -1, 144, -1, -1, -1, 179, -1, + 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, + -1, -1, 193, 194, -1, -1, -1, -1, -1, -1, + 201, 202, -1, -1, -1, -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 201, 202, 203, -1, -1, 114, 115, 116, 117, - 118, 20, 21, 121, 122, 123, 124, -1, 126, 127, - 128, 129, 130, -1, 132, 133, -1, -1, -1, -1, - 138, 139, 140, -1, -1, -1, 144, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 201, 202, -1, -1, -1, -1, -1, 20, 21, + -1, -1, -1, 114, 115, 116, 117, 118, -1, -1, + 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, + -1, 132, 133, -1, -1, -1, -1, 138, 139, 140, + -1, -1, -1, 144, 20, 21, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 201, 202, 203, -1, 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, 20, 21, 138, - 139, 140, 141, 142, 143, 144, -1, -1, -1, -1, - -1, -1, -1, -1, 37, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 20, 21, - -1, -1, 171, -1, -1, -1, -1, -1, -1, 178, - 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 201, 202, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 169, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 179, -1, + 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, -1, -1, 126, 127, 128, -1, -1, 131, 132, - 133, 134, 135, -1, -1, 138, 139, 140, 141, 142, - 143, 144, 114, 115, 116, 117, 118, 20, 21, 121, + 201, 202, 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, - 132, 133, -1, -1, 136, -1, 138, 139, 140, -1, - -1, -1, 144, -1, -1, -1, 179, -1, 181, 182, - 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, - 193, 194, -1, -1, -1, -1, -1, -1, 201, 202, - -1, -1, -1, -1, -1, -1, -1, 179, -1, 181, + 132, 133, -1, -1, -1, -1, 138, 139, 140, -1, + -1, -1, 144, 20, 21, -1, -1, -1, 114, 115, + 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, + 126, 127, 128, 129, 130, -1, 132, 133, -1, 171, + -1, -1, 138, 139, 140, -1, -1, 179, 144, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 201, - 202, -1, -1, -1, -1, -1, 20, 21, -1, -1, - -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, - 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, - 133, -1, -1, -1, -1, 138, 139, 140, -1, -1, - -1, 144, 20, 21, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 169, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 179, -1, 181, 182, - 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 201, 202, - 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, - 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, - -1, -1, -1, -1, 138, 139, 140, -1, -1, -1, - 144, 20, 21, -1, -1, -1, 114, 115, 116, 117, - 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, - 128, 129, 130, -1, 132, 133, -1, 171, -1, -1, - 138, 139, 140, -1, -1, 179, 144, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 201, 202, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 20, 21, -1, -1, -1, -1, -1, - -1, -1, -1, 201, 202, 114, 115, 116, 117, 118, - -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, - 129, 130, -1, 132, 133, 20, 21, -1, -1, 138, - 139, 140, -1, -1, -1, 144, -1, -1, -1, -1, + 202, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 179, 180, 181, 182, 183, 184, 185, + 186, 187, 188, 189, 190, 20, 21, -1, -1, -1, + -1, -1, -1, -1, -1, 201, 202, 114, 115, 116, + 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, + 127, 128, 129, 130, -1, 132, 133, 20, 21, -1, + -1, 138, 139, 140, -1, -1, -1, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 171, -1, -1, -1, -1, -1, -1, -1, - 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, -1, -1, -1, -1, -1, 114, 115, 116, - 117, 118, 201, 202, 121, 122, 123, 124, -1, 126, - 127, 128, 129, 130, -1, 132, 133, 20, 21, -1, - -1, 138, 139, 140, -1, -1, -1, 144, -1, 114, - 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, - -1, 126, 127, 128, 129, 130, -1, 132, 133, -1, - 167, 20, 21, 138, 139, 140, -1, -1, -1, 144, + -1, -1, -1, -1, 171, -1, -1, -1, -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 201, 202, 171, -1, -1, -1, - -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, - -1, 114, 115, 116, 117, 118, 201, 202, 121, 122, + 187, 188, 189, 190, -1, -1, -1, -1, -1, 114, + 115, 116, 117, 118, 201, 202, 121, 122, 123, 124, + -1, 126, 127, 128, 129, 130, -1, 132, 133, 20, + 21, -1, -1, 138, 139, 140, -1, -1, -1, 144, + -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, - 133, -1, -1, 20, 21, 138, 139, 140, -1, -1, - -1, 144, -1, -1, -1, 114, 115, 116, 117, 118, - -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, - 129, 130, -1, 132, 133, 20, 21, -1, 171, 138, - 139, 140, -1, -1, -1, 144, 179, -1, 181, 182, + 133, -1, 167, 20, 21, 138, 139, 140, -1, -1, + -1, 144, -1, -1, 179, -1, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 201, 202, 171, -1, + -1, -1, -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 201, 202, - -1, -1, 171, -1, -1, -1, -1, -1, -1, -1, - 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, -1, -1, -1, -1, -1, 114, 115, 116, - 117, 118, 201, 202, 121, 122, 123, 124, -1, 126, + -1, -1, -1, 114, 115, 116, 117, 118, 201, 202, + 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, + -1, 132, 133, -1, -1, 20, 21, 138, 139, 140, + -1, -1, -1, 144, -1, -1, -1, 114, 115, 116, + 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, 20, 21, -1, - -1, 138, 139, 140, -1, -1, -1, 144, -1, 114, - 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, + 171, 138, 139, 140, -1, -1, -1, 144, 179, -1, + 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 201, 202, -1, -1, 171, -1, -1, -1, -1, -1, + -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, + 187, 188, 189, 190, -1, -1, -1, -1, -1, 114, + 115, 116, 117, 118, 201, 202, 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, 20, 21, -1, -1, 138, 139, 140, -1, -1, -1, 144, - -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 201, 202, -1, -1, -1, -1, - -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, - -1, 114, 115, 116, 117, 118, 201, 202, 121, 122, + -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, 20, 21, -1, -1, 138, 139, 140, -1, -1, - -1, -1, -1, 114, 115, 116, 117, 118, -1, -1, - 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, - -1, 132, 133, 20, 21, -1, -1, 138, -1, -1, + -1, 144, -1, -1, 179, -1, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 201, 202, -1, -1, -1, -1, -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 201, 202, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, + -1, -1, -1, 114, 115, 116, 117, 118, 201, 202, + 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, + -1, 132, 133, 20, 21, -1, -1, 138, 139, 140, -1, -1, -1, -1, -1, 114, 115, 116, 117, 118, - 201, 202, 121, 122, 123, 124, -1, 126, 127, 128, + -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, 20, 21, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 114, 115, 116, - 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, - 127, 128, 129, 130, -1, 132, 133, 20, 21, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 179, -1, + 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 201, 202, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 182, 183, 184, 185, 186, - 187, 188, 189, 190, -1, -1, -1, -1, -1, 114, - 115, 116, 117, 118, 201, 202, 121, 122, 123, 124, + 201, 202, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 182, 183, 184, 185, 186, 187, 188, + 189, 190, -1, -1, -1, -1, -1, 114, 115, 116, + 117, 118, 201, 202, 121, 122, 123, 124, -1, 126, + 127, 128, 129, 130, -1, 132, 133, 20, 21, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 114, + 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 114, 115, 116, 117, 118, -1, -1, 121, -1, + -1, -1, -1, -1, -1, -1, 183, 184, 185, 186, + 187, 188, 189, 190, -1, -1, -1, -1, -1, 18, + -1, -1, -1, -1, 201, 202, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 184, + 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, + -1, 114, 115, 116, 117, 118, 201, 202, 121, -1, -1, 124, -1, 126, 127, 128, 129, 130, -1, 132, - 133, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 183, 184, - 185, 186, 187, 188, 189, 190, 18, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 201, 202, -1, -1, + 133, 70, 71, 72, -1, 74, 75, 76, 77, 78, + 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, + 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, + 99, 100, -1, -1, -1, -1, -1, 18, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 184, 185, 186, 187, 188, 189, 190, 18, -1, + -1, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 201, 202, - -1, -1, -1, -1, -1, -1, -1, -1, 70, 71, - 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, - 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, - 92, 93, 94, -1, -1, 97, 98, 99, 100, -1, - 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 152, 34, -1, -1, -1, -1, 70, + 71, 72, 161, 74, 75, 76, 77, 78, 79, 80, + 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, + -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, + 70, -1, 72, -1, 74, 75, 76, 77, 78, -1, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 152, -1, 34, -1, -1, -1, -1, -1, -1, 161, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 152, -1, -1, -1, -1, -1, 70, -1, - 72, 161, 74, 75, 76, 77, 78, -1, 80, 81, - 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, - 92, 93, 94, -1, -1, 97, 98, 99, 100, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, + -1, 152, -1, -1, -1, -1, -1, -1, -1, -1, + 161, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 161 + -1, 161 }; /* YYSTOS[STATE-NUM] -- The symbol kind of the accessing symbol of @@ -3717,142 +3719,142 @@ static const yytype_int16 yystos[] = { 0, 210, 0, 6, 29, 31, 33, 39, 49, 55, 79, 101, 102, 171, 190, 202, 211, 214, 220, 222, - 223, 227, 253, 257, 281, 355, 362, 366, 375, 419, - 423, 427, 18, 19, 161, 245, 246, 247, 154, 228, + 223, 227, 253, 257, 281, 355, 362, 366, 375, 420, + 424, 428, 18, 19, 161, 245, 246, 247, 154, 228, 229, 161, 190, 224, 225, 56, 62, 359, 360, 161, - 206, 213, 359, 359, 359, 137, 161, 268, 33, 62, - 130, 194, 204, 249, 250, 251, 252, 268, 171, 4, - 5, 7, 35, 372, 61, 353, 178, 177, 180, 177, - 224, 21, 56, 189, 201, 226, 161, 171, 353, 161, - 161, 161, 161, 137, 221, 251, 251, 251, 204, 138, - 139, 140, 177, 203, 56, 62, 258, 260, 56, 62, - 363, 56, 62, 373, 56, 62, 354, 14, 15, 154, - 159, 161, 162, 204, 216, 246, 154, 229, 161, 161, - 161, 361, 56, 62, 212, 428, 420, 424, 161, 163, - 219, 205, 247, 251, 251, 251, 251, 261, 161, 364, - 376, 169, 356, 163, 164, 215, 14, 15, 154, 159, - 161, 216, 243, 244, 226, 178, 169, 169, 169, 163, - 205, 34, 70, 72, 74, 75, 76, 77, 78, 80, - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 92, 93, 94, 97, 98, 99, 100, 116, 117, 161, - 256, 259, 180, 365, 105, 370, 371, 351, 207, 248, - 327, 163, 164, 165, 177, 205, 18, 24, 30, 40, - 48, 63, 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, 150, 206, 268, 379, 381, - 382, 385, 390, 418, 429, 421, 425, 20, 21, 37, - 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 126, 127, - 128, 131, 132, 133, 134, 135, 138, 139, 140, 141, - 142, 143, 144, 179, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 193, 194, 201, 202, 34, 34, - 204, 254, 169, 262, 74, 78, 92, 93, 97, 98, - 99, 100, 380, 169, 161, 377, 170, 352, 246, 207, - 146, 161, 349, 350, 243, 184, 184, 184, 204, 184, - 184, 204, 184, 184, 184, 184, 184, 184, 204, 268, - 32, 59, 60, 122, 126, 183, 186, 188, 202, 208, - 389, 181, 161, 384, 341, 344, 161, 161, 161, 203, - 21, 161, 203, 149, 205, 327, 337, 338, 180, 255, - 265, 367, 180, 369, 169, 374, 327, 246, 204, 42, - 177, 180, 183, 348, 391, 396, 398, 4, 5, 14, - 15, 16, 17, 18, 24, 26, 30, 38, 44, 47, - 50, 54, 67, 68, 79, 101, 102, 103, 116, 117, - 145, 146, 147, 148, 149, 151, 153, 154, 155, 156, - 157, 158, 159, 160, 162, 169, 186, 187, 188, 193, - 194, 202, 204, 206, 207, 218, 220, 263, 268, 273, - 286, 293, 296, 299, 303, 305, 307, 308, 310, 315, - 318, 319, 326, 379, 431, 436, 446, 449, 461, 464, - 400, 394, 161, 386, 402, 404, 406, 408, 410, 412, - 414, 416, 319, 184, 204, 32, 183, 32, 183, 202, - 208, 203, 319, 202, 208, 390, 177, 463, 161, 171, - 339, 418, 422, 161, 171, 342, 426, 161, 131, 204, - 6, 49, 280, 171, 205, 418, 1, 8, 9, 10, - 12, 25, 27, 28, 37, 41, 43, 51, 53, 57, - 58, 64, 104, 170, 171, 230, 231, 234, 236, 237, - 238, 239, 240, 241, 242, 264, 269, 274, 275, 276, - 277, 278, 279, 281, 285, 306, 319, 161, 357, 358, - 268, 333, 350, 319, 161, 161, 390, 125, 131, 178, - 347, 418, 418, 388, 418, 184, 184, 184, 270, 381, - 431, 204, 184, 4, 101, 102, 184, 204, 184, 204, - 204, 184, 184, 204, 184, 184, 204, 184, 184, 204, - 184, 184, 319, 319, 204, 204, 204, 204, 204, 204, - 217, 12, 319, 445, 460, 319, 319, 319, 319, 319, - 12, 48, 297, 319, 297, 207, 204, 253, 169, 207, - 299, 304, 20, 21, 114, 115, 116, 117, 118, 121, - 122, 123, 124, 126, 127, 128, 129, 130, 132, 133, - 138, 139, 140, 144, 179, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 201, 202, 205, 204, 418, - 418, 205, 161, 383, 418, 254, 418, 254, 418, 254, - 339, 340, 342, 343, 205, 393, 266, 297, 203, 203, - 319, 161, 430, 180, 171, 170, 180, 171, 170, 319, + 206, 213, 359, 359, 359, 161, 268, 33, 62, 130, + 194, 204, 249, 250, 251, 252, 268, 171, 4, 5, + 7, 35, 372, 61, 353, 178, 177, 180, 177, 224, + 21, 56, 189, 201, 226, 161, 171, 353, 161, 161, + 161, 137, 221, 251, 251, 251, 204, 138, 139, 140, + 177, 203, 56, 62, 258, 260, 56, 62, 363, 56, + 62, 373, 56, 62, 354, 14, 15, 154, 159, 161, + 162, 204, 216, 246, 154, 229, 161, 161, 161, 361, + 56, 62, 212, 429, 421, 425, 161, 163, 219, 205, + 247, 251, 251, 251, 251, 261, 161, 364, 376, 169, + 356, 163, 164, 215, 14, 15, 154, 159, 161, 216, + 243, 244, 226, 178, 169, 169, 169, 163, 205, 34, + 70, 72, 74, 75, 76, 77, 78, 80, 81, 82, + 83, 84, 85, 86, 87, 88, 89, 90, 92, 93, + 94, 97, 98, 99, 100, 116, 117, 161, 256, 259, + 180, 365, 105, 370, 371, 351, 207, 248, 327, 163, + 164, 165, 177, 205, 18, 24, 30, 40, 48, 63, + 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, 150, 206, 268, 379, 381, 382, 385, + 390, 391, 419, 430, 422, 426, 20, 21, 37, 106, + 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 126, 127, 128, + 131, 132, 133, 134, 135, 138, 139, 140, 141, 142, + 143, 144, 179, 181, 182, 183, 184, 185, 186, 187, + 188, 189, 190, 193, 194, 201, 202, 34, 34, 204, + 254, 169, 262, 74, 78, 92, 93, 97, 98, 99, + 100, 380, 169, 161, 377, 170, 352, 246, 207, 146, + 161, 349, 350, 243, 184, 184, 184, 204, 184, 184, + 204, 184, 184, 184, 184, 184, 184, 204, 268, 32, + 59, 60, 122, 126, 183, 186, 188, 202, 208, 389, + 181, 161, 384, 341, 344, 161, 161, 161, 203, 21, + 161, 203, 149, 205, 327, 337, 338, 180, 255, 265, + 367, 180, 369, 169, 374, 327, 246, 204, 42, 177, + 180, 183, 348, 392, 397, 399, 4, 5, 14, 15, + 16, 17, 18, 24, 26, 30, 38, 44, 47, 50, + 54, 67, 68, 79, 101, 102, 103, 116, 117, 145, + 146, 147, 148, 149, 151, 153, 154, 155, 156, 157, + 158, 159, 160, 162, 169, 186, 187, 188, 193, 194, + 202, 204, 206, 207, 218, 220, 263, 268, 273, 286, + 293, 296, 299, 303, 305, 307, 308, 310, 315, 318, + 319, 326, 379, 432, 437, 447, 450, 462, 465, 401, + 395, 161, 386, 403, 405, 407, 409, 411, 413, 415, + 417, 319, 184, 204, 32, 183, 32, 183, 202, 208, + 203, 319, 202, 208, 390, 177, 464, 161, 171, 339, + 419, 423, 161, 171, 342, 427, 161, 131, 204, 6, + 49, 280, 171, 205, 419, 1, 8, 9, 10, 12, + 25, 27, 28, 37, 41, 43, 51, 53, 57, 58, + 64, 104, 170, 171, 230, 231, 234, 236, 237, 238, + 239, 240, 241, 242, 264, 269, 274, 275, 276, 277, + 278, 279, 281, 285, 306, 319, 161, 357, 358, 268, + 333, 350, 319, 161, 161, 390, 125, 131, 178, 347, + 419, 419, 388, 419, 184, 184, 184, 270, 381, 432, + 204, 184, 4, 101, 102, 184, 204, 184, 204, 204, + 184, 184, 204, 184, 184, 204, 184, 184, 204, 184, + 184, 319, 319, 204, 204, 204, 204, 204, 204, 217, + 12, 319, 446, 461, 319, 319, 319, 319, 319, 12, + 48, 297, 319, 297, 207, 204, 253, 169, 207, 299, + 304, 20, 21, 114, 115, 116, 117, 118, 121, 122, + 123, 124, 126, 127, 128, 129, 130, 132, 133, 138, + 139, 140, 144, 179, 181, 182, 183, 184, 185, 186, + 187, 188, 189, 190, 201, 202, 205, 204, 419, 419, + 205, 161, 383, 419, 254, 419, 254, 419, 254, 339, + 340, 342, 343, 205, 394, 266, 297, 203, 203, 203, + 319, 161, 431, 180, 171, 170, 180, 171, 170, 319, 146, 161, 346, 378, 337, 319, 204, 125, 319, 262, 60, 319, 319, 161, 171, 154, 57, 319, 262, 125, 319, 36, 171, 171, 204, 9, 171, 171, 171, 171, 171, 65, 282, 171, 106, 107, 108, 109, 110, 111, 112, 113, 119, 120, 125, 131, 134, 135, 141, 142, - 143, 178, 178, 177, 463, 170, 253, 334, 205, 42, - 171, 347, 319, 185, 185, 185, 171, 437, 439, 271, - 204, 204, 268, 294, 184, 184, 184, 456, 297, 390, - 460, 319, 287, 289, 319, 291, 458, 297, 443, 447, - 297, 441, 390, 319, 319, 319, 319, 319, 319, 165, - 166, 215, 378, 136, 177, 463, 378, 12, 177, 463, - 463, 146, 151, 184, 268, 309, 152, 161, 202, 205, - 297, 432, 433, 202, 302, 265, 207, 253, 18, 152, + 143, 178, 178, 177, 464, 170, 253, 334, 205, 42, + 171, 347, 319, 185, 185, 185, 171, 438, 440, 271, + 204, 204, 268, 294, 184, 184, 184, 457, 297, 390, + 461, 319, 287, 289, 319, 291, 459, 297, 444, 448, + 297, 442, 390, 319, 319, 319, 319, 319, 319, 165, + 166, 215, 378, 136, 177, 464, 378, 12, 177, 464, + 464, 146, 151, 184, 268, 309, 152, 161, 202, 205, + 297, 433, 434, 202, 302, 265, 207, 253, 18, 152, 161, 379, 18, 152, 161, 379, 319, 319, 319, 319, 319, 319, 161, 319, 152, 161, 319, 319, 319, 379, 319, 319, 319, 319, 319, 319, 21, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 127, 128, 152, 161, 201, 202, 316, 319, 205, 297, 185, 185, 171, 185, 185, 255, 185, 255, 185, 255, 171, 185, - 171, 185, 267, 418, 205, 177, 203, 170, 418, 418, + 171, 185, 267, 419, 205, 177, 203, 170, 419, 419, 205, 204, 42, 125, 177, 178, 180, 183, 345, 262, 378, 319, 13, 319, 262, 178, 180, 154, 319, 169, 319, 204, 204, 284, 350, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 357, 368, 7, 327, 332, 161, - 319, 171, 392, 397, 399, 418, 390, 390, 418, 69, - 435, 266, 184, 319, 418, 450, 452, 454, 390, 463, - 171, 185, 463, 205, 390, 390, 205, 390, 390, 463, - 390, 390, 463, 390, 185, 205, 205, 205, 205, 205, - 205, 319, 19, 319, 445, 170, 19, 378, 319, 203, - 205, 204, 204, 311, 313, 204, 131, 345, 432, 177, + 319, 171, 393, 398, 400, 419, 390, 390, 419, 69, + 436, 266, 184, 319, 419, 451, 453, 455, 390, 464, + 171, 185, 464, 205, 390, 390, 205, 390, 390, 464, + 390, 390, 464, 390, 185, 205, 205, 205, 205, 205, + 205, 319, 19, 319, 446, 170, 19, 378, 319, 203, + 205, 204, 204, 311, 313, 204, 131, 345, 433, 177, 205, 177, 205, 202, 254, 170, 302, 184, 204, 184, 204, 204, 204, 203, 18, 152, 161, 379, 180, 152, 161, 319, 204, 204, 152, 161, 319, 1, 203, 205, - 401, 395, 161, 387, 403, 185, 407, 185, 411, 185, - 339, 415, 342, 417, 171, 185, 319, 161, 161, 418, + 402, 396, 161, 387, 404, 185, 408, 185, 412, 185, + 339, 416, 342, 418, 171, 185, 319, 161, 161, 419, 319, 19, 262, 319, 265, 205, 319, 161, 283, 170, 56, 62, 330, 66, 331, 171, 171, 185, 185, 185, - 161, 205, 433, 205, 161, 205, 185, 390, 390, 390, + 161, 205, 434, 205, 161, 205, 185, 390, 390, 390, 185, 205, 390, 204, 205, 185, 185, 185, 185, 205, 185, 185, 205, 185, 302, 204, 167, 297, 297, 19, 319, 319, 390, 254, 319, 319, 319, 203, 202, 152, 161, 125, 131, 178, 183, 300, 301, 255, 254, 320, 319, 322, 319, 205, 297, 319, 184, 204, 319, 204, - 203, 319, 205, 297, 204, 203, 317, 405, 409, 413, - 418, 204, 205, 42, 345, 297, 170, 262, 205, 177, - 205, 46, 331, 45, 105, 328, 438, 440, 272, 205, - 171, 185, 295, 185, 185, 185, 457, 185, 460, 288, - 290, 292, 459, 444, 448, 442, 204, 205, 297, 171, - 171, 297, 205, 205, 185, 255, 205, 205, 432, 204, + 203, 319, 205, 297, 204, 203, 317, 406, 410, 414, + 419, 204, 205, 42, 345, 297, 170, 262, 205, 177, + 205, 46, 331, 45, 105, 328, 439, 441, 272, 205, + 171, 185, 295, 185, 185, 185, 458, 185, 461, 288, + 290, 292, 460, 445, 449, 443, 204, 205, 297, 171, + 171, 297, 205, 205, 185, 255, 205, 205, 433, 204, 131, 345, 161, 161, 161, 161, 177, 203, 136, 262, - 298, 255, 390, 205, 418, 205, 205, 205, 324, 319, + 298, 255, 390, 205, 419, 205, 205, 205, 324, 319, 319, 205, 205, 319, 266, 161, 319, 205, 11, 22, 23, 232, 233, 11, 235, 161, 180, 348, 32, 329, - 328, 330, 204, 204, 161, 319, 451, 453, 455, 204, - 204, 463, 319, 319, 319, 204, 435, 204, 204, 205, - 319, 205, 445, 319, 171, 312, 185, 131, 345, 203, + 328, 330, 204, 204, 161, 319, 452, 454, 456, 204, + 204, 464, 319, 319, 319, 204, 436, 204, 204, 205, + 319, 205, 446, 319, 171, 312, 185, 131, 345, 203, 319, 319, 319, 300, 203, 125, 319, 262, 185, 185, - 418, 205, 205, 205, 205, 262, 262, 204, 236, 274, + 419, 205, 205, 205, 205, 262, 262, 204, 236, 274, 275, 276, 277, 319, 171, 390, 347, 335, 329, 346, - 435, 435, 185, 205, 204, 204, 204, 297, 460, 205, - 297, 435, 432, 434, 205, 171, 462, 462, 319, 309, + 436, 436, 185, 205, 204, 204, 204, 297, 461, 205, + 297, 436, 433, 435, 205, 171, 463, 463, 319, 309, 314, 319, 319, 205, 205, 319, 321, 323, 185, 319, - 347, 319, 259, 336, 434, 434, 319, 435, 435, 434, - 463, 463, 463, 434, 171, 205, 52, 170, 203, 462, + 347, 319, 259, 336, 435, 435, 319, 436, 436, 435, + 464, 464, 464, 435, 171, 205, 52, 170, 203, 463, 309, 131, 345, 325, 205, 319, 171, 171, 259, 205, - 205, 205, 434, 434, 205, 205, 205, 205, 205, 432, + 205, 205, 435, 435, 205, 205, 205, 205, 205, 433, 319, 203, 319, 319, 262, 171, 262, 205, 205, 233 }; @@ -3883,59 +3885,59 @@ static const yytype_int16 yyr1[] = 261, 260, 262, 262, 263, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 265, 265, 265, 266, 266, 267, 267, - 268, 268, 268, 269, 269, 271, 272, 270, 273, 273, - 273, 273, 273, 274, 275, 276, 276, 276, 277, 277, - 278, 279, 280, 280, 280, 281, 281, 282, 282, 283, - 283, 284, 284, 285, 285, 287, 288, 286, 289, 290, - 286, 291, 292, 286, 294, 295, 293, 296, 296, 296, - 297, 297, 298, 298, 298, 299, 299, 299, 300, 300, - 300, 300, 301, 301, 302, 302, 303, 304, 304, 305, - 305, 305, 305, 305, 305, 305, 306, 306, 306, 306, + 268, 268, 269, 269, 271, 272, 270, 273, 273, 273, + 273, 273, 274, 275, 276, 276, 276, 277, 277, 278, + 279, 280, 280, 280, 281, 281, 282, 282, 283, 283, + 284, 284, 285, 285, 287, 288, 286, 289, 290, 286, + 291, 292, 286, 294, 295, 293, 296, 296, 296, 297, + 297, 298, 298, 298, 299, 299, 299, 300, 300, 300, + 300, 301, 301, 302, 302, 303, 304, 304, 305, 305, + 305, 305, 305, 305, 305, 306, 306, 306, 306, 306, 306, 306, 306, 306, 306, 306, 306, 306, 306, 306, - 306, 306, 306, 306, 306, 307, 307, 308, 308, 309, - 309, 310, 311, 312, 310, 313, 314, 310, 315, 315, - 315, 315, 316, 317, 315, 318, 318, 318, 318, 318, + 306, 306, 306, 306, 307, 307, 308, 308, 309, 309, + 310, 311, 312, 310, 313, 314, 310, 315, 315, 315, + 315, 316, 317, 315, 318, 318, 318, 318, 318, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, - 319, 319, 319, 319, 319, 319, 320, 321, 319, 319, - 319, 319, 322, 323, 319, 319, 319, 324, 325, 319, + 319, 319, 319, 319, 319, 320, 321, 319, 319, 319, + 319, 322, 323, 319, 319, 319, 324, 325, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, - 319, 319, 326, 326, 326, 326, 326, 326, 326, 326, - 326, 326, 326, 326, 326, 326, 326, 326, 327, 327, - 328, 328, 328, 329, 329, 330, 330, 330, 331, 331, - 332, 333, 334, 333, 335, 333, 336, 333, 337, 337, - 338, 338, 339, 339, 340, 340, 341, 341, 341, 342, - 343, 343, 344, 344, 344, 345, 345, 346, 346, 346, - 346, 346, 347, 347, 347, 348, 348, 349, 349, 349, - 349, 349, 350, 350, 350, 351, 352, 351, 353, 353, - 354, 354, 354, 355, 356, 355, 357, 357, 358, 358, - 358, 359, 359, 359, 361, 360, 362, 363, 363, 363, - 364, 365, 365, 367, 368, 366, 369, 369, 370, 370, - 371, 372, 372, 373, 373, 373, 374, 374, 376, 377, - 375, 378, 378, 378, 378, 378, 379, 379, 379, 379, + 319, 326, 326, 326, 326, 326, 326, 326, 326, 326, + 326, 326, 326, 326, 326, 326, 326, 327, 327, 328, + 328, 328, 329, 329, 330, 330, 330, 331, 331, 332, + 333, 334, 333, 335, 333, 336, 333, 337, 337, 338, + 338, 339, 339, 340, 340, 341, 341, 341, 342, 343, + 343, 344, 344, 344, 345, 345, 346, 346, 346, 346, + 346, 347, 347, 347, 348, 348, 349, 349, 349, 349, + 349, 350, 350, 350, 351, 352, 351, 353, 353, 354, + 354, 354, 355, 356, 355, 357, 357, 358, 358, 358, + 359, 359, 359, 361, 360, 362, 363, 363, 363, 364, + 365, 365, 367, 368, 366, 369, 369, 370, 370, 371, + 372, 372, 373, 373, 373, 374, 374, 376, 377, 375, + 378, 378, 378, 378, 378, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, - 379, 379, 379, 380, 380, 380, 380, 380, 380, 380, - 380, 381, 382, 382, 382, 383, 383, 384, 384, 384, - 386, 387, 385, 388, 388, 389, 389, 390, 390, 390, - 390, 390, 390, 391, 392, 390, 390, 390, 393, 390, - 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, - 390, 390, 394, 395, 390, 390, 396, 397, 390, 398, - 399, 390, 400, 401, 390, 390, 402, 403, 390, 404, - 405, 390, 390, 406, 407, 390, 408, 409, 390, 390, - 410, 411, 390, 412, 413, 390, 414, 415, 390, 416, - 417, 390, 418, 418, 418, 420, 421, 422, 419, 424, - 425, 426, 423, 428, 429, 430, 427, 431, 431, 431, - 431, 431, 432, 432, 432, 432, 432, 432, 432, 432, - 433, 434, 434, 435, 435, 437, 438, 436, 439, 440, - 436, 441, 442, 436, 443, 444, 436, 445, 445, 446, - 447, 448, 446, 449, 450, 451, 449, 452, 453, 449, - 454, 455, 449, 449, 456, 457, 449, 449, 458, 459, - 449, 460, 460, 461, 461, 461, 461, 462, 462, 463, - 463, 464, 464, 464 + 379, 379, 380, 380, 380, 380, 380, 380, 380, 380, + 381, 382, 382, 382, 383, 383, 384, 384, 384, 386, + 387, 385, 388, 388, 389, 389, 389, 389, 390, 390, + 391, 391, 391, 391, 392, 393, 391, 391, 391, 394, + 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, + 391, 391, 391, 395, 396, 391, 391, 397, 398, 391, + 399, 400, 391, 401, 402, 391, 391, 403, 404, 391, + 405, 406, 391, 391, 407, 408, 391, 409, 410, 391, + 391, 411, 412, 391, 413, 414, 391, 415, 416, 391, + 417, 418, 391, 419, 419, 419, 421, 422, 423, 420, + 425, 426, 427, 424, 429, 430, 431, 428, 432, 432, + 432, 432, 432, 433, 433, 433, 433, 433, 433, 433, + 433, 434, 435, 435, 436, 436, 438, 439, 437, 440, + 441, 437, 442, 443, 437, 444, 445, 437, 446, 446, + 447, 448, 449, 447, 450, 451, 452, 450, 453, 454, + 450, 455, 456, 450, 450, 457, 458, 450, 450, 459, + 460, 450, 461, 461, 462, 462, 462, 462, 463, 463, + 464, 464, 465, 465, 465 }; /* YYR2[RULE-NUM] -- Number of symbols on the right-hand side of rule RULE-NUM. */ @@ -3965,59 +3967,59 @@ static const yytype_int8 yyr2[] = 0, 4, 3, 7, 2, 1, 2, 2, 1, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 2, 2, 2, 0, 2, 2, 0, 1, 1, 3, - 1, 3, 2, 2, 3, 0, 0, 5, 2, 5, - 5, 6, 2, 1, 1, 1, 2, 3, 2, 3, - 2, 4, 1, 1, 0, 1, 1, 1, 0, 1, - 3, 8, 7, 3, 3, 0, 0, 7, 0, 0, - 7, 0, 0, 7, 0, 0, 6, 5, 8, 10, - 1, 3, 1, 2, 3, 1, 1, 2, 2, 2, - 2, 2, 1, 3, 0, 5, 6, 6, 3, 1, - 1, 1, 1, 1, 1, 1, 1, 3, 3, 3, + 1, 3, 2, 3, 0, 0, 5, 2, 5, 5, + 6, 2, 1, 1, 1, 2, 3, 2, 3, 2, + 4, 1, 1, 0, 1, 1, 1, 0, 1, 3, + 8, 7, 3, 3, 0, 0, 7, 0, 0, 7, + 0, 0, 7, 0, 0, 6, 5, 8, 10, 1, + 3, 1, 2, 3, 1, 1, 2, 2, 2, 2, + 2, 1, 3, 0, 5, 6, 6, 3, 1, 1, + 1, 1, 1, 1, 1, 1, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 6, 8, 5, 6, 1, - 4, 3, 0, 0, 8, 0, 0, 9, 3, 4, - 5, 6, 0, 0, 5, 3, 4, 4, 3, 4, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 6, 8, 5, 6, 1, 4, + 3, 0, 0, 8, 0, 0, 9, 3, 4, 5, + 6, 0, 0, 5, 3, 4, 4, 3, 4, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, + 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, - 4, 4, 5, 4, 5, 3, 4, 1, 1, 2, - 4, 4, 7, 8, 3, 5, 0, 0, 8, 3, - 3, 3, 0, 0, 8, 3, 4, 0, 0, 9, - 4, 1, 1, 1, 1, 1, 1, 1, 3, 3, - 3, 1, 4, 4, 4, 4, 4, 1, 6, 7, - 6, 6, 7, 7, 6, 7, 6, 6, 0, 1, - 0, 1, 1, 0, 1, 0, 1, 1, 0, 1, - 5, 0, 0, 4, 0, 9, 0, 10, 3, 4, - 1, 3, 1, 3, 1, 3, 0, 2, 3, 3, - 1, 3, 0, 2, 3, 1, 1, 1, 2, 3, - 5, 3, 1, 1, 1, 0, 1, 1, 4, 3, - 3, 5, 4, 6, 5, 0, 0, 4, 0, 1, - 0, 1, 1, 6, 0, 6, 1, 3, 0, 1, - 3, 0, 1, 1, 0, 5, 3, 0, 1, 1, - 1, 0, 2, 0, 0, 11, 0, 2, 0, 1, - 3, 1, 1, 0, 1, 1, 0, 3, 0, 0, - 7, 1, 4, 3, 3, 5, 1, 1, 1, 1, + 3, 3, 3, 3, 3, 2, 2, 2, 2, 4, + 4, 5, 4, 5, 3, 4, 1, 1, 2, 4, + 4, 7, 8, 3, 5, 0, 0, 8, 3, 3, + 3, 0, 0, 8, 3, 4, 0, 0, 9, 4, + 1, 1, 1, 1, 1, 1, 1, 3, 3, 3, + 1, 4, 4, 4, 4, 4, 1, 6, 7, 6, + 6, 7, 7, 6, 7, 6, 6, 0, 1, 0, + 1, 1, 0, 1, 0, 1, 1, 0, 1, 5, + 0, 0, 4, 0, 9, 0, 10, 3, 4, 1, + 3, 1, 3, 1, 3, 0, 2, 3, 3, 1, + 3, 0, 2, 3, 1, 1, 1, 2, 3, 5, + 3, 1, 1, 1, 0, 1, 1, 4, 3, 3, + 5, 4, 6, 5, 0, 0, 4, 0, 1, 0, + 1, 1, 6, 0, 6, 1, 3, 0, 1, 3, + 0, 1, 1, 0, 5, 3, 0, 1, 1, 1, + 0, 2, 0, 0, 11, 0, 2, 0, 1, 3, + 1, 1, 0, 1, 1, 0, 3, 0, 0, 7, + 1, 4, 3, 3, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 4, 4, 1, 3, 0, 1, 3, - 0, 0, 6, 1, 3, 3, 4, 1, 1, 1, - 1, 2, 3, 0, 0, 6, 4, 5, 0, 9, - 4, 2, 2, 3, 2, 3, 2, 2, 3, 3, - 3, 2, 0, 0, 6, 2, 0, 0, 6, 0, - 0, 6, 0, 0, 6, 1, 0, 0, 6, 0, - 0, 7, 1, 0, 0, 6, 0, 0, 7, 1, - 0, 0, 6, 0, 0, 7, 0, 0, 6, 0, - 0, 6, 1, 3, 3, 0, 0, 0, 9, 0, - 0, 0, 9, 0, 0, 0, 10, 1, 1, 1, - 1, 1, 3, 3, 5, 5, 6, 6, 8, 8, - 1, 1, 3, 0, 1, 0, 0, 10, 0, 0, - 10, 0, 0, 9, 0, 0, 7, 3, 1, 5, - 0, 0, 10, 4, 0, 0, 11, 0, 0, 11, - 0, 0, 10, 5, 0, 0, 10, 5, 0, 0, - 10, 1, 3, 4, 5, 8, 10, 0, 3, 0, - 1, 9, 10, 9 + 1, 1, 4, 4, 1, 3, 0, 1, 3, 0, + 0, 6, 1, 3, 3, 2, 4, 3, 1, 2, + 1, 1, 1, 1, 0, 0, 6, 4, 5, 0, + 9, 4, 2, 2, 3, 2, 3, 2, 2, 3, + 3, 3, 2, 0, 0, 6, 2, 0, 0, 6, + 0, 0, 6, 0, 0, 6, 1, 0, 0, 6, + 0, 0, 7, 1, 0, 0, 6, 0, 0, 7, + 1, 0, 0, 6, 0, 0, 7, 0, 0, 6, + 0, 0, 6, 1, 3, 3, 0, 0, 0, 9, + 0, 0, 0, 9, 0, 0, 0, 10, 1, 1, + 1, 1, 1, 3, 3, 5, 5, 6, 6, 8, + 8, 1, 1, 3, 0, 1, 0, 0, 10, 0, + 0, 10, 0, 0, 9, 0, 0, 7, 3, 1, + 5, 0, 0, 10, 4, 0, 0, 11, 0, 0, + 11, 0, 0, 10, 5, 0, 0, 10, 5, 0, + 0, 10, 1, 3, 4, 5, 8, 10, 0, 3, + 0, 1, 9, 10, 9 }; @@ -4990,6 +4992,10 @@ yydestruct (const char *yymsg, { delete ((*yyvaluep).pTypeDecl); } break; + case YYSYMBOL_type_declaration_no_options_no_dim: /* type_declaration_no_options_no_dim */ + { delete ((*yyvaluep).pTypeDecl); } + break; + case YYSYMBOL_type_declaration: /* type_declaration */ { delete ((*yyvaluep).pTypeDecl); } break; @@ -6607,17 +6613,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 242: /* name_in_namespace: "::" "name" */ - { *(yyvsp[0].s) = "::" + *(yyvsp[0].s); (yyval.s) = (yyvsp[0].s); } - break; - - case 243: /* expression_delete: "delete" expr */ + case 242: /* expression_delete: "delete" expr */ { (yyval.pExpression) = new ExprDelete(tokAt(scanner,(yylsp[-1])), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 244: /* expression_delete: "delete" "explicit" expr */ + case 243: /* expression_delete: "delete" "explicit" expr */ { auto delExpr = new ExprDelete(tokAt(scanner,(yylsp[-2])), ExpressionPtr((yyvsp[0].pExpression))); delExpr->native = true; @@ -6625,41 +6627,41 @@ YYLTYPE yylloc = yyloc_default; } break; - case 245: /* $@3: %empty */ + case 244: /* $@3: %empty */ { yyextra->das_arrow_depth ++; } break; - case 246: /* $@4: %empty */ + case 245: /* $@4: %empty */ { yyextra->das_arrow_depth --; } break; - case 247: /* new_type_declaration: '<' $@3 type_declaration '>' $@4 */ + case 246: /* new_type_declaration: '<' $@3 type_declaration '>' $@4 */ { (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); } break; - case 248: /* expr_new: "new" structure_type_declaration */ + case 247: /* expr_new: "new" structure_type_declaration */ { (yyval.pExpression) = new ExprNew(tokAt(scanner,(yylsp[-1])),TypeDeclPtr((yyvsp[0].pTypeDecl)),true); } break; - case 249: /* expr_new: "new" structure_type_declaration '(' optional_expr_list ')' */ + case 248: /* expr_new: "new" structure_type_declaration '(' optional_expr_list ')' */ { auto pNew = new ExprNew(tokAt(scanner,(yylsp[-4])),TypeDeclPtr((yyvsp[-3].pTypeDecl)),true); (yyval.pExpression) = parseFunctionArguments(pNew,(yyvsp[-1].pExpression)); } break; - case 250: /* expr_new: "new" new_type_declaration '(' use_initializer ')' */ + case 249: /* expr_new: "new" new_type_declaration '(' use_initializer ')' */ { (yyval.pExpression) = new ExprNew(tokAt(scanner,(yylsp[-4])),TypeDeclPtr((yyvsp[-3].pTypeDecl)),true); ((ExprNew *)(yyval.pExpression))->initializer = (yyvsp[-1].b); } break; - case 251: /* expr_new: "new" new_type_declaration '(' use_initializer make_struct_single ')' */ + case 250: /* expr_new: "new" new_type_declaration '(' use_initializer make_struct_single ')' */ { ((ExprMakeStruct *)(yyvsp[-1].pExpression))->at = tokAt(scanner,(yylsp[-4])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = (yyvsp[-4].pTypeDecl); @@ -6669,33 +6671,33 @@ YYLTYPE yylloc = yyloc_default; } break; - case 252: /* expr_new: "new" make_decl */ + case 251: /* expr_new: "new" make_decl */ { (yyval.pExpression) = new ExprAscend(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 253: /* expression_break: "break" */ + case 252: /* expression_break: "break" */ { (yyval.pExpression) = new ExprBreak(tokAt(scanner,(yylsp[0]))); } break; - case 254: /* expression_continue: "continue" */ + case 253: /* expression_continue: "continue" */ { (yyval.pExpression) = new ExprContinue(tokAt(scanner,(yylsp[0]))); } break; - case 255: /* expression_return: "return" */ + case 254: /* expression_return: "return" */ { (yyval.pExpression) = new ExprReturn(tokAt(scanner,(yylsp[0])),nullptr); } break; - case 256: /* expression_return: "return" expr */ + case 255: /* expression_return: "return" expr */ { (yyval.pExpression) = new ExprReturn(tokAt(scanner,(yylsp[-1])),(yyvsp[0].pExpression)); } break; - case 257: /* expression_return: "return" "<-" expr */ + case 256: /* expression_return: "return" "<-" expr */ { auto pRet = new ExprReturn(tokAt(scanner,(yylsp[-2])),(yyvsp[0].pExpression)); pRet->moveSemantics = true; @@ -6703,13 +6705,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 258: /* expression_yield_no_pipe: "yield" expr */ + case 257: /* expression_yield_no_pipe: "yield" expr */ { (yyval.pExpression) = new ExprYield(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 259: /* expression_yield_no_pipe: "yield" "<-" expr */ + case 258: /* expression_yield_no_pipe: "yield" "<-" expr */ { auto pRet = new ExprYield(tokAt(scanner,(yylsp[-2])),ExpressionPtr((yyvsp[0].pExpression))); pRet->moveSemantics = true; @@ -6717,47 +6719,47 @@ YYLTYPE yylloc = yyloc_default; } break; - case 260: /* expression_yield: expression_yield_no_pipe "end of expression" */ + case 259: /* expression_yield: expression_yield_no_pipe "end of expression" */ { (yyval.pExpression) = (yyvsp[-1].pExpression); } break; - case 261: /* expression_try_catch: "try" expression_block "recover" expression_block */ + case 260: /* expression_try_catch: "try" expression_block "recover" expression_block */ { (yyval.pExpression) = new ExprTryCatch(tokAt(scanner,(yylsp[-3])),ExpressionPtr((yyvsp[-2].pExpression)),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 262: /* kwd_let_var_or_nothing: "let" */ + case 261: /* kwd_let_var_or_nothing: "let" */ { (yyval.b) = true; } break; - case 263: /* kwd_let_var_or_nothing: "var" */ + case 262: /* kwd_let_var_or_nothing: "var" */ { (yyval.b) = false; } break; - case 264: /* kwd_let_var_or_nothing: %empty */ + case 263: /* kwd_let_var_or_nothing: %empty */ { (yyval.b) = true; } break; - case 265: /* kwd_let: "let" */ + case 264: /* kwd_let: "let" */ { (yyval.b) = true; } break; - case 266: /* kwd_let: "var" */ + case 265: /* kwd_let: "var" */ { (yyval.b) = false; } break; - case 267: /* optional_in_scope: "inscope" */ + case 266: /* optional_in_scope: "inscope" */ { (yyval.b) = true; } break; - case 268: /* optional_in_scope: %empty */ + case 267: /* optional_in_scope: %empty */ { (yyval.b) = false; } break; - case 269: /* tuple_expansion: "name" */ + case 268: /* tuple_expansion: "name" */ { (yyval.pNameList) = new vector(); (yyval.pNameList)->push_back(*(yyvsp[0].s)); @@ -6765,7 +6767,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 270: /* tuple_expansion: tuple_expansion ',' "name" */ + case 269: /* tuple_expansion: tuple_expansion ',' "name" */ { (yyvsp[-2].pNameList)->push_back(*(yyvsp[0].s)); delete (yyvsp[0].s); @@ -6773,7 +6775,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 271: /* tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" */ + case 270: /* tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" */ { (yyval.pVarDecl) = new VariableDeclaration((yyvsp[-6].pNameList),tokAt(scanner,(yylsp[-6])),(yyvsp[-3].pTypeDecl),(yyvsp[-1].pExpression)); (yyval.pVarDecl)->init_via_move = ((yyvsp[-2].i) & CorM_MOVE) !=0; @@ -6782,7 +6784,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 272: /* tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" */ + case 271: /* tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" */ { auto typeDecl = new TypeDecl(Type::autoinfer); typeDecl->at = tokAt(scanner,(yylsp[-5])); @@ -6794,41 +6796,41 @@ YYLTYPE yylloc = yyloc_default; } break; - case 273: /* expression_let: kwd_let optional_in_scope let_variable_declaration */ + case 272: /* expression_let: kwd_let optional_in_scope let_variable_declaration */ { (yyval.pExpression) = ast_Let(scanner,(yyvsp[-2].b),(yyvsp[-1].b),(yyvsp[0].pVarDecl),tokAt(scanner,(yylsp[-2])),tokAt(scanner,(yylsp[0]))); } break; - case 274: /* expression_let: kwd_let optional_in_scope tuple_expansion_variable_declaration */ + case 273: /* expression_let: kwd_let optional_in_scope tuple_expansion_variable_declaration */ { (yyval.pExpression) = ast_Let(scanner,(yyvsp[-2].b),(yyvsp[-1].b),(yyvsp[0].pVarDecl),tokAt(scanner,(yylsp[-2])),tokAt(scanner,(yylsp[0]))); } break; - case 275: /* $@5: %empty */ + case 274: /* $@5: %empty */ { yyextra->das_arrow_depth ++; } break; - case 276: /* $@6: %empty */ + case 275: /* $@6: %empty */ { yyextra->das_arrow_depth --; } break; - case 277: /* expr_cast: "cast" '<' $@5 type_declaration_no_options '>' $@6 expr */ + case 276: /* expr_cast: "cast" '<' $@5 type_declaration_no_options '>' $@6 expr */ { (yyval.pExpression) = new ExprCast(tokAt(scanner,(yylsp[-6])),ExpressionPtr((yyvsp[0].pExpression)),TypeDeclPtr((yyvsp[-3].pTypeDecl))); } break; - case 278: /* $@7: %empty */ + case 277: /* $@7: %empty */ { yyextra->das_arrow_depth ++; } break; - case 279: /* $@8: %empty */ + case 278: /* $@8: %empty */ { yyextra->das_arrow_depth --; } break; - case 280: /* expr_cast: "upcast" '<' $@7 type_declaration_no_options '>' $@8 expr */ + case 279: /* expr_cast: "upcast" '<' $@7 type_declaration_no_options '>' $@8 expr */ { auto pCast = new ExprCast(tokAt(scanner,(yylsp[-6])),ExpressionPtr((yyvsp[0].pExpression)),TypeDeclPtr((yyvsp[-3].pTypeDecl))); pCast->upcast = true; @@ -6836,15 +6838,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 281: /* $@9: %empty */ + case 280: /* $@9: %empty */ { yyextra->das_arrow_depth ++; } break; - case 282: /* $@10: %empty */ + case 281: /* $@10: %empty */ { yyextra->das_arrow_depth --; } break; - case 283: /* expr_cast: "reinterpret" '<' $@9 type_declaration_no_options '>' $@10 expr */ + case 282: /* expr_cast: "reinterpret" '<' $@9 type_declaration_no_options '>' $@10 expr */ { auto pCast = new ExprCast(tokAt(scanner,(yylsp[-6])),ExpressionPtr((yyvsp[0].pExpression)),TypeDeclPtr((yyvsp[-3].pTypeDecl))); pCast->reinterpret = true; @@ -6852,21 +6854,21 @@ YYLTYPE yylloc = yyloc_default; } break; - case 284: /* $@11: %empty */ + case 283: /* $@11: %empty */ { yyextra->das_arrow_depth ++; } break; - case 285: /* $@12: %empty */ + case 284: /* $@12: %empty */ { yyextra->das_arrow_depth --; } break; - case 286: /* expr_type_decl: "type" '<' $@11 type_declaration '>' $@12 */ + case 285: /* expr_type_decl: "type" '<' $@11 type_declaration '>' $@12 */ { (yyval.pExpression) = new ExprTypeDecl(tokAt(scanner,(yylsp[-5])),TypeDeclPtr((yyvsp[-2].pTypeDecl))); } break; - case 287: /* expr_type_info: "typeinfo" '(' name_in_namespace expr ')' */ + case 286: /* expr_type_info: "typeinfo" '(' name_in_namespace expr ')' */ { if ( (yyvsp[-1].pExpression)->rtti_isTypeDecl() ) { auto ptd = (ExprTypeDecl *)(yyvsp[-1].pExpression); @@ -6879,7 +6881,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 288: /* expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' expr ')' */ + case 287: /* expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' expr ')' */ { if ( (yyvsp[-1].pExpression)->rtti_isTypeDecl() ) { auto ptd = (ExprTypeDecl *)(yyvsp[-1].pExpression); @@ -6893,7 +6895,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 289: /* expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' */ + case 288: /* expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' */ { if ( (yyvsp[-1].pExpression)->rtti_isTypeDecl() ) { auto ptd = (ExprTypeDecl *)(yyvsp[-1].pExpression); @@ -6908,23 +6910,23 @@ YYLTYPE yylloc = yyloc_default; } break; - case 290: /* expr_list: expr */ + case 289: /* expr_list: expr */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 291: /* expr_list: expr_list ',' expr */ + case 290: /* expr_list: expr_list ',' expr */ { (yyval.pExpression) = new ExprSequence(tokAt(scanner,(yylsp[-2])),ExpressionPtr((yyvsp[-2].pExpression)),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 292: /* block_or_simple_block: expression_block */ + case 291: /* block_or_simple_block: expression_block */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 293: /* block_or_simple_block: "=>" expr */ + case 292: /* block_or_simple_block: "=>" expr */ { auto retE = make_smart(tokAt(scanner,(yylsp[-1])), ExpressionPtr((yyvsp[0].pExpression))); auto blkE = new ExprBlock(); @@ -6934,7 +6936,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 294: /* block_or_simple_block: "=>" "<-" expr */ + case 293: /* block_or_simple_block: "=>" "<-" expr */ { auto retE = make_smart(tokAt(scanner,(yylsp[-2])), ExpressionPtr((yyvsp[0].pExpression))); retE->moveSemantics = true; @@ -6945,35 +6947,35 @@ YYLTYPE yylloc = yyloc_default; } break; - case 295: /* block_or_lambda: '$' */ + case 294: /* block_or_lambda: '$' */ { (yyval.i) = 0; /* block */ } break; - case 296: /* block_or_lambda: '@' */ + case 295: /* block_or_lambda: '@' */ { (yyval.i) = 1; /* lambda */ } break; - case 297: /* block_or_lambda: '@' '@' */ + case 296: /* block_or_lambda: '@' '@' */ { (yyval.i) = 2; /* local function */ } break; - case 298: /* capture_entry: '&' "name" */ + case 297: /* capture_entry: '&' "name" */ { (yyval.pCapt) = new CaptureEntry(*(yyvsp[0].s),CaptureMode::capture_by_reference); delete (yyvsp[0].s); } break; - case 299: /* capture_entry: '=' "name" */ + case 298: /* capture_entry: '=' "name" */ { (yyval.pCapt) = new CaptureEntry(*(yyvsp[0].s),CaptureMode::capture_by_copy); delete (yyvsp[0].s); } break; - case 300: /* capture_entry: "<-" "name" */ + case 299: /* capture_entry: "<-" "name" */ { (yyval.pCapt) = new CaptureEntry(*(yyvsp[0].s),CaptureMode::capture_by_move); delete (yyvsp[0].s); } break; - case 301: /* capture_entry: ":=" "name" */ + case 300: /* capture_entry: ":=" "name" */ { (yyval.pCapt) = new CaptureEntry(*(yyvsp[0].s),CaptureMode::capture_by_clone); delete (yyvsp[0].s); } break; - case 302: /* capture_list: capture_entry */ + case 301: /* capture_list: capture_entry */ { (yyval.pCaptList) = new vector(); (yyval.pCaptList)->push_back(*(yyvsp[0].pCapt)); @@ -6981,7 +6983,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 303: /* capture_list: capture_list ',' capture_entry */ + case 302: /* capture_list: capture_list ',' capture_entry */ { (yyvsp[-2].pCaptList)->push_back(*(yyvsp[0].pCapt)); delete (yyvsp[0].pCapt); @@ -6989,137 +6991,137 @@ YYLTYPE yylloc = yyloc_default; } break; - case 304: /* optional_capture_list: %empty */ + case 303: /* optional_capture_list: %empty */ { (yyval.pCaptList) = nullptr; } break; - case 305: /* optional_capture_list: '[' '[' capture_list ']' ']' */ + case 304: /* optional_capture_list: '[' '[' capture_list ']' ']' */ { (yyval.pCaptList) = (yyvsp[-2].pCaptList); } break; - case 306: /* expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block */ + case 305: /* expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block */ { (yyval.pExpression) = ast_makeBlock(scanner,(yyvsp[-5].i),(yyvsp[-4].faList),(yyvsp[-3].pCaptList),(yyvsp[-2].pVarDeclList),(yyvsp[-1].pTypeDecl),(yyvsp[0].pExpression),tokAt(scanner,(yylsp[0])),tokAt(scanner,(yylsp[-4]))); } break; - case 307: /* expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block */ + case 306: /* expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block */ { (yyval.pExpression) = ast_makeBlock(scanner,(yyvsp[-5].i),(yyvsp[-4].faList),(yyvsp[-3].pCaptList),(yyvsp[-2].pVarDeclList),(yyvsp[-1].pTypeDecl),(yyvsp[0].pExpression),tokAt(scanner,(yylsp[0])),tokAt(scanner,(yylsp[-4]))); } break; - case 308: /* expr_full_block_assumed_piped: "begin of code block" expressions "end of code block" */ + case 307: /* expr_full_block_assumed_piped: "begin of code block" expressions "end of code block" */ { (yyval.pExpression) = ast_makeBlock(scanner,0,nullptr,nullptr,nullptr,new TypeDecl(Type::autoinfer),(yyvsp[-1].pExpression),tokAt(scanner,(yylsp[-1])),tokAt(scanner,(yylsp[-1]))); } break; - case 309: /* expr_numeric_const: "integer constant" */ + case 308: /* expr_numeric_const: "integer constant" */ { (yyval.pExpression) = new ExprConstInt(tokAt(scanner,(yylsp[0])),(int32_t)(yyvsp[0].i)); } break; - case 310: /* expr_numeric_const: "unsigned integer constant" */ + case 309: /* expr_numeric_const: "unsigned integer constant" */ { (yyval.pExpression) = new ExprConstUInt(tokAt(scanner,(yylsp[0])),(uint32_t)(yyvsp[0].ui)); } break; - case 311: /* expr_numeric_const: "long integer constant" */ + case 310: /* expr_numeric_const: "long integer constant" */ { (yyval.pExpression) = new ExprConstInt64(tokAt(scanner,(yylsp[0])),(int64_t)(yyvsp[0].i64)); } break; - case 312: /* expr_numeric_const: "unsigned long integer constant" */ + case 311: /* expr_numeric_const: "unsigned long integer constant" */ { (yyval.pExpression) = new ExprConstUInt64(tokAt(scanner,(yylsp[0])),(uint64_t)(yyvsp[0].ui64)); } break; - case 313: /* expr_numeric_const: "unsigned int8 constant" */ + case 312: /* expr_numeric_const: "unsigned int8 constant" */ { (yyval.pExpression) = new ExprConstUInt8(tokAt(scanner,(yylsp[0])),(uint8_t)(yyvsp[0].ui)); } break; - case 314: /* expr_numeric_const: "floating point constant" */ + case 313: /* expr_numeric_const: "floating point constant" */ { (yyval.pExpression) = new ExprConstFloat(tokAt(scanner,(yylsp[0])),(float)(yyvsp[0].fd)); } break; - case 315: /* expr_numeric_const: "double constant" */ + case 314: /* expr_numeric_const: "double constant" */ { (yyval.pExpression) = new ExprConstDouble(tokAt(scanner,(yylsp[0])),(double)(yyvsp[0].d)); } break; - case 316: /* expr_assign: expr */ + case 315: /* expr_assign: expr */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 317: /* expr_assign: expr '=' expr */ + case 316: /* expr_assign: expr '=' expr */ { (yyval.pExpression) = new ExprCopy(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 318: /* expr_assign: expr "<-" expr */ + case 317: /* expr_assign: expr "<-" expr */ { (yyval.pExpression) = new ExprMove(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 319: /* expr_assign: expr ":=" expr */ + case 318: /* expr_assign: expr ":=" expr */ { (yyval.pExpression) = new ExprClone(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 320: /* expr_assign: expr "&=" expr */ + case 319: /* expr_assign: expr "&=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"&=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 321: /* expr_assign: expr "|=" expr */ + case 320: /* expr_assign: expr "|=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"|=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 322: /* expr_assign: expr "^=" expr */ + case 321: /* expr_assign: expr "^=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"^=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 323: /* expr_assign: expr "&&=" expr */ + case 322: /* expr_assign: expr "&&=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"&&=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 324: /* expr_assign: expr "||=" expr */ + case 323: /* expr_assign: expr "||=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"||=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 325: /* expr_assign: expr "^^=" expr */ + case 324: /* expr_assign: expr "^^=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"^^=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 326: /* expr_assign: expr "+=" expr */ + case 325: /* expr_assign: expr "+=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"+=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 327: /* expr_assign: expr "-=" expr */ + case 326: /* expr_assign: expr "-=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"-=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 328: /* expr_assign: expr "*=" expr */ + case 327: /* expr_assign: expr "*=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"*=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 329: /* expr_assign: expr "/=" expr */ + case 328: /* expr_assign: expr "/=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"/=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 330: /* expr_assign: expr "%=" expr */ + case 329: /* expr_assign: expr "%=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"%=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 331: /* expr_assign: expr "<<=" expr */ + case 330: /* expr_assign: expr "<<=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"<<=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 332: /* expr_assign: expr ">>=" expr */ + case 331: /* expr_assign: expr ">>=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),">>=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 333: /* expr_assign: expr "<<<=" expr */ + case 332: /* expr_assign: expr "<<<=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"<<<=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 334: /* expr_assign: expr ">>>=" expr */ + case 333: /* expr_assign: expr ">>>=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),">>>=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 335: /* expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' ')' */ + case 334: /* expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' ')' */ { auto nc = new ExprNamedCall(tokAt(scanner,(yylsp[-5])),*(yyvsp[-5].s)); nc->arguments = *(yyvsp[-2].pMakeStruct); @@ -7129,7 +7131,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 336: /* expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' ')' */ + case 335: /* expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' ')' */ { auto nc = new ExprNamedCall(tokAt(scanner,(yylsp[-7])),*(yyvsp[-7].s)); nc->nonNamedArguments = sequenceToList((yyvsp[-5].pExpression)); @@ -7140,7 +7142,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 337: /* expr_method_call: expr "->" "name" '(' ')' */ + case 336: /* expr_method_call: expr "->" "name" '(' ')' */ { auto pInvoke = makeInvokeMethod(tokAt(scanner,(yylsp[-3])), (yyvsp[-4].pExpression), *(yyvsp[-2].s)); delete (yyvsp[-2].s); @@ -7148,7 +7150,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 338: /* expr_method_call: expr "->" "name" '(' expr_list ')' */ + case 337: /* expr_method_call: expr "->" "name" '(' expr_list ')' */ { auto pInvoke = makeInvokeMethod(tokAt(scanner,(yylsp[-4])), (yyvsp[-5].pExpression), *(yyvsp[-3].s)); auto callArgs = sequenceToList((yyvsp[-1].pExpression)); @@ -7158,35 +7160,35 @@ YYLTYPE yylloc = yyloc_default; } break; - case 339: /* func_addr_name: name_in_namespace */ + case 338: /* func_addr_name: name_in_namespace */ { (yyval.pExpression) = new ExprAddr(tokAt(scanner,(yylsp[0])),*(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 340: /* func_addr_name: "$i" '(' expr ')' */ + case 339: /* func_addr_name: "$i" '(' expr ')' */ { auto expr = new ExprAddr(tokAt(scanner,(yylsp[-3])),"``MACRO``TAG``ADDR``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression), expr, "i"); } break; - case 341: /* func_addr_expr: '@' '@' func_addr_name */ + case 340: /* func_addr_expr: '@' '@' func_addr_name */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 342: /* $@13: %empty */ + case 341: /* $@13: %empty */ { yyextra->das_arrow_depth ++; } break; - case 343: /* $@14: %empty */ + case 342: /* $@14: %empty */ { yyextra->das_arrow_depth --; } break; - case 344: /* func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options '>' $@14 func_addr_name */ + case 343: /* func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options '>' $@14 func_addr_name */ { auto expr = (ExprAddr *) ((yyvsp[0].pExpression)->rtti_isAddr() ? (yyvsp[0].pExpression) : (((ExprTag *) (yyvsp[0].pExpression))->value.get())); expr->funcType = TypeDeclPtr((yyvsp[-3].pTypeDecl)); @@ -7194,15 +7196,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 345: /* $@15: %empty */ + case 344: /* $@15: %empty */ { yyextra->das_arrow_depth ++; } break; - case 346: /* $@16: %empty */ + case 345: /* $@16: %empty */ { yyextra->das_arrow_depth --; } break; - case 347: /* func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name */ + case 346: /* func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name */ { auto expr = (ExprAddr *) ((yyvsp[0].pExpression)->rtti_isAddr() ? (yyvsp[0].pExpression) : (((ExprTag *) (yyvsp[0].pExpression))->value.get())); expr->funcType = make_smart(Type::tFunction); @@ -7215,21 +7217,21 @@ YYLTYPE yylloc = yyloc_default; } break; - case 348: /* expr_field: expr '.' "name" */ + case 347: /* expr_field: expr '.' "name" */ { (yyval.pExpression) = new ExprField(tokAt(scanner,(yylsp[-1])), tokAt(scanner,(yylsp[0])), ExpressionPtr((yyvsp[-2].pExpression)), *(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 349: /* expr_field: expr '.' '.' "name" */ + case 348: /* expr_field: expr '.' '.' "name" */ { (yyval.pExpression) = new ExprField(tokAt(scanner,(yylsp[-1])), tokAt(scanner,(yylsp[0])), ExpressionPtr((yyvsp[-3].pExpression)), *(yyvsp[0].s), true); delete (yyvsp[0].s); } break; - case 350: /* expr_field: expr '.' "name" '(' ')' */ + case 349: /* expr_field: expr '.' "name" '(' ')' */ { auto pInvoke = makeInvokeMethod(tokAt(scanner,(yylsp[-3])), (yyvsp[-4].pExpression), *(yyvsp[-2].s)); delete (yyvsp[-2].s); @@ -7237,7 +7239,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 351: /* expr_field: expr '.' "name" '(' expr_list ')' */ + case 350: /* expr_field: expr '.' "name" '(' expr_list ')' */ { auto pInvoke = makeInvokeMethod(tokAt(scanner,(yylsp[-4])), (yyvsp[-5].pExpression), *(yyvsp[-3].s)); auto callArgs = sequenceToList((yyvsp[-1].pExpression)); @@ -7247,29 +7249,29 @@ YYLTYPE yylloc = yyloc_default; } break; - case 352: /* $@17: %empty */ + case 351: /* $@17: %empty */ { yyextra->das_suppress_errors=true; } break; - case 353: /* $@18: %empty */ + case 352: /* $@18: %empty */ { yyextra->das_suppress_errors=false; } break; - case 354: /* expr_field: expr '.' $@17 error $@18 */ + case 353: /* expr_field: expr '.' $@17 error $@18 */ { (yyval.pExpression) = new ExprField(tokAt(scanner,(yylsp[-3])), tokAt(scanner,(yylsp[-3])), ExpressionPtr((yyvsp[-4].pExpression)), ""); yyerrok; } break; - case 355: /* expr_call: name_in_namespace '(' ')' */ + case 354: /* expr_call: name_in_namespace '(' ')' */ { (yyval.pExpression) = yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-2])),tokAt(scanner,(yylsp[0])),*(yyvsp[-2].s)); delete (yyvsp[-2].s); } break; - case 356: /* expr_call: name_in_namespace '(' make_struct_single ')' */ + case 355: /* expr_call: name_in_namespace '(' make_struct_single ')' */ { ((ExprMakeStruct *)(yyvsp[-1].pExpression))->at = tokAt(scanner,(yylsp[-3])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = new TypeDecl(Type::alias); @@ -7281,166 +7283,166 @@ YYLTYPE yylloc = yyloc_default; } break; - case 357: /* expr_call: name_in_namespace '(' expr_list ')' */ + case 356: /* expr_call: name_in_namespace '(' expr_list ')' */ { (yyval.pExpression) = parseFunctionArguments(yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-3])),tokAt(scanner,(yylsp[0])),*(yyvsp[-3].s)),(yyvsp[-1].pExpression)); delete (yyvsp[-3].s); } break; - case 358: /* expr_call: basic_type_declaration '(' ')' */ + case 357: /* expr_call: basic_type_declaration '(' ')' */ { (yyval.pExpression) = yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-2])),tokAt(scanner,(yylsp[0])),das_to_string((yyvsp[-2].type))); } break; - case 359: /* expr_call: basic_type_declaration '(' expr_list ')' */ + case 358: /* expr_call: basic_type_declaration '(' expr_list ')' */ { (yyval.pExpression) = parseFunctionArguments(yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-3])),tokAt(scanner,(yylsp[0])),das_to_string((yyvsp[-3].type))),(yyvsp[-1].pExpression)); } break; - case 360: /* expr: "null" */ + case 359: /* expr: "null" */ { (yyval.pExpression) = new ExprConstPtr(tokAt(scanner,(yylsp[0])),nullptr); } break; - case 361: /* expr: name_in_namespace */ + case 360: /* expr: name_in_namespace */ { (yyval.pExpression) = new ExprVar(tokAt(scanner,(yylsp[0])),*(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 362: /* expr: expr_numeric_const */ + case 361: /* expr: expr_numeric_const */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 363: /* expr: expr_reader */ + case 362: /* expr: expr_reader */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 364: /* expr: string_builder */ + case 363: /* expr: string_builder */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 365: /* expr: make_decl */ + case 364: /* expr: make_decl */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 366: /* expr: "true" */ + case 365: /* expr: "true" */ { (yyval.pExpression) = new ExprConstBool(tokAt(scanner,(yylsp[0])),true); } break; - case 367: /* expr: "false" */ + case 366: /* expr: "false" */ { (yyval.pExpression) = new ExprConstBool(tokAt(scanner,(yylsp[0])),false); } break; - case 368: /* expr: expr_field */ + case 367: /* expr: expr_field */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 369: /* expr: expr_mtag */ + case 368: /* expr: expr_mtag */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 370: /* expr: '!' expr */ + case 369: /* expr: '!' expr */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[-1])),"!",ExpressionPtr((yyvsp[0].pExpression))); } break; - case 371: /* expr: '~' expr */ + case 370: /* expr: '~' expr */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[-1])),"~",ExpressionPtr((yyvsp[0].pExpression))); } break; - case 372: /* expr: '+' expr */ + case 371: /* expr: '+' expr */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[-1])),"+",ExpressionPtr((yyvsp[0].pExpression))); } break; - case 373: /* expr: '-' expr */ + case 372: /* expr: '-' expr */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[-1])),"-",ExpressionPtr((yyvsp[0].pExpression))); } break; - case 374: /* expr: expr "<<" expr */ + case 373: /* expr: expr "<<" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"<<", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 375: /* expr: expr ">>" expr */ + case 374: /* expr: expr ">>" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),">>", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 376: /* expr: expr "<<<" expr */ + case 375: /* expr: expr "<<<" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"<<<", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 377: /* expr: expr ">>>" expr */ + case 376: /* expr: expr ">>>" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),">>>", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 378: /* expr: expr '+' expr */ + case 377: /* expr: expr '+' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"+", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 379: /* expr: expr '-' expr */ + case 378: /* expr: expr '-' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"-", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 380: /* expr: expr '*' expr */ + case 379: /* expr: expr '*' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"*", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 381: /* expr: expr '/' expr */ + case 380: /* expr: expr '/' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"/", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 382: /* expr: expr '%' expr */ + case 381: /* expr: expr '%' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"%", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 383: /* expr: expr '<' expr */ + case 382: /* expr: expr '<' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"<", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 384: /* expr: expr '>' expr */ + case 383: /* expr: expr '>' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),">", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 385: /* expr: expr "==" expr */ + case 384: /* expr: expr "==" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"==", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 386: /* expr: expr "!=" expr */ + case 385: /* expr: expr "!=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"!=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 387: /* expr: expr "<=" expr */ + case 386: /* expr: expr "<=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"<=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 388: /* expr: expr ">=" expr */ + case 387: /* expr: expr ">=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),">=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 389: /* expr: expr '&' expr */ + case 388: /* expr: expr '&' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"&", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 390: /* expr: expr '|' expr */ + case 389: /* expr: expr '|' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"|", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 391: /* expr: expr '^' expr */ + case 390: /* expr: expr '^' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"^", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 392: /* expr: expr "&&" expr */ + case 391: /* expr: expr "&&" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"&&", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 393: /* expr: expr "||" expr */ + case 392: /* expr: expr "||" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"||", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 394: /* expr: expr "^^" expr */ + case 393: /* expr: expr "^^" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"^^", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 395: /* expr: expr ".." expr */ + case 394: /* expr: expr ".." expr */ { auto itv = yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-1])),"interval"); itv->arguments.push_back(ExpressionPtr((yyvsp[-2].pExpression))); @@ -7449,23 +7451,23 @@ YYLTYPE yylloc = yyloc_default; } break; - case 396: /* expr: "++" expr */ + case 395: /* expr: "++" expr */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[-1])),"++", ExpressionPtr((yyvsp[0].pExpression))); } break; - case 397: /* expr: "--" expr */ + case 396: /* expr: "--" expr */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[-1])),"--", ExpressionPtr((yyvsp[0].pExpression))); } break; - case 398: /* expr: expr "++" */ + case 397: /* expr: expr "++" */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[0])),"+++", ExpressionPtr((yyvsp[-1].pExpression))); } break; - case 399: /* expr: expr "--" */ + case 398: /* expr: expr "--" */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[0])),"---", ExpressionPtr((yyvsp[-1].pExpression))); } break; - case 400: /* expr: '(' expr_list optional_comma ')' */ + case 399: /* expr: '(' expr_list optional_comma ')' */ { if ( (yyvsp[-2].pExpression)->rtti_isSequence() ) { auto mkt = new ExprMakeTuple(tokAt(scanner,(yylsp[-2]))); @@ -7481,87 +7483,87 @@ YYLTYPE yylloc = yyloc_default; } break; - case 401: /* expr: expr '[' expr ']' */ + case 400: /* expr: expr '[' expr ']' */ { (yyval.pExpression) = new ExprAt(tokAt(scanner,(yylsp[-2])), ExpressionPtr((yyvsp[-3].pExpression)), ExpressionPtr((yyvsp[-1].pExpression))); } break; - case 402: /* expr: expr '.' '[' expr ']' */ + case 401: /* expr: expr '.' '[' expr ']' */ { (yyval.pExpression) = new ExprAt(tokAt(scanner,(yylsp[-2])), ExpressionPtr((yyvsp[-4].pExpression)), ExpressionPtr((yyvsp[-1].pExpression)), true); } break; - case 403: /* expr: expr "?[" expr ']' */ + case 402: /* expr: expr "?[" expr ']' */ { (yyval.pExpression) = new ExprSafeAt(tokAt(scanner,(yylsp[-2])), ExpressionPtr((yyvsp[-3].pExpression)), ExpressionPtr((yyvsp[-1].pExpression))); } break; - case 404: /* expr: expr '.' "?[" expr ']' */ + case 403: /* expr: expr '.' "?[" expr ']' */ { (yyval.pExpression) = new ExprSafeAt(tokAt(scanner,(yylsp[-2])), ExpressionPtr((yyvsp[-4].pExpression)), ExpressionPtr((yyvsp[-1].pExpression)), true); } break; - case 405: /* expr: expr "?." "name" */ + case 404: /* expr: expr "?." "name" */ { (yyval.pExpression) = new ExprSafeField(tokAt(scanner,(yylsp[-1])), tokAt(scanner,(yylsp[0])), ExpressionPtr((yyvsp[-2].pExpression)), *(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 406: /* expr: expr '.' "?." "name" */ + case 405: /* expr: expr '.' "?." "name" */ { (yyval.pExpression) = new ExprSafeField(tokAt(scanner,(yylsp[-1])), tokAt(scanner,(yylsp[0])), ExpressionPtr((yyvsp[-3].pExpression)), *(yyvsp[0].s), true); delete (yyvsp[0].s); } break; - case 407: /* expr: func_addr_expr */ + case 406: /* expr: func_addr_expr */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 408: /* expr: expr_call */ + case 407: /* expr: expr_call */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 409: /* expr: '*' expr */ + case 408: /* expr: '*' expr */ { (yyval.pExpression) = new ExprPtr2Ref(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 410: /* expr: "deref" '(' expr ')' */ + case 409: /* expr: "deref" '(' expr ')' */ { (yyval.pExpression) = new ExprPtr2Ref(tokAt(scanner,(yylsp[-3])),ExpressionPtr((yyvsp[-1].pExpression))); } break; - case 411: /* expr: "addr" '(' expr ')' */ + case 410: /* expr: "addr" '(' expr ')' */ { (yyval.pExpression) = new ExprRef2Ptr(tokAt(scanner,(yylsp[-3])),ExpressionPtr((yyvsp[-1].pExpression))); } break; - case 412: /* expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' ')' */ + case 411: /* expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' ')' */ { (yyval.pExpression) = ast_makeGenerator(scanner,(yyvsp[-4].pTypeDecl),(yyvsp[-2].pCaptList),nullptr,tokAt(scanner,(yylsp[-6]))); } break; - case 413: /* expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' */ + case 412: /* expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' */ { (yyval.pExpression) = ast_makeGenerator(scanner,(yyvsp[-5].pTypeDecl),(yyvsp[-3].pCaptList),(yyvsp[-1].pExpression),tokAt(scanner,(yylsp[-7]))); } break; - case 414: /* expr: expr "??" expr */ + case 413: /* expr: expr "??" expr */ { (yyval.pExpression) = new ExprNullCoalescing(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 415: /* expr: expr '?' expr ':' expr */ + case 414: /* expr: expr '?' expr ':' expr */ { (yyval.pExpression) = new ExprOp3(tokAt(scanner,(yylsp[-3])),"?",ExpressionPtr((yyvsp[-4].pExpression)),ExpressionPtr((yyvsp[-2].pExpression)),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 416: /* $@19: %empty */ + case 415: /* $@19: %empty */ { yyextra->das_arrow_depth ++; } break; - case 417: /* $@20: %empty */ + case 416: /* $@20: %empty */ { yyextra->das_arrow_depth --; } break; - case 418: /* expr: expr "is" "type" '<' $@19 type_declaration_no_options '>' $@20 */ + case 417: /* expr: expr "is" "type" '<' $@19 type_declaration_no_options '>' $@20 */ { (yyval.pExpression) = new ExprIs(tokAt(scanner,(yylsp[-6])),ExpressionPtr((yyvsp[-7].pExpression)),TypeDeclPtr((yyvsp[-2].pTypeDecl))); } break; - case 419: /* expr: expr "is" basic_type_declaration */ + case 418: /* expr: expr "is" basic_type_declaration */ { auto vdecl = new TypeDecl((yyvsp[0].type)); vdecl->at = tokAt(scanner,(yylsp[0])); @@ -7569,29 +7571,29 @@ YYLTYPE yylloc = yyloc_default; } break; - case 420: /* expr: expr "is" "name" */ + case 419: /* expr: expr "is" "name" */ { (yyval.pExpression) = new ExprIsVariant(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)),*(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 421: /* expr: expr "as" "name" */ + case 420: /* expr: expr "as" "name" */ { (yyval.pExpression) = new ExprAsVariant(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)),*(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 422: /* $@21: %empty */ + case 421: /* $@21: %empty */ { yyextra->das_arrow_depth ++; } break; - case 423: /* $@22: %empty */ + case 422: /* $@22: %empty */ { yyextra->das_arrow_depth --; } break; - case 424: /* expr: expr "as" "type" '<' $@21 type_declaration '>' $@22 */ + case 423: /* expr: expr "as" "type" '<' $@21 type_declaration '>' $@22 */ { auto vname = (yyvsp[-2].pTypeDecl)->describe(); (yyval.pExpression) = new ExprAsVariant(tokAt(scanner,(yylsp[-6])),ExpressionPtr((yyvsp[-7].pExpression)),vname); @@ -7599,28 +7601,28 @@ YYLTYPE yylloc = yyloc_default; } break; - case 425: /* expr: expr "as" basic_type_declaration */ + case 424: /* expr: expr "as" basic_type_declaration */ { (yyval.pExpression) = new ExprAsVariant(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)),das_to_string((yyvsp[0].type))); } break; - case 426: /* expr: expr '?' "as" "name" */ + case 425: /* expr: expr '?' "as" "name" */ { (yyval.pExpression) = new ExprSafeAsVariant(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-3].pExpression)),*(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 427: /* $@23: %empty */ + case 426: /* $@23: %empty */ { yyextra->das_arrow_depth ++; } break; - case 428: /* $@24: %empty */ + case 427: /* $@24: %empty */ { yyextra->das_arrow_depth --; } break; - case 429: /* expr: expr '?' "as" "type" '<' $@23 type_declaration '>' $@24 */ + case 428: /* expr: expr '?' "as" "type" '<' $@23 type_declaration '>' $@24 */ { auto vname = (yyvsp[-2].pTypeDecl)->describe(); (yyval.pExpression) = new ExprSafeAsVariant(tokAt(scanner,(yylsp[-6])),ExpressionPtr((yyvsp[-8].pExpression)),vname); @@ -7628,202 +7630,202 @@ YYLTYPE yylloc = yyloc_default; } break; - case 430: /* expr: expr '?' "as" basic_type_declaration */ + case 429: /* expr: expr '?' "as" basic_type_declaration */ { (yyval.pExpression) = new ExprSafeAsVariant(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-3].pExpression)),das_to_string((yyvsp[0].type))); } break; - case 431: /* expr: expr_type_info */ + case 430: /* expr: expr_type_info */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 432: /* expr: expr_type_decl */ + case 431: /* expr: expr_type_decl */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 433: /* expr: expr_cast */ + case 432: /* expr: expr_cast */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 434: /* expr: expr_new */ + case 433: /* expr: expr_new */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 435: /* expr: expr_method_call */ + case 434: /* expr: expr_method_call */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 436: /* expr: expr_named_call */ + case 435: /* expr: expr_named_call */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 437: /* expr: expr_full_block */ + case 436: /* expr: expr_full_block */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 438: /* expr: expr "<|" expr */ + case 437: /* expr: expr "<|" expr */ { (yyval.pExpression) = ast_lpipe(scanner,(yyvsp[-2].pExpression),(yyvsp[0].pExpression),tokAt(scanner,(yylsp[-1]))); } break; - case 439: /* expr: expr "|>" expr */ + case 438: /* expr: expr "|>" expr */ { (yyval.pExpression) = ast_rpipe(scanner,(yyvsp[-2].pExpression),(yyvsp[0].pExpression),tokAt(scanner,(yylsp[-1]))); } break; - case 440: /* expr: expr "|>" basic_type_declaration */ + case 439: /* expr: expr "|>" basic_type_declaration */ { auto fncall = yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[0])),tokAt(scanner,(yylsp[0])),das_to_string((yyvsp[0].type))); (yyval.pExpression) = ast_rpipe(scanner,(yyvsp[-2].pExpression),fncall,tokAt(scanner,(yylsp[-1]))); } break; - case 441: /* expr: expr_call_pipe */ + case 440: /* expr: expr_call_pipe */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 442: /* expr_mtag: "$$" '(' expr ')' */ + case 441: /* expr_mtag: "$$" '(' expr ')' */ { (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),"e"); } break; - case 443: /* expr_mtag: "$i" '(' expr ')' */ + case 442: /* expr_mtag: "$i" '(' expr ')' */ { (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),"i"); } break; - case 444: /* expr_mtag: "$v" '(' expr ')' */ + case 443: /* expr_mtag: "$v" '(' expr ')' */ { (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),"v"); } break; - case 445: /* expr_mtag: "$b" '(' expr ')' */ + case 444: /* expr_mtag: "$b" '(' expr ')' */ { (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),"b"); } break; - case 446: /* expr_mtag: "$a" '(' expr ')' */ + case 445: /* expr_mtag: "$a" '(' expr ')' */ { (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),"a"); } break; - case 447: /* expr_mtag: "..." */ + case 446: /* expr_mtag: "..." */ { (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[0])),nullptr,"..."); } break; - case 448: /* expr_mtag: "$c" '(' expr ')' '(' ')' */ + case 447: /* expr_mtag: "$c" '(' expr ')' '(' ')' */ { auto ccall = yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-5])),tokAt(scanner,(yylsp[0])),"``MACRO``TAG``CALL``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-5])),(yyvsp[-3].pExpression),ccall,"c"); } break; - case 449: /* expr_mtag: "$c" '(' expr ')' '(' expr_list ')' */ + case 448: /* expr_mtag: "$c" '(' expr ')' '(' expr_list ')' */ { auto ccall = parseFunctionArguments(yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-6])),tokAt(scanner,(yylsp[0])),"``MACRO``TAG``CALL``"),(yyvsp[-1].pExpression)); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-6])),(yyvsp[-4].pExpression),ccall,"c"); } break; - case 450: /* expr_mtag: expr '.' "$f" '(' expr ')' */ + case 449: /* expr_mtag: expr '.' "$f" '(' expr ')' */ { auto cfield = new ExprField(tokAt(scanner,(yylsp[-4])), tokAt(scanner,(yylsp[-1])), ExpressionPtr((yyvsp[-5].pExpression)), "``MACRO``TAG``FIELD``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 451: /* expr_mtag: expr "?." "$f" '(' expr ')' */ + case 450: /* expr_mtag: expr "?." "$f" '(' expr ')' */ { auto cfield = new ExprSafeField(tokAt(scanner,(yylsp[-4])), tokAt(scanner,(yylsp[-1])), ExpressionPtr((yyvsp[-5].pExpression)), "``MACRO``TAG``FIELD``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 452: /* expr_mtag: expr '.' '.' "$f" '(' expr ')' */ + case 451: /* expr_mtag: expr '.' '.' "$f" '(' expr ')' */ { auto cfield = new ExprField(tokAt(scanner,(yylsp[-4])), tokAt(scanner,(yylsp[-1])), ExpressionPtr((yyvsp[-6].pExpression)), "``MACRO``TAG``FIELD``", true); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 453: /* expr_mtag: expr '.' "?." "$f" '(' expr ')' */ + case 452: /* expr_mtag: expr '.' "?." "$f" '(' expr ')' */ { auto cfield = new ExprSafeField(tokAt(scanner,(yylsp[-4])), tokAt(scanner,(yylsp[-1])), ExpressionPtr((yyvsp[-6].pExpression)), "``MACRO``TAG``FIELD``", true); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 454: /* expr_mtag: expr "as" "$f" '(' expr ')' */ + case 453: /* expr_mtag: expr "as" "$f" '(' expr ')' */ { auto cfield = new ExprAsVariant(tokAt(scanner,(yylsp[-4])),ExpressionPtr((yyvsp[-5].pExpression)),"``MACRO``TAG``FIELD``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 455: /* expr_mtag: expr '?' "as" "$f" '(' expr ')' */ + case 454: /* expr_mtag: expr '?' "as" "$f" '(' expr ')' */ { auto cfield = new ExprSafeAsVariant(tokAt(scanner,(yylsp[-4])),ExpressionPtr((yyvsp[-6].pExpression)),"``MACRO``TAG``FIELD``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 456: /* expr_mtag: expr "is" "$f" '(' expr ')' */ + case 455: /* expr_mtag: expr "is" "$f" '(' expr ')' */ { auto cfield = new ExprIsVariant(tokAt(scanner,(yylsp[-4])),ExpressionPtr((yyvsp[-5].pExpression)),"``MACRO``TAG``FIELD``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 457: /* expr_mtag: '@' '@' "$c" '(' expr ')' */ + case 456: /* expr_mtag: '@' '@' "$c" '(' expr ')' */ { auto ccall = new ExprAddr(tokAt(scanner,(yylsp[-4])),"``MACRO``TAG``ADDR``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-3])),(yyvsp[-1].pExpression),ccall,"c"); } break; - case 458: /* optional_field_annotation: %empty */ + case 457: /* optional_field_annotation: %empty */ { (yyval.aaList) = nullptr; } break; - case 459: /* optional_field_annotation: metadata_argument_list */ + case 458: /* optional_field_annotation: metadata_argument_list */ { (yyval.aaList) = (yyvsp[0].aaList); } break; - case 460: /* optional_override: %empty */ + case 459: /* optional_override: %empty */ { (yyval.i) = OVERRIDE_NONE; } break; - case 461: /* optional_override: "override" */ + case 460: /* optional_override: "override" */ { (yyval.i) = OVERRIDE_OVERRIDE; } break; - case 462: /* optional_override: "sealed" */ + case 461: /* optional_override: "sealed" */ { (yyval.i) = OVERRIDE_SEALED; } break; - case 463: /* optional_constant: %empty */ + case 462: /* optional_constant: %empty */ { (yyval.b) = false; } break; - case 464: /* optional_constant: "const" */ + case 463: /* optional_constant: "const" */ { (yyval.b) = true; } break; - case 465: /* optional_public_or_private_member_variable: %empty */ + case 464: /* optional_public_or_private_member_variable: %empty */ { (yyval.b) = false; } break; - case 466: /* optional_public_or_private_member_variable: "public" */ + case 465: /* optional_public_or_private_member_variable: "public" */ { (yyval.b) = false; } break; - case 467: /* optional_public_or_private_member_variable: "private" */ + case 466: /* optional_public_or_private_member_variable: "private" */ { (yyval.b) = true; } break; - case 468: /* optional_static_member_variable: %empty */ + case 467: /* optional_static_member_variable: %empty */ { (yyval.b) = false; } break; - case 469: /* optional_static_member_variable: "static" */ + case 468: /* optional_static_member_variable: "static" */ { (yyval.b) = true; } break; - case 470: /* structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration */ + case 469: /* structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration */ { (yyvsp[0].pVarDecl)->override = (yyvsp[-2].i) == OVERRIDE_OVERRIDE; (yyvsp[0].pVarDecl)->sealed = (yyvsp[-2].i) == OVERRIDE_SEALED; @@ -7834,13 +7836,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 471: /* struct_variable_declaration_list: %empty */ + case 470: /* struct_variable_declaration_list: %empty */ { (yyval.pVarDeclList) = new vector(); } break; - case 472: /* $@25: %empty */ + case 471: /* $@25: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -7849,7 +7851,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 473: /* struct_variable_declaration_list: struct_variable_declaration_list $@25 structure_variable_declaration "end of expression" */ + case 472: /* struct_variable_declaration_list: struct_variable_declaration_list $@25 structure_variable_declaration "end of expression" */ { (yyval.pVarDeclList) = (yyvsp[-3].pVarDeclList); if ( (yyvsp[-1].pVarDecl) ) (yyvsp[-3].pVarDeclList)->push_back((yyvsp[-1].pVarDecl)); @@ -7865,7 +7867,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 474: /* $@26: %empty */ + case 473: /* $@26: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[-2])); @@ -7874,7 +7876,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 475: /* struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" */ + case 474: /* struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[-1])); @@ -7884,7 +7886,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 476: /* $@27: %empty */ + case 475: /* $@27: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -7893,7 +7895,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 477: /* struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block */ + case 476: /* struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -7903,7 +7905,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 478: /* function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing variable_declaration */ + case 477: /* function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing variable_declaration */ { (yyval.pVarDecl) = (yyvsp[0].pVarDecl); if ( (yyvsp[-1].b) ) { @@ -7915,7 +7917,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 479: /* function_argument_declaration: "$a" '(' expr ')' */ + case 478: /* function_argument_declaration: "$a" '(' expr ')' */ { auto na = new vector(); na->push_back(VariableNameAndPosition{"``MACRO``TAG``","",tokAt(scanner,(yylsp[-1]))}); @@ -7925,21 +7927,21 @@ YYLTYPE yylloc = yyloc_default; } break; - case 480: /* function_argument_list: function_argument_declaration */ + case 479: /* function_argument_list: function_argument_declaration */ { (yyval.pVarDeclList) = new vector(); (yyval.pVarDeclList)->push_back((yyvsp[0].pVarDecl)); } break; - case 481: /* function_argument_list: function_argument_list "end of expression" function_argument_declaration */ + case 480: /* function_argument_list: function_argument_list "end of expression" function_argument_declaration */ { (yyval.pVarDeclList) = (yyvsp[-2].pVarDeclList); (yyvsp[-2].pVarDeclList)->push_back((yyvsp[0].pVarDecl)); } break; - case 482: /* tuple_type: type_declaration */ + case 481: /* tuple_type: type_declaration */ { (yyval.pVarDecl) = new VariableDeclaration(nullptr,(yyvsp[0].pTypeDecl),nullptr); } break; - case 483: /* tuple_type: "name" ':' type_declaration */ + case 482: /* tuple_type: "name" ':' type_declaration */ { auto na = new vector(); na->push_back(VariableNameAndPosition{*(yyvsp[-2].s),"",tokAt(scanner,(yylsp[-2]))}); @@ -7948,27 +7950,27 @@ YYLTYPE yylloc = yyloc_default; } break; - case 484: /* tuple_type_list: tuple_type */ + case 483: /* tuple_type_list: tuple_type */ { (yyval.pVarDeclList) = new vector(); (yyval.pVarDeclList)->push_back((yyvsp[0].pVarDecl)); } break; - case 485: /* tuple_type_list: tuple_type_list "end of expression" tuple_type */ + case 484: /* tuple_type_list: tuple_type_list "end of expression" tuple_type */ { (yyval.pVarDeclList) = (yyvsp[-2].pVarDeclList); (yyvsp[-2].pVarDeclList)->push_back((yyvsp[0].pVarDecl)); } break; - case 486: /* tuple_alias_type_list: %empty */ + case 485: /* tuple_alias_type_list: %empty */ { (yyval.pVarDeclList) = new vector(); } break; - case 487: /* tuple_alias_type_list: tuple_alias_type_list "end of expression" */ + case 486: /* tuple_alias_type_list: tuple_alias_type_list "end of expression" */ { (yyval.pVarDeclList) = (yyvsp[-1].pVarDeclList); } break; - case 488: /* tuple_alias_type_list: tuple_alias_type_list tuple_type "end of expression" */ + case 487: /* tuple_alias_type_list: tuple_alias_type_list tuple_type "end of expression" */ { (yyval.pVarDeclList) = (yyvsp[-2].pVarDeclList); (yyvsp[-2].pVarDeclList)->push_back((yyvsp[-1].pVarDecl)); /* @@ -7984,7 +7986,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 489: /* variant_type: "name" ':' type_declaration */ + case 488: /* variant_type: "name" ':' type_declaration */ { auto na = new vector(); na->push_back(VariableNameAndPosition{*(yyvsp[-2].s),"",tokAt(scanner,(yylsp[-2]))}); @@ -7993,27 +7995,27 @@ YYLTYPE yylloc = yyloc_default; } break; - case 490: /* variant_type_list: variant_type */ + case 489: /* variant_type_list: variant_type */ { (yyval.pVarDeclList) = new vector(); (yyval.pVarDeclList)->push_back((yyvsp[0].pVarDecl)); } break; - case 491: /* variant_type_list: variant_type_list "end of expression" variant_type */ + case 490: /* variant_type_list: variant_type_list "end of expression" variant_type */ { (yyval.pVarDeclList) = (yyvsp[-2].pVarDeclList); (yyvsp[-2].pVarDeclList)->push_back((yyvsp[0].pVarDecl)); } break; - case 492: /* variant_alias_type_list: %empty */ + case 491: /* variant_alias_type_list: %empty */ { (yyval.pVarDeclList) = new vector(); } break; - case 493: /* variant_alias_type_list: variant_alias_type_list "end of expression" */ + case 492: /* variant_alias_type_list: variant_alias_type_list "end of expression" */ { (yyval.pVarDeclList) = (yyvsp[-1].pVarDeclList); } break; - case 494: /* variant_alias_type_list: variant_alias_type_list variant_type "end of expression" */ + case 493: /* variant_alias_type_list: variant_alias_type_list variant_type "end of expression" */ { (yyval.pVarDeclList) = (yyvsp[-2].pVarDeclList); (yyvsp[-2].pVarDeclList)->push_back((yyvsp[-1].pVarDecl)); if ( !yyextra->g_CommentReaders.empty() ) { @@ -8027,15 +8029,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 495: /* copy_or_move: '=' */ + case 494: /* copy_or_move: '=' */ { (yyval.b) = false; } break; - case 496: /* copy_or_move: "<-" */ + case 495: /* copy_or_move: "<-" */ { (yyval.b) = true; } break; - case 497: /* variable_declaration: variable_name_with_pos_list */ + case 496: /* variable_declaration: variable_name_with_pos_list */ { auto autoT = new TypeDecl(Type::autoinfer); autoT->at = tokAt(scanner,(yylsp[0])); @@ -8044,7 +8046,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 498: /* variable_declaration: variable_name_with_pos_list '&' */ + case 497: /* variable_declaration: variable_name_with_pos_list '&' */ { auto autoT = new TypeDecl(Type::autoinfer); autoT->at = tokAt(scanner,(yylsp[-1])); @@ -8053,20 +8055,20 @@ YYLTYPE yylloc = yyloc_default; } break; - case 499: /* variable_declaration: variable_name_with_pos_list ':' type_declaration */ + case 498: /* variable_declaration: variable_name_with_pos_list ':' type_declaration */ { (yyval.pVarDecl) = new VariableDeclaration((yyvsp[-2].pNameWithPosList),(yyvsp[0].pTypeDecl),nullptr); } break; - case 500: /* variable_declaration: variable_name_with_pos_list ':' type_declaration copy_or_move expr */ + case 499: /* variable_declaration: variable_name_with_pos_list ':' type_declaration copy_or_move expr */ { (yyval.pVarDecl) = new VariableDeclaration((yyvsp[-4].pNameWithPosList),(yyvsp[-2].pTypeDecl),(yyvsp[0].pExpression)); (yyval.pVarDecl)->init_via_move = (yyvsp[-1].b); } break; - case 501: /* variable_declaration: variable_name_with_pos_list copy_or_move expr */ + case 500: /* variable_declaration: variable_name_with_pos_list copy_or_move expr */ { auto typeDecl = new TypeDecl(Type::autoinfer); typeDecl->at = tokAt(scanner,(yylsp[-2])); @@ -8075,27 +8077,27 @@ YYLTYPE yylloc = yyloc_default; } break; - case 502: /* copy_or_move_or_clone: '=' */ + case 501: /* copy_or_move_or_clone: '=' */ { (yyval.i) = CorM_COPY; } break; - case 503: /* copy_or_move_or_clone: "<-" */ + case 502: /* copy_or_move_or_clone: "<-" */ { (yyval.i) = CorM_MOVE; } break; - case 504: /* copy_or_move_or_clone: ":=" */ + case 503: /* copy_or_move_or_clone: ":=" */ { (yyval.i) = CorM_CLONE; } break; - case 505: /* optional_ref: %empty */ + case 504: /* optional_ref: %empty */ { (yyval.b) = false; } break; - case 506: /* optional_ref: '&' */ + case 505: /* optional_ref: '&' */ { (yyval.b) = true; } break; - case 507: /* let_variable_name_with_pos_list: "name" */ + case 506: /* let_variable_name_with_pos_list: "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); auto pSL = new vector(); @@ -8105,7 +8107,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 508: /* let_variable_name_with_pos_list: "$i" '(' expr ')' */ + case 507: /* let_variable_name_with_pos_list: "$i" '(' expr ')' */ { auto pSL = new vector(); pSL->push_back(VariableNameAndPosition{"``MACRO``TAG``","",tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-1].pExpression))}); @@ -8113,7 +8115,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 509: /* let_variable_name_with_pos_list: "name" "aka" "name" */ + case 508: /* let_variable_name_with_pos_list: "name" "aka" "name" */ { das_checkName(scanner,*(yyvsp[-2].s),tokAt(scanner,(yylsp[-2]))); das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); @@ -8125,7 +8127,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 510: /* let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" */ + case 509: /* let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); (yyvsp[-2].pNameWithPosList)->push_back(VariableNameAndPosition{*(yyvsp[0].s),"",tokAt(scanner,(yylsp[0]))}); @@ -8134,7 +8136,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 511: /* let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" "aka" "name" */ + case 510: /* let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" "aka" "name" */ { das_checkName(scanner,*(yyvsp[-2].s),tokAt(scanner,(yylsp[-2]))); das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); @@ -8145,13 +8147,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 512: /* let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" */ + case 511: /* let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" */ { (yyval.pVarDecl) = new VariableDeclaration((yyvsp[-3].pNameWithPosList),(yyvsp[-1].pTypeDecl),nullptr); } break; - case 513: /* let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" */ + case 512: /* let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" */ { (yyval.pVarDecl) = new VariableDeclaration((yyvsp[-5].pNameWithPosList),(yyvsp[-3].pTypeDecl),(yyvsp[-1].pExpression)); (yyval.pVarDecl)->init_via_move = ((yyvsp[-2].i) & CorM_MOVE) !=0; @@ -8159,7 +8161,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 514: /* let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr "end of expression" */ + case 513: /* let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr "end of expression" */ { auto typeDecl = new TypeDecl(Type::autoinfer); typeDecl->at = tokAt(scanner,(yylsp[-4])); @@ -8170,13 +8172,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 515: /* global_variable_declaration_list: %empty */ + case 514: /* global_variable_declaration_list: %empty */ { (yyval.pVarDeclList) = new vector(); } break; - case 516: /* $@28: %empty */ + case 515: /* $@28: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -8185,7 +8187,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 517: /* global_variable_declaration_list: global_variable_declaration_list $@28 optional_field_annotation let_variable_declaration */ + case 516: /* global_variable_declaration_list: global_variable_declaration_list $@28 optional_field_annotation let_variable_declaration */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -8200,33 +8202,33 @@ YYLTYPE yylloc = yyloc_default; } break; - case 518: /* optional_shared: %empty */ + case 517: /* optional_shared: %empty */ { (yyval.b) = false; } break; - case 519: /* optional_shared: "shared" */ + case 518: /* optional_shared: "shared" */ { (yyval.b) = true; } break; - case 520: /* optional_public_or_private_variable: %empty */ + case 519: /* optional_public_or_private_variable: %empty */ { (yyval.b) = yyextra->g_Program->thisModule->isPublic; } break; - case 521: /* optional_public_or_private_variable: "private" */ + case 520: /* optional_public_or_private_variable: "private" */ { (yyval.b) = false; } break; - case 522: /* optional_public_or_private_variable: "public" */ + case 521: /* optional_public_or_private_variable: "public" */ { (yyval.b) = true; } break; - case 523: /* global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" */ + case 522: /* global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" */ { ast_globalLetList(scanner,(yyvsp[-5].b),(yyvsp[-4].b),(yyvsp[-3].b),(yyvsp[-1].pVarDeclList)); } break; - case 524: /* $@29: %empty */ + case 523: /* $@29: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -8235,7 +8237,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 525: /* global_let: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration */ + case 524: /* global_let: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -8248,27 +8250,27 @@ YYLTYPE yylloc = yyloc_default; } break; - case 526: /* enum_expression: "name" */ + case 525: /* enum_expression: "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); (yyval.pEnumPair) = new EnumPair((yyvsp[0].s),tokAt(scanner,(yylsp[0]))); } break; - case 527: /* enum_expression: "name" '=' expr */ + case 526: /* enum_expression: "name" '=' expr */ { das_checkName(scanner,*(yyvsp[-2].s),tokAt(scanner,(yylsp[-2]))); (yyval.pEnumPair) = new EnumPair((yyvsp[-2].s),(yyvsp[0].pExpression),tokAt(scanner,(yylsp[-2]))); } break; - case 528: /* enum_list: %empty */ + case 527: /* enum_list: %empty */ { (yyval.pEnum) = new Enumeration(); } break; - case 529: /* enum_list: enum_expression */ + case 528: /* enum_list: enum_expression */ { (yyval.pEnum) = new Enumeration(); if ( !(yyval.pEnum)->add((yyvsp[0].pEnumPair)->name,(yyvsp[0].pEnumPair)->expr,(yyvsp[0].pEnumPair)->at) ) { @@ -8284,7 +8286,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 530: /* enum_list: enum_list ',' enum_expression */ + case 529: /* enum_list: enum_list ',' enum_expression */ { if ( !(yyvsp[-2].pEnum)->add((yyvsp[0].pEnumPair)->name,(yyvsp[0].pEnumPair)->expr,(yyvsp[0].pEnumPair)->at) ) { das2_yyerror(scanner,"enumeration already declared " + (yyvsp[0].pEnumPair)->name, (yyvsp[0].pEnumPair)->at, @@ -8300,19 +8302,19 @@ YYLTYPE yylloc = yyloc_default; } break; - case 531: /* optional_public_or_private_alias: %empty */ + case 530: /* optional_public_or_private_alias: %empty */ { (yyval.b) = yyextra->g_Program->thisModule->isPublic; } break; - case 532: /* optional_public_or_private_alias: "private" */ + case 531: /* optional_public_or_private_alias: "private" */ { (yyval.b) = false; } break; - case 533: /* optional_public_or_private_alias: "public" */ + case 532: /* optional_public_or_private_alias: "public" */ { (yyval.b) = true; } break; - case 534: /* $@30: %empty */ + case 533: /* $@30: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto pubename = tokAt(scanner,(yylsp[0])); @@ -8321,7 +8323,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 535: /* single_alias: optional_public_or_private_alias "name" $@30 '=' type_declaration */ + case 534: /* single_alias: optional_public_or_private_alias "name" $@30 '=' type_declaration */ { das_checkName(scanner,*(yyvsp[-3].s),tokAt(scanner,(yylsp[-3]))); (yyvsp[0].pTypeDecl)->isPrivateAlias = !(yyvsp[-4].b); @@ -8342,19 +8344,19 @@ YYLTYPE yylloc = yyloc_default; } break; - case 537: /* optional_public_or_private_enum: %empty */ + case 536: /* optional_public_or_private_enum: %empty */ { (yyval.b) = yyextra->g_Program->thisModule->isPublic; } break; - case 538: /* optional_public_or_private_enum: "private" */ + case 537: /* optional_public_or_private_enum: "private" */ { (yyval.b) = false; } break; - case 539: /* optional_public_or_private_enum: "public" */ + case 538: /* optional_public_or_private_enum: "public" */ { (yyval.b) = true; } break; - case 540: /* enum_name: "name" */ + case 539: /* enum_name: "name" */ { if ( !yyextra->g_CommentReaders.empty() ) { auto pubename = tokAt(scanner,(yylsp[0])); @@ -8364,19 +8366,19 @@ YYLTYPE yylloc = yyloc_default; } break; - case 541: /* optional_enum_basic_type_declaration: %empty */ + case 540: /* optional_enum_basic_type_declaration: %empty */ { (yyval.type) = Type::tInt; } break; - case 542: /* optional_enum_basic_type_declaration: ':' enum_basic_type_declaration */ + case 541: /* optional_enum_basic_type_declaration: ':' enum_basic_type_declaration */ { (yyval.type) = (yyvsp[0].type); } break; - case 543: /* $@31: %empty */ + case 542: /* $@31: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[-2])); @@ -8385,7 +8387,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 544: /* $@32: %empty */ + case 543: /* $@32: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[-1])); @@ -8394,7 +8396,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 545: /* enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" */ + case 544: /* enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" */ { if ( !yyextra->g_CommentReaders.empty() ) { auto pubename = tokAt(scanner,(yylsp[-3])); @@ -8404,61 +8406,61 @@ YYLTYPE yylloc = yyloc_default; } break; - case 546: /* optional_structure_parent: %empty */ + case 545: /* optional_structure_parent: %empty */ { (yyval.s) = nullptr; } break; - case 547: /* optional_structure_parent: ':' name_in_namespace */ + case 546: /* optional_structure_parent: ':' name_in_namespace */ { (yyval.s) = (yyvsp[0].s); } break; - case 548: /* optional_sealed: %empty */ + case 547: /* optional_sealed: %empty */ { (yyval.b) = false; } break; - case 549: /* optional_sealed: "sealed" */ + case 548: /* optional_sealed: "sealed" */ { (yyval.b) = true; } break; - case 550: /* structure_name: optional_sealed "name" optional_structure_parent */ + case 549: /* structure_name: optional_sealed "name" optional_structure_parent */ { (yyval.pStructure) = ast_structureName(scanner,(yyvsp[-2].b),(yyvsp[-1].s),tokAt(scanner,(yylsp[-1])),(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); } break; - case 551: /* class_or_struct: "class" */ + case 550: /* class_or_struct: "class" */ { (yyval.b) = true; } break; - case 552: /* class_or_struct: "struct" */ + case 551: /* class_or_struct: "struct" */ { (yyval.b) = false; } break; - case 553: /* optional_public_or_private_structure: %empty */ + case 552: /* optional_public_or_private_structure: %empty */ { (yyval.b) = yyextra->g_Program->thisModule->isPublic; } break; - case 554: /* optional_public_or_private_structure: "private" */ + case 553: /* optional_public_or_private_structure: "private" */ { (yyval.b) = false; } break; - case 555: /* optional_public_or_private_structure: "public" */ + case 554: /* optional_public_or_private_structure: "public" */ { (yyval.b) = true; } break; - case 556: /* optional_struct_variable_declaration_list: %empty */ + case 555: /* optional_struct_variable_declaration_list: %empty */ { (yyval.pVarDeclList) = new vector(); } break; - case 557: /* optional_struct_variable_declaration_list: "begin of code block" struct_variable_declaration_list "end of code block" */ + case 556: /* optional_struct_variable_declaration_list: "begin of code block" struct_variable_declaration_list "end of code block" */ { (yyval.pVarDeclList) = (yyvsp[-1].pVarDeclList); } break; - case 558: /* $@33: %empty */ + case 557: /* $@33: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[-1])); @@ -8467,11 +8469,11 @@ YYLTYPE yylloc = yyloc_default; } break; - case 559: /* $@34: %empty */ + case 558: /* $@34: %empty */ { if ( (yyvsp[0].pStructure) ) { (yyvsp[0].pStructure)->isClass = (yyvsp[-3].b); (yyvsp[0].pStructure)->privateStructure = !(yyvsp[-2].b); } } break; - case 560: /* structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 structure_name $@34 optional_struct_variable_declaration_list */ + case 559: /* structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 structure_name $@34 optional_struct_variable_declaration_list */ { if ( (yyvsp[-2].pStructure) ) { ast_structureDeclaration ( scanner, (yyvsp[-6].faList), tokAt(scanner,(yylsp[-5])), (yyvsp[-2].pStructure), tokAt(scanner,(yylsp[-2])), (yyvsp[0].pVarDeclList) ); @@ -8485,7 +8487,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 561: /* variable_name_with_pos_list: "name" */ + case 560: /* variable_name_with_pos_list: "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); auto pSL = new vector(); @@ -8495,7 +8497,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 562: /* variable_name_with_pos_list: "$i" '(' expr ')' */ + case 561: /* variable_name_with_pos_list: "$i" '(' expr ')' */ { auto pSL = new vector(); pSL->push_back(VariableNameAndPosition{"``MACRO``TAG``","",tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression)}); @@ -8503,7 +8505,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 563: /* variable_name_with_pos_list: "name" "aka" "name" */ + case 562: /* variable_name_with_pos_list: "name" "aka" "name" */ { das_checkName(scanner,*(yyvsp[-2].s),tokAt(scanner,(yylsp[-2]))); das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); @@ -8515,7 +8517,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 564: /* variable_name_with_pos_list: variable_name_with_pos_list ',' "name" */ + case 563: /* variable_name_with_pos_list: variable_name_with_pos_list ',' "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); (yyvsp[-2].pNameWithPosList)->push_back(VariableNameAndPosition{*(yyvsp[0].s),"",tokAt(scanner,(yylsp[0]))}); @@ -8524,7 +8526,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 565: /* variable_name_with_pos_list: variable_name_with_pos_list ',' "name" "aka" "name" */ + case 564: /* variable_name_with_pos_list: variable_name_with_pos_list ',' "name" "aka" "name" */ { das_checkName(scanner,*(yyvsp[-2].s),tokAt(scanner,(yylsp[-2]))); das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); @@ -8535,147 +8537,147 @@ YYLTYPE yylloc = yyloc_default; } break; - case 566: /* basic_type_declaration: "bool" */ + case 565: /* basic_type_declaration: "bool" */ { (yyval.type) = Type::tBool; } break; - case 567: /* basic_type_declaration: "string" */ + case 566: /* basic_type_declaration: "string" */ { (yyval.type) = Type::tString; } break; - case 568: /* basic_type_declaration: "int" */ + case 567: /* basic_type_declaration: "int" */ { (yyval.type) = Type::tInt; } break; - case 569: /* basic_type_declaration: "int8" */ + case 568: /* basic_type_declaration: "int8" */ { (yyval.type) = Type::tInt8; } break; - case 570: /* basic_type_declaration: "int16" */ + case 569: /* basic_type_declaration: "int16" */ { (yyval.type) = Type::tInt16; } break; - case 571: /* basic_type_declaration: "int64" */ + case 570: /* basic_type_declaration: "int64" */ { (yyval.type) = Type::tInt64; } break; - case 572: /* basic_type_declaration: "int2" */ + case 571: /* basic_type_declaration: "int2" */ { (yyval.type) = Type::tInt2; } break; - case 573: /* basic_type_declaration: "int3" */ + case 572: /* basic_type_declaration: "int3" */ { (yyval.type) = Type::tInt3; } break; - case 574: /* basic_type_declaration: "int4" */ + case 573: /* basic_type_declaration: "int4" */ { (yyval.type) = Type::tInt4; } break; - case 575: /* basic_type_declaration: "uint" */ + case 574: /* basic_type_declaration: "uint" */ { (yyval.type) = Type::tUInt; } break; - case 576: /* basic_type_declaration: "uint8" */ + case 575: /* basic_type_declaration: "uint8" */ { (yyval.type) = Type::tUInt8; } break; - case 577: /* basic_type_declaration: "uint16" */ + case 576: /* basic_type_declaration: "uint16" */ { (yyval.type) = Type::tUInt16; } break; - case 578: /* basic_type_declaration: "uint64" */ + case 577: /* basic_type_declaration: "uint64" */ { (yyval.type) = Type::tUInt64; } break; - case 579: /* basic_type_declaration: "uint2" */ + case 578: /* basic_type_declaration: "uint2" */ { (yyval.type) = Type::tUInt2; } break; - case 580: /* basic_type_declaration: "uint3" */ + case 579: /* basic_type_declaration: "uint3" */ { (yyval.type) = Type::tUInt3; } break; - case 581: /* basic_type_declaration: "uint4" */ + case 580: /* basic_type_declaration: "uint4" */ { (yyval.type) = Type::tUInt4; } break; - case 582: /* basic_type_declaration: "float" */ + case 581: /* basic_type_declaration: "float" */ { (yyval.type) = Type::tFloat; } break; - case 583: /* basic_type_declaration: "float2" */ + case 582: /* basic_type_declaration: "float2" */ { (yyval.type) = Type::tFloat2; } break; - case 584: /* basic_type_declaration: "float3" */ + case 583: /* basic_type_declaration: "float3" */ { (yyval.type) = Type::tFloat3; } break; - case 585: /* basic_type_declaration: "float4" */ + case 584: /* basic_type_declaration: "float4" */ { (yyval.type) = Type::tFloat4; } break; - case 586: /* basic_type_declaration: "void" */ + case 585: /* basic_type_declaration: "void" */ { (yyval.type) = Type::tVoid; } break; - case 587: /* basic_type_declaration: "range" */ + case 586: /* basic_type_declaration: "range" */ { (yyval.type) = Type::tRange; } break; - case 588: /* basic_type_declaration: "urange" */ + case 587: /* basic_type_declaration: "urange" */ { (yyval.type) = Type::tURange; } break; - case 589: /* basic_type_declaration: "range64" */ + case 588: /* basic_type_declaration: "range64" */ { (yyval.type) = Type::tRange64; } break; - case 590: /* basic_type_declaration: "urange64" */ + case 589: /* basic_type_declaration: "urange64" */ { (yyval.type) = Type::tURange64; } break; - case 591: /* basic_type_declaration: "double" */ + case 590: /* basic_type_declaration: "double" */ { (yyval.type) = Type::tDouble; } break; - case 592: /* basic_type_declaration: "bitfield" */ + case 591: /* basic_type_declaration: "bitfield" */ { (yyval.type) = Type::tBitfield; } break; - case 593: /* enum_basic_type_declaration: "int" */ + case 592: /* enum_basic_type_declaration: "int" */ { (yyval.type) = Type::tInt; } break; - case 594: /* enum_basic_type_declaration: "int8" */ + case 593: /* enum_basic_type_declaration: "int8" */ { (yyval.type) = Type::tInt8; } break; - case 595: /* enum_basic_type_declaration: "int16" */ + case 594: /* enum_basic_type_declaration: "int16" */ { (yyval.type) = Type::tInt16; } break; - case 596: /* enum_basic_type_declaration: "uint" */ + case 595: /* enum_basic_type_declaration: "uint" */ { (yyval.type) = Type::tUInt; } break; - case 597: /* enum_basic_type_declaration: "uint8" */ + case 596: /* enum_basic_type_declaration: "uint8" */ { (yyval.type) = Type::tUInt8; } break; - case 598: /* enum_basic_type_declaration: "uint16" */ + case 597: /* enum_basic_type_declaration: "uint16" */ { (yyval.type) = Type::tUInt16; } break; - case 599: /* enum_basic_type_declaration: "int64" */ + case 598: /* enum_basic_type_declaration: "int64" */ { (yyval.type) = Type::tInt64; } break; - case 600: /* enum_basic_type_declaration: "uint64" */ + case 599: /* enum_basic_type_declaration: "uint64" */ { (yyval.type) = Type::tUInt64; } break; - case 601: /* structure_type_declaration: name_in_namespace */ + case 600: /* structure_type_declaration: name_in_namespace */ { (yyval.pTypeDecl) = yyextra->g_Program->makeTypeDeclaration(tokAt(scanner,(yylsp[0])),*(yyvsp[0].s)); if ( !(yyval.pTypeDecl) ) { @@ -8686,14 +8688,14 @@ YYLTYPE yylloc = yyloc_default; } break; - case 602: /* auto_type_declaration: "auto" */ + case 601: /* auto_type_declaration: "auto" */ { (yyval.pTypeDecl) = new TypeDecl(Type::autoinfer); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[0])); } break; - case 603: /* auto_type_declaration: "auto" '(' "name" ')' */ + case 602: /* auto_type_declaration: "auto" '(' "name" ')' */ { das_checkName(scanner,*(yyvsp[-1].s),tokAt(scanner,(yylsp[-1]))); (yyval.pTypeDecl) = new TypeDecl(Type::autoinfer); @@ -8703,7 +8705,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 604: /* auto_type_declaration: "$t" '(' expr ')' */ + case 603: /* auto_type_declaration: "$t" '(' expr ')' */ { (yyval.pTypeDecl) = new TypeDecl(Type::alias); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-3])); @@ -8715,7 +8717,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 605: /* bitfield_bits: "name" */ + case 604: /* bitfield_bits: "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); auto pSL = new vector(); @@ -8725,7 +8727,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 606: /* bitfield_bits: bitfield_bits "end of expression" "name" */ + case 605: /* bitfield_bits: bitfield_bits "end of expression" "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); (yyvsp[-2].pNameList)->push_back(*(yyvsp[0].s)); @@ -8734,7 +8736,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 607: /* bitfield_alias_bits: %empty */ + case 606: /* bitfield_alias_bits: %empty */ { auto pSL = new vector(); (yyval.pNameList) = pSL; @@ -8742,7 +8744,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 608: /* bitfield_alias_bits: "name" */ + case 607: /* bitfield_alias_bits: "name" */ { (yyval.pNameList) = new vector(); das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); @@ -8755,7 +8757,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 609: /* bitfield_alias_bits: bitfield_alias_bits ',' "name" */ + case 608: /* bitfield_alias_bits: bitfield_alias_bits ',' "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); (yyvsp[-2].pNameList)->push_back(*(yyvsp[0].s)); @@ -8768,15 +8770,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 610: /* $@35: %empty */ + case 609: /* $@35: %empty */ { yyextra->das_arrow_depth ++; } break; - case 611: /* $@36: %empty */ + case 610: /* $@36: %empty */ { yyextra->das_arrow_depth --; } break; - case 612: /* bitfield_type_declaration: "bitfield" '<' $@35 bitfield_bits '>' $@36 */ + case 611: /* bitfield_type_declaration: "bitfield" '<' $@35 bitfield_bits '>' $@36 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tBitfield); (yyval.pTypeDecl)->argNames = *(yyvsp[-2].pNameList); @@ -8789,27 +8791,34 @@ YYLTYPE yylloc = yyloc_default; } break; - case 613: /* table_type_pair: type_declaration */ + case 612: /* table_type_pair: type_declaration */ { (yyval.aTypePair).firstType = (yyvsp[0].pTypeDecl); (yyval.aTypePair).secondType = new TypeDecl(Type::tVoid); } break; - case 614: /* table_type_pair: type_declaration "end of expression" type_declaration */ + case 613: /* table_type_pair: type_declaration "end of expression" type_declaration */ { (yyval.aTypePair).firstType = (yyvsp[-2].pTypeDecl); (yyval.aTypePair).secondType = (yyvsp[0].pTypeDecl); } break; - case 615: /* dim_list: '[' expr ']' */ + case 614: /* dim_list: '[' expr ']' */ { (yyval.pTypeDecl) = new TypeDecl(Type::autoinfer); appendDimExpr((yyval.pTypeDecl), (yyvsp[-1].pExpression)); } break; + case 615: /* dim_list: '[' ']' */ + { + (yyval.pTypeDecl) = new TypeDecl(Type::autoinfer); + appendDimExpr((yyval.pTypeDecl), nullptr); + } + break; + case 616: /* dim_list: dim_list '[' expr ']' */ { (yyval.pTypeDecl) = (yyvsp[-3].pTypeDecl); @@ -8817,24 +8826,21 @@ YYLTYPE yylloc = yyloc_default; } break; - case 617: /* type_declaration_no_options: basic_type_declaration */ - { (yyval.pTypeDecl) = new TypeDecl((yyvsp[0].type)); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[0])); } - break; - - case 618: /* type_declaration_no_options: auto_type_declaration */ - { (yyval.pTypeDecl) = (yyvsp[0].pTypeDecl); } - break; - - case 619: /* type_declaration_no_options: bitfield_type_declaration */ - { (yyval.pTypeDecl) = (yyvsp[0].pTypeDecl); } + case 617: /* dim_list: dim_list '[' ']' */ + { + (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); + appendDimExpr((yyval.pTypeDecl), nullptr); + } break; - case 620: /* type_declaration_no_options: structure_type_declaration */ - { (yyval.pTypeDecl) = (yyvsp[0].pTypeDecl); } + case 618: /* type_declaration_no_options: type_declaration_no_options_no_dim */ + { + (yyval.pTypeDecl) = (yyvsp[0].pTypeDecl); + } break; - case 621: /* type_declaration_no_options: type_declaration_no_options dim_list */ - { + case 619: /* type_declaration_no_options: type_declaration_no_options_no_dim dim_list */ + { if ( (yyvsp[-1].pTypeDecl)->baseType==Type::typeDecl ) { das2_yyerror(scanner,"type declaration can`t be used as array base type",tokAt(scanner,(yylsp[-1])), CompilationError::invalid_type); @@ -8851,31 +8857,38 @@ YYLTYPE yylloc = yyloc_default; } break; - case 622: /* type_declaration_no_options: type_declaration_no_options '[' ']' */ - { - (yyvsp[-2].pTypeDecl)->dim.push_back(TypeDecl::dimAuto); - (yyvsp[-2].pTypeDecl)->dimExpr.push_back(nullptr); - (yyvsp[-2].pTypeDecl)->removeDim = false; - (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); - } + case 620: /* type_declaration_no_options_no_dim: basic_type_declaration */ + { (yyval.pTypeDecl) = new TypeDecl((yyvsp[0].type)); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[0])); } + break; + + case 621: /* type_declaration_no_options_no_dim: auto_type_declaration */ + { (yyval.pTypeDecl) = (yyvsp[0].pTypeDecl); } break; - case 623: /* $@37: %empty */ + case 622: /* type_declaration_no_options_no_dim: bitfield_type_declaration */ + { (yyval.pTypeDecl) = (yyvsp[0].pTypeDecl); } + break; + + case 623: /* type_declaration_no_options_no_dim: structure_type_declaration */ + { (yyval.pTypeDecl) = (yyvsp[0].pTypeDecl); } + break; + + case 624: /* $@37: %empty */ { yyextra->das_arrow_depth ++; } break; - case 624: /* $@38: %empty */ + case 625: /* $@38: %empty */ { yyextra->das_arrow_depth --; } break; - case 625: /* type_declaration_no_options: "type" '<' $@37 type_declaration '>' $@38 */ + case 626: /* type_declaration_no_options_no_dim: "type" '<' $@37 type_declaration '>' $@38 */ { (yyvsp[-2].pTypeDecl)->autoToAlias = true; (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); } break; - case 626: /* type_declaration_no_options: "typedecl" '(' expr ')' */ + case 627: /* type_declaration_no_options_no_dim: "typedecl" '(' expr ')' */ { (yyval.pTypeDecl) = new TypeDecl(Type::typeDecl); (yyval.pTypeDecl)->at = tokRangeAt(scanner,(yylsp[-3]),(yylsp[-1])); @@ -8883,7 +8896,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 627: /* type_declaration_no_options: '$' name_in_namespace '(' optional_expr_list ')' */ + case 628: /* type_declaration_no_options_no_dim: '$' name_in_namespace '(' optional_expr_list ')' */ { (yyval.pTypeDecl) = new TypeDecl(Type::typeMacro); (yyval.pTypeDecl)->at = tokRangeAt(scanner,(yylsp[-3]), (yylsp[-1])); @@ -8893,11 +8906,11 @@ YYLTYPE yylloc = yyloc_default; } break; - case 628: /* $@39: %empty */ + case 629: /* $@39: %empty */ { yyextra->das_arrow_depth ++; } break; - case 629: /* type_declaration_no_options: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' */ + case 630: /* type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' */ { (yyval.pTypeDecl) = new TypeDecl(Type::typeMacro); (yyval.pTypeDecl)->at = tokRangeAt(scanner,(yylsp[-7]), (yylsp[-1])); @@ -8907,105 +8920,105 @@ YYLTYPE yylloc = yyloc_default; } break; - case 630: /* type_declaration_no_options: type_declaration_no_options '-' '[' ']' */ - { + case 631: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '[' ']' */ + { (yyvsp[-3].pTypeDecl)->removeDim = true; (yyval.pTypeDecl) = (yyvsp[-3].pTypeDecl); } break; - case 631: /* type_declaration_no_options: type_declaration_no_options "explicit" */ - { + case 632: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "explicit" */ + { (yyvsp[-1].pTypeDecl)->isExplicit = true; (yyval.pTypeDecl) = (yyvsp[-1].pTypeDecl); } break; - case 632: /* type_declaration_no_options: type_declaration_no_options "const" */ - { + case 633: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "const" */ + { (yyvsp[-1].pTypeDecl)->constant = true; (yyvsp[-1].pTypeDecl)->removeConstant = false; (yyval.pTypeDecl) = (yyvsp[-1].pTypeDecl); } break; - case 633: /* type_declaration_no_options: type_declaration_no_options '-' "const" */ - { + case 634: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' "const" */ + { (yyvsp[-2].pTypeDecl)->constant = false; (yyvsp[-2].pTypeDecl)->removeConstant = true; (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); } break; - case 634: /* type_declaration_no_options: type_declaration_no_options '&' */ - { + case 635: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '&' */ + { (yyvsp[-1].pTypeDecl)->ref = true; (yyvsp[-1].pTypeDecl)->removeRef = false; (yyval.pTypeDecl) = (yyvsp[-1].pTypeDecl); } break; - case 635: /* type_declaration_no_options: type_declaration_no_options '-' '&' */ - { + case 636: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '&' */ + { (yyvsp[-2].pTypeDecl)->ref = false; (yyvsp[-2].pTypeDecl)->removeRef = true; (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); } break; - case 636: /* type_declaration_no_options: type_declaration_no_options '#' */ - { + case 637: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '#' */ + { (yyval.pTypeDecl) = (yyvsp[-1].pTypeDecl); (yyval.pTypeDecl)->temporary = true; } break; - case 637: /* type_declaration_no_options: type_declaration_no_options "implicit" */ - { + case 638: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "implicit" */ + { (yyval.pTypeDecl) = (yyvsp[-1].pTypeDecl); (yyval.pTypeDecl)->implicit = true; } break; - case 638: /* type_declaration_no_options: type_declaration_no_options '-' '#' */ - { + case 639: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '#' */ + { (yyvsp[-2].pTypeDecl)->temporary = false; (yyvsp[-2].pTypeDecl)->removeTemporary = true; (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); } break; - case 639: /* type_declaration_no_options: type_declaration_no_options "==" "const" */ - { + case 640: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "==" "const" */ + { (yyvsp[-2].pTypeDecl)->explicitConst = true; (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); } break; - case 640: /* type_declaration_no_options: type_declaration_no_options "==" '&' */ - { + case 641: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "==" '&' */ + { (yyvsp[-2].pTypeDecl)->explicitRef = true; (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); } break; - case 641: /* type_declaration_no_options: type_declaration_no_options '*' */ - { + case 642: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '*' */ + { (yyval.pTypeDecl) = new TypeDecl(Type::tPointer); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-1])); (yyval.pTypeDecl)->firstType = TypeDeclPtr((yyvsp[-1].pTypeDecl)); } break; - case 642: /* $@40: %empty */ + case 643: /* $@40: %empty */ { yyextra->das_arrow_depth ++; } break; - case 643: /* $@41: %empty */ + case 644: /* $@41: %empty */ { yyextra->das_arrow_depth --; } break; - case 644: /* type_declaration_no_options: "smart_ptr" '<' $@40 type_declaration '>' $@41 */ + case 645: /* type_declaration_no_options_no_dim: "smart_ptr" '<' $@40 type_declaration '>' $@41 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tPointer); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -9014,8 +9027,8 @@ YYLTYPE yylloc = yyloc_default; } break; - case 645: /* type_declaration_no_options: type_declaration_no_options "??" */ - { + case 646: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "??" */ + { (yyval.pTypeDecl) = new TypeDecl(Type::tPointer); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-1])); (yyval.pTypeDecl)->firstType = make_smart(Type::tPointer); @@ -9024,15 +9037,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 646: /* $@42: %empty */ + case 647: /* $@42: %empty */ { yyextra->das_arrow_depth ++; } break; - case 647: /* $@43: %empty */ + case 648: /* $@43: %empty */ { yyextra->das_arrow_depth --; } break; - case 648: /* type_declaration_no_options: "array" '<' $@42 type_declaration '>' $@43 */ + case 649: /* type_declaration_no_options_no_dim: "array" '<' $@42 type_declaration '>' $@43 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tArray); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -9040,15 +9053,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 649: /* $@44: %empty */ + case 650: /* $@44: %empty */ { yyextra->das_arrow_depth ++; } break; - case 650: /* $@45: %empty */ + case 651: /* $@45: %empty */ { yyextra->das_arrow_depth --; } break; - case 651: /* type_declaration_no_options: "table" '<' $@44 table_type_pair '>' $@45 */ + case 652: /* type_declaration_no_options_no_dim: "table" '<' $@44 table_type_pair '>' $@45 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tTable); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -9057,15 +9070,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 652: /* $@46: %empty */ + case 653: /* $@46: %empty */ { yyextra->das_arrow_depth ++; } break; - case 653: /* $@47: %empty */ + case 654: /* $@47: %empty */ { yyextra->das_arrow_depth --; } break; - case 654: /* type_declaration_no_options: "iterator" '<' $@46 type_declaration '>' $@47 */ + case 655: /* type_declaration_no_options_no_dim: "iterator" '<' $@46 type_declaration '>' $@47 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tIterator); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -9073,22 +9086,22 @@ YYLTYPE yylloc = yyloc_default; } break; - case 655: /* type_declaration_no_options: "block" */ + case 656: /* type_declaration_no_options_no_dim: "block" */ { (yyval.pTypeDecl) = new TypeDecl(Type::tBlock); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[0])); } break; - case 656: /* $@48: %empty */ + case 657: /* $@48: %empty */ { yyextra->das_arrow_depth ++; } break; - case 657: /* $@49: %empty */ + case 658: /* $@49: %empty */ { yyextra->das_arrow_depth --; } break; - case 658: /* type_declaration_no_options: "block" '<' $@48 type_declaration '>' $@49 */ + case 659: /* type_declaration_no_options_no_dim: "block" '<' $@48 type_declaration '>' $@49 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tBlock); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -9096,15 +9109,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 659: /* $@50: %empty */ + case 660: /* $@50: %empty */ { yyextra->das_arrow_depth ++; } break; - case 660: /* $@51: %empty */ + case 661: /* $@51: %empty */ { yyextra->das_arrow_depth --; } break; - case 661: /* type_declaration_no_options: "block" '<' $@50 optional_function_argument_list optional_function_type '>' $@51 */ + case 662: /* type_declaration_no_options_no_dim: "block" '<' $@50 optional_function_argument_list optional_function_type '>' $@51 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tBlock); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-6])); @@ -9116,22 +9129,22 @@ YYLTYPE yylloc = yyloc_default; } break; - case 662: /* type_declaration_no_options: "function" */ + case 663: /* type_declaration_no_options_no_dim: "function" */ { (yyval.pTypeDecl) = new TypeDecl(Type::tFunction); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[0])); } break; - case 663: /* $@52: %empty */ + case 664: /* $@52: %empty */ { yyextra->das_arrow_depth ++; } break; - case 664: /* $@53: %empty */ + case 665: /* $@53: %empty */ { yyextra->das_arrow_depth --; } break; - case 665: /* type_declaration_no_options: "function" '<' $@52 type_declaration '>' $@53 */ + case 666: /* type_declaration_no_options_no_dim: "function" '<' $@52 type_declaration '>' $@53 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tFunction); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -9139,15 +9152,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 666: /* $@54: %empty */ + case 667: /* $@54: %empty */ { yyextra->das_arrow_depth ++; } break; - case 667: /* $@55: %empty */ + case 668: /* $@55: %empty */ { yyextra->das_arrow_depth --; } break; - case 668: /* type_declaration_no_options: "function" '<' $@54 optional_function_argument_list optional_function_type '>' $@55 */ + case 669: /* type_declaration_no_options_no_dim: "function" '<' $@54 optional_function_argument_list optional_function_type '>' $@55 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tFunction); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-6])); @@ -9159,22 +9172,22 @@ YYLTYPE yylloc = yyloc_default; } break; - case 669: /* type_declaration_no_options: "lambda" */ + case 670: /* type_declaration_no_options_no_dim: "lambda" */ { (yyval.pTypeDecl) = new TypeDecl(Type::tLambda); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[0])); } break; - case 670: /* $@56: %empty */ + case 671: /* $@56: %empty */ { yyextra->das_arrow_depth ++; } break; - case 671: /* $@57: %empty */ + case 672: /* $@57: %empty */ { yyextra->das_arrow_depth --; } break; - case 672: /* type_declaration_no_options: "lambda" '<' $@56 type_declaration '>' $@57 */ + case 673: /* type_declaration_no_options_no_dim: "lambda" '<' $@56 type_declaration '>' $@57 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tLambda); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -9182,15 +9195,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 673: /* $@58: %empty */ + case 674: /* $@58: %empty */ { yyextra->das_arrow_depth ++; } break; - case 674: /* $@59: %empty */ + case 675: /* $@59: %empty */ { yyextra->das_arrow_depth --; } break; - case 675: /* type_declaration_no_options: "lambda" '<' $@58 optional_function_argument_list optional_function_type '>' $@59 */ + case 676: /* type_declaration_no_options_no_dim: "lambda" '<' $@58 optional_function_argument_list optional_function_type '>' $@59 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tLambda); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-6])); @@ -9202,15 +9215,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 676: /* $@60: %empty */ + case 677: /* $@60: %empty */ { yyextra->das_arrow_depth ++; } break; - case 677: /* $@61: %empty */ + case 678: /* $@61: %empty */ { yyextra->das_arrow_depth --; } break; - case 678: /* type_declaration_no_options: "tuple" '<' $@60 tuple_type_list '>' $@61 */ + case 679: /* type_declaration_no_options_no_dim: "tuple" '<' $@60 tuple_type_list '>' $@61 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tTuple); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -9219,15 +9232,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 679: /* $@62: %empty */ + case 680: /* $@62: %empty */ { yyextra->das_arrow_depth ++; } break; - case 680: /* $@63: %empty */ + case 681: /* $@63: %empty */ { yyextra->das_arrow_depth --; } break; - case 681: /* type_declaration_no_options: "variant" '<' $@62 variant_type_list '>' $@63 */ + case 682: /* type_declaration_no_options_no_dim: "variant" '<' $@62 variant_type_list '>' $@63 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tVariant); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -9236,13 +9249,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 682: /* type_declaration: type_declaration_no_options */ + case 683: /* type_declaration: type_declaration_no_options */ { (yyval.pTypeDecl) = (yyvsp[0].pTypeDecl); } break; - case 683: /* type_declaration: type_declaration '|' type_declaration_no_options */ + case 684: /* type_declaration: type_declaration '|' type_declaration_no_options */ { if ( (yyvsp[-2].pTypeDecl)->baseType==Type::option ) { (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); @@ -9256,7 +9269,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 684: /* type_declaration: type_declaration '|' '#' */ + case 685: /* type_declaration: type_declaration '|' '#' */ { if ( (yyvsp[-2].pTypeDecl)->baseType==Type::option ) { (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); @@ -9272,7 +9285,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 685: /* $@64: %empty */ + case 686: /* $@64: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[0])); @@ -9281,7 +9294,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 686: /* $@65: %empty */ + case 687: /* $@65: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[-2])); @@ -9290,7 +9303,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 687: /* $@66: %empty */ + case 688: /* $@66: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[-4])); @@ -9299,7 +9312,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 688: /* tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" */ + case 689: /* tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" */ { auto vtype = make_smart(Type::tTuple); vtype->alias = *(yyvsp[-6].s); @@ -9319,7 +9332,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 689: /* $@67: %empty */ + case 690: /* $@67: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[0])); @@ -9328,7 +9341,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 690: /* $@68: %empty */ + case 691: /* $@68: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[-2])); @@ -9338,7 +9351,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 691: /* $@69: %empty */ + case 692: /* $@69: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[-4])); @@ -9347,7 +9360,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 692: /* variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" */ + case 693: /* variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" */ { auto vtype = make_smart(Type::tVariant); vtype->alias = *(yyvsp[-6].s); @@ -9367,7 +9380,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 693: /* $@70: %empty */ + case 694: /* $@70: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[0])); @@ -9376,7 +9389,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 694: /* $@71: %empty */ + case 695: /* $@71: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[-2])); @@ -9385,7 +9398,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 695: /* $@72: %empty */ + case 696: /* $@72: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[-5])); @@ -9394,7 +9407,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 696: /* bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" */ + case 697: /* bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" */ { auto btype = make_smart(Type::tBitfield); btype->alias = *(yyvsp[-7].s); @@ -9418,27 +9431,27 @@ YYLTYPE yylloc = yyloc_default; } break; - case 697: /* make_decl: make_struct_decl */ + case 698: /* make_decl: make_struct_decl */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 698: /* make_decl: make_dim_decl */ + case 699: /* make_decl: make_dim_decl */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 699: /* make_decl: make_table_decl */ + case 700: /* make_decl: make_table_decl */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 700: /* make_decl: array_comprehension */ + case 701: /* make_decl: array_comprehension */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 701: /* make_decl: make_tuple_call */ + case 702: /* make_decl: make_tuple_call */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 702: /* make_struct_fields: "name" copy_or_move expr */ + case 703: /* make_struct_fields: "name" copy_or_move expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-2])),*(yyvsp[-2].s),ExpressionPtr((yyvsp[0].pExpression)),(yyvsp[-1].b),false); delete (yyvsp[-2].s); @@ -9448,7 +9461,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 703: /* make_struct_fields: "name" ":=" expr */ + case 704: /* make_struct_fields: "name" ":=" expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-2])),*(yyvsp[-2].s),ExpressionPtr((yyvsp[0].pExpression)),false,true); delete (yyvsp[-2].s); @@ -9458,7 +9471,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 704: /* make_struct_fields: make_struct_fields ',' "name" copy_or_move expr */ + case 705: /* make_struct_fields: make_struct_fields ',' "name" copy_or_move expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-2])),*(yyvsp[-2].s),ExpressionPtr((yyvsp[0].pExpression)),(yyvsp[-1].b),false); delete (yyvsp[-2].s); @@ -9467,7 +9480,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 705: /* make_struct_fields: make_struct_fields ',' "name" ":=" expr */ + case 706: /* make_struct_fields: make_struct_fields ',' "name" ":=" expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-2])),*(yyvsp[-2].s),ExpressionPtr((yyvsp[0].pExpression)),false,true); delete (yyvsp[-2].s); @@ -9476,7 +9489,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 706: /* make_struct_fields: "$f" '(' expr ')' copy_or_move expr */ + case 707: /* make_struct_fields: "$f" '(' expr ')' copy_or_move expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-3])),"``MACRO``TAG``FIELD``",ExpressionPtr((yyvsp[0].pExpression)),(yyvsp[-1].b),false); mfd->tag = ExpressionPtr((yyvsp[-3].pExpression)); @@ -9486,7 +9499,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 707: /* make_struct_fields: "$f" '(' expr ')' ":=" expr */ + case 708: /* make_struct_fields: "$f" '(' expr ')' ":=" expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-3])),"``MACRO``TAG``FIELD``",ExpressionPtr((yyvsp[0].pExpression)),false,true); mfd->tag = ExpressionPtr((yyvsp[-3].pExpression)); @@ -9496,7 +9509,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 708: /* make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' copy_or_move expr */ + case 709: /* make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' copy_or_move expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-3])),"``MACRO``TAG``FIELD``",ExpressionPtr((yyvsp[0].pExpression)),(yyvsp[-1].b),false); mfd->tag = ExpressionPtr((yyvsp[-3].pExpression)); @@ -9505,7 +9518,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 709: /* make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' ":=" expr */ + case 710: /* make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' ":=" expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-3])),"``MACRO``TAG``FIELD``",ExpressionPtr((yyvsp[0].pExpression)),false,true); mfd->tag = ExpressionPtr((yyvsp[-3].pExpression)); @@ -9514,7 +9527,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 710: /* make_struct_single: make_struct_fields */ + case 711: /* make_struct_single: make_struct_fields */ { auto msd = new ExprMakeStruct(); msd->structs.push_back(MakeStructPtr((yyvsp[0].pMakeStruct))); @@ -9522,7 +9535,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 711: /* make_struct_dim: make_struct_fields */ + case 712: /* make_struct_dim: make_struct_fields */ { auto msd = new ExprMakeStruct(); msd->structs.push_back(MakeStructPtr((yyvsp[0].pMakeStruct))); @@ -9530,30 +9543,30 @@ YYLTYPE yylloc = yyloc_default; } break; - case 712: /* make_struct_dim: make_struct_dim "end of expression" make_struct_fields */ + case 713: /* make_struct_dim: make_struct_dim "end of expression" make_struct_fields */ { ((ExprMakeStruct *) (yyvsp[-2].pExpression))->structs.push_back(MakeStructPtr((yyvsp[0].pMakeStruct))); (yyval.pExpression) = (yyvsp[-2].pExpression); } break; - case 713: /* use_initializer: %empty */ + case 714: /* use_initializer: %empty */ { (yyval.b) = true; } break; - case 714: /* use_initializer: "uninitialized" */ + case 715: /* use_initializer: "uninitialized" */ { (yyval.b) = false; } break; - case 715: /* $@73: %empty */ + case 716: /* $@73: %empty */ { yyextra->das_arrow_depth ++; } break; - case 716: /* $@74: %empty */ + case 717: /* $@74: %empty */ { yyextra->das_arrow_depth --; } break; - case 717: /* make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' */ + case 718: /* make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-9])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-6].pTypeDecl)); @@ -9564,15 +9577,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 718: /* $@75: %empty */ + case 719: /* $@75: %empty */ { yyextra->das_arrow_depth ++; } break; - case 719: /* $@76: %empty */ + case 720: /* $@76: %empty */ { yyextra->das_arrow_depth --; } break; - case 720: /* make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' */ + case 721: /* make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-9])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-6].pTypeDecl)); @@ -9582,15 +9595,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 721: /* $@77: %empty */ + case 722: /* $@77: %empty */ { yyextra->das_arrow_depth ++; } break; - case 722: /* $@78: %empty */ + case 723: /* $@78: %empty */ { yyextra->das_arrow_depth --; } break; - case 723: /* make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim ')' */ + case 724: /* make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-8])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-5].pTypeDecl)); @@ -9600,15 +9613,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 724: /* $@79: %empty */ + case 725: /* $@79: %empty */ { yyextra->das_arrow_depth ++; } break; - case 725: /* $@80: %empty */ + case 726: /* $@80: %empty */ { yyextra->das_arrow_depth --; } break; - case 726: /* make_struct_decl: "default" '<' $@79 type_declaration_no_options '>' $@80 use_initializer */ + case 727: /* make_struct_decl: "default" '<' $@79 type_declaration_no_options '>' $@80 use_initializer */ { auto msd = new ExprMakeStruct(); msd->at = tokAt(scanner,(yylsp[-6])); @@ -9619,7 +9632,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 727: /* make_map_tuple: expr "=>" expr */ + case 728: /* make_map_tuple: expr "=>" expr */ { ExprMakeTuple * mt = new ExprMakeTuple(tokAt(scanner,(yylsp[-1]))); mt->values.push_back(ExpressionPtr((yyvsp[-2].pExpression))); @@ -9628,13 +9641,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 728: /* make_map_tuple: expr */ + case 729: /* make_map_tuple: expr */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 729: /* make_tuple_call: "tuple" '(' expr_list optional_comma ')' */ + case 730: /* make_tuple_call: "tuple" '(' expr_list optional_comma ')' */ { auto mkt = new ExprMakeTuple(tokAt(scanner,(yylsp[-4]))); mkt->values = sequenceToList((yyvsp[-2].pExpression)); @@ -9643,15 +9656,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 730: /* $@81: %empty */ + case 731: /* $@81: %empty */ { yyextra->das_arrow_depth ++; } break; - case 731: /* $@82: %empty */ + case 732: /* $@82: %empty */ { yyextra->das_arrow_depth --; } break; - case 732: /* make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' */ + case 733: /* make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-9])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-6].pTypeDecl)); @@ -9661,7 +9674,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 733: /* make_dim_decl: '[' expr_list optional_comma ']' */ + case 734: /* make_dim_decl: '[' expr_list optional_comma ']' */ { auto mka = make_smart(tokAt(scanner,(yylsp[-3]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -9672,15 +9685,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 734: /* $@83: %empty */ + case 735: /* $@83: %empty */ { yyextra->das_arrow_depth ++; } break; - case 735: /* $@84: %empty */ + case 736: /* $@84: %empty */ { yyextra->das_arrow_depth --; } break; - case 736: /* make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' */ + case 737: /* make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-10])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-6].pTypeDecl)); @@ -9693,15 +9706,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 737: /* $@85: %empty */ + case 738: /* $@85: %empty */ { yyextra->das_arrow_depth ++; } break; - case 738: /* $@86: %empty */ + case 739: /* $@86: %empty */ { yyextra->das_arrow_depth --; } break; - case 739: /* make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' */ + case 740: /* make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-10])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-6].pTypeDecl)); @@ -9714,15 +9727,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 740: /* $@87: %empty */ + case 741: /* $@87: %empty */ { yyextra->das_arrow_depth ++; } break; - case 741: /* $@88: %empty */ + case 742: /* $@88: %empty */ { yyextra->das_arrow_depth --; } break; - case 742: /* make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' */ + case 743: /* make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-9])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-5].pTypeDecl)); @@ -9735,7 +9748,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 743: /* make_dim_decl: "array" '(' expr_list optional_comma ')' */ + case 744: /* make_dim_decl: "array" '(' expr_list optional_comma ')' */ { auto mka = make_smart(tokAt(scanner,(yylsp[-4]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -9746,15 +9759,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 744: /* $@89: %empty */ + case 745: /* $@89: %empty */ { yyextra->das_arrow_depth ++; } break; - case 745: /* $@90: %empty */ + case 746: /* $@90: %empty */ { yyextra->das_arrow_depth --; } break; - case 746: /* make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' */ + case 747: /* make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' */ { auto mka = make_smart(tokAt(scanner,(yylsp[-9]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -9765,7 +9778,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 747: /* make_dim_decl: "fixed_array" '(' expr_list optional_comma ')' */ + case 748: /* make_dim_decl: "fixed_array" '(' expr_list optional_comma ')' */ { auto mka = new ExprMakeArray(tokAt(scanner,(yylsp[-4]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -9775,15 +9788,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 748: /* $@91: %empty */ + case 749: /* $@91: %empty */ { yyextra->das_arrow_depth ++; } break; - case 749: /* $@92: %empty */ + case 750: /* $@92: %empty */ { yyextra->das_arrow_depth --; } break; - case 750: /* make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' */ + case 751: /* make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' */ { auto mka = new ExprMakeArray(tokAt(scanner,(yylsp[-9]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -9793,19 +9806,19 @@ YYLTYPE yylloc = yyloc_default; } break; - case 751: /* expr_map_tuple_list: make_map_tuple */ + case 752: /* expr_map_tuple_list: make_map_tuple */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 752: /* expr_map_tuple_list: expr_map_tuple_list ',' make_map_tuple */ + case 753: /* expr_map_tuple_list: expr_map_tuple_list ',' make_map_tuple */ { (yyval.pExpression) = new ExprSequence(tokAt(scanner,(yylsp[-2])),ExpressionPtr((yyvsp[-2].pExpression)),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 753: /* make_table_decl: "begin of code block" expr_map_tuple_list optional_comma "end of code block" */ + case 754: /* make_table_decl: "begin of code block" expr_map_tuple_list optional_comma "end of code block" */ { auto mka = make_smart(tokAt(scanner,(yylsp[-3]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -9816,7 +9829,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 754: /* make_table_decl: "table" '(' expr_map_tuple_list optional_comma ')' */ + case 755: /* make_table_decl: "table" '(' expr_map_tuple_list optional_comma ')' */ { auto mka = make_smart(tokAt(scanner,(yylsp[-4]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -9827,7 +9840,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 755: /* make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' */ + case 756: /* make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' */ { auto mka = make_smart(tokAt(scanner,(yylsp[-7]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -9838,7 +9851,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 756: /* make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' */ + case 757: /* make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' */ { auto mka = make_smart(tokAt(scanner,(yylsp[-9]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -9851,35 +9864,35 @@ YYLTYPE yylloc = yyloc_default; } break; - case 757: /* array_comprehension_where: %empty */ + case 758: /* array_comprehension_where: %empty */ { (yyval.pExpression) = nullptr; } break; - case 758: /* array_comprehension_where: "end of expression" "where" expr */ + case 759: /* array_comprehension_where: "end of expression" "where" expr */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 759: /* optional_comma: %empty */ + case 760: /* optional_comma: %empty */ { (yyval.b) = false; } break; - case 760: /* optional_comma: ',' */ + case 761: /* optional_comma: ',' */ { (yyval.b) = true; } break; - case 761: /* array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' */ + case 762: /* array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' */ { (yyval.pExpression) = ast_arrayComprehension(scanner,tokAt(scanner,(yylsp[-7])),(yyvsp[-6].pNameWithPosList),(yyvsp[-4].pExpression),(yyvsp[-2].pExpression),(yyvsp[-1].pExpression),tokRangeAt(scanner,(yylsp[-2]),(yylsp[0])),false,false); } break; - case 762: /* array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' */ + case 763: /* array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' */ { (yyval.pExpression) = ast_arrayComprehension(scanner,tokAt(scanner,(yylsp[-7])),(yyvsp[-6].pNameWithPosList),(yyvsp[-4].pExpression),(yyvsp[-2].pExpression),(yyvsp[-1].pExpression),tokRangeAt(scanner,(yylsp[-2]),(yylsp[0])),true,false); } break; - case 763: /* array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" */ + case 764: /* array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" */ { (yyval.pExpression) = ast_arrayComprehension(scanner,tokAt(scanner,(yylsp[-7])),(yyvsp[-6].pNameWithPosList),(yyvsp[-4].pExpression),(yyvsp[-2].pExpression),(yyvsp[-1].pExpression),tokRangeAt(scanner,(yylsp[-2]),(yylsp[0])),false,true); } diff --git a/src/parser/ds2_parser.output b/src/parser/ds2_parser.output index 42f952831..bcafff7e1 100644 --- a/src/parser/ds2_parser.output +++ b/src/parser/ds2_parser.output @@ -10,13 +10,11 @@ Terminals unused in grammar LLPIPE -State 56 conflicts: 1 shift/reduce -State 370 conflicts: 1 shift/reduce -State 458 conflicts: 1 shift/reduce -State 463 conflicts: 1 shift/reduce -State 470 conflicts: 3 shift/reduce -State 589 conflicts: 1 shift/reduce -State 640 conflicts: 1 shift/reduce +State 457 conflicts: 1 shift/reduce +State 462 conflicts: 1 shift/reduce +State 469 conflicts: 3 shift/reduce +State 588 conflicts: 1 shift/reduce +State 639 conflicts: 1 shift/reduce State 811 conflicts: 2 shift/reduce State 881 conflicts: 1 shift/reduce @@ -323,952 +321,954 @@ Grammar 239 name_in_namespace: "name" 240 | "name" "::" "name" - 241 | "::" "name" - 242 expression_delete: "delete" expr - 243 | "delete" "explicit" expr + 241 expression_delete: "delete" expr + 242 | "delete" "explicit" expr - 244 $@3: %empty + 243 $@3: %empty - 245 $@4: %empty + 244 $@4: %empty - 246 new_type_declaration: '<' $@3 type_declaration '>' $@4 + 245 new_type_declaration: '<' $@3 type_declaration '>' $@4 - 247 expr_new: "new" structure_type_declaration - 248 | "new" structure_type_declaration '(' optional_expr_list ')' - 249 | "new" new_type_declaration '(' use_initializer ')' - 250 | "new" new_type_declaration '(' use_initializer make_struct_single ')' - 251 | "new" make_decl + 246 expr_new: "new" structure_type_declaration + 247 | "new" structure_type_declaration '(' optional_expr_list ')' + 248 | "new" new_type_declaration '(' use_initializer ')' + 249 | "new" new_type_declaration '(' use_initializer make_struct_single ')' + 250 | "new" make_decl - 252 expression_break: "break" + 251 expression_break: "break" - 253 expression_continue: "continue" + 252 expression_continue: "continue" - 254 expression_return: "return" - 255 | "return" expr - 256 | "return" "<-" expr + 253 expression_return: "return" + 254 | "return" expr + 255 | "return" "<-" expr - 257 expression_yield_no_pipe: "yield" expr - 258 | "yield" "<-" expr + 256 expression_yield_no_pipe: "yield" expr + 257 | "yield" "<-" expr - 259 expression_yield: expression_yield_no_pipe "end of expression" + 258 expression_yield: expression_yield_no_pipe "end of expression" - 260 expression_try_catch: "try" expression_block "recover" expression_block + 259 expression_try_catch: "try" expression_block "recover" expression_block - 261 kwd_let_var_or_nothing: "let" - 262 | "var" - 263 | %empty + 260 kwd_let_var_or_nothing: "let" + 261 | "var" + 262 | %empty - 264 kwd_let: "let" - 265 | "var" + 263 kwd_let: "let" + 264 | "var" - 266 optional_in_scope: "inscope" - 267 | %empty + 265 optional_in_scope: "inscope" + 266 | %empty - 268 tuple_expansion: "name" - 269 | tuple_expansion ',' "name" + 267 tuple_expansion: "name" + 268 | tuple_expansion ',' "name" - 270 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 271 | '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" + 269 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 270 | '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" - 272 expression_let: kwd_let optional_in_scope let_variable_declaration - 273 | kwd_let optional_in_scope tuple_expansion_variable_declaration + 271 expression_let: kwd_let optional_in_scope let_variable_declaration + 272 | kwd_let optional_in_scope tuple_expansion_variable_declaration - 274 $@5: %empty + 273 $@5: %empty - 275 $@6: %empty + 274 $@6: %empty - 276 expr_cast: "cast" '<' $@5 type_declaration_no_options '>' $@6 expr + 275 expr_cast: "cast" '<' $@5 type_declaration_no_options '>' $@6 expr - 277 $@7: %empty + 276 $@7: %empty - 278 $@8: %empty + 277 $@8: %empty - 279 expr_cast: "upcast" '<' $@7 type_declaration_no_options '>' $@8 expr + 278 expr_cast: "upcast" '<' $@7 type_declaration_no_options '>' $@8 expr - 280 $@9: %empty + 279 $@9: %empty - 281 $@10: %empty + 280 $@10: %empty - 282 expr_cast: "reinterpret" '<' $@9 type_declaration_no_options '>' $@10 expr + 281 expr_cast: "reinterpret" '<' $@9 type_declaration_no_options '>' $@10 expr - 283 $@11: %empty + 282 $@11: %empty - 284 $@12: %empty + 283 $@12: %empty - 285 expr_type_decl: "type" '<' $@11 type_declaration '>' $@12 + 284 expr_type_decl: "type" '<' $@11 type_declaration '>' $@12 - 286 expr_type_info: "typeinfo" '(' name_in_namespace expr ')' - 287 | "typeinfo" '(' name_in_namespace '<' "name" '>' expr ')' - 288 | "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' + 285 expr_type_info: "typeinfo" '(' name_in_namespace expr ')' + 286 | "typeinfo" '(' name_in_namespace '<' "name" '>' expr ')' + 287 | "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' - 289 expr_list: expr - 290 | expr_list ',' expr + 288 expr_list: expr + 289 | expr_list ',' expr - 291 block_or_simple_block: expression_block - 292 | "=>" expr - 293 | "=>" "<-" expr + 290 block_or_simple_block: expression_block + 291 | "=>" expr + 292 | "=>" "<-" expr - 294 block_or_lambda: '$' - 295 | '@' - 296 | '@' '@' + 293 block_or_lambda: '$' + 294 | '@' + 295 | '@' '@' - 297 capture_entry: '&' "name" - 298 | '=' "name" - 299 | "<-" "name" - 300 | ":=" "name" + 296 capture_entry: '&' "name" + 297 | '=' "name" + 298 | "<-" "name" + 299 | ":=" "name" - 301 capture_list: capture_entry - 302 | capture_list ',' capture_entry + 300 capture_list: capture_entry + 301 | capture_list ',' capture_entry - 303 optional_capture_list: %empty - 304 | '[' '[' capture_list ']' ']' + 302 optional_capture_list: %empty + 303 | '[' '[' capture_list ']' ']' - 305 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block + 304 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block - 306 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block - 307 | "begin of code block" expressions "end of code block" + 305 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block + 306 | "begin of code block" expressions "end of code block" - 308 expr_numeric_const: "integer constant" - 309 | "unsigned integer constant" - 310 | "long integer constant" - 311 | "unsigned long integer constant" - 312 | "unsigned int8 constant" - 313 | "floating point constant" - 314 | "double constant" + 307 expr_numeric_const: "integer constant" + 308 | "unsigned integer constant" + 309 | "long integer constant" + 310 | "unsigned long integer constant" + 311 | "unsigned int8 constant" + 312 | "floating point constant" + 313 | "double constant" - 315 expr_assign: expr - 316 | expr '=' expr - 317 | expr "<-" expr - 318 | expr ":=" expr - 319 | expr "&=" expr - 320 | expr "|=" expr - 321 | expr "^=" expr - 322 | expr "&&=" expr - 323 | expr "||=" expr - 324 | expr "^^=" expr - 325 | expr "+=" expr - 326 | expr "-=" expr - 327 | expr "*=" expr - 328 | expr "/=" expr - 329 | expr "%=" expr - 330 | expr "<<=" expr - 331 | expr ">>=" expr - 332 | expr "<<<=" expr - 333 | expr ">>>=" expr - - 334 expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' ')' - 335 | name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' ')' - - 336 expr_method_call: expr "->" "name" '(' ')' - 337 | expr "->" "name" '(' expr_list ')' - - 338 func_addr_name: name_in_namespace - 339 | "$i" '(' expr ')' - - 340 func_addr_expr: '@' '@' func_addr_name - - 341 $@13: %empty - - 342 $@14: %empty - - 343 func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options '>' $@14 func_addr_name - - 344 $@15: %empty - - 345 $@16: %empty - - 346 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name - - 347 expr_field: expr '.' "name" - 348 | expr '.' '.' "name" - 349 | expr '.' "name" '(' ')' - 350 | expr '.' "name" '(' expr_list ')' - - 351 $@17: %empty - - 352 $@18: %empty - - 353 expr_field: expr '.' $@17 error $@18 - - 354 expr_call: name_in_namespace '(' ')' - 355 | name_in_namespace '(' make_struct_single ')' - 356 | name_in_namespace '(' expr_list ')' - 357 | basic_type_declaration '(' ')' - 358 | basic_type_declaration '(' expr_list ')' - - 359 expr: "null" - 360 | name_in_namespace - 361 | expr_numeric_const - 362 | expr_reader - 363 | string_builder - 364 | make_decl - 365 | "true" - 366 | "false" - 367 | expr_field - 368 | expr_mtag - 369 | '!' expr - 370 | '~' expr - 371 | '+' expr - 372 | '-' expr - 373 | expr "<<" expr - 374 | expr ">>" expr - 375 | expr "<<<" expr - 376 | expr ">>>" expr - 377 | expr '+' expr - 378 | expr '-' expr - 379 | expr '*' expr - 380 | expr '/' expr - 381 | expr '%' expr - 382 | expr '<' expr - 383 | expr '>' expr - 384 | expr "==" expr - 385 | expr "!=" expr - 386 | expr "<=" expr - 387 | expr ">=" expr - 388 | expr '&' expr - 389 | expr '|' expr - 390 | expr '^' expr - 391 | expr "&&" expr - 392 | expr "||" expr - 393 | expr "^^" expr - 394 | expr ".." expr - 395 | "++" expr - 396 | "--" expr - 397 | expr "++" - 398 | expr "--" - 399 | '(' expr_list optional_comma ')' - 400 | expr '[' expr ']' - 401 | expr '.' '[' expr ']' - 402 | expr "?[" expr ']' - 403 | expr '.' "?[" expr ']' - 404 | expr "?." "name" - 405 | expr '.' "?." "name" - 406 | func_addr_expr - 407 | expr_call - 408 | '*' expr - 409 | "deref" '(' expr ')' - 410 | "addr" '(' expr ')' - 411 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' ')' - 412 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' - 413 | expr "??" expr - 414 | expr '?' expr ':' expr - - 415 $@19: %empty - - 416 $@20: %empty - - 417 expr: expr "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr "is" basic_type_declaration - 419 | expr "is" "name" - 420 | expr "as" "name" - - 421 $@21: %empty - - 422 $@22: %empty - - 423 expr: expr "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr "as" basic_type_declaration - 425 | expr '?' "as" "name" - - 426 $@23: %empty - - 427 $@24: %empty - - 428 expr: expr '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr '?' "as" basic_type_declaration - 430 | expr_type_info - 431 | expr_type_decl - 432 | expr_cast - 433 | expr_new - 434 | expr_method_call - 435 | expr_named_call - 436 | expr_full_block - 437 | expr "<|" expr - 438 | expr "|>" expr - 439 | expr "|>" basic_type_declaration - 440 | expr_call_pipe - - 441 expr_mtag: "$$" '(' expr ')' - 442 | "$i" '(' expr ')' - 443 | "$v" '(' expr ')' - 444 | "$b" '(' expr ')' - 445 | "$a" '(' expr ')' - 446 | "..." - 447 | "$c" '(' expr ')' '(' ')' - 448 | "$c" '(' expr ')' '(' expr_list ')' - 449 | expr '.' "$f" '(' expr ')' - 450 | expr "?." "$f" '(' expr ')' - 451 | expr '.' '.' "$f" '(' expr ')' - 452 | expr '.' "?." "$f" '(' expr ')' - 453 | expr "as" "$f" '(' expr ')' - 454 | expr '?' "as" "$f" '(' expr ')' - 455 | expr "is" "$f" '(' expr ')' - 456 | '@' '@' "$c" '(' expr ')' - - 457 optional_field_annotation: %empty - 458 | metadata_argument_list - - 459 optional_override: %empty - 460 | "override" - 461 | "sealed" - - 462 optional_constant: %empty - 463 | "const" - - 464 optional_public_or_private_member_variable: %empty - 465 | "public" - 466 | "private" - - 467 optional_static_member_variable: %empty - 468 | "static" + 314 expr_assign: expr + 315 | expr '=' expr + 316 | expr "<-" expr + 317 | expr ":=" expr + 318 | expr "&=" expr + 319 | expr "|=" expr + 320 | expr "^=" expr + 321 | expr "&&=" expr + 322 | expr "||=" expr + 323 | expr "^^=" expr + 324 | expr "+=" expr + 325 | expr "-=" expr + 326 | expr "*=" expr + 327 | expr "/=" expr + 328 | expr "%=" expr + 329 | expr "<<=" expr + 330 | expr ">>=" expr + 331 | expr "<<<=" expr + 332 | expr ">>>=" expr + + 333 expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' ')' + 334 | name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' ')' + + 335 expr_method_call: expr "->" "name" '(' ')' + 336 | expr "->" "name" '(' expr_list ')' + + 337 func_addr_name: name_in_namespace + 338 | "$i" '(' expr ')' + + 339 func_addr_expr: '@' '@' func_addr_name + + 340 $@13: %empty + + 341 $@14: %empty + + 342 func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options '>' $@14 func_addr_name + + 343 $@15: %empty + + 344 $@16: %empty + + 345 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name + + 346 expr_field: expr '.' "name" + 347 | expr '.' '.' "name" + 348 | expr '.' "name" '(' ')' + 349 | expr '.' "name" '(' expr_list ')' + + 350 $@17: %empty + + 351 $@18: %empty + + 352 expr_field: expr '.' $@17 error $@18 + + 353 expr_call: name_in_namespace '(' ')' + 354 | name_in_namespace '(' make_struct_single ')' + 355 | name_in_namespace '(' expr_list ')' + 356 | basic_type_declaration '(' ')' + 357 | basic_type_declaration '(' expr_list ')' + + 358 expr: "null" + 359 | name_in_namespace + 360 | expr_numeric_const + 361 | expr_reader + 362 | string_builder + 363 | make_decl + 364 | "true" + 365 | "false" + 366 | expr_field + 367 | expr_mtag + 368 | '!' expr + 369 | '~' expr + 370 | '+' expr + 371 | '-' expr + 372 | expr "<<" expr + 373 | expr ">>" expr + 374 | expr "<<<" expr + 375 | expr ">>>" expr + 376 | expr '+' expr + 377 | expr '-' expr + 378 | expr '*' expr + 379 | expr '/' expr + 380 | expr '%' expr + 381 | expr '<' expr + 382 | expr '>' expr + 383 | expr "==" expr + 384 | expr "!=" expr + 385 | expr "<=" expr + 386 | expr ">=" expr + 387 | expr '&' expr + 388 | expr '|' expr + 389 | expr '^' expr + 390 | expr "&&" expr + 391 | expr "||" expr + 392 | expr "^^" expr + 393 | expr ".." expr + 394 | "++" expr + 395 | "--" expr + 396 | expr "++" + 397 | expr "--" + 398 | '(' expr_list optional_comma ')' + 399 | expr '[' expr ']' + 400 | expr '.' '[' expr ']' + 401 | expr "?[" expr ']' + 402 | expr '.' "?[" expr ']' + 403 | expr "?." "name" + 404 | expr '.' "?." "name" + 405 | func_addr_expr + 406 | expr_call + 407 | '*' expr + 408 | "deref" '(' expr ')' + 409 | "addr" '(' expr ')' + 410 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' ')' + 411 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' + 412 | expr "??" expr + 413 | expr '?' expr ':' expr + + 414 $@19: %empty + + 415 $@20: %empty + + 416 expr: expr "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr "is" basic_type_declaration + 418 | expr "is" "name" + 419 | expr "as" "name" + + 420 $@21: %empty + + 421 $@22: %empty + + 422 expr: expr "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr "as" basic_type_declaration + 424 | expr '?' "as" "name" + + 425 $@23: %empty + + 426 $@24: %empty + + 427 expr: expr '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr '?' "as" basic_type_declaration + 429 | expr_type_info + 430 | expr_type_decl + 431 | expr_cast + 432 | expr_new + 433 | expr_method_call + 434 | expr_named_call + 435 | expr_full_block + 436 | expr "<|" expr + 437 | expr "|>" expr + 438 | expr "|>" basic_type_declaration + 439 | expr_call_pipe + + 440 expr_mtag: "$$" '(' expr ')' + 441 | "$i" '(' expr ')' + 442 | "$v" '(' expr ')' + 443 | "$b" '(' expr ')' + 444 | "$a" '(' expr ')' + 445 | "..." + 446 | "$c" '(' expr ')' '(' ')' + 447 | "$c" '(' expr ')' '(' expr_list ')' + 448 | expr '.' "$f" '(' expr ')' + 449 | expr "?." "$f" '(' expr ')' + 450 | expr '.' '.' "$f" '(' expr ')' + 451 | expr '.' "?." "$f" '(' expr ')' + 452 | expr "as" "$f" '(' expr ')' + 453 | expr '?' "as" "$f" '(' expr ')' + 454 | expr "is" "$f" '(' expr ')' + 455 | '@' '@' "$c" '(' expr ')' + + 456 optional_field_annotation: %empty + 457 | metadata_argument_list + + 458 optional_override: %empty + 459 | "override" + 460 | "sealed" + + 461 optional_constant: %empty + 462 | "const" + + 463 optional_public_or_private_member_variable: %empty + 464 | "public" + 465 | "private" + + 466 optional_static_member_variable: %empty + 467 | "static" - 469 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration + 468 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration - 470 struct_variable_declaration_list: %empty + 469 struct_variable_declaration_list: %empty - 471 $@25: %empty + 470 $@25: %empty - 472 struct_variable_declaration_list: struct_variable_declaration_list $@25 structure_variable_declaration "end of expression" + 471 struct_variable_declaration_list: struct_variable_declaration_list $@25 structure_variable_declaration "end of expression" - 473 $@26: %empty + 472 $@26: %empty - 474 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" + 473 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" - 475 $@27: %empty + 474 $@27: %empty - 476 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block + 475 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block - 477 function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing variable_declaration - 478 | "$a" '(' expr ')' + 476 function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing variable_declaration + 477 | "$a" '(' expr ')' - 479 function_argument_list: function_argument_declaration - 480 | function_argument_list "end of expression" function_argument_declaration + 478 function_argument_list: function_argument_declaration + 479 | function_argument_list "end of expression" function_argument_declaration - 481 tuple_type: type_declaration - 482 | "name" ':' type_declaration + 480 tuple_type: type_declaration + 481 | "name" ':' type_declaration - 483 tuple_type_list: tuple_type - 484 | tuple_type_list "end of expression" tuple_type + 482 tuple_type_list: tuple_type + 483 | tuple_type_list "end of expression" tuple_type - 485 tuple_alias_type_list: %empty - 486 | tuple_alias_type_list "end of expression" - 487 | tuple_alias_type_list tuple_type "end of expression" + 484 tuple_alias_type_list: %empty + 485 | tuple_alias_type_list "end of expression" + 486 | tuple_alias_type_list tuple_type "end of expression" - 488 variant_type: "name" ':' type_declaration + 487 variant_type: "name" ':' type_declaration - 489 variant_type_list: variant_type - 490 | variant_type_list "end of expression" variant_type + 488 variant_type_list: variant_type + 489 | variant_type_list "end of expression" variant_type - 491 variant_alias_type_list: %empty - 492 | variant_alias_type_list "end of expression" - 493 | variant_alias_type_list variant_type "end of expression" + 490 variant_alias_type_list: %empty + 491 | variant_alias_type_list "end of expression" + 492 | variant_alias_type_list variant_type "end of expression" - 494 copy_or_move: '=' - 495 | "<-" + 493 copy_or_move: '=' + 494 | "<-" - 496 variable_declaration: variable_name_with_pos_list - 497 | variable_name_with_pos_list '&' - 498 | variable_name_with_pos_list ':' type_declaration - 499 | variable_name_with_pos_list ':' type_declaration copy_or_move expr - 500 | variable_name_with_pos_list copy_or_move expr + 495 variable_declaration: variable_name_with_pos_list + 496 | variable_name_with_pos_list '&' + 497 | variable_name_with_pos_list ':' type_declaration + 498 | variable_name_with_pos_list ':' type_declaration copy_or_move expr + 499 | variable_name_with_pos_list copy_or_move expr - 501 copy_or_move_or_clone: '=' - 502 | "<-" - 503 | ":=" + 500 copy_or_move_or_clone: '=' + 501 | "<-" + 502 | ":=" - 504 optional_ref: %empty - 505 | '&' + 503 optional_ref: %empty + 504 | '&' - 506 let_variable_name_with_pos_list: "name" - 507 | "$i" '(' expr ')' - 508 | "name" "aka" "name" - 509 | let_variable_name_with_pos_list ',' "name" - 510 | let_variable_name_with_pos_list ',' "name" "aka" "name" + 505 let_variable_name_with_pos_list: "name" + 506 | "$i" '(' expr ')' + 507 | "name" "aka" "name" + 508 | let_variable_name_with_pos_list ',' "name" + 509 | let_variable_name_with_pos_list ',' "name" "aka" "name" - 511 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" - 512 | let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 513 | let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr "end of expression" + 510 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" + 511 | let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 512 | let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr "end of expression" - 514 global_variable_declaration_list: %empty + 513 global_variable_declaration_list: %empty - 515 $@28: %empty + 514 $@28: %empty - 516 global_variable_declaration_list: global_variable_declaration_list $@28 optional_field_annotation let_variable_declaration + 515 global_variable_declaration_list: global_variable_declaration_list $@28 optional_field_annotation let_variable_declaration - 517 optional_shared: %empty - 518 | "shared" + 516 optional_shared: %empty + 517 | "shared" - 519 optional_public_or_private_variable: %empty - 520 | "private" - 521 | "public" + 518 optional_public_or_private_variable: %empty + 519 | "private" + 520 | "public" - 522 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" + 521 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" - 523 $@29: %empty + 522 $@29: %empty - 524 global_let: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration + 523 global_let: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration - 525 enum_expression: "name" - 526 | "name" '=' expr + 524 enum_expression: "name" + 525 | "name" '=' expr - 527 enum_list: %empty - 528 | enum_expression - 529 | enum_list ',' enum_expression + 526 enum_list: %empty + 527 | enum_expression + 528 | enum_list ',' enum_expression - 530 optional_public_or_private_alias: %empty - 531 | "private" - 532 | "public" + 529 optional_public_or_private_alias: %empty + 530 | "private" + 531 | "public" - 533 $@30: %empty + 532 $@30: %empty - 534 single_alias: optional_public_or_private_alias "name" $@30 '=' type_declaration + 533 single_alias: optional_public_or_private_alias "name" $@30 '=' type_declaration - 535 alias_declaration: "typedef" single_alias "end of expression" + 534 alias_declaration: "typedef" single_alias "end of expression" - 536 optional_public_or_private_enum: %empty - 537 | "private" - 538 | "public" + 535 optional_public_or_private_enum: %empty + 536 | "private" + 537 | "public" - 539 enum_name: "name" + 538 enum_name: "name" - 540 optional_enum_basic_type_declaration: %empty - 541 | ':' enum_basic_type_declaration + 539 optional_enum_basic_type_declaration: %empty + 540 | ':' enum_basic_type_declaration - 542 $@31: %empty + 541 $@31: %empty - 543 $@32: %empty + 542 $@32: %empty - 544 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" + 543 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" - 545 optional_structure_parent: %empty - 546 | ':' name_in_namespace + 544 optional_structure_parent: %empty + 545 | ':' name_in_namespace - 547 optional_sealed: %empty - 548 | "sealed" + 546 optional_sealed: %empty + 547 | "sealed" - 549 structure_name: optional_sealed "name" optional_structure_parent + 548 structure_name: optional_sealed "name" optional_structure_parent - 550 class_or_struct: "class" - 551 | "struct" + 549 class_or_struct: "class" + 550 | "struct" - 552 optional_public_or_private_structure: %empty - 553 | "private" - 554 | "public" + 551 optional_public_or_private_structure: %empty + 552 | "private" + 553 | "public" - 555 optional_struct_variable_declaration_list: %empty - 556 | "begin of code block" struct_variable_declaration_list "end of code block" + 554 optional_struct_variable_declaration_list: %empty + 555 | "begin of code block" struct_variable_declaration_list "end of code block" - 557 $@33: %empty + 556 $@33: %empty - 558 $@34: %empty + 557 $@34: %empty - 559 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 structure_name $@34 optional_struct_variable_declaration_list + 558 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 structure_name $@34 optional_struct_variable_declaration_list - 560 variable_name_with_pos_list: "name" - 561 | "$i" '(' expr ')' - 562 | "name" "aka" "name" - 563 | variable_name_with_pos_list ',' "name" - 564 | variable_name_with_pos_list ',' "name" "aka" "name" + 559 variable_name_with_pos_list: "name" + 560 | "$i" '(' expr ')' + 561 | "name" "aka" "name" + 562 | variable_name_with_pos_list ',' "name" + 563 | variable_name_with_pos_list ',' "name" "aka" "name" - 565 basic_type_declaration: "bool" - 566 | "string" - 567 | "int" - 568 | "int8" - 569 | "int16" - 570 | "int64" - 571 | "int2" - 572 | "int3" - 573 | "int4" - 574 | "uint" - 575 | "uint8" - 576 | "uint16" - 577 | "uint64" - 578 | "uint2" - 579 | "uint3" - 580 | "uint4" - 581 | "float" - 582 | "float2" - 583 | "float3" - 584 | "float4" - 585 | "void" - 586 | "range" - 587 | "urange" - 588 | "range64" - 589 | "urange64" - 590 | "double" - 591 | "bitfield" + 564 basic_type_declaration: "bool" + 565 | "string" + 566 | "int" + 567 | "int8" + 568 | "int16" + 569 | "int64" + 570 | "int2" + 571 | "int3" + 572 | "int4" + 573 | "uint" + 574 | "uint8" + 575 | "uint16" + 576 | "uint64" + 577 | "uint2" + 578 | "uint3" + 579 | "uint4" + 580 | "float" + 581 | "float2" + 582 | "float3" + 583 | "float4" + 584 | "void" + 585 | "range" + 586 | "urange" + 587 | "range64" + 588 | "urange64" + 589 | "double" + 590 | "bitfield" - 592 enum_basic_type_declaration: "int" - 593 | "int8" - 594 | "int16" - 595 | "uint" - 596 | "uint8" - 597 | "uint16" - 598 | "int64" - 599 | "uint64" + 591 enum_basic_type_declaration: "int" + 592 | "int8" + 593 | "int16" + 594 | "uint" + 595 | "uint8" + 596 | "uint16" + 597 | "int64" + 598 | "uint64" - 600 structure_type_declaration: name_in_namespace + 599 structure_type_declaration: name_in_namespace - 601 auto_type_declaration: "auto" - 602 | "auto" '(' "name" ')' - 603 | "$t" '(' expr ')' + 600 auto_type_declaration: "auto" + 601 | "auto" '(' "name" ')' + 602 | "$t" '(' expr ')' - 604 bitfield_bits: "name" - 605 | bitfield_bits "end of expression" "name" + 603 bitfield_bits: "name" + 604 | bitfield_bits "end of expression" "name" - 606 bitfield_alias_bits: %empty - 607 | "name" - 608 | bitfield_alias_bits ',' "name" + 605 bitfield_alias_bits: %empty + 606 | "name" + 607 | bitfield_alias_bits ',' "name" - 609 $@35: %empty + 608 $@35: %empty - 610 $@36: %empty + 609 $@36: %empty - 611 bitfield_type_declaration: "bitfield" '<' $@35 bitfield_bits '>' $@36 + 610 bitfield_type_declaration: "bitfield" '<' $@35 bitfield_bits '>' $@36 - 612 table_type_pair: type_declaration - 613 | type_declaration "end of expression" type_declaration + 611 table_type_pair: type_declaration + 612 | type_declaration "end of expression" type_declaration - 614 dim_list: '[' expr ']' + 613 dim_list: '[' expr ']' + 614 | '[' ']' 615 | dim_list '[' expr ']' + 616 | dim_list '[' ']' - 616 type_declaration_no_options: basic_type_declaration - 617 | auto_type_declaration - 618 | bitfield_type_declaration - 619 | structure_type_declaration - 620 | type_declaration_no_options dim_list - 621 | type_declaration_no_options '[' ']' + 617 type_declaration_no_options: type_declaration_no_options_no_dim + 618 | type_declaration_no_options_no_dim dim_list - 622 $@37: %empty + 619 type_declaration_no_options_no_dim: basic_type_declaration + 620 | auto_type_declaration + 621 | bitfield_type_declaration + 622 | structure_type_declaration - 623 $@38: %empty + 623 $@37: %empty - 624 type_declaration_no_options: "type" '<' $@37 type_declaration '>' $@38 - 625 | "typedecl" '(' expr ')' - 626 | '$' name_in_namespace '(' optional_expr_list ')' + 624 $@38: %empty - 627 $@39: %empty + 625 type_declaration_no_options_no_dim: "type" '<' $@37 type_declaration '>' $@38 + 626 | "typedecl" '(' expr ')' + 627 | '$' name_in_namespace '(' optional_expr_list ')' - 628 type_declaration_no_options: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' - 629 | type_declaration_no_options '-' '[' ']' - 630 | type_declaration_no_options "explicit" - 631 | type_declaration_no_options "const" - 632 | type_declaration_no_options '-' "const" - 633 | type_declaration_no_options '&' - 634 | type_declaration_no_options '-' '&' - 635 | type_declaration_no_options '#' - 636 | type_declaration_no_options "implicit" - 637 | type_declaration_no_options '-' '#' - 638 | type_declaration_no_options "==" "const" - 639 | type_declaration_no_options "==" '&' - 640 | type_declaration_no_options '*' + 628 $@39: %empty - 641 $@40: %empty + 629 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' + 630 | type_declaration_no_options_no_dim '-' '[' ']' + 631 | type_declaration_no_options_no_dim "explicit" + 632 | type_declaration_no_options_no_dim "const" + 633 | type_declaration_no_options_no_dim '-' "const" + 634 | type_declaration_no_options_no_dim '&' + 635 | type_declaration_no_options_no_dim '-' '&' + 636 | type_declaration_no_options_no_dim '#' + 637 | type_declaration_no_options_no_dim "implicit" + 638 | type_declaration_no_options_no_dim '-' '#' + 639 | type_declaration_no_options_no_dim "==" "const" + 640 | type_declaration_no_options_no_dim "==" '&' + 641 | type_declaration_no_options_no_dim '*' - 642 $@41: %empty + 642 $@40: %empty - 643 type_declaration_no_options: "smart_ptr" '<' $@40 type_declaration '>' $@41 - 644 | type_declaration_no_options "??" + 643 $@41: %empty - 645 $@42: %empty + 644 type_declaration_no_options_no_dim: "smart_ptr" '<' $@40 type_declaration '>' $@41 + 645 | type_declaration_no_options_no_dim "??" - 646 $@43: %empty + 646 $@42: %empty - 647 type_declaration_no_options: "array" '<' $@42 type_declaration '>' $@43 + 647 $@43: %empty - 648 $@44: %empty + 648 type_declaration_no_options_no_dim: "array" '<' $@42 type_declaration '>' $@43 - 649 $@45: %empty + 649 $@44: %empty - 650 type_declaration_no_options: "table" '<' $@44 table_type_pair '>' $@45 + 650 $@45: %empty - 651 $@46: %empty + 651 type_declaration_no_options_no_dim: "table" '<' $@44 table_type_pair '>' $@45 - 652 $@47: %empty + 652 $@46: %empty - 653 type_declaration_no_options: "iterator" '<' $@46 type_declaration '>' $@47 - 654 | "block" + 653 $@47: %empty - 655 $@48: %empty + 654 type_declaration_no_options_no_dim: "iterator" '<' $@46 type_declaration '>' $@47 + 655 | "block" - 656 $@49: %empty + 656 $@48: %empty - 657 type_declaration_no_options: "block" '<' $@48 type_declaration '>' $@49 + 657 $@49: %empty - 658 $@50: %empty + 658 type_declaration_no_options_no_dim: "block" '<' $@48 type_declaration '>' $@49 - 659 $@51: %empty + 659 $@50: %empty - 660 type_declaration_no_options: "block" '<' $@50 optional_function_argument_list optional_function_type '>' $@51 - 661 | "function" + 660 $@51: %empty - 662 $@52: %empty + 661 type_declaration_no_options_no_dim: "block" '<' $@50 optional_function_argument_list optional_function_type '>' $@51 + 662 | "function" - 663 $@53: %empty + 663 $@52: %empty - 664 type_declaration_no_options: "function" '<' $@52 type_declaration '>' $@53 + 664 $@53: %empty - 665 $@54: %empty + 665 type_declaration_no_options_no_dim: "function" '<' $@52 type_declaration '>' $@53 - 666 $@55: %empty + 666 $@54: %empty - 667 type_declaration_no_options: "function" '<' $@54 optional_function_argument_list optional_function_type '>' $@55 - 668 | "lambda" + 667 $@55: %empty - 669 $@56: %empty + 668 type_declaration_no_options_no_dim: "function" '<' $@54 optional_function_argument_list optional_function_type '>' $@55 + 669 | "lambda" - 670 $@57: %empty + 670 $@56: %empty - 671 type_declaration_no_options: "lambda" '<' $@56 type_declaration '>' $@57 + 671 $@57: %empty - 672 $@58: %empty + 672 type_declaration_no_options_no_dim: "lambda" '<' $@56 type_declaration '>' $@57 - 673 $@59: %empty + 673 $@58: %empty - 674 type_declaration_no_options: "lambda" '<' $@58 optional_function_argument_list optional_function_type '>' $@59 + 674 $@59: %empty - 675 $@60: %empty + 675 type_declaration_no_options_no_dim: "lambda" '<' $@58 optional_function_argument_list optional_function_type '>' $@59 - 676 $@61: %empty + 676 $@60: %empty - 677 type_declaration_no_options: "tuple" '<' $@60 tuple_type_list '>' $@61 + 677 $@61: %empty - 678 $@62: %empty + 678 type_declaration_no_options_no_dim: "tuple" '<' $@60 tuple_type_list '>' $@61 - 679 $@63: %empty + 679 $@62: %empty - 680 type_declaration_no_options: "variant" '<' $@62 variant_type_list '>' $@63 + 680 $@63: %empty - 681 type_declaration: type_declaration_no_options - 682 | type_declaration '|' type_declaration_no_options - 683 | type_declaration '|' '#' + 681 type_declaration_no_options_no_dim: "variant" '<' $@62 variant_type_list '>' $@63 - 684 $@64: %empty + 682 type_declaration: type_declaration_no_options + 683 | type_declaration '|' type_declaration_no_options + 684 | type_declaration '|' '#' - 685 $@65: %empty + 685 $@64: %empty - 686 $@66: %empty + 686 $@65: %empty - 687 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" + 687 $@66: %empty - 688 $@67: %empty + 688 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" - 689 $@68: %empty + 689 $@67: %empty - 690 $@69: %empty + 690 $@68: %empty - 691 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" + 691 $@69: %empty - 692 $@70: %empty + 692 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" - 693 $@71: %empty + 693 $@70: %empty - 694 $@72: %empty + 694 $@71: %empty - 695 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" + 695 $@72: %empty - 696 make_decl: make_struct_decl - 697 | make_dim_decl - 698 | make_table_decl - 699 | array_comprehension - 700 | make_tuple_call + 696 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" - 701 make_struct_fields: "name" copy_or_move expr - 702 | "name" ":=" expr - 703 | make_struct_fields ',' "name" copy_or_move expr - 704 | make_struct_fields ',' "name" ":=" expr - 705 | "$f" '(' expr ')' copy_or_move expr - 706 | "$f" '(' expr ')' ":=" expr - 707 | make_struct_fields ',' "$f" '(' expr ')' copy_or_move expr - 708 | make_struct_fields ',' "$f" '(' expr ')' ":=" expr + 697 make_decl: make_struct_decl + 698 | make_dim_decl + 699 | make_table_decl + 700 | array_comprehension + 701 | make_tuple_call - 709 make_struct_single: make_struct_fields + 702 make_struct_fields: "name" copy_or_move expr + 703 | "name" ":=" expr + 704 | make_struct_fields ',' "name" copy_or_move expr + 705 | make_struct_fields ',' "name" ":=" expr + 706 | "$f" '(' expr ')' copy_or_move expr + 707 | "$f" '(' expr ')' ":=" expr + 708 | make_struct_fields ',' "$f" '(' expr ')' copy_or_move expr + 709 | make_struct_fields ',' "$f" '(' expr ')' ":=" expr - 710 make_struct_dim: make_struct_fields - 711 | make_struct_dim "end of expression" make_struct_fields + 710 make_struct_single: make_struct_fields - 712 use_initializer: %empty - 713 | "uninitialized" + 711 make_struct_dim: make_struct_fields + 712 | make_struct_dim "end of expression" make_struct_fields - 714 $@73: %empty + 713 use_initializer: %empty + 714 | "uninitialized" - 715 $@74: %empty + 715 $@73: %empty - 716 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' + 716 $@74: %empty - 717 $@75: %empty + 717 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' - 718 $@76: %empty + 718 $@75: %empty - 719 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' + 719 $@76: %empty - 720 $@77: %empty + 720 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' - 721 $@78: %empty + 721 $@77: %empty - 722 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim ')' + 722 $@78: %empty - 723 $@79: %empty + 723 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim ')' - 724 $@80: %empty + 724 $@79: %empty - 725 make_struct_decl: "default" '<' $@79 type_declaration_no_options '>' $@80 use_initializer + 725 $@80: %empty - 726 make_map_tuple: expr "=>" expr - 727 | expr + 726 make_struct_decl: "default" '<' $@79 type_declaration_no_options '>' $@80 use_initializer - 728 make_tuple_call: "tuple" '(' expr_list optional_comma ')' + 727 make_map_tuple: expr "=>" expr + 728 | expr - 729 $@81: %empty + 729 make_tuple_call: "tuple" '(' expr_list optional_comma ')' - 730 $@82: %empty + 730 $@81: %empty - 731 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' + 731 $@82: %empty - 732 make_dim_decl: '[' expr_list optional_comma ']' + 732 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' - 733 $@83: %empty + 733 make_dim_decl: '[' expr_list optional_comma ']' - 734 $@84: %empty + 734 $@83: %empty - 735 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' + 735 $@84: %empty - 736 $@85: %empty + 736 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' - 737 $@86: %empty + 737 $@85: %empty - 738 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' + 738 $@86: %empty - 739 $@87: %empty + 739 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' - 740 $@88: %empty + 740 $@87: %empty - 741 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' - 742 | "array" '(' expr_list optional_comma ')' + 741 $@88: %empty - 743 $@89: %empty + 742 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' + 743 | "array" '(' expr_list optional_comma ')' - 744 $@90: %empty + 744 $@89: %empty - 745 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' - 746 | "fixed_array" '(' expr_list optional_comma ')' + 745 $@90: %empty - 747 $@91: %empty + 746 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' + 747 | "fixed_array" '(' expr_list optional_comma ')' - 748 $@92: %empty + 748 $@91: %empty - 749 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' + 749 $@92: %empty - 750 expr_map_tuple_list: make_map_tuple - 751 | expr_map_tuple_list ',' make_map_tuple + 750 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' - 752 make_table_decl: "begin of code block" expr_map_tuple_list optional_comma "end of code block" - 753 | "table" '(' expr_map_tuple_list optional_comma ')' - 754 | "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - 755 | "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + 751 expr_map_tuple_list: make_map_tuple + 752 | expr_map_tuple_list ',' make_map_tuple - 756 array_comprehension_where: %empty - 757 | "end of expression" "where" expr + 753 make_table_decl: "begin of code block" expr_map_tuple_list optional_comma "end of code block" + 754 | "table" '(' expr_map_tuple_list optional_comma ')' + 755 | "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + 756 | "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - 758 optional_comma: %empty - 759 | ',' + 757 array_comprehension_where: %empty + 758 | "end of expression" "where" expr - 760 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - 761 | '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - 762 | "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" + 759 optional_comma: %empty + 760 | ',' + + 761 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 762 | '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 763 | "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" Terminals, with rules where they appear $end (0) 0 - '!' (33) 104 120 369 - '#' (35) 635 637 683 - '$' (36) 20 294 626 628 - '%' (37) 35 39 140 381 - '&' (38) 148 297 388 497 505 633 634 639 - '(' (40) 58 68 69 70 93 102 108 115 116 248 249 250 270 271 286 287 288 334 335 336 337 339 349 350 354 355 356 357 358 399 409 410 411 412 441 442 443 444 445 447 448 449 450 451 452 453 454 455 456 478 507 561 602 603 625 626 628 705 706 707 708 716 719 722 728 731 735 738 741 742 745 746 749 753 754 755 - ')' (41) 58 68 69 70 93 102 108 115 116 248 249 250 270 271 286 287 288 334 335 336 337 339 349 350 354 355 356 357 358 399 409 410 411 412 441 442 443 444 445 447 448 449 450 451 452 453 454 455 456 478 507 561 602 603 625 626 628 705 706 707 708 716 719 722 728 731 735 738 741 742 745 746 749 753 754 755 - '*' (42) 138 379 408 640 - '+' (43) 136 371 377 - ',' (44) 48 82 95 111 269 290 302 335 509 510 529 563 564 608 703 704 707 708 751 759 - '-' (45) 137 372 378 629 632 634 637 - '.' (46) 40 165 167 168 347 348 349 350 353 401 403 405 449 451 452 - '/' (47) 41 139 380 - ':' (58) 50 51 118 270 414 482 488 498 499 511 512 541 546 - "end of expression" (59) 15 16 69 214 215 216 223 224 225 229 230 231 238 259 270 271 288 472 474 480 484 486 487 490 492 493 511 512 513 535 605 613 711 755 757 760 761 762 - '<' (60) 141 246 276 279 282 285 287 288 343 346 382 411 412 417 423 428 611 624 628 643 647 650 653 657 660 664 667 671 674 677 680 716 719 722 725 731 735 738 741 745 749 754 755 - '=' (61) 74 86 87 88 89 90 91 93 298 316 494 501 526 534 - '>' (62) 142 246 276 279 282 285 287 288 343 346 383 411 412 417 423 428 611 624 628 643 647 650 653 657 660 664 667 671 674 677 680 716 719 722 725 731 735 738 741 745 749 754 755 - '?' (63) 177 178 414 425 428 429 454 - '@' (64) 96 97 295 296 340 343 346 456 - '[' (91) 113 163 304 334 335 400 401 614 615 621 629 732 760 761 - ']' (93) 113 163 164 304 334 335 400 401 402 403 614 615 621 629 732 760 761 - '^' (94) 150 390 - "begin of code block" (123) 211 212 307 522 544 556 687 691 695 752 762 - '|' (124) 149 389 682 683 - "end of code block" (125) 211 212 307 522 544 556 687 691 695 752 762 - '~' (126) 121 370 - error (256) 234 353 + '!' (33) 104 120 368 + '#' (35) 636 638 684 + '$' (36) 20 293 627 629 + '%' (37) 35 39 140 380 + '&' (38) 148 296 387 496 504 634 635 640 + '(' (40) 58 68 69 70 93 102 108 115 116 247 248 249 269 270 285 286 287 333 334 335 336 338 348 349 353 354 355 356 357 398 408 409 410 411 440 441 442 443 444 446 447 448 449 450 451 452 453 454 455 477 506 560 601 602 626 627 629 706 707 708 709 717 720 723 729 732 736 739 742 743 746 747 750 754 755 756 + ')' (41) 58 68 69 70 93 102 108 115 116 247 248 249 269 270 285 286 287 333 334 335 336 338 348 349 353 354 355 356 357 398 408 409 410 411 440 441 442 443 444 446 447 448 449 450 451 452 453 454 455 477 506 560 601 602 626 627 629 706 707 708 709 717 720 723 729 732 736 739 742 743 746 747 750 754 755 756 + '*' (42) 138 378 407 641 + '+' (43) 136 370 376 + ',' (44) 48 82 95 111 268 289 301 334 508 509 528 562 563 607 704 705 708 709 752 760 + '-' (45) 137 371 377 630 633 635 638 + '.' (46) 40 165 167 168 346 347 348 349 352 400 402 404 448 450 451 + '/' (47) 41 139 379 + ':' (58) 50 51 118 269 413 481 487 497 498 510 511 540 545 + "end of expression" (59) 15 16 69 214 215 216 223 224 225 229 230 231 238 258 269 270 287 471 473 479 483 485 486 489 491 492 510 511 512 534 604 612 712 756 758 761 762 763 + '<' (60) 141 245 275 278 281 284 286 287 342 345 381 410 411 416 422 427 610 625 629 644 648 651 654 658 661 665 668 672 675 678 681 717 720 723 726 732 736 739 742 746 750 755 756 + '=' (61) 74 86 87 88 89 90 91 93 297 315 493 500 525 533 + '>' (62) 142 245 275 278 281 284 286 287 342 345 382 410 411 416 422 427 610 625 629 644 648 651 654 658 661 665 668 672 675 678 681 717 720 723 726 732 736 739 742 746 750 755 756 + '?' (63) 177 178 413 424 427 428 453 + '@' (64) 96 97 294 295 339 342 345 455 + '[' (91) 113 163 303 333 334 399 400 613 614 615 616 630 733 761 762 + ']' (93) 113 163 164 303 333 334 399 400 401 402 613 614 615 616 630 733 761 762 + '^' (94) 150 389 + "begin of code block" (123) 211 212 306 521 543 555 688 692 696 753 763 + '|' (124) 149 388 683 684 + "end of code block" (125) 211 212 306 521 543 555 688 692 696 753 763 + '~' (126) 121 369 + error (256) 234 352 "lexer error" (258) - "struct" (259) 551 716 735 - "class" (260) 550 719 - "let" (261) 261 264 - "def" (262) 204 474 476 + "struct" (259) 550 717 736 + "class" (260) 549 720 + "let" (261) 260 263 + "def" (262) 204 473 475 "while" (263) 72 "if" (264) 59 69 "static_if" (265) 60 "else" (266) 57 62 - "for" (267) 70 760 761 762 - "recover" (268) 260 - "true" (269) 79 90 365 - "false" (270) 80 91 366 - "new" (271) 247 248 249 250 251 - "typeinfo" (272) 286 287 288 - "type" (273) 84 285 417 423 428 624 - "in" (274) 70 85 760 761 762 - "is" (275) 173 175 417 418 419 455 - "as" (276) 43 174 176 177 178 420 423 424 425 428 429 453 454 + "for" (267) 70 761 762 763 + "recover" (268) 259 + "true" (269) 79 90 364 + "false" (270) 80 91 365 + "new" (271) 246 247 248 249 250 + "typeinfo" (272) 285 286 287 + "type" (273) 84 284 416 422 427 625 + "in" (274) 70 85 761 762 763 + "is" (275) 173 175 416 417 418 454 + "as" (276) 43 174 176 177 178 419 422 423 424 427 428 452 453 "elif" (277) 54 "static_elif" (278) 55 - "array" (279) 647 735 738 741 742 745 - "return" (280) 254 255 256 - "null" (281) 359 - "break" (282) 252 - "try" (283) 260 + "array" (279) 648 736 739 742 743 746 + "return" (280) 253 254 255 + "null" (281) 358 + "break" (282) 251 + "try" (283) 259 "options" (284) 36 - "table" (285) 650 753 754 755 + "table" (285) 651 754 755 756 "expect" (286) 46 - "const" (287) 463 631 632 638 + "const" (287) 462 632 633 639 "require" (288) 37 99 "operator" (289) 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 - "enum" (290) 544 + "enum" (290) 543 "finally" (291) 212 - "delete" (292) 171 242 243 - "deref" (293) 409 - "typedef" (294) 535 - "typedecl" (295) 625 + "delete" (292) 171 241 242 + "deref" (293) 408 + "typedef" (294) 534 + "typedecl" (295) 626 "with" (296) 73 - "aka" (297) 508 510 562 564 + "aka" (297) 507 509 561 563 "assume" (298) 74 - "cast" (299) 276 - "override" (300) 460 - "abstract" (301) 474 - "upcast" (302) 279 - "iterator" (303) 653 761 - "var" (304) 262 265 - "addr" (305) 410 - "continue" (306) 253 - "where" (307) 757 + "cast" (299) 275 + "override" (300) 459 + "abstract" (301) 473 + "upcast" (302) 278 + "iterator" (303) 654 762 + "var" (304) 261 264 + "addr" (305) 409 + "continue" (306) 252 + "where" (307) 758 "pass" (308) 231 - "reinterpret" (309) 282 + "reinterpret" (309) 281 "module" (310) 22 - "public" (311) 18 45 207 465 521 532 538 554 + "public" (311) 18 45 207 464 520 531 537 553 "label" (312) 51 52 "goto" (313) 52 53 - "implicit" (314) 636 - "explicit" (315) 243 630 - "shared" (316) 518 - "private" (317) 19 100 206 466 520 531 537 553 - "smart_ptr" (318) 643 + "implicit" (314) 637 + "explicit" (315) 242 631 + "shared" (316) 517 + "private" (317) 19 100 206 465 519 530 536 552 + "smart_ptr" (318) 644 "unsafe" (319) 71 - "inscope" (320) 266 - "static" (321) 468 - "fixed_array" (322) 746 749 - "default" (323) 725 - "uninitialized" (324) 713 - "bool" (325) 179 565 - "void" (326) 585 - "string" (327) 180 566 - "auto" (328) 601 602 - "int" (329) 181 567 592 - "int2" (330) 182 571 - "int3" (331) 183 572 - "int4" (332) 184 573 - "uint" (333) 185 574 595 - "bitfield" (334) 591 611 695 - "uint2" (335) 186 578 - "uint3" (336) 187 579 - "uint4" (337) 188 580 - "float" (338) 189 581 - "float2" (339) 190 582 - "float3" (340) 191 583 - "float4" (341) 192 584 - "range" (342) 193 586 - "urange" (343) 194 587 - "range64" (344) 195 588 - "urange64" (345) 196 589 - "block" (346) 654 657 660 - "int64" (347) 197 570 598 - "uint64" (348) 198 577 599 - "double" (349) 199 590 - "function" (350) 661 664 667 - "lambda" (351) 668 671 674 - "int8" (352) 200 568 593 - "uint8" (353) 201 575 596 - "int16" (354) 202 569 594 - "uint16" (355) 203 576 597 - "tuple" (356) 677 687 728 731 738 - "variant" (357) 680 691 722 741 - "generator" (358) 411 412 - "yield" (359) 257 258 - "sealed" (360) 461 548 - "+=" (361) 122 325 - "-=" (362) 123 326 - "/=" (363) 125 328 - "*=" (364) 124 327 - "%=" (365) 126 329 - "&=" (366) 127 319 - "|=" (367) 128 320 - "^=" (368) 129 321 - "<<" (369) 155 373 - ">>" (370) 156 374 - "++" (371) 151 153 395 397 - "--" (372) 152 154 396 398 - "<=" (373) 146 386 - "<<=" (374) 157 330 - ">>=" (375) 158 331 - ">=" (376) 147 387 - "==" (377) 144 384 638 639 - "!=" (378) 145 385 - "->" (379) 336 337 - "<-" (380) 256 258 293 299 317 495 502 - "??" (381) 172 413 644 - "?." (382) 166 169 404 405 450 452 - "?[" (383) 164 402 403 - "<|" (384) 437 - "|>" (385) 109 438 439 - ":=" (386) 168 170 300 318 503 702 704 706 708 - "<<<" (387) 159 375 - ">>>" (388) 160 376 - "<<<=" (389) 161 332 - ">>>=" (390) 162 333 - "=>" (391) 292 293 726 - "::" (392) 240 241 - "&&" (393) 105 133 391 - "||" (394) 106 134 392 - "^^" (395) 107 135 393 - "&&=" (396) 130 322 - "||=" (397) 131 323 - "^^=" (398) 132 324 - ".." (399) 143 394 - "$$" (400) 441 - "$i" (401) 339 442 507 561 - "$v" (402) 443 - "$b" (403) 444 - "$a" (404) 445 478 - "$t" (405) 603 - "$c" (406) 447 448 456 - "$f" (407) 449 450 451 452 453 454 455 705 706 707 708 - "..." (408) 446 - "integer constant" (409) 49 50 51 52 77 88 308 - "long integer constant" (410) 310 - "unsigned integer constant" (411) 309 - "unsigned long integer constant" (412) 311 - "unsigned int8 constant" (413) 312 - "floating point constant" (414) 78 89 313 - "double constant" (415) 314 - "name" (416) 21 38 40 41 43 74 76 83 87 119 167 168 169 175 176 178 239 240 241 268 269 287 288 297 298 299 300 336 337 347 348 349 350 404 405 419 420 425 482 488 506 508 509 510 525 526 534 539 549 560 562 563 564 602 604 605 607 608 687 691 695 701 702 703 704 + "inscope" (320) 265 + "static" (321) 467 + "fixed_array" (322) 747 750 + "default" (323) 726 + "uninitialized" (324) 714 + "bool" (325) 179 564 + "void" (326) 584 + "string" (327) 180 565 + "auto" (328) 600 601 + "int" (329) 181 566 591 + "int2" (330) 182 570 + "int3" (331) 183 571 + "int4" (332) 184 572 + "uint" (333) 185 573 594 + "bitfield" (334) 590 610 696 + "uint2" (335) 186 577 + "uint3" (336) 187 578 + "uint4" (337) 188 579 + "float" (338) 189 580 + "float2" (339) 190 581 + "float3" (340) 191 582 + "float4" (341) 192 583 + "range" (342) 193 585 + "urange" (343) 194 586 + "range64" (344) 195 587 + "urange64" (345) 196 588 + "block" (346) 655 658 661 + "int64" (347) 197 569 597 + "uint64" (348) 198 576 598 + "double" (349) 199 589 + "function" (350) 662 665 668 + "lambda" (351) 669 672 675 + "int8" (352) 200 567 592 + "uint8" (353) 201 574 595 + "int16" (354) 202 568 593 + "uint16" (355) 203 575 596 + "tuple" (356) 678 688 729 732 739 + "variant" (357) 681 692 723 742 + "generator" (358) 410 411 + "yield" (359) 256 257 + "sealed" (360) 460 547 + "+=" (361) 122 324 + "-=" (362) 123 325 + "/=" (363) 125 327 + "*=" (364) 124 326 + "%=" (365) 126 328 + "&=" (366) 127 318 + "|=" (367) 128 319 + "^=" (368) 129 320 + "<<" (369) 155 372 + ">>" (370) 156 373 + "++" (371) 151 153 394 396 + "--" (372) 152 154 395 397 + "<=" (373) 146 385 + "<<=" (374) 157 329 + ">>=" (375) 158 330 + ">=" (376) 147 386 + "==" (377) 144 383 639 640 + "!=" (378) 145 384 + "->" (379) 335 336 + "<-" (380) 255 257 292 298 316 494 501 + "??" (381) 172 412 645 + "?." (382) 166 169 403 404 449 451 + "?[" (383) 164 401 402 + "<|" (384) 436 + "|>" (385) 109 437 438 + ":=" (386) 168 170 299 317 502 703 705 707 709 + "<<<" (387) 159 374 + ">>>" (388) 160 375 + "<<<=" (389) 161 331 + ">>>=" (390) 162 332 + "=>" (391) 291 292 727 + "::" (392) 240 + "&&" (393) 105 133 390 + "||" (394) 106 134 391 + "^^" (395) 107 135 392 + "&&=" (396) 130 321 + "||=" (397) 131 322 + "^^=" (398) 132 323 + ".." (399) 143 393 + "$$" (400) 440 + "$i" (401) 338 441 506 560 + "$v" (402) 442 + "$b" (403) 443 + "$a" (404) 444 477 + "$t" (405) 602 + "$c" (406) 446 447 455 + "$f" (407) 448 449 450 451 452 453 454 706 707 708 709 + "..." (408) 445 + "integer constant" (409) 49 50 51 52 77 88 307 + "long integer constant" (410) 309 + "unsigned integer constant" (411) 308 + "unsigned long integer constant" (412) 310 + "unsigned int8 constant" (413) 311 + "floating point constant" (414) 78 89 312 + "double constant" (415) 313 + "name" (416) 21 38 40 41 43 74 76 83 87 119 167 168 169 175 176 178 239 240 267 268 286 287 296 297 298 299 335 336 346 347 348 349 403 404 418 419 424 481 487 505 507 508 509 524 525 533 538 548 559 561 562 563 601 603 604 606 607 688 692 696 702 703 704 705 "start of the string" (417) 27 31 STRING_CHARACTER (418) 23 25 32 33 STRING_CHARACTER_ESC (419) 24 26 @@ -1321,13 +1321,13 @@ Nonterminals, with rules where they appear on right: 29 30 31 string_builder (218) on left: 31 - on right: 363 + on right: 362 reader_character_sequence (219) on left: 32 33 on right: 33 35 expr_reader (220) on left: 35 - on right: 16 362 + on right: 16 361 $@1 (221) on left: 34 on right: 35 @@ -1411,7 +1411,7 @@ Nonterminals, with rules where they appear on right: 36 95 102 metadata_argument_list (248) on left: 96 97 - on right: 97 458 + on right: 97 457 annotation_declaration_name (249) on left: 98 99 100 on right: 101 102 @@ -1426,13 +1426,13 @@ Nonterminals, with rules where they appear on right: 111 113 optional_annotation_list (253) on left: 112 113 - on right: 204 305 306 474 476 544 559 + on right: 204 304 305 473 475 543 558 optional_function_argument_list (254) on left: 114 115 116 - on right: 208 305 306 346 660 667 674 + on right: 208 304 305 345 661 668 675 optional_function_type (255) on left: 117 118 - on right: 208 305 306 346 660 667 674 + on right: 208 304 305 345 661 668 675 function_name (256) on left: 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 on right: 208 @@ -1444,7 +1444,7 @@ Nonterminals, with rules where they appear on right: 210 function_declaration_header (259) on left: 208 - on right: 210 474 476 + on right: 210 473 475 function_declaration (260) on left: 210 on right: 204 @@ -1453,613 +1453,616 @@ Nonterminals, with rules where they appear on right: 210 expression_block (262) on left: 211 212 - on right: 57 58 68 70 71 72 73 210 260 291 306 476 + on right: 57 58 68 70 71 72 73 210 259 290 305 475 expr_call_pipe (263) on left: 213 - on right: 440 + on right: 439 expression_any (264) on left: 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 on right: 233 expressions (265) on left: 232 233 234 - on right: 211 212 233 234 307 + on right: 211 212 233 234 306 optional_expr_list (266) on left: 235 236 - on right: 248 626 628 + on right: 247 627 629 type_declaration_no_options_list (267) on left: 237 238 - on right: 238 628 + on right: 238 629 name_in_namespace (268) - on left: 239 240 241 - on right: 35 98 286 287 288 334 335 338 354 355 356 360 546 600 626 628 + on left: 239 240 + on right: 35 98 285 286 287 333 334 337 353 354 355 359 545 599 627 629 expression_delete (269) - on left: 242 243 + on left: 241 242 on right: 216 new_type_declaration (270) - on left: 246 - on right: 249 250 + on left: 245 + on right: 248 249 $@3 (271) - on left: 244 - on right: 246 + on left: 243 + on right: 245 $@4 (272) - on left: 245 - on right: 246 + on left: 244 + on right: 245 expr_new (273) - on left: 247 248 249 250 251 - on right: 433 + on left: 246 247 248 249 250 + on right: 432 expression_break (274) - on left: 252 + on left: 251 on right: 66 223 expression_continue (275) - on left: 253 + on left: 252 on right: 67 224 expression_return (276) - on left: 254 255 256 + on left: 253 254 255 on right: 64 225 expression_yield_no_pipe (277) - on left: 257 258 - on right: 65 259 + on left: 256 257 + on right: 65 258 expression_yield (278) - on left: 259 + on left: 258 on right: 226 expression_try_catch (279) - on left: 260 + on left: 259 on right: 228 kwd_let_var_or_nothing (280) - on left: 261 262 263 - on right: 477 + on left: 260 261 262 + on right: 476 kwd_let (281) - on left: 264 265 - on right: 272 273 522 524 + on left: 263 264 + on right: 271 272 521 523 optional_in_scope (282) - on left: 266 267 - on right: 272 273 + on left: 265 266 + on right: 271 272 tuple_expansion (283) - on left: 268 269 - on right: 269 270 271 + on left: 267 268 + on right: 268 269 270 tuple_expansion_variable_declaration (284) - on left: 270 271 - on right: 273 + on left: 269 270 + on right: 272 expression_let (285) - on left: 272 273 + on left: 271 272 on right: 217 expr_cast (286) - on left: 276 279 282 - on right: 432 + on left: 275 278 281 + on right: 431 $@5 (287) - on left: 274 - on right: 276 + on left: 273 + on right: 275 $@6 (288) - on left: 275 - on right: 276 + on left: 274 + on right: 275 $@7 (289) - on left: 277 - on right: 279 + on left: 276 + on right: 278 $@8 (290) - on left: 278 - on right: 279 + on left: 277 + on right: 278 $@9 (291) - on left: 280 - on right: 282 + on left: 279 + on right: 281 $@10 (292) - on left: 281 - on right: 282 + on left: 280 + on right: 281 expr_type_decl (293) - on left: 285 - on right: 431 + on left: 284 + on right: 430 $@11 (294) - on left: 283 - on right: 285 + on left: 282 + on right: 284 $@12 (295) - on left: 284 - on right: 285 + on left: 283 + on right: 284 expr_type_info (296) - on left: 286 287 288 - on right: 430 + on left: 285 286 287 + on right: 429 expr_list (297) - on left: 289 290 - on right: 70 236 290 335 337 350 356 358 399 448 728 732 742 745 746 749 760 761 762 + on left: 288 289 + on right: 70 236 289 334 336 349 355 357 398 447 729 733 743 746 747 750 761 762 763 block_or_simple_block (298) - on left: 291 292 293 - on right: 305 + on left: 290 291 292 + on right: 304 block_or_lambda (299) - on left: 294 295 296 - on right: 305 306 + on left: 293 294 295 + on right: 304 305 capture_entry (300) - on left: 297 298 299 300 - on right: 301 302 + on left: 296 297 298 299 + on right: 300 301 capture_list (301) - on left: 301 302 - on right: 302 304 + on left: 300 301 + on right: 301 303 optional_capture_list (302) - on left: 303 304 - on right: 305 306 411 412 + on left: 302 303 + on right: 304 305 410 411 expr_full_block (303) - on left: 305 - on right: 436 + on left: 304 + on right: 435 expr_full_block_assumed_piped (304) - on left: 306 307 + on left: 305 306 on right: 213 expr_numeric_const (305) - on left: 308 309 310 311 312 313 314 - on right: 361 + on left: 307 308 309 310 311 312 313 + on right: 360 expr_assign (306) - on left: 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 + on left: 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 on right: 215 expr_named_call (307) - on left: 334 335 - on right: 435 - expr_method_call (308) - on left: 336 337 + on left: 333 334 on right: 434 + expr_method_call (308) + on left: 335 336 + on right: 433 func_addr_name (309) - on left: 338 339 - on right: 340 343 346 + on left: 337 338 + on right: 339 342 345 func_addr_expr (310) - on left: 340 343 346 - on right: 406 + on left: 339 342 345 + on right: 405 $@13 (311) - on left: 341 - on right: 343 + on left: 340 + on right: 342 $@14 (312) - on left: 342 - on right: 343 + on left: 341 + on right: 342 $@15 (313) - on left: 344 - on right: 346 + on left: 343 + on right: 345 $@16 (314) - on left: 345 - on right: 346 + on left: 344 + on right: 345 expr_field (315) - on left: 347 348 349 350 353 - on right: 367 + on left: 346 347 348 349 352 + on right: 366 $@17 (316) - on left: 351 - on right: 353 + on left: 350 + on right: 352 $@18 (317) - on left: 352 - on right: 353 + on left: 351 + on right: 352 expr_call (318) - on left: 354 355 356 357 358 - on right: 213 407 + on left: 353 354 355 356 357 + on right: 213 406 expr (319) - on left: 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 417 418 419 420 423 424 425 428 429 430 431 432 433 434 435 436 437 438 439 440 - on right: 30 53 58 63 68 69 72 73 74 242 243 255 256 257 258 270 271 276 279 282 286 287 288 289 290 292 293 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 336 337 339 347 348 349 350 353 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 400 401 402 403 404 405 408 409 410 412 413 414 417 418 419 420 423 424 425 428 429 437 438 439 441 442 443 444 445 447 448 449 450 451 452 453 454 455 456 478 499 500 507 512 513 526 561 603 614 615 625 701 702 703 704 705 706 707 708 726 727 757 760 761 + on left: 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 416 417 418 419 422 423 424 427 428 429 430 431 432 433 434 435 436 437 438 439 + on right: 30 53 58 63 68 69 72 73 74 241 242 254 255 256 257 269 270 275 278 281 285 286 287 288 289 291 292 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 335 336 338 346 347 348 349 352 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 399 400 401 402 403 404 407 408 409 411 412 413 416 417 418 419 422 423 424 427 428 436 437 438 440 441 442 443 444 446 447 448 449 450 451 452 453 454 455 477 498 499 506 511 512 525 560 602 613 615 626 702 703 704 705 706 707 708 709 727 728 758 761 762 $@19 (320) - on left: 415 - on right: 417 + on left: 414 + on right: 416 $@20 (321) - on left: 416 - on right: 417 + on left: 415 + on right: 416 $@21 (322) - on left: 421 - on right: 423 + on left: 420 + on right: 422 $@22 (323) - on left: 422 - on right: 423 + on left: 421 + on right: 422 $@23 (324) - on left: 426 - on right: 428 + on left: 425 + on right: 427 $@24 (325) - on left: 427 - on right: 428 + on left: 426 + on right: 427 expr_mtag (326) - on left: 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 - on right: 368 + on left: 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 + on right: 367 optional_field_annotation (327) - on left: 457 458 - on right: 469 477 516 524 + on left: 456 457 + on right: 468 476 515 523 optional_override (328) - on left: 459 460 461 - on right: 469 476 + on left: 458 459 460 + on right: 468 475 optional_constant (329) - on left: 462 463 - on right: 474 476 + on left: 461 462 + on right: 473 475 optional_public_or_private_member_variable (330) - on left: 464 465 466 - on right: 469 474 476 + on left: 463 464 465 + on right: 468 473 475 optional_static_member_variable (331) - on left: 467 468 - on right: 469 476 + on left: 466 467 + on right: 468 475 structure_variable_declaration (332) - on left: 469 - on right: 472 + on left: 468 + on right: 471 struct_variable_declaration_list (333) - on left: 470 472 474 476 - on right: 472 474 476 556 + on left: 469 471 473 475 + on right: 471 473 475 555 $@25 (334) - on left: 471 - on right: 472 + on left: 470 + on right: 471 $@26 (335) - on left: 473 - on right: 474 + on left: 472 + on right: 473 $@27 (336) - on left: 475 - on right: 476 + on left: 474 + on right: 475 function_argument_declaration (337) - on left: 477 478 - on right: 479 480 + on left: 476 477 + on right: 478 479 function_argument_list (338) - on left: 479 480 - on right: 116 480 + on left: 478 479 + on right: 116 479 tuple_type (339) - on left: 481 482 - on right: 483 484 487 + on left: 480 481 + on right: 482 483 486 tuple_type_list (340) - on left: 483 484 - on right: 484 677 + on left: 482 483 + on right: 483 678 tuple_alias_type_list (341) - on left: 485 486 487 - on right: 486 487 687 + on left: 484 485 486 + on right: 485 486 688 variant_type (342) - on left: 488 - on right: 489 490 493 + on left: 487 + on right: 488 489 492 variant_type_list (343) - on left: 489 490 - on right: 490 680 + on left: 488 489 + on right: 489 681 variant_alias_type_list (344) - on left: 491 492 493 - on right: 492 493 691 + on left: 490 491 492 + on right: 491 492 692 copy_or_move (345) - on left: 494 495 - on right: 499 500 701 703 705 707 + on left: 493 494 + on right: 498 499 702 704 706 708 variable_declaration (346) - on left: 496 497 498 499 500 - on right: 469 477 + on left: 495 496 497 498 499 + on right: 468 476 copy_or_move_or_clone (347) - on left: 501 502 503 - on right: 270 271 512 513 + on left: 500 501 502 + on right: 269 270 511 512 optional_ref (348) - on left: 504 505 - on right: 271 513 + on left: 503 504 + on right: 270 512 let_variable_name_with_pos_list (349) - on left: 506 507 508 509 510 - on right: 509 510 511 512 513 + on left: 505 506 507 508 509 + on right: 508 509 510 511 512 let_variable_declaration (350) - on left: 511 512 513 - on right: 272 516 524 + on left: 510 511 512 + on right: 271 515 523 global_variable_declaration_list (351) - on left: 514 516 - on right: 516 522 + on left: 513 515 + on right: 515 521 $@28 (352) - on left: 515 - on right: 516 + on left: 514 + on right: 515 optional_shared (353) - on left: 517 518 - on right: 22 522 524 + on left: 516 517 + on right: 22 521 523 optional_public_or_private_variable (354) - on left: 519 520 521 - on right: 522 524 + on left: 518 519 520 + on right: 521 523 global_let (355) - on left: 522 524 + on left: 521 523 on right: 5 $@29 (356) - on left: 523 - on right: 524 + on left: 522 + on right: 523 enum_expression (357) - on left: 525 526 - on right: 528 529 + on left: 524 525 + on right: 527 528 enum_list (358) - on left: 527 528 529 - on right: 529 544 + on left: 526 527 528 + on right: 528 543 optional_public_or_private_alias (359) - on left: 530 531 532 - on right: 534 687 691 695 + on left: 529 530 531 + on right: 533 688 692 696 single_alias (360) - on left: 534 - on right: 535 - $@30 (361) on left: 533 on right: 534 + $@30 (361) + on left: 532 + on right: 533 alias_declaration (362) - on left: 535 + on left: 534 on right: 10 optional_public_or_private_enum (363) - on left: 536 537 538 - on right: 544 + on left: 535 536 537 + on right: 543 enum_name (364) - on left: 539 - on right: 544 + on left: 538 + on right: 543 optional_enum_basic_type_declaration (365) - on left: 540 541 - on right: 544 + on left: 539 540 + on right: 543 enum_declaration (366) - on left: 544 + on left: 543 on right: 4 $@31 (367) - on left: 542 - on right: 544 + on left: 541 + on right: 543 $@32 (368) - on left: 543 - on right: 544 + on left: 542 + on right: 543 optional_structure_parent (369) - on left: 545 546 - on right: 549 + on left: 544 545 + on right: 548 optional_sealed (370) - on left: 547 548 - on right: 549 + on left: 546 547 + on right: 548 structure_name (371) - on left: 549 - on right: 559 + on left: 548 + on right: 558 class_or_struct (372) - on left: 550 551 - on right: 559 + on left: 549 550 + on right: 558 optional_public_or_private_structure (373) - on left: 552 553 554 - on right: 559 + on left: 551 552 553 + on right: 558 optional_struct_variable_declaration_list (374) - on left: 555 556 - on right: 559 + on left: 554 555 + on right: 558 structure_declaration (375) - on left: 559 + on left: 558 on right: 3 $@33 (376) - on left: 557 - on right: 559 + on left: 556 + on right: 558 $@34 (377) - on left: 558 - on right: 559 + on left: 557 + on right: 558 variable_name_with_pos_list (378) - on left: 560 561 562 563 564 - on right: 70 496 497 498 499 500 563 564 760 761 762 + on left: 559 560 561 562 563 + on right: 70 495 496 497 498 499 562 563 761 762 763 basic_type_declaration (379) - on left: 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 - on right: 357 358 418 424 429 439 616 + on left: 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 + on right: 356 357 417 423 428 438 619 enum_basic_type_declaration (380) - on left: 592 593 594 595 596 597 598 599 - on right: 541 + on left: 591 592 593 594 595 596 597 598 + on right: 540 structure_type_declaration (381) - on left: 600 - on right: 247 248 619 + on left: 599 + on right: 246 247 622 auto_type_declaration (382) - on left: 601 602 603 - on right: 617 + on left: 600 601 602 + on right: 620 bitfield_bits (383) - on left: 604 605 - on right: 605 611 + on left: 603 604 + on right: 604 610 bitfield_alias_bits (384) - on left: 606 607 608 - on right: 608 695 + on left: 605 606 607 + on right: 607 696 bitfield_type_declaration (385) - on left: 611 - on right: 618 + on left: 610 + on right: 621 $@35 (386) - on left: 609 - on right: 611 + on left: 608 + on right: 610 $@36 (387) - on left: 610 - on right: 611 + on left: 609 + on right: 610 table_type_pair (388) - on left: 612 613 - on right: 650 + on left: 611 612 + on right: 651 dim_list (389) - on left: 614 615 - on right: 615 620 + on left: 613 614 615 616 + on right: 615 616 618 type_declaration_no_options (390) - on left: 616 617 618 619 620 621 624 625 626 628 629 630 631 632 633 634 635 636 637 638 639 640 643 644 647 650 653 654 657 660 661 664 667 668 671 674 677 680 - on right: 270 276 279 282 343 411 412 417 511 512 620 621 629 630 631 632 633 634 635 636 637 638 639 640 644 681 682 716 719 722 725 731 735 738 741 745 749 754 755 - $@37 (391) - on left: 622 - on right: 624 - $@38 (392) + on left: 617 618 + on right: 269 275 278 281 342 410 411 416 510 511 682 683 717 720 723 726 732 736 739 742 746 750 755 756 + type_declaration_no_options_no_dim (391) + on left: 619 620 621 622 625 626 627 629 630 631 632 633 634 635 636 637 638 639 640 641 644 645 648 651 654 655 658 661 662 665 668 669 672 675 678 681 + on right: 617 618 630 631 632 633 634 635 636 637 638 639 640 641 645 + $@37 (392) on left: 623 - on right: 624 - $@39 (393) - on left: 627 - on right: 628 - $@40 (394) - on left: 641 - on right: 643 - $@41 (395) + on right: 625 + $@38 (393) + on left: 624 + on right: 625 + $@39 (394) + on left: 628 + on right: 629 + $@40 (395) on left: 642 - on right: 643 - $@42 (396) - on left: 645 - on right: 647 - $@43 (397) + on right: 644 + $@41 (396) + on left: 643 + on right: 644 + $@42 (397) on left: 646 - on right: 647 - $@44 (398) - on left: 648 - on right: 650 - $@45 (399) + on right: 648 + $@43 (398) + on left: 647 + on right: 648 + $@44 (399) on left: 649 - on right: 650 - $@46 (400) - on left: 651 - on right: 653 - $@47 (401) + on right: 651 + $@45 (400) + on left: 650 + on right: 651 + $@46 (401) on left: 652 - on right: 653 - $@48 (402) - on left: 655 - on right: 657 - $@49 (403) + on right: 654 + $@47 (402) + on left: 653 + on right: 654 + $@48 (403) on left: 656 - on right: 657 - $@50 (404) - on left: 658 - on right: 660 - $@51 (405) + on right: 658 + $@49 (404) + on left: 657 + on right: 658 + $@50 (405) on left: 659 - on right: 660 - $@52 (406) - on left: 662 - on right: 664 - $@53 (407) + on right: 661 + $@51 (406) + on left: 660 + on right: 661 + $@52 (407) on left: 663 - on right: 664 - $@54 (408) - on left: 665 - on right: 667 - $@55 (409) + on right: 665 + $@53 (408) + on left: 664 + on right: 665 + $@54 (409) on left: 666 - on right: 667 - $@56 (410) - on left: 669 - on right: 671 - $@57 (411) + on right: 668 + $@55 (410) + on left: 667 + on right: 668 + $@56 (411) on left: 670 - on right: 671 - $@58 (412) - on left: 672 - on right: 674 - $@59 (413) + on right: 672 + $@57 (412) + on left: 671 + on right: 672 + $@58 (413) on left: 673 - on right: 674 - $@60 (414) - on left: 675 - on right: 677 - $@61 (415) + on right: 675 + $@59 (414) + on left: 674 + on right: 675 + $@60 (415) on left: 676 - on right: 677 - $@62 (416) - on left: 678 - on right: 680 - $@63 (417) + on right: 678 + $@61 (416) + on left: 677 + on right: 678 + $@62 (417) on left: 679 - on right: 680 - type_declaration (418) - on left: 681 682 683 - on right: 118 237 238 246 285 423 428 481 482 488 498 499 534 612 613 624 643 647 653 657 664 671 682 683 - tuple_alias_declaration (419) - on left: 687 + on right: 681 + $@63 (418) + on left: 680 + on right: 681 + type_declaration (419) + on left: 682 683 684 + on right: 118 237 238 245 284 422 427 480 481 487 497 498 533 611 612 625 644 648 654 658 665 672 683 684 + tuple_alias_declaration (420) + on left: 688 on right: 12 - $@64 (420) - on left: 684 - on right: 687 - $@65 (421) + $@64 (421) on left: 685 - on right: 687 - $@66 (422) + on right: 688 + $@65 (422) on left: 686 - on right: 687 - variant_alias_declaration (423) - on left: 691 + on right: 688 + $@66 (423) + on left: 687 + on right: 688 + variant_alias_declaration (424) + on left: 692 on right: 11 - $@67 (424) - on left: 688 - on right: 691 - $@68 (425) + $@67 (425) on left: 689 - on right: 691 - $@69 (426) + on right: 692 + $@68 (426) on left: 690 - on right: 691 - bitfield_alias_declaration (427) - on left: 695 + on right: 692 + $@69 (427) + on left: 691 + on right: 692 + bitfield_alias_declaration (428) + on left: 696 on right: 13 - $@70 (428) - on left: 692 - on right: 695 - $@71 (429) + $@70 (429) on left: 693 - on right: 695 - $@72 (430) + on right: 696 + $@71 (430) on left: 694 - on right: 695 - make_decl (431) - on left: 696 697 698 699 700 - on right: 251 364 - make_struct_fields (432) - on left: 701 702 703 704 705 706 707 708 - on right: 334 335 703 704 707 708 709 710 711 - make_struct_single (433) - on left: 709 - on right: 250 355 - make_struct_dim (434) - on left: 710 711 - on right: 711 716 719 722 731 735 738 741 - use_initializer (435) - on left: 712 713 - on right: 249 250 716 719 725 731 735 738 - make_struct_decl (436) - on left: 716 719 722 725 on right: 696 - $@73 (437) - on left: 714 - on right: 716 - $@74 (438) + $@72 (431) + on left: 695 + on right: 696 + make_decl (432) + on left: 697 698 699 700 701 + on right: 250 363 + make_struct_fields (433) + on left: 702 703 704 705 706 707 708 709 + on right: 333 334 704 705 708 709 710 711 712 + make_struct_single (434) + on left: 710 + on right: 249 354 + make_struct_dim (435) + on left: 711 712 + on right: 712 717 720 723 732 736 739 742 + use_initializer (436) + on left: 713 714 + on right: 248 249 717 720 726 732 736 739 + make_struct_decl (437) + on left: 717 720 723 726 + on right: 697 + $@73 (438) on left: 715 - on right: 716 - $@75 (439) - on left: 717 - on right: 719 - $@76 (440) + on right: 717 + $@74 (439) + on left: 716 + on right: 717 + $@75 (440) on left: 718 - on right: 719 - $@77 (441) - on left: 720 - on right: 722 - $@78 (442) + on right: 720 + $@76 (441) + on left: 719 + on right: 720 + $@77 (442) on left: 721 - on right: 722 - $@79 (443) - on left: 723 - on right: 725 - $@80 (444) + on right: 723 + $@78 (443) + on left: 722 + on right: 723 + $@79 (444) on left: 724 - on right: 725 - make_map_tuple (445) - on left: 726 727 - on right: 750 751 762 - make_tuple_call (446) - on left: 728 731 - on right: 700 - $@81 (447) - on left: 729 - on right: 731 - $@82 (448) + on right: 726 + $@80 (445) + on left: 725 + on right: 726 + make_map_tuple (446) + on left: 727 728 + on right: 751 752 763 + make_tuple_call (447) + on left: 729 732 + on right: 701 + $@81 (448) on left: 730 - on right: 731 - make_dim_decl (449) - on left: 732 735 738 741 742 745 746 749 - on right: 697 - $@83 (450) - on left: 733 - on right: 735 - $@84 (451) + on right: 732 + $@82 (449) + on left: 731 + on right: 732 + make_dim_decl (450) + on left: 733 736 739 742 743 746 747 750 + on right: 698 + $@83 (451) on left: 734 - on right: 735 - $@85 (452) - on left: 736 - on right: 738 - $@86 (453) + on right: 736 + $@84 (452) + on left: 735 + on right: 736 + $@85 (453) on left: 737 - on right: 738 - $@87 (454) - on left: 739 - on right: 741 - $@88 (455) + on right: 739 + $@86 (454) + on left: 738 + on right: 739 + $@87 (455) on left: 740 - on right: 741 - $@89 (456) - on left: 743 - on right: 745 - $@90 (457) + on right: 742 + $@88 (456) + on left: 741 + on right: 742 + $@89 (457) on left: 744 - on right: 745 - $@91 (458) - on left: 747 - on right: 749 - $@92 (459) + on right: 746 + $@90 (458) + on left: 745 + on right: 746 + $@91 (459) on left: 748 - on right: 749 - expr_map_tuple_list (460) - on left: 750 751 - on right: 751 752 753 754 755 - make_table_decl (461) - on left: 752 753 754 755 - on right: 698 - array_comprehension_where (462) - on left: 756 757 - on right: 760 761 762 - optional_comma (463) - on left: 758 759 - on right: 399 544 695 728 732 742 745 746 749 752 753 754 755 - array_comprehension (464) - on left: 760 761 762 + on right: 750 + $@92 (460) + on left: 749 + on right: 750 + expr_map_tuple_list (461) + on left: 751 752 + on right: 752 753 754 755 756 + make_table_decl (462) + on left: 753 754 755 756 on right: 699 + array_comprehension_where (463) + on left: 757 758 + on right: 761 762 763 + optional_comma (464) + on left: 759 760 + on right: 398 543 696 729 733 743 746 747 750 753 754 755 756 + array_comprehension (465) + on left: 761 762 763 + on right: 700 State 0 @@ -2133,9 +2136,9 @@ State 2 State 3 - 264 kwd_let: "let" . + 263 kwd_let: "let" . - $default reduce using rule 264 (kwd_let) + $default reduce using rule 263 (kwd_let) State 4 @@ -2174,12 +2177,12 @@ State 6 State 7 - 535 alias_declaration: "typedef" . single_alias "end of expression" + 534 alias_declaration: "typedef" . single_alias "end of expression" "public" shift, and go to state 45 "private" shift, and go to state 46 - $default reduce using rule 530 (optional_public_or_private_alias) + $default reduce using rule 529 (optional_public_or_private_alias) optional_public_or_private_alias go to state 47 single_alias go to state 48 @@ -2187,9 +2190,9 @@ State 7 State 8 - 265 kwd_let: "var" . + 264 kwd_let: "var" . - $default reduce using rule 265 (kwd_let) + $default reduce using rule 264 (kwd_let) State 9 @@ -2204,36 +2207,36 @@ State 9 State 10 - 695 bitfield_alias_declaration: "bitfield" . optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" + 696 bitfield_alias_declaration: "bitfield" . optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" "public" shift, and go to state 45 "private" shift, and go to state 46 - $default reduce using rule 530 (optional_public_or_private_alias) + $default reduce using rule 529 (optional_public_or_private_alias) optional_public_or_private_alias go to state 52 State 11 - 687 tuple_alias_declaration: "tuple" . optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" + 688 tuple_alias_declaration: "tuple" . optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" "public" shift, and go to state 45 "private" shift, and go to state 46 - $default reduce using rule 530 (optional_public_or_private_alias) + $default reduce using rule 529 (optional_public_or_private_alias) optional_public_or_private_alias go to state 53 State 12 - 691 variant_alias_declaration: "variant" . optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" + 692 variant_alias_declaration: "variant" . optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" "public" shift, and go to state 45 "private" shift, and go to state 46 - $default reduce using rule 530 (optional_public_or_private_alias) + $default reduce using rule 529 (optional_public_or_private_alias) optional_public_or_private_alias go to state 54 @@ -2249,29 +2252,27 @@ State 14 35 expr_reader: '%' . name_in_namespace $@1 reader_character_sequence - "::" shift, and go to state 55 - "name" shift, and go to state 56 + "name" shift, and go to state 55 - name_in_namespace go to state 57 + name_in_namespace go to state 56 State 15 113 optional_annotation_list: '[' . annotation_list ']' - "require" shift, and go to state 58 - "private" shift, and go to state 59 - "|>" shift, and go to state 60 - "::" shift, and go to state 55 - "name" shift, and go to state 56 - '!' shift, and go to state 61 - '(' shift, and go to state 62 + "require" shift, and go to state 57 + "private" shift, and go to state 58 + "|>" shift, and go to state 59 + "name" shift, and go to state 55 + '!' shift, and go to state 60 + '(' shift, and go to state 61 - annotation_declaration_name go to state 63 - annotation_declaration_basic go to state 64 - annotation_declaration go to state 65 - annotation_list go to state 66 - name_in_namespace go to state 67 + annotation_declaration_name go to state 62 + annotation_declaration_basic go to state 63 + annotation_declaration go to state 64 + annotation_list go to state 65 + name_in_namespace go to state 66 State 16 @@ -2292,7 +2293,7 @@ State 18 16 top_level_reader_macro: expr_reader . "end of expression" - "end of expression" shift, and go to state 68 + "end of expression" shift, and go to state 67 State 19 @@ -2319,15 +2320,15 @@ State 21 State 22 204 global_function_declaration: optional_annotation_list . "def" function_declaration - 544 enum_declaration: optional_annotation_list . "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" - 559 structure_declaration: optional_annotation_list . class_or_struct optional_public_or_private_structure $@33 structure_name $@34 optional_struct_variable_declaration_list + 543 enum_declaration: optional_annotation_list . "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" + 558 structure_declaration: optional_annotation_list . class_or_struct optional_public_or_private_structure $@33 structure_name $@34 optional_struct_variable_declaration_list - "struct" shift, and go to state 69 - "class" shift, and go to state 70 - "def" shift, and go to state 71 - "enum" shift, and go to state 72 + "struct" shift, and go to state 68 + "class" shift, and go to state 69 + "def" shift, and go to state 70 + "enum" shift, and go to state 71 - class_or_struct go to state 73 + class_or_struct go to state 72 State 23 @@ -2339,14 +2340,14 @@ State 23 State 24 - 522 global_let: kwd_let . optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" - 524 | kwd_let . optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration + 521 global_let: kwd_let . optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" + 523 | kwd_let . optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration - "shared" shift, and go to state 74 + "shared" shift, and go to state 73 - $default reduce using rule 517 (optional_shared) + $default reduce using rule 516 (optional_shared) - optional_shared go to state 75 + optional_shared go to state 74 State 25 @@ -2430,7 +2431,7 @@ State 35 92 | annotation_argument_name . 93 | annotation_argument_name . '=' '(' annotation_argument_value_list ')' - '=' shift, and go to state 76 + '=' shift, and go to state 75 $default reduce using rule 92 (annotation_argument) @@ -2447,7 +2448,7 @@ State 37 36 options_declaration: "options" annotation_argument_list . 95 annotation_argument_list: annotation_argument_list . ',' annotation_argument - ',' shift, and go to state 77 + ',' shift, and go to state 76 $default reduce using rule 36 (options_declaration) @@ -2457,7 +2458,7 @@ State 38 49 expect_error: "integer constant" . 50 | "integer constant" . ':' "integer constant" - ':' shift, and go to state 78 + ':' shift, and go to state 77 $default reduce using rule 49 (expect_error) @@ -2467,7 +2468,7 @@ State 39 46 expect_declaration: "expect" expect_list . 48 expect_list: expect_list . ',' expect_error - ',' shift, and go to state 79 + ',' shift, and go to state 78 $default reduce using rule 46 (expect_declaration) @@ -2493,7 +2494,7 @@ State 42 "name" shift, and go to state 41 '%' shift, and go to state 42 - require_module_name go to state 80 + require_module_name go to state 79 State 43 @@ -2503,14 +2504,14 @@ State 43 42 require_module: require_module_name . is_public_module 43 | require_module_name . "as" "name" is_public_module - "as" shift, and go to state 81 - "public" shift, and go to state 82 - '/' shift, and go to state 83 - '.' shift, and go to state 84 + "as" shift, and go to state 80 + "public" shift, and go to state 81 + '/' shift, and go to state 82 + '.' shift, and go to state 83 $default reduce using rule 44 (is_public_module) - is_public_module go to state 85 + is_public_module go to state 84 State 44 @@ -2522,30 +2523,30 @@ State 44 State 45 - 532 optional_public_or_private_alias: "public" . + 531 optional_public_or_private_alias: "public" . - $default reduce using rule 532 (optional_public_or_private_alias) + $default reduce using rule 531 (optional_public_or_private_alias) State 46 - 531 optional_public_or_private_alias: "private" . + 530 optional_public_or_private_alias: "private" . - $default reduce using rule 531 (optional_public_or_private_alias) + $default reduce using rule 530 (optional_public_or_private_alias) State 47 - 534 single_alias: optional_public_or_private_alias . "name" $@30 '=' type_declaration + 533 single_alias: optional_public_or_private_alias . "name" $@30 '=' type_declaration - "name" shift, and go to state 86 + "name" shift, and go to state 85 State 48 - 535 alias_declaration: "typedef" single_alias . "end of expression" + 534 alias_declaration: "typedef" single_alias . "end of expression" - "end of expression" shift, and go to state 87 + "end of expression" shift, and go to state 86 State 49 @@ -2566,255 +2567,244 @@ State 51 22 module_declaration: "module" module_name . optional_shared optional_public_or_private_module - "shared" shift, and go to state 74 + "shared" shift, and go to state 73 - $default reduce using rule 517 (optional_shared) + $default reduce using rule 516 (optional_shared) - optional_shared go to state 88 + optional_shared go to state 87 State 52 - 695 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias . "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" + 696 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias . "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" - "name" shift, and go to state 89 + "name" shift, and go to state 88 State 53 - 687 tuple_alias_declaration: "tuple" optional_public_or_private_alias . "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" + 688 tuple_alias_declaration: "tuple" optional_public_or_private_alias . "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" - "name" shift, and go to state 90 + "name" shift, and go to state 89 State 54 - 691 variant_alias_declaration: "variant" optional_public_or_private_alias . "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" + 692 variant_alias_declaration: "variant" optional_public_or_private_alias . "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" - "name" shift, and go to state 91 + "name" shift, and go to state 90 State 55 - 241 name_in_namespace: "::" . "name" - - "name" shift, and go to state 92 - - -State 56 - 239 name_in_namespace: "name" . 240 | "name" . "::" "name" - "::" shift, and go to state 93 + "::" shift, and go to state 91 - "::" [reduce using rule 239 (name_in_namespace)] $default reduce using rule 239 (name_in_namespace) -State 57 +State 56 35 expr_reader: '%' name_in_namespace . $@1 reader_character_sequence $default reduce using rule 34 ($@1) - $@1 go to state 94 + $@1 go to state 92 -State 58 +State 57 99 annotation_declaration_name: "require" . $default reduce using rule 99 (annotation_declaration_name) -State 59 +State 58 100 annotation_declaration_name: "private" . $default reduce using rule 100 (annotation_declaration_name) -State 60 +State 59 109 annotation_declaration: "|>" . annotation_declaration - "require" shift, and go to state 58 - "private" shift, and go to state 59 - "|>" shift, and go to state 60 - "::" shift, and go to state 55 - "name" shift, and go to state 56 - '!' shift, and go to state 61 - '(' shift, and go to state 62 + "require" shift, and go to state 57 + "private" shift, and go to state 58 + "|>" shift, and go to state 59 + "name" shift, and go to state 55 + '!' shift, and go to state 60 + '(' shift, and go to state 61 - annotation_declaration_name go to state 63 - annotation_declaration_basic go to state 64 - annotation_declaration go to state 95 - name_in_namespace go to state 67 + annotation_declaration_name go to state 62 + annotation_declaration_basic go to state 63 + annotation_declaration go to state 93 + name_in_namespace go to state 66 -State 61 +State 60 104 annotation_declaration: '!' . annotation_declaration - "require" shift, and go to state 58 - "private" shift, and go to state 59 - "|>" shift, and go to state 60 - "::" shift, and go to state 55 - "name" shift, and go to state 56 - '!' shift, and go to state 61 - '(' shift, and go to state 62 + "require" shift, and go to state 57 + "private" shift, and go to state 58 + "|>" shift, and go to state 59 + "name" shift, and go to state 55 + '!' shift, and go to state 60 + '(' shift, and go to state 61 - annotation_declaration_name go to state 63 - annotation_declaration_basic go to state 64 - annotation_declaration go to state 96 - name_in_namespace go to state 67 + annotation_declaration_name go to state 62 + annotation_declaration_basic go to state 63 + annotation_declaration go to state 94 + name_in_namespace go to state 66 -State 62 +State 61 108 annotation_declaration: '(' . annotation_declaration ')' - "require" shift, and go to state 58 - "private" shift, and go to state 59 - "|>" shift, and go to state 60 - "::" shift, and go to state 55 - "name" shift, and go to state 56 - '!' shift, and go to state 61 - '(' shift, and go to state 62 + "require" shift, and go to state 57 + "private" shift, and go to state 58 + "|>" shift, and go to state 59 + "name" shift, and go to state 55 + '!' shift, and go to state 60 + '(' shift, and go to state 61 - annotation_declaration_name go to state 63 - annotation_declaration_basic go to state 64 - annotation_declaration go to state 97 - name_in_namespace go to state 67 + annotation_declaration_name go to state 62 + annotation_declaration_basic go to state 63 + annotation_declaration go to state 95 + name_in_namespace go to state 66 -State 63 +State 62 101 annotation_declaration_basic: annotation_declaration_name . 102 | annotation_declaration_name . '(' annotation_argument_list ')' - '(' shift, and go to state 98 + '(' shift, and go to state 96 $default reduce using rule 101 (annotation_declaration_basic) -State 64 +State 63 103 annotation_declaration: annotation_declaration_basic . $default reduce using rule 103 (annotation_declaration) -State 65 +State 64 105 annotation_declaration: annotation_declaration . "&&" annotation_declaration 106 | annotation_declaration . "||" annotation_declaration 107 | annotation_declaration . "^^" annotation_declaration 110 annotation_list: annotation_declaration . - "&&" shift, and go to state 99 - "||" shift, and go to state 100 - "^^" shift, and go to state 101 + "&&" shift, and go to state 97 + "||" shift, and go to state 98 + "^^" shift, and go to state 99 $default reduce using rule 110 (annotation_list) -State 66 +State 65 111 annotation_list: annotation_list . ',' annotation_declaration 113 optional_annotation_list: '[' annotation_list . ']' - ',' shift, and go to state 102 - ']' shift, and go to state 103 + ',' shift, and go to state 100 + ']' shift, and go to state 101 -State 67 +State 66 98 annotation_declaration_name: name_in_namespace . $default reduce using rule 98 (annotation_declaration_name) -State 68 +State 67 16 top_level_reader_macro: expr_reader "end of expression" . $default reduce using rule 16 (top_level_reader_macro) -State 69 +State 68 - 551 class_or_struct: "struct" . + 550 class_or_struct: "struct" . - $default reduce using rule 551 (class_or_struct) + $default reduce using rule 550 (class_or_struct) -State 70 +State 69 - 550 class_or_struct: "class" . + 549 class_or_struct: "class" . - $default reduce using rule 550 (class_or_struct) + $default reduce using rule 549 (class_or_struct) -State 71 +State 70 204 global_function_declaration: optional_annotation_list "def" . function_declaration - "public" shift, and go to state 104 - "private" shift, and go to state 105 + "public" shift, and go to state 102 + "private" shift, and go to state 103 $default reduce using rule 205 (optional_public_or_private_function) - optional_public_or_private_function go to state 106 - function_declaration go to state 107 + optional_public_or_private_function go to state 104 + function_declaration go to state 105 -State 72 +State 71 - 544 enum_declaration: optional_annotation_list "enum" . optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" + 543 enum_declaration: optional_annotation_list "enum" . optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" - "public" shift, and go to state 108 - "private" shift, and go to state 109 + "public" shift, and go to state 106 + "private" shift, and go to state 107 - $default reduce using rule 536 (optional_public_or_private_enum) + $default reduce using rule 535 (optional_public_or_private_enum) - optional_public_or_private_enum go to state 110 + optional_public_or_private_enum go to state 108 -State 73 +State 72 - 559 structure_declaration: optional_annotation_list class_or_struct . optional_public_or_private_structure $@33 structure_name $@34 optional_struct_variable_declaration_list + 558 structure_declaration: optional_annotation_list class_or_struct . optional_public_or_private_structure $@33 structure_name $@34 optional_struct_variable_declaration_list - "public" shift, and go to state 111 - "private" shift, and go to state 112 + "public" shift, and go to state 109 + "private" shift, and go to state 110 - $default reduce using rule 552 (optional_public_or_private_structure) + $default reduce using rule 551 (optional_public_or_private_structure) - optional_public_or_private_structure go to state 113 + optional_public_or_private_structure go to state 111 -State 74 +State 73 - 518 optional_shared: "shared" . + 517 optional_shared: "shared" . - $default reduce using rule 518 (optional_shared) + $default reduce using rule 517 (optional_shared) -State 75 +State 74 - 522 global_let: kwd_let optional_shared . optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" - 524 | kwd_let optional_shared . optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration + 521 global_let: kwd_let optional_shared . optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" + 523 | kwd_let optional_shared . optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration - "public" shift, and go to state 114 - "private" shift, and go to state 115 + "public" shift, and go to state 112 + "private" shift, and go to state 113 - $default reduce using rule 519 (optional_public_or_private_variable) + $default reduce using rule 518 (optional_public_or_private_variable) - optional_public_or_private_variable go to state 116 + optional_public_or_private_variable go to state 114 -State 76 +State 75 86 annotation_argument: annotation_argument_name '=' . string_constant 87 | annotation_argument_name '=' . "name" @@ -2824,18 +2814,18 @@ State 76 91 | annotation_argument_name '=' . "false" 93 | annotation_argument_name '=' . '(' annotation_argument_value_list ')' - "true" shift, and go to state 117 - "false" shift, and go to state 118 - "integer constant" shift, and go to state 119 - "floating point constant" shift, and go to state 120 - "name" shift, and go to state 121 - "start of the string" shift, and go to state 122 - '(' shift, and go to state 123 + "true" shift, and go to state 115 + "false" shift, and go to state 116 + "integer constant" shift, and go to state 117 + "floating point constant" shift, and go to state 118 + "name" shift, and go to state 119 + "start of the string" shift, and go to state 120 + '(' shift, and go to state 121 - string_constant go to state 124 + string_constant go to state 122 -State 77 +State 76 95 annotation_argument_list: annotation_argument_list ',' . annotation_argument @@ -2844,150 +2834,143 @@ State 77 "name" shift, and go to state 34 annotation_argument_name go to state 35 - annotation_argument go to state 125 + annotation_argument go to state 123 -State 78 +State 77 50 expect_error: "integer constant" ':' . "integer constant" - "integer constant" shift, and go to state 126 + "integer constant" shift, and go to state 124 -State 79 +State 78 48 expect_list: expect_list ',' . expect_error "integer constant" shift, and go to state 38 - expect_error go to state 127 + expect_error go to state 125 -State 80 +State 79 39 require_module_name: '%' require_module_name . 40 | require_module_name . '.' "name" 41 | require_module_name . '/' "name" - '.' shift, and go to state 84 + '.' shift, and go to state 83 $default reduce using rule 39 (require_module_name) -State 81 +State 80 43 require_module: require_module_name "as" . "name" is_public_module - "name" shift, and go to state 128 + "name" shift, and go to state 126 -State 82 +State 81 45 is_public_module: "public" . $default reduce using rule 45 (is_public_module) -State 83 +State 82 41 require_module_name: require_module_name '/' . "name" - "name" shift, and go to state 129 + "name" shift, and go to state 127 -State 84 +State 83 40 require_module_name: require_module_name '.' . "name" - "name" shift, and go to state 130 + "name" shift, and go to state 128 -State 85 +State 84 42 require_module: require_module_name is_public_module . $default reduce using rule 42 (require_module) -State 86 +State 85 - 534 single_alias: optional_public_or_private_alias "name" . $@30 '=' type_declaration + 533 single_alias: optional_public_or_private_alias "name" . $@30 '=' type_declaration - $default reduce using rule 533 ($@30) + $default reduce using rule 532 ($@30) - $@30 go to state 131 + $@30 go to state 129 -State 87 +State 86 - 535 alias_declaration: "typedef" single_alias "end of expression" . + 534 alias_declaration: "typedef" single_alias "end of expression" . - $default reduce using rule 535 (alias_declaration) + $default reduce using rule 534 (alias_declaration) -State 88 +State 87 22 module_declaration: "module" module_name optional_shared . optional_public_or_private_module - "public" shift, and go to state 132 - "private" shift, and go to state 133 + "public" shift, and go to state 130 + "private" shift, and go to state 131 $default reduce using rule 17 (optional_public_or_private_module) - optional_public_or_private_module go to state 134 - + optional_public_or_private_module go to state 132 -State 89 - - 695 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" . $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" - - $default reduce using rule 692 ($@70) - - $@70 go to state 135 +State 88 -State 90 + 696 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" . $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" - 687 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" . $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" + $default reduce using rule 693 ($@70) - $default reduce using rule 684 ($@64) + $@70 go to state 133 - $@64 go to state 136 +State 89 -State 91 + 688 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" . $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" - 691 variant_alias_declaration: "variant" optional_public_or_private_alias "name" . $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" + $default reduce using rule 685 ($@64) - $default reduce using rule 688 ($@67) + $@64 go to state 134 - $@67 go to state 137 +State 90 -State 92 + 692 variant_alias_declaration: "variant" optional_public_or_private_alias "name" . $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" - 241 name_in_namespace: "::" "name" . + $default reduce using rule 689 ($@67) - $default reduce using rule 241 (name_in_namespace) + $@67 go to state 135 -State 93 +State 91 240 name_in_namespace: "name" "::" . "name" - "name" shift, and go to state 138 + "name" shift, and go to state 136 -State 94 +State 92 35 expr_reader: '%' name_in_namespace $@1 . reader_character_sequence - STRING_CHARACTER shift, and go to state 139 + STRING_CHARACTER shift, and go to state 137 - reader_character_sequence go to state 140 + reader_character_sequence go to state 138 -State 95 +State 93 105 annotation_declaration: annotation_declaration . "&&" annotation_declaration 106 | annotation_declaration . "||" annotation_declaration @@ -2997,7 +2980,7 @@ State 95 $default reduce using rule 109 (annotation_declaration) -State 96 +State 94 104 annotation_declaration: '!' annotation_declaration . 105 | annotation_declaration . "&&" annotation_declaration @@ -3007,20 +2990,20 @@ State 96 $default reduce using rule 104 (annotation_declaration) -State 97 +State 95 105 annotation_declaration: annotation_declaration . "&&" annotation_declaration 106 | annotation_declaration . "||" annotation_declaration 107 | annotation_declaration . "^^" annotation_declaration 108 | '(' annotation_declaration . ')' - "&&" shift, and go to state 99 - "||" shift, and go to state 100 - "^^" shift, and go to state 101 - ')' shift, and go to state 141 + "&&" shift, and go to state 97 + "||" shift, and go to state 98 + "^^" shift, and go to state 99 + ')' shift, and go to state 139 -State 98 +State 96 102 annotation_declaration_basic: annotation_declaration_name '(' . annotation_argument_list ')' @@ -3030,394 +3013,390 @@ State 98 annotation_argument_name go to state 35 annotation_argument go to state 36 - annotation_argument_list go to state 142 + annotation_argument_list go to state 140 -State 99 +State 97 105 annotation_declaration: annotation_declaration "&&" . annotation_declaration - "require" shift, and go to state 58 - "private" shift, and go to state 59 - "|>" shift, and go to state 60 - "::" shift, and go to state 55 - "name" shift, and go to state 56 - '!' shift, and go to state 61 - '(' shift, and go to state 62 + "require" shift, and go to state 57 + "private" shift, and go to state 58 + "|>" shift, and go to state 59 + "name" shift, and go to state 55 + '!' shift, and go to state 60 + '(' shift, and go to state 61 - annotation_declaration_name go to state 63 - annotation_declaration_basic go to state 64 - annotation_declaration go to state 143 - name_in_namespace go to state 67 + annotation_declaration_name go to state 62 + annotation_declaration_basic go to state 63 + annotation_declaration go to state 141 + name_in_namespace go to state 66 -State 100 +State 98 106 annotation_declaration: annotation_declaration "||" . annotation_declaration - "require" shift, and go to state 58 - "private" shift, and go to state 59 - "|>" shift, and go to state 60 - "::" shift, and go to state 55 - "name" shift, and go to state 56 - '!' shift, and go to state 61 - '(' shift, and go to state 62 + "require" shift, and go to state 57 + "private" shift, and go to state 58 + "|>" shift, and go to state 59 + "name" shift, and go to state 55 + '!' shift, and go to state 60 + '(' shift, and go to state 61 - annotation_declaration_name go to state 63 - annotation_declaration_basic go to state 64 - annotation_declaration go to state 144 - name_in_namespace go to state 67 + annotation_declaration_name go to state 62 + annotation_declaration_basic go to state 63 + annotation_declaration go to state 142 + name_in_namespace go to state 66 -State 101 +State 99 107 annotation_declaration: annotation_declaration "^^" . annotation_declaration - "require" shift, and go to state 58 - "private" shift, and go to state 59 - "|>" shift, and go to state 60 - "::" shift, and go to state 55 - "name" shift, and go to state 56 - '!' shift, and go to state 61 - '(' shift, and go to state 62 + "require" shift, and go to state 57 + "private" shift, and go to state 58 + "|>" shift, and go to state 59 + "name" shift, and go to state 55 + '!' shift, and go to state 60 + '(' shift, and go to state 61 - annotation_declaration_name go to state 63 - annotation_declaration_basic go to state 64 - annotation_declaration go to state 145 - name_in_namespace go to state 67 + annotation_declaration_name go to state 62 + annotation_declaration_basic go to state 63 + annotation_declaration go to state 143 + name_in_namespace go to state 66 -State 102 +State 100 111 annotation_list: annotation_list ',' . annotation_declaration - "require" shift, and go to state 58 - "private" shift, and go to state 59 - "|>" shift, and go to state 60 - "::" shift, and go to state 55 - "name" shift, and go to state 56 - '!' shift, and go to state 61 - '(' shift, and go to state 62 + "require" shift, and go to state 57 + "private" shift, and go to state 58 + "|>" shift, and go to state 59 + "name" shift, and go to state 55 + '!' shift, and go to state 60 + '(' shift, and go to state 61 - annotation_declaration_name go to state 63 - annotation_declaration_basic go to state 64 - annotation_declaration go to state 146 - name_in_namespace go to state 67 + annotation_declaration_name go to state 62 + annotation_declaration_basic go to state 63 + annotation_declaration go to state 144 + name_in_namespace go to state 66 -State 103 +State 101 113 optional_annotation_list: '[' annotation_list ']' . $default reduce using rule 113 (optional_annotation_list) -State 104 +State 102 207 optional_public_or_private_function: "public" . $default reduce using rule 207 (optional_public_or_private_function) -State 105 +State 103 206 optional_public_or_private_function: "private" . $default reduce using rule 206 (optional_public_or_private_function) -State 106 +State 104 210 function_declaration: optional_public_or_private_function . $@2 function_declaration_header expression_block $default reduce using rule 209 ($@2) - $@2 go to state 147 + $@2 go to state 145 -State 107 +State 105 204 global_function_declaration: optional_annotation_list "def" function_declaration . $default reduce using rule 204 (global_function_declaration) -State 108 +State 106 - 538 optional_public_or_private_enum: "public" . + 537 optional_public_or_private_enum: "public" . - $default reduce using rule 538 (optional_public_or_private_enum) + $default reduce using rule 537 (optional_public_or_private_enum) -State 109 +State 107 - 537 optional_public_or_private_enum: "private" . + 536 optional_public_or_private_enum: "private" . - $default reduce using rule 537 (optional_public_or_private_enum) + $default reduce using rule 536 (optional_public_or_private_enum) -State 110 +State 108 - 544 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum . enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" + 543 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum . enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" - "name" shift, and go to state 148 + "name" shift, and go to state 146 - enum_name go to state 149 + enum_name go to state 147 -State 111 +State 109 - 554 optional_public_or_private_structure: "public" . + 553 optional_public_or_private_structure: "public" . - $default reduce using rule 554 (optional_public_or_private_structure) + $default reduce using rule 553 (optional_public_or_private_structure) -State 112 +State 110 - 553 optional_public_or_private_structure: "private" . + 552 optional_public_or_private_structure: "private" . - $default reduce using rule 553 (optional_public_or_private_structure) + $default reduce using rule 552 (optional_public_or_private_structure) -State 113 +State 111 - 559 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure . $@33 structure_name $@34 optional_struct_variable_declaration_list + 558 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure . $@33 structure_name $@34 optional_struct_variable_declaration_list - $default reduce using rule 557 ($@33) + $default reduce using rule 556 ($@33) - $@33 go to state 150 + $@33 go to state 148 -State 114 +State 112 - 521 optional_public_or_private_variable: "public" . + 520 optional_public_or_private_variable: "public" . - $default reduce using rule 521 (optional_public_or_private_variable) + $default reduce using rule 520 (optional_public_or_private_variable) -State 115 +State 113 - 520 optional_public_or_private_variable: "private" . + 519 optional_public_or_private_variable: "private" . - $default reduce using rule 520 (optional_public_or_private_variable) + $default reduce using rule 519 (optional_public_or_private_variable) -State 116 +State 114 - 522 global_let: kwd_let optional_shared optional_public_or_private_variable . "begin of code block" global_variable_declaration_list "end of code block" - 524 | kwd_let optional_shared optional_public_or_private_variable . $@29 optional_field_annotation let_variable_declaration + 521 global_let: kwd_let optional_shared optional_public_or_private_variable . "begin of code block" global_variable_declaration_list "end of code block" + 523 | kwd_let optional_shared optional_public_or_private_variable . $@29 optional_field_annotation let_variable_declaration - "begin of code block" shift, and go to state 151 + "begin of code block" shift, and go to state 149 - $default reduce using rule 523 ($@29) + $default reduce using rule 522 ($@29) - $@29 go to state 152 + $@29 go to state 150 -State 117 +State 115 90 annotation_argument: annotation_argument_name '=' "true" . $default reduce using rule 90 (annotation_argument) -State 118 +State 116 91 annotation_argument: annotation_argument_name '=' "false" . $default reduce using rule 91 (annotation_argument) -State 119 +State 117 88 annotation_argument: annotation_argument_name '=' "integer constant" . $default reduce using rule 88 (annotation_argument) -State 120 +State 118 89 annotation_argument: annotation_argument_name '=' "floating point constant" . $default reduce using rule 89 (annotation_argument) -State 121 +State 119 87 annotation_argument: annotation_argument_name '=' "name" . $default reduce using rule 87 (annotation_argument) -State 122 +State 120 27 string_constant: "start of the string" . character_sequence "end of the string" - STRING_CHARACTER shift, and go to state 153 - STRING_CHARACTER_ESC shift, and go to state 154 + STRING_CHARACTER shift, and go to state 151 + STRING_CHARACTER_ESC shift, and go to state 152 - character_sequence go to state 155 + character_sequence go to state 153 -State 123 +State 121 93 annotation_argument: annotation_argument_name '=' '(' . annotation_argument_value_list ')' - "true" shift, and go to state 156 - "false" shift, and go to state 157 - "integer constant" shift, and go to state 158 - "floating point constant" shift, and go to state 159 - "name" shift, and go to state 160 - "start of the string" shift, and go to state 122 + "true" shift, and go to state 154 + "false" shift, and go to state 155 + "integer constant" shift, and go to state 156 + "floating point constant" shift, and go to state 157 + "name" shift, and go to state 158 + "start of the string" shift, and go to state 120 - string_constant go to state 161 - annotation_argument_value go to state 162 - annotation_argument_value_list go to state 163 + string_constant go to state 159 + annotation_argument_value go to state 160 + annotation_argument_value_list go to state 161 -State 124 +State 122 86 annotation_argument: annotation_argument_name '=' string_constant . $default reduce using rule 86 (annotation_argument) -State 125 +State 123 95 annotation_argument_list: annotation_argument_list ',' annotation_argument . $default reduce using rule 95 (annotation_argument_list) -State 126 +State 124 50 expect_error: "integer constant" ':' "integer constant" . $default reduce using rule 50 (expect_error) -State 127 +State 125 48 expect_list: expect_list ',' expect_error . $default reduce using rule 48 (expect_list) -State 128 +State 126 43 require_module: require_module_name "as" "name" . is_public_module - "public" shift, and go to state 82 + "public" shift, and go to state 81 $default reduce using rule 44 (is_public_module) - is_public_module go to state 164 + is_public_module go to state 162 -State 129 +State 127 41 require_module_name: require_module_name '/' "name" . $default reduce using rule 41 (require_module_name) -State 130 +State 128 40 require_module_name: require_module_name '.' "name" . $default reduce using rule 40 (require_module_name) -State 131 +State 129 - 534 single_alias: optional_public_or_private_alias "name" $@30 . '=' type_declaration + 533 single_alias: optional_public_or_private_alias "name" $@30 . '=' type_declaration - '=' shift, and go to state 165 + '=' shift, and go to state 163 -State 132 +State 130 18 optional_public_or_private_module: "public" . $default reduce using rule 18 (optional_public_or_private_module) -State 133 +State 131 19 optional_public_or_private_module: "private" . $default reduce using rule 19 (optional_public_or_private_module) -State 134 +State 132 22 module_declaration: "module" module_name optional_shared optional_public_or_private_module . $default reduce using rule 22 (module_declaration) -State 135 +State 133 - 695 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 . "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" + 696 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 . "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" - "begin of code block" shift, and go to state 166 + "begin of code block" shift, and go to state 164 -State 136 +State 134 - 687 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 . "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" + 688 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 . "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" - "begin of code block" shift, and go to state 167 + "begin of code block" shift, and go to state 165 -State 137 +State 135 - 691 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 . "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" + 692 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 . "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" - "begin of code block" shift, and go to state 168 + "begin of code block" shift, and go to state 166 -State 138 +State 136 240 name_in_namespace: "name" "::" "name" . $default reduce using rule 240 (name_in_namespace) -State 139 +State 137 32 reader_character_sequence: STRING_CHARACTER . $default reduce using rule 32 (reader_character_sequence) -State 140 +State 138 33 reader_character_sequence: reader_character_sequence . STRING_CHARACTER 35 expr_reader: '%' name_in_namespace $@1 reader_character_sequence . - STRING_CHARACTER shift, and go to state 169 + STRING_CHARACTER shift, and go to state 167 $default reduce using rule 35 (expr_reader) -State 141 +State 139 108 annotation_declaration: '(' annotation_declaration ')' . $default reduce using rule 108 (annotation_declaration) -State 142 +State 140 95 annotation_argument_list: annotation_argument_list . ',' annotation_argument 102 annotation_declaration_basic: annotation_declaration_name '(' annotation_argument_list . ')' - ',' shift, and go to state 77 - ')' shift, and go to state 170 + ',' shift, and go to state 76 + ')' shift, and go to state 168 -State 143 +State 141 105 annotation_declaration: annotation_declaration . "&&" annotation_declaration 105 | annotation_declaration "&&" annotation_declaration . @@ -3427,323 +3406,323 @@ State 143 $default reduce using rule 105 (annotation_declaration) -State 144 +State 142 105 annotation_declaration: annotation_declaration . "&&" annotation_declaration 106 | annotation_declaration . "||" annotation_declaration 106 | annotation_declaration "||" annotation_declaration . 107 | annotation_declaration . "^^" annotation_declaration - "&&" shift, and go to state 99 - "^^" shift, and go to state 101 + "&&" shift, and go to state 97 + "^^" shift, and go to state 99 $default reduce using rule 106 (annotation_declaration) -State 145 +State 143 105 annotation_declaration: annotation_declaration . "&&" annotation_declaration 106 | annotation_declaration . "||" annotation_declaration 107 | annotation_declaration . "^^" annotation_declaration 107 | annotation_declaration "^^" annotation_declaration . - "&&" shift, and go to state 99 + "&&" shift, and go to state 97 $default reduce using rule 107 (annotation_declaration) -State 146 +State 144 105 annotation_declaration: annotation_declaration . "&&" annotation_declaration 106 | annotation_declaration . "||" annotation_declaration 107 | annotation_declaration . "^^" annotation_declaration 111 annotation_list: annotation_list ',' annotation_declaration . - "&&" shift, and go to state 99 - "||" shift, and go to state 100 - "^^" shift, and go to state 101 + "&&" shift, and go to state 97 + "||" shift, and go to state 98 + "^^" shift, and go to state 99 $default reduce using rule 111 (annotation_list) -State 147 +State 145 210 function_declaration: optional_public_or_private_function $@2 . function_declaration_header expression_block - "operator" shift, and go to state 171 - "bool" shift, and go to state 172 - "string" shift, and go to state 173 - "int" shift, and go to state 174 - "int2" shift, and go to state 175 - "int3" shift, and go to state 176 - "int4" shift, and go to state 177 - "uint" shift, and go to state 178 - "uint2" shift, and go to state 179 - "uint3" shift, and go to state 180 - "uint4" shift, and go to state 181 - "float" shift, and go to state 182 - "float2" shift, and go to state 183 - "float3" shift, and go to state 184 - "float4" shift, and go to state 185 - "range" shift, and go to state 186 - "urange" shift, and go to state 187 - "range64" shift, and go to state 188 - "urange64" shift, and go to state 189 - "int64" shift, and go to state 190 - "uint64" shift, and go to state 191 - "double" shift, and go to state 192 - "int8" shift, and go to state 193 - "uint8" shift, and go to state 194 - "int16" shift, and go to state 195 - "uint16" shift, and go to state 196 - "++" shift, and go to state 197 - "--" shift, and go to state 198 - "name" shift, and go to state 199 - - function_name go to state 200 - function_declaration_header go to state 201 + "operator" shift, and go to state 169 + "bool" shift, and go to state 170 + "string" shift, and go to state 171 + "int" shift, and go to state 172 + "int2" shift, and go to state 173 + "int3" shift, and go to state 174 + "int4" shift, and go to state 175 + "uint" shift, and go to state 176 + "uint2" shift, and go to state 177 + "uint3" shift, and go to state 178 + "uint4" shift, and go to state 179 + "float" shift, and go to state 180 + "float2" shift, and go to state 181 + "float3" shift, and go to state 182 + "float4" shift, and go to state 183 + "range" shift, and go to state 184 + "urange" shift, and go to state 185 + "range64" shift, and go to state 186 + "urange64" shift, and go to state 187 + "int64" shift, and go to state 188 + "uint64" shift, and go to state 189 + "double" shift, and go to state 190 + "int8" shift, and go to state 191 + "uint8" shift, and go to state 192 + "int16" shift, and go to state 193 + "uint16" shift, and go to state 194 + "++" shift, and go to state 195 + "--" shift, and go to state 196 + "name" shift, and go to state 197 + + function_name go to state 198 + function_declaration_header go to state 199 -State 148 +State 146 - 539 enum_name: "name" . + 538 enum_name: "name" . - $default reduce using rule 539 (enum_name) + $default reduce using rule 538 (enum_name) -State 149 +State 147 - 544 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name . optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" + 543 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name . optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" - ':' shift, and go to state 202 + ':' shift, and go to state 200 - $default reduce using rule 540 (optional_enum_basic_type_declaration) + $default reduce using rule 539 (optional_enum_basic_type_declaration) - optional_enum_basic_type_declaration go to state 203 + optional_enum_basic_type_declaration go to state 201 -State 150 +State 148 - 559 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 . structure_name $@34 optional_struct_variable_declaration_list + 558 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 . structure_name $@34 optional_struct_variable_declaration_list - "sealed" shift, and go to state 204 + "sealed" shift, and go to state 202 - $default reduce using rule 547 (optional_sealed) + $default reduce using rule 546 (optional_sealed) - optional_sealed go to state 205 - structure_name go to state 206 + optional_sealed go to state 203 + structure_name go to state 204 -State 151 +State 149 - 522 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" . global_variable_declaration_list "end of code block" + 521 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" . global_variable_declaration_list "end of code block" - $default reduce using rule 514 (global_variable_declaration_list) + $default reduce using rule 513 (global_variable_declaration_list) - global_variable_declaration_list go to state 207 + global_variable_declaration_list go to state 205 -State 152 +State 150 - 524 global_let: kwd_let optional_shared optional_public_or_private_variable $@29 . optional_field_annotation let_variable_declaration + 523 global_let: kwd_let optional_shared optional_public_or_private_variable $@29 . optional_field_annotation let_variable_declaration - '@' shift, and go to state 208 + '@' shift, and go to state 206 - $default reduce using rule 457 (optional_field_annotation) + $default reduce using rule 456 (optional_field_annotation) - metadata_argument_list go to state 209 - optional_field_annotation go to state 210 + metadata_argument_list go to state 207 + optional_field_annotation go to state 208 -State 153 +State 151 23 character_sequence: STRING_CHARACTER . $default reduce using rule 23 (character_sequence) -State 154 +State 152 24 character_sequence: STRING_CHARACTER_ESC . $default reduce using rule 24 (character_sequence) -State 155 +State 153 25 character_sequence: character_sequence . STRING_CHARACTER 26 | character_sequence . STRING_CHARACTER_ESC 27 string_constant: "start of the string" character_sequence . "end of the string" - STRING_CHARACTER shift, and go to state 211 - STRING_CHARACTER_ESC shift, and go to state 212 - "end of the string" shift, and go to state 213 + STRING_CHARACTER shift, and go to state 209 + STRING_CHARACTER_ESC shift, and go to state 210 + "end of the string" shift, and go to state 211 -State 156 +State 154 79 annotation_argument_value: "true" . $default reduce using rule 79 (annotation_argument_value) -State 157 +State 155 80 annotation_argument_value: "false" . $default reduce using rule 80 (annotation_argument_value) -State 158 +State 156 77 annotation_argument_value: "integer constant" . $default reduce using rule 77 (annotation_argument_value) -State 159 +State 157 78 annotation_argument_value: "floating point constant" . $default reduce using rule 78 (annotation_argument_value) -State 160 +State 158 76 annotation_argument_value: "name" . $default reduce using rule 76 (annotation_argument_value) -State 161 +State 159 75 annotation_argument_value: string_constant . $default reduce using rule 75 (annotation_argument_value) -State 162 +State 160 81 annotation_argument_value_list: annotation_argument_value . $default reduce using rule 81 (annotation_argument_value_list) -State 163 +State 161 82 annotation_argument_value_list: annotation_argument_value_list . ',' annotation_argument_value 93 annotation_argument: annotation_argument_name '=' '(' annotation_argument_value_list . ')' - ',' shift, and go to state 214 - ')' shift, and go to state 215 + ',' shift, and go to state 212 + ')' shift, and go to state 213 -State 164 +State 162 43 require_module: require_module_name "as" "name" is_public_module . $default reduce using rule 43 (require_module) -State 165 +State 163 - 534 single_alias: optional_public_or_private_alias "name" $@30 '=' . type_declaration - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 262 - type_declaration go to state 263 + 533 single_alias: optional_public_or_private_alias "name" $@30 '=' . type_declaration + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 260 + type_declaration_no_options_no_dim go to state 261 + type_declaration go to state 262 -State 166 +State 164 - 695 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" . $@71 bitfield_alias_bits optional_comma $@72 "end of code block" + 696 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" . $@71 bitfield_alias_bits optional_comma $@72 "end of code block" - $default reduce using rule 693 ($@71) + $default reduce using rule 694 ($@71) - $@71 go to state 264 + $@71 go to state 263 -State 167 +State 165 - 687 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" . $@65 tuple_alias_type_list $@66 "end of code block" + 688 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" . $@65 tuple_alias_type_list $@66 "end of code block" - $default reduce using rule 685 ($@65) + $default reduce using rule 686 ($@65) - $@65 go to state 265 + $@65 go to state 264 -State 168 +State 166 - 691 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" . $@68 variant_alias_type_list $@69 "end of code block" + 692 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" . $@68 variant_alias_type_list $@69 "end of code block" - $default reduce using rule 689 ($@68) + $default reduce using rule 690 ($@68) - $@68 go to state 266 + $@68 go to state 265 -State 169 +State 167 33 reader_character_sequence: reader_character_sequence STRING_CHARACTER . $default reduce using rule 33 (reader_character_sequence) -State 170 +State 168 102 annotation_declaration_basic: annotation_declaration_name '(' annotation_argument_list ')' . $default reduce using rule 102 (annotation_declaration_basic) -State 171 +State 169 120 function_name: "operator" . '!' 121 | "operator" . '~' @@ -3803,334 +3782,334 @@ State 171 177 | "operator" . '?' "as" 178 | "operator" . '?' "as" "name" - "is" shift, and go to state 267 - "as" shift, and go to state 268 - "delete" shift, and go to state 269 - "+=" shift, and go to state 270 - "-=" shift, and go to state 271 - "/=" shift, and go to state 272 - "*=" shift, and go to state 273 - "%=" shift, and go to state 274 - "&=" shift, and go to state 275 - "|=" shift, and go to state 276 - "^=" shift, and go to state 277 - "<<" shift, and go to state 278 - ">>" shift, and go to state 279 - "++" shift, and go to state 280 - "--" shift, and go to state 281 - "<=" shift, and go to state 282 - "<<=" shift, and go to state 283 - ">>=" shift, and go to state 284 - ">=" shift, and go to state 285 - "==" shift, and go to state 286 - "!=" shift, and go to state 287 - "??" shift, and go to state 288 - "?." shift, and go to state 289 - "?[" shift, and go to state 290 - ":=" shift, and go to state 291 - "<<<" shift, and go to state 292 - ">>>" shift, and go to state 293 - "<<<=" shift, and go to state 294 - ">>>=" shift, and go to state 295 - "&&" shift, and go to state 296 - "||" shift, and go to state 297 - "^^" shift, and go to state 298 - "&&=" shift, and go to state 299 - "||=" shift, and go to state 300 - "^^=" shift, and go to state 301 - ".." shift, and go to state 302 - '?' shift, and go to state 303 - '|' shift, and go to state 304 - '^' shift, and go to state 305 - '&' shift, and go to state 306 - '<' shift, and go to state 307 - '>' shift, and go to state 308 - '-' shift, and go to state 309 - '+' shift, and go to state 310 - '*' shift, and go to state 311 - '/' shift, and go to state 312 - '%' shift, and go to state 313 - '~' shift, and go to state 314 - '!' shift, and go to state 315 - '.' shift, and go to state 316 - '[' shift, and go to state 317 + "is" shift, and go to state 266 + "as" shift, and go to state 267 + "delete" shift, and go to state 268 + "+=" shift, and go to state 269 + "-=" shift, and go to state 270 + "/=" shift, and go to state 271 + "*=" shift, and go to state 272 + "%=" shift, and go to state 273 + "&=" shift, and go to state 274 + "|=" shift, and go to state 275 + "^=" shift, and go to state 276 + "<<" shift, and go to state 277 + ">>" shift, and go to state 278 + "++" shift, and go to state 279 + "--" shift, and go to state 280 + "<=" shift, and go to state 281 + "<<=" shift, and go to state 282 + ">>=" shift, and go to state 283 + ">=" shift, and go to state 284 + "==" shift, and go to state 285 + "!=" shift, and go to state 286 + "??" shift, and go to state 287 + "?." shift, and go to state 288 + "?[" shift, and go to state 289 + ":=" shift, and go to state 290 + "<<<" shift, and go to state 291 + ">>>" shift, and go to state 292 + "<<<=" shift, and go to state 293 + ">>>=" shift, and go to state 294 + "&&" shift, and go to state 295 + "||" shift, and go to state 296 + "^^" shift, and go to state 297 + "&&=" shift, and go to state 298 + "||=" shift, and go to state 299 + "^^=" shift, and go to state 300 + ".." shift, and go to state 301 + '?' shift, and go to state 302 + '|' shift, and go to state 303 + '^' shift, and go to state 304 + '&' shift, and go to state 305 + '<' shift, and go to state 306 + '>' shift, and go to state 307 + '-' shift, and go to state 308 + '+' shift, and go to state 309 + '*' shift, and go to state 310 + '/' shift, and go to state 311 + '%' shift, and go to state 312 + '~' shift, and go to state 313 + '!' shift, and go to state 314 + '.' shift, and go to state 315 + '[' shift, and go to state 316 -State 172 +State 170 179 function_name: "bool" . $default reduce using rule 179 (function_name) -State 173 +State 171 180 function_name: "string" . $default reduce using rule 180 (function_name) -State 174 +State 172 181 function_name: "int" . $default reduce using rule 181 (function_name) -State 175 +State 173 182 function_name: "int2" . $default reduce using rule 182 (function_name) -State 176 +State 174 183 function_name: "int3" . $default reduce using rule 183 (function_name) -State 177 +State 175 184 function_name: "int4" . $default reduce using rule 184 (function_name) -State 178 +State 176 185 function_name: "uint" . $default reduce using rule 185 (function_name) -State 179 +State 177 186 function_name: "uint2" . $default reduce using rule 186 (function_name) -State 180 +State 178 187 function_name: "uint3" . $default reduce using rule 187 (function_name) -State 181 +State 179 188 function_name: "uint4" . $default reduce using rule 188 (function_name) -State 182 +State 180 189 function_name: "float" . $default reduce using rule 189 (function_name) -State 183 +State 181 190 function_name: "float2" . $default reduce using rule 190 (function_name) -State 184 +State 182 191 function_name: "float3" . $default reduce using rule 191 (function_name) -State 185 +State 183 192 function_name: "float4" . $default reduce using rule 192 (function_name) -State 186 +State 184 193 function_name: "range" . $default reduce using rule 193 (function_name) -State 187 +State 185 194 function_name: "urange" . $default reduce using rule 194 (function_name) -State 188 +State 186 195 function_name: "range64" . $default reduce using rule 195 (function_name) -State 189 +State 187 196 function_name: "urange64" . $default reduce using rule 196 (function_name) -State 190 +State 188 197 function_name: "int64" . $default reduce using rule 197 (function_name) -State 191 +State 189 198 function_name: "uint64" . $default reduce using rule 198 (function_name) -State 192 +State 190 199 function_name: "double" . $default reduce using rule 199 (function_name) -State 193 +State 191 200 function_name: "int8" . $default reduce using rule 200 (function_name) -State 194 +State 192 201 function_name: "uint8" . $default reduce using rule 201 (function_name) -State 195 +State 193 202 function_name: "int16" . $default reduce using rule 202 (function_name) -State 196 +State 194 203 function_name: "uint16" . $default reduce using rule 203 (function_name) -State 197 +State 195 151 function_name: "++" . "operator" - "operator" shift, and go to state 318 + "operator" shift, and go to state 317 -State 198 +State 196 152 function_name: "--" . "operator" - "operator" shift, and go to state 319 + "operator" shift, and go to state 318 -State 199 +State 197 119 function_name: "name" . $default reduce using rule 119 (function_name) -State 200 +State 198 208 function_declaration_header: function_name . optional_function_argument_list optional_function_type - '(' shift, and go to state 320 + '(' shift, and go to state 319 $default reduce using rule 114 (optional_function_argument_list) - optional_function_argument_list go to state 321 + optional_function_argument_list go to state 320 -State 201 +State 199 210 function_declaration: optional_public_or_private_function $@2 function_declaration_header . expression_block - "begin of code block" shift, and go to state 322 + "begin of code block" shift, and go to state 321 - expression_block go to state 323 + expression_block go to state 322 -State 202 +State 200 - 541 optional_enum_basic_type_declaration: ':' . enum_basic_type_declaration + 540 optional_enum_basic_type_declaration: ':' . enum_basic_type_declaration - "int" shift, and go to state 324 - "uint" shift, and go to state 325 - "int64" shift, and go to state 326 - "uint64" shift, and go to state 327 - "int8" shift, and go to state 328 - "uint8" shift, and go to state 329 - "int16" shift, and go to state 330 - "uint16" shift, and go to state 331 + "int" shift, and go to state 323 + "uint" shift, and go to state 324 + "int64" shift, and go to state 325 + "uint64" shift, and go to state 326 + "int8" shift, and go to state 327 + "uint8" shift, and go to state 328 + "int16" shift, and go to state 329 + "uint16" shift, and go to state 330 - enum_basic_type_declaration go to state 332 + enum_basic_type_declaration go to state 331 -State 203 +State 201 - 544 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration . "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" + 543 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration . "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" - "begin of code block" shift, and go to state 333 + "begin of code block" shift, and go to state 332 -State 204 +State 202 - 548 optional_sealed: "sealed" . + 547 optional_sealed: "sealed" . - $default reduce using rule 548 (optional_sealed) + $default reduce using rule 547 (optional_sealed) -State 205 +State 203 - 549 structure_name: optional_sealed . "name" optional_structure_parent + 548 structure_name: optional_sealed . "name" optional_structure_parent - "name" shift, and go to state 334 + "name" shift, and go to state 333 -State 206 +State 204 - 559 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 structure_name . $@34 optional_struct_variable_declaration_list + 558 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 structure_name . $@34 optional_struct_variable_declaration_list - $default reduce using rule 558 ($@34) + $default reduce using rule 557 ($@34) - $@34 go to state 335 + $@34 go to state 334 -State 207 +State 205 - 516 global_variable_declaration_list: global_variable_declaration_list . $@28 optional_field_annotation let_variable_declaration - 522 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list . "end of code block" + 515 global_variable_declaration_list: global_variable_declaration_list . $@28 optional_field_annotation let_variable_declaration + 521 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list . "end of code block" - "end of code block" shift, and go to state 336 + "end of code block" shift, and go to state 335 - $default reduce using rule 515 ($@28) + $default reduce using rule 514 ($@28) - $@28 go to state 337 + $@28 go to state 336 -State 208 +State 206 96 metadata_argument_list: '@' . annotation_argument @@ -4139,1043 +4118,1048 @@ State 208 "name" shift, and go to state 34 annotation_argument_name go to state 35 - annotation_argument go to state 338 + annotation_argument go to state 337 -State 209 +State 207 97 metadata_argument_list: metadata_argument_list . '@' annotation_argument - 458 optional_field_annotation: metadata_argument_list . + 457 optional_field_annotation: metadata_argument_list . - '@' shift, and go to state 339 + '@' shift, and go to state 338 - $default reduce using rule 458 (optional_field_annotation) + $default reduce using rule 457 (optional_field_annotation) -State 210 +State 208 - 524 global_let: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation . let_variable_declaration + 523 global_let: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation . let_variable_declaration - "$i" shift, and go to state 340 - "name" shift, and go to state 341 + "$i" shift, and go to state 339 + "name" shift, and go to state 340 - let_variable_name_with_pos_list go to state 342 - let_variable_declaration go to state 343 + let_variable_name_with_pos_list go to state 341 + let_variable_declaration go to state 342 -State 211 +State 209 25 character_sequence: character_sequence STRING_CHARACTER . $default reduce using rule 25 (character_sequence) -State 212 +State 210 26 character_sequence: character_sequence STRING_CHARACTER_ESC . $default reduce using rule 26 (character_sequence) -State 213 +State 211 27 string_constant: "start of the string" character_sequence "end of the string" . $default reduce using rule 27 (string_constant) -State 214 +State 212 82 annotation_argument_value_list: annotation_argument_value_list ',' . annotation_argument_value - "true" shift, and go to state 156 - "false" shift, and go to state 157 - "integer constant" shift, and go to state 158 - "floating point constant" shift, and go to state 159 - "name" shift, and go to state 160 - "start of the string" shift, and go to state 122 + "true" shift, and go to state 154 + "false" shift, and go to state 155 + "integer constant" shift, and go to state 156 + "floating point constant" shift, and go to state 157 + "name" shift, and go to state 158 + "start of the string" shift, and go to state 120 - string_constant go to state 161 - annotation_argument_value go to state 344 + string_constant go to state 159 + annotation_argument_value go to state 343 -State 215 +State 213 93 annotation_argument: annotation_argument_name '=' '(' annotation_argument_value_list ')' . $default reduce using rule 93 (annotation_argument) -State 216 +State 214 - 624 type_declaration_no_options: "type" . '<' $@37 type_declaration '>' $@38 + 625 type_declaration_no_options_no_dim: "type" . '<' $@37 type_declaration '>' $@38 + + '<' shift, and go to state 344 + + +State 215 + + 648 type_declaration_no_options_no_dim: "array" . '<' $@42 type_declaration '>' $@43 '<' shift, and go to state 345 -State 217 +State 216 - 647 type_declaration_no_options: "array" . '<' $@42 type_declaration '>' $@43 + 651 type_declaration_no_options_no_dim: "table" . '<' $@44 table_type_pair '>' $@45 '<' shift, and go to state 346 +State 217 + + 626 type_declaration_no_options_no_dim: "typedecl" . '(' expr ')' + + '(' shift, and go to state 347 + + State 218 - 650 type_declaration_no_options: "table" . '<' $@44 table_type_pair '>' $@45 + 654 type_declaration_no_options_no_dim: "iterator" . '<' $@46 type_declaration '>' $@47 - '<' shift, and go to state 347 + '<' shift, and go to state 348 State 219 - 625 type_declaration_no_options: "typedecl" . '(' expr ')' + 644 type_declaration_no_options_no_dim: "smart_ptr" . '<' $@40 type_declaration '>' $@41 - '(' shift, and go to state 348 + '<' shift, and go to state 349 State 220 - 653 type_declaration_no_options: "iterator" . '<' $@46 type_declaration '>' $@47 + 564 basic_type_declaration: "bool" . - '<' shift, and go to state 349 + $default reduce using rule 564 (basic_type_declaration) State 221 - 643 type_declaration_no_options: "smart_ptr" . '<' $@40 type_declaration '>' $@41 + 584 basic_type_declaration: "void" . - '<' shift, and go to state 350 + $default reduce using rule 584 (basic_type_declaration) State 222 - 565 basic_type_declaration: "bool" . + 565 basic_type_declaration: "string" . $default reduce using rule 565 (basic_type_declaration) State 223 - 585 basic_type_declaration: "void" . + 600 auto_type_declaration: "auto" . + 601 | "auto" . '(' "name" ')' - $default reduce using rule 585 (basic_type_declaration) + '(' shift, and go to state 350 + + $default reduce using rule 600 (auto_type_declaration) State 224 - 566 basic_type_declaration: "string" . + 566 basic_type_declaration: "int" . $default reduce using rule 566 (basic_type_declaration) State 225 - 601 auto_type_declaration: "auto" . - 602 | "auto" . '(' "name" ')' - - '(' shift, and go to state 351 + 570 basic_type_declaration: "int2" . - $default reduce using rule 601 (auto_type_declaration) + $default reduce using rule 570 (basic_type_declaration) State 226 - 567 basic_type_declaration: "int" . + 571 basic_type_declaration: "int3" . - $default reduce using rule 567 (basic_type_declaration) + $default reduce using rule 571 (basic_type_declaration) State 227 - 571 basic_type_declaration: "int2" . + 572 basic_type_declaration: "int4" . - $default reduce using rule 571 (basic_type_declaration) + $default reduce using rule 572 (basic_type_declaration) State 228 - 572 basic_type_declaration: "int3" . + 573 basic_type_declaration: "uint" . - $default reduce using rule 572 (basic_type_declaration) + $default reduce using rule 573 (basic_type_declaration) State 229 - 573 basic_type_declaration: "int4" . + 590 basic_type_declaration: "bitfield" . + 610 bitfield_type_declaration: "bitfield" . '<' $@35 bitfield_bits '>' $@36 - $default reduce using rule 573 (basic_type_declaration) + '<' shift, and go to state 351 + + $default reduce using rule 590 (basic_type_declaration) State 230 - 574 basic_type_declaration: "uint" . + 577 basic_type_declaration: "uint2" . - $default reduce using rule 574 (basic_type_declaration) + $default reduce using rule 577 (basic_type_declaration) State 231 - 591 basic_type_declaration: "bitfield" . - 611 bitfield_type_declaration: "bitfield" . '<' $@35 bitfield_bits '>' $@36 - - '<' shift, and go to state 352 + 578 basic_type_declaration: "uint3" . - $default reduce using rule 591 (basic_type_declaration) + $default reduce using rule 578 (basic_type_declaration) State 232 - 578 basic_type_declaration: "uint2" . + 579 basic_type_declaration: "uint4" . - $default reduce using rule 578 (basic_type_declaration) + $default reduce using rule 579 (basic_type_declaration) State 233 - 579 basic_type_declaration: "uint3" . + 580 basic_type_declaration: "float" . - $default reduce using rule 579 (basic_type_declaration) + $default reduce using rule 580 (basic_type_declaration) State 234 - 580 basic_type_declaration: "uint4" . + 581 basic_type_declaration: "float2" . - $default reduce using rule 580 (basic_type_declaration) + $default reduce using rule 581 (basic_type_declaration) State 235 - 581 basic_type_declaration: "float" . + 582 basic_type_declaration: "float3" . - $default reduce using rule 581 (basic_type_declaration) + $default reduce using rule 582 (basic_type_declaration) State 236 - 582 basic_type_declaration: "float2" . + 583 basic_type_declaration: "float4" . - $default reduce using rule 582 (basic_type_declaration) + $default reduce using rule 583 (basic_type_declaration) State 237 - 583 basic_type_declaration: "float3" . + 585 basic_type_declaration: "range" . - $default reduce using rule 583 (basic_type_declaration) + $default reduce using rule 585 (basic_type_declaration) State 238 - 584 basic_type_declaration: "float4" . + 586 basic_type_declaration: "urange" . - $default reduce using rule 584 (basic_type_declaration) + $default reduce using rule 586 (basic_type_declaration) State 239 - 586 basic_type_declaration: "range" . + 587 basic_type_declaration: "range64" . - $default reduce using rule 586 (basic_type_declaration) + $default reduce using rule 587 (basic_type_declaration) State 240 - 587 basic_type_declaration: "urange" . + 588 basic_type_declaration: "urange64" . - $default reduce using rule 587 (basic_type_declaration) + $default reduce using rule 588 (basic_type_declaration) State 241 - 588 basic_type_declaration: "range64" . + 655 type_declaration_no_options_no_dim: "block" . + 658 | "block" . '<' $@48 type_declaration '>' $@49 + 661 | "block" . '<' $@50 optional_function_argument_list optional_function_type '>' $@51 - $default reduce using rule 588 (basic_type_declaration) + '<' shift, and go to state 352 + + $default reduce using rule 655 (type_declaration_no_options_no_dim) State 242 - 589 basic_type_declaration: "urange64" . + 569 basic_type_declaration: "int64" . - $default reduce using rule 589 (basic_type_declaration) + $default reduce using rule 569 (basic_type_declaration) State 243 - 654 type_declaration_no_options: "block" . - 657 | "block" . '<' $@48 type_declaration '>' $@49 - 660 | "block" . '<' $@50 optional_function_argument_list optional_function_type '>' $@51 - - '<' shift, and go to state 353 + 576 basic_type_declaration: "uint64" . - $default reduce using rule 654 (type_declaration_no_options) + $default reduce using rule 576 (basic_type_declaration) State 244 - 570 basic_type_declaration: "int64" . + 589 basic_type_declaration: "double" . - $default reduce using rule 570 (basic_type_declaration) + $default reduce using rule 589 (basic_type_declaration) State 245 - 577 basic_type_declaration: "uint64" . + 662 type_declaration_no_options_no_dim: "function" . + 665 | "function" . '<' $@52 type_declaration '>' $@53 + 668 | "function" . '<' $@54 optional_function_argument_list optional_function_type '>' $@55 - $default reduce using rule 577 (basic_type_declaration) + '<' shift, and go to state 353 + + $default reduce using rule 662 (type_declaration_no_options_no_dim) State 246 - 590 basic_type_declaration: "double" . + 669 type_declaration_no_options_no_dim: "lambda" . + 672 | "lambda" . '<' $@56 type_declaration '>' $@57 + 675 | "lambda" . '<' $@58 optional_function_argument_list optional_function_type '>' $@59 - $default reduce using rule 590 (basic_type_declaration) + '<' shift, and go to state 354 + $default reduce using rule 669 (type_declaration_no_options_no_dim) -State 247 - 661 type_declaration_no_options: "function" . - 664 | "function" . '<' $@52 type_declaration '>' $@53 - 667 | "function" . '<' $@54 optional_function_argument_list optional_function_type '>' $@55 +State 247 - '<' shift, and go to state 354 + 567 basic_type_declaration: "int8" . - $default reduce using rule 661 (type_declaration_no_options) + $default reduce using rule 567 (basic_type_declaration) State 248 - 668 type_declaration_no_options: "lambda" . - 671 | "lambda" . '<' $@56 type_declaration '>' $@57 - 674 | "lambda" . '<' $@58 optional_function_argument_list optional_function_type '>' $@59 - - '<' shift, and go to state 355 + 574 basic_type_declaration: "uint8" . - $default reduce using rule 668 (type_declaration_no_options) + $default reduce using rule 574 (basic_type_declaration) State 249 - 568 basic_type_declaration: "int8" . + 568 basic_type_declaration: "int16" . $default reduce using rule 568 (basic_type_declaration) State 250 - 575 basic_type_declaration: "uint8" . + 575 basic_type_declaration: "uint16" . $default reduce using rule 575 (basic_type_declaration) State 251 - 569 basic_type_declaration: "int16" . + 678 type_declaration_no_options_no_dim: "tuple" . '<' $@60 tuple_type_list '>' $@61 - $default reduce using rule 569 (basic_type_declaration) + '<' shift, and go to state 355 State 252 - 576 basic_type_declaration: "uint16" . + 681 type_declaration_no_options_no_dim: "variant" . '<' $@62 variant_type_list '>' $@63 - $default reduce using rule 576 (basic_type_declaration) + '<' shift, and go to state 356 State 253 - 677 type_declaration_no_options: "tuple" . '<' $@60 tuple_type_list '>' $@61 + 602 auto_type_declaration: "$t" . '(' expr ')' - '<' shift, and go to state 356 + '(' shift, and go to state 357 State 254 - 680 type_declaration_no_options: "variant" . '<' $@62 variant_type_list '>' $@63 + 627 type_declaration_no_options_no_dim: '$' . name_in_namespace '(' optional_expr_list ')' + 629 | '$' . name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' + + "name" shift, and go to state 55 - '<' shift, and go to state 357 + name_in_namespace go to state 358 State 255 - 603 auto_type_declaration: "$t" . '(' expr ')' + 599 structure_type_declaration: name_in_namespace . - '(' shift, and go to state 358 + $default reduce using rule 599 (structure_type_declaration) State 256 - 626 type_declaration_no_options: '$' . name_in_namespace '(' optional_expr_list ')' - 628 | '$' . name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' + 619 type_declaration_no_options_no_dim: basic_type_declaration . - "::" shift, and go to state 55 - "name" shift, and go to state 56 - - name_in_namespace go to state 359 + $default reduce using rule 619 (type_declaration_no_options_no_dim) State 257 - 600 structure_type_declaration: name_in_namespace . + 622 type_declaration_no_options_no_dim: structure_type_declaration . - $default reduce using rule 600 (structure_type_declaration) + $default reduce using rule 622 (type_declaration_no_options_no_dim) State 258 - 616 type_declaration_no_options: basic_type_declaration . + 620 type_declaration_no_options_no_dim: auto_type_declaration . - $default reduce using rule 616 (type_declaration_no_options) + $default reduce using rule 620 (type_declaration_no_options_no_dim) State 259 - 619 type_declaration_no_options: structure_type_declaration . + 621 type_declaration_no_options_no_dim: bitfield_type_declaration . - $default reduce using rule 619 (type_declaration_no_options) + $default reduce using rule 621 (type_declaration_no_options_no_dim) State 260 - 617 type_declaration_no_options: auto_type_declaration . + 682 type_declaration: type_declaration_no_options . - $default reduce using rule 617 (type_declaration_no_options) + $default reduce using rule 682 (type_declaration) State 261 - 618 type_declaration_no_options: bitfield_type_declaration . + 617 type_declaration_no_options: type_declaration_no_options_no_dim . + 618 | type_declaration_no_options_no_dim . dim_list + 630 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim . '-' '[' ']' + 631 | type_declaration_no_options_no_dim . "explicit" + 632 | type_declaration_no_options_no_dim . "const" + 633 | type_declaration_no_options_no_dim . '-' "const" + 634 | type_declaration_no_options_no_dim . '&' + 635 | type_declaration_no_options_no_dim . '-' '&' + 636 | type_declaration_no_options_no_dim . '#' + 637 | type_declaration_no_options_no_dim . "implicit" + 638 | type_declaration_no_options_no_dim . '-' '#' + 639 | type_declaration_no_options_no_dim . "==" "const" + 640 | type_declaration_no_options_no_dim . "==" '&' + 641 | type_declaration_no_options_no_dim . '*' + 645 | type_declaration_no_options_no_dim . "??" + + "const" shift, and go to state 359 + "implicit" shift, and go to state 360 + "explicit" shift, and go to state 361 + "==" shift, and go to state 362 + "??" shift, and go to state 363 + '&' shift, and go to state 364 + '-' shift, and go to state 365 + '*' shift, and go to state 366 + '[' shift, and go to state 367 + '#' shift, and go to state 368 - $default reduce using rule 618 (type_declaration_no_options) + $default reduce using rule 617 (type_declaration_no_options) + + dim_list go to state 369 State 262 - 620 type_declaration_no_options: type_declaration_no_options . dim_list - 621 | type_declaration_no_options . '[' ']' - 629 | type_declaration_no_options . '-' '[' ']' - 630 | type_declaration_no_options . "explicit" - 631 | type_declaration_no_options . "const" - 632 | type_declaration_no_options . '-' "const" - 633 | type_declaration_no_options . '&' - 634 | type_declaration_no_options . '-' '&' - 635 | type_declaration_no_options . '#' - 636 | type_declaration_no_options . "implicit" - 637 | type_declaration_no_options . '-' '#' - 638 | type_declaration_no_options . "==" "const" - 639 | type_declaration_no_options . "==" '&' - 640 | type_declaration_no_options . '*' - 644 | type_declaration_no_options . "??" - 681 type_declaration: type_declaration_no_options . - - "const" shift, and go to state 360 - "implicit" shift, and go to state 361 - "explicit" shift, and go to state 362 - "==" shift, and go to state 363 - "??" shift, and go to state 364 - '&' shift, and go to state 365 - '-' shift, and go to state 366 - '*' shift, and go to state 367 - '[' shift, and go to state 368 - '#' shift, and go to state 369 - - $default reduce using rule 681 (type_declaration) - - dim_list go to state 370 + 533 single_alias: optional_public_or_private_alias "name" $@30 '=' type_declaration . + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' + + '|' shift, and go to state 370 + + $default reduce using rule 533 (single_alias) State 263 - 534 single_alias: optional_public_or_private_alias "name" $@30 '=' type_declaration . - 682 type_declaration: type_declaration . '|' type_declaration_no_options - 683 | type_declaration . '|' '#' + 696 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 . bitfield_alias_bits optional_comma $@72 "end of code block" - '|' shift, and go to state 371 + "name" shift, and go to state 371 - $default reduce using rule 534 (single_alias) + $default reduce using rule 605 (bitfield_alias_bits) + bitfield_alias_bits go to state 372 -State 264 - 695 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 . bitfield_alias_bits optional_comma $@72 "end of code block" +State 264 - "name" shift, and go to state 372 + 688 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 . tuple_alias_type_list $@66 "end of code block" - $default reduce using rule 606 (bitfield_alias_bits) + $default reduce using rule 484 (tuple_alias_type_list) - bitfield_alias_bits go to state 373 + tuple_alias_type_list go to state 373 State 265 - 687 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 . tuple_alias_type_list $@66 "end of code block" + 692 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 . variant_alias_type_list $@69 "end of code block" - $default reduce using rule 485 (tuple_alias_type_list) + $default reduce using rule 490 (variant_alias_type_list) - tuple_alias_type_list go to state 374 + variant_alias_type_list go to state 374 State 266 - 691 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 . variant_alias_type_list $@69 "end of code block" - - $default reduce using rule 491 (variant_alias_type_list) - - variant_alias_type_list go to state 375 - - -State 267 - 173 function_name: "operator" "is" . 175 | "operator" "is" . "name" - "name" shift, and go to state 376 + "name" shift, and go to state 375 $default reduce using rule 173 (function_name) -State 268 +State 267 174 function_name: "operator" "as" . 176 | "operator" "as" . "name" - "name" shift, and go to state 377 + "name" shift, and go to state 376 $default reduce using rule 174 (function_name) -State 269 +State 268 171 function_name: "operator" "delete" . $default reduce using rule 171 (function_name) -State 270 +State 269 122 function_name: "operator" "+=" . $default reduce using rule 122 (function_name) -State 271 +State 270 123 function_name: "operator" "-=" . $default reduce using rule 123 (function_name) -State 272 +State 271 125 function_name: "operator" "/=" . $default reduce using rule 125 (function_name) -State 273 +State 272 124 function_name: "operator" "*=" . $default reduce using rule 124 (function_name) -State 274 +State 273 126 function_name: "operator" "%=" . $default reduce using rule 126 (function_name) -State 275 +State 274 127 function_name: "operator" "&=" . $default reduce using rule 127 (function_name) -State 276 +State 275 128 function_name: "operator" "|=" . $default reduce using rule 128 (function_name) -State 277 +State 276 129 function_name: "operator" "^=" . $default reduce using rule 129 (function_name) -State 278 +State 277 155 function_name: "operator" "<<" . $default reduce using rule 155 (function_name) -State 279 +State 278 156 function_name: "operator" ">>" . $default reduce using rule 156 (function_name) -State 280 +State 279 153 function_name: "operator" "++" . $default reduce using rule 153 (function_name) -State 281 +State 280 154 function_name: "operator" "--" . $default reduce using rule 154 (function_name) -State 282 +State 281 146 function_name: "operator" "<=" . $default reduce using rule 146 (function_name) -State 283 +State 282 157 function_name: "operator" "<<=" . $default reduce using rule 157 (function_name) -State 284 +State 283 158 function_name: "operator" ">>=" . $default reduce using rule 158 (function_name) -State 285 +State 284 147 function_name: "operator" ">=" . $default reduce using rule 147 (function_name) -State 286 +State 285 144 function_name: "operator" "==" . $default reduce using rule 144 (function_name) -State 287 +State 286 145 function_name: "operator" "!=" . $default reduce using rule 145 (function_name) -State 288 +State 287 172 function_name: "operator" "??" . $default reduce using rule 172 (function_name) -State 289 +State 288 166 function_name: "operator" "?." . 169 | "operator" "?." . "name" - "name" shift, and go to state 378 + "name" shift, and go to state 377 $default reduce using rule 166 (function_name) -State 290 +State 289 164 function_name: "operator" "?[" . ']' - ']' shift, and go to state 379 + ']' shift, and go to state 378 -State 291 +State 290 170 function_name: "operator" ":=" . $default reduce using rule 170 (function_name) -State 292 +State 291 159 function_name: "operator" "<<<" . $default reduce using rule 159 (function_name) -State 293 +State 292 160 function_name: "operator" ">>>" . $default reduce using rule 160 (function_name) -State 294 +State 293 161 function_name: "operator" "<<<=" . $default reduce using rule 161 (function_name) -State 295 +State 294 162 function_name: "operator" ">>>=" . $default reduce using rule 162 (function_name) -State 296 +State 295 133 function_name: "operator" "&&" . $default reduce using rule 133 (function_name) -State 297 +State 296 134 function_name: "operator" "||" . $default reduce using rule 134 (function_name) -State 298 +State 297 135 function_name: "operator" "^^" . $default reduce using rule 135 (function_name) -State 299 +State 298 130 function_name: "operator" "&&=" . $default reduce using rule 130 (function_name) -State 300 +State 299 131 function_name: "operator" "||=" . $default reduce using rule 131 (function_name) -State 301 +State 300 132 function_name: "operator" "^^=" . $default reduce using rule 132 (function_name) -State 302 +State 301 143 function_name: "operator" ".." . $default reduce using rule 143 (function_name) -State 303 +State 302 177 function_name: "operator" '?' . "as" 178 | "operator" '?' . "as" "name" - "as" shift, and go to state 380 + "as" shift, and go to state 379 -State 304 +State 303 149 function_name: "operator" '|' . $default reduce using rule 149 (function_name) -State 305 +State 304 150 function_name: "operator" '^' . $default reduce using rule 150 (function_name) -State 306 +State 305 148 function_name: "operator" '&' . $default reduce using rule 148 (function_name) -State 307 +State 306 141 function_name: "operator" '<' . $default reduce using rule 141 (function_name) -State 308 +State 307 142 function_name: "operator" '>' . $default reduce using rule 142 (function_name) -State 309 +State 308 137 function_name: "operator" '-' . $default reduce using rule 137 (function_name) -State 310 +State 309 136 function_name: "operator" '+' . $default reduce using rule 136 (function_name) -State 311 +State 310 138 function_name: "operator" '*' . $default reduce using rule 138 (function_name) -State 312 +State 311 139 function_name: "operator" '/' . $default reduce using rule 139 (function_name) -State 313 +State 312 140 function_name: "operator" '%' . $default reduce using rule 140 (function_name) -State 314 +State 313 121 function_name: "operator" '~' . $default reduce using rule 121 (function_name) -State 315 +State 314 120 function_name: "operator" '!' . $default reduce using rule 120 (function_name) -State 316 +State 315 165 function_name: "operator" '.' . 167 | "operator" '.' . "name" 168 | "operator" '.' . "name" ":=" - "name" shift, and go to state 381 + "name" shift, and go to state 380 $default reduce using rule 165 (function_name) -State 317 +State 316 163 function_name: "operator" '[' . ']' - ']' shift, and go to state 382 + ']' shift, and go to state 381 -State 318 +State 317 151 function_name: "++" "operator" . $default reduce using rule 151 (function_name) -State 319 +State 318 152 function_name: "--" "operator" . $default reduce using rule 152 (function_name) -State 320 +State 319 115 optional_function_argument_list: '(' . ')' 116 | '(' . function_argument_list ')' - "$a" shift, and go to state 383 - ')' shift, and go to state 384 - '@' shift, and go to state 208 + "$a" shift, and go to state 382 + ')' shift, and go to state 383 + '@' shift, and go to state 206 - $default reduce using rule 457 (optional_field_annotation) + $default reduce using rule 456 (optional_field_annotation) - metadata_argument_list go to state 209 - optional_field_annotation go to state 385 - function_argument_declaration go to state 386 - function_argument_list go to state 387 + metadata_argument_list go to state 207 + optional_field_annotation go to state 384 + function_argument_declaration go to state 385 + function_argument_list go to state 386 -State 321 +State 320 208 function_declaration_header: function_name optional_function_argument_list . optional_function_type - ':' shift, and go to state 388 + ':' shift, and go to state 387 $default reduce using rule 117 (optional_function_type) - optional_function_type go to state 389 + optional_function_type go to state 388 -State 322 +State 321 211 expression_block: "begin of code block" . expressions "end of code block" 212 | "begin of code block" . expressions "end of code block" "finally" "begin of code block" expressions "end of code block" $default reduce using rule 232 (expressions) - expressions go to state 390 + expressions go to state 389 -State 323 +State 322 210 function_declaration: optional_public_or_private_function $@2 function_declaration_header expression_block . $default reduce using rule 210 (function_declaration) +State 323 + + 591 enum_basic_type_declaration: "int" . + + $default reduce using rule 591 (enum_basic_type_declaration) + + State 324 - 592 enum_basic_type_declaration: "int" . + 594 enum_basic_type_declaration: "uint" . - $default reduce using rule 592 (enum_basic_type_declaration) + $default reduce using rule 594 (enum_basic_type_declaration) State 325 - 595 enum_basic_type_declaration: "uint" . + 597 enum_basic_type_declaration: "int64" . - $default reduce using rule 595 (enum_basic_type_declaration) + $default reduce using rule 597 (enum_basic_type_declaration) State 326 - 598 enum_basic_type_declaration: "int64" . + 598 enum_basic_type_declaration: "uint64" . $default reduce using rule 598 (enum_basic_type_declaration) State 327 - 599 enum_basic_type_declaration: "uint64" . + 592 enum_basic_type_declaration: "int8" . - $default reduce using rule 599 (enum_basic_type_declaration) + $default reduce using rule 592 (enum_basic_type_declaration) State 328 - 593 enum_basic_type_declaration: "int8" . + 595 enum_basic_type_declaration: "uint8" . - $default reduce using rule 593 (enum_basic_type_declaration) + $default reduce using rule 595 (enum_basic_type_declaration) State 329 - 596 enum_basic_type_declaration: "uint8" . + 593 enum_basic_type_declaration: "int16" . - $default reduce using rule 596 (enum_basic_type_declaration) + $default reduce using rule 593 (enum_basic_type_declaration) State 330 - 594 enum_basic_type_declaration: "int16" . + 596 enum_basic_type_declaration: "uint16" . - $default reduce using rule 594 (enum_basic_type_declaration) + $default reduce using rule 596 (enum_basic_type_declaration) State 331 - 597 enum_basic_type_declaration: "uint16" . + 540 optional_enum_basic_type_declaration: ':' enum_basic_type_declaration . - $default reduce using rule 597 (enum_basic_type_declaration) + $default reduce using rule 540 (optional_enum_basic_type_declaration) State 332 - 541 optional_enum_basic_type_declaration: ':' enum_basic_type_declaration . + 543 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" . $@31 enum_list optional_comma $@32 "end of code block" - $default reduce using rule 541 (optional_enum_basic_type_declaration) + $default reduce using rule 541 ($@31) + + $@31 go to state 390 State 333 - 544 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" . $@31 enum_list optional_comma $@32 "end of code block" + 548 structure_name: optional_sealed "name" . optional_structure_parent + + ':' shift, and go to state 391 - $default reduce using rule 542 ($@31) + $default reduce using rule 544 (optional_structure_parent) - $@31 go to state 391 + optional_structure_parent go to state 392 State 334 - 549 structure_name: optional_sealed "name" . optional_structure_parent + 558 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 structure_name $@34 . optional_struct_variable_declaration_list - ':' shift, and go to state 392 + "begin of code block" shift, and go to state 393 - $default reduce using rule 545 (optional_structure_parent) + $default reduce using rule 554 (optional_struct_variable_declaration_list) - optional_structure_parent go to state 393 + optional_struct_variable_declaration_list go to state 394 State 335 - 559 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 structure_name $@34 . optional_struct_variable_declaration_list - - "begin of code block" shift, and go to state 394 - - $default reduce using rule 555 (optional_struct_variable_declaration_list) + 521 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" . - optional_struct_variable_declaration_list go to state 395 + $default reduce using rule 521 (global_let) State 336 - 522 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" . + 515 global_variable_declaration_list: global_variable_declaration_list $@28 . optional_field_annotation let_variable_declaration - $default reduce using rule 522 (global_let) + '@' shift, and go to state 206 + $default reduce using rule 456 (optional_field_annotation) -State 337 - - 516 global_variable_declaration_list: global_variable_declaration_list $@28 . optional_field_annotation let_variable_declaration - - '@' shift, and go to state 208 - - $default reduce using rule 457 (optional_field_annotation) - - metadata_argument_list go to state 209 - optional_field_annotation go to state 396 + metadata_argument_list go to state 207 + optional_field_annotation go to state 395 -State 338 +State 337 96 metadata_argument_list: '@' annotation_argument . $default reduce using rule 96 (metadata_argument_list) -State 339 +State 338 97 metadata_argument_list: metadata_argument_list '@' . annotation_argument @@ -5184,4372 +5168,4326 @@ State 339 "name" shift, and go to state 34 annotation_argument_name go to state 35 - annotation_argument go to state 397 + annotation_argument go to state 396 + + +State 339 + + 506 let_variable_name_with_pos_list: "$i" . '(' expr ')' + + '(' shift, and go to state 397 State 340 - 507 let_variable_name_with_pos_list: "$i" . '(' expr ')' + 505 let_variable_name_with_pos_list: "name" . + 507 | "name" . "aka" "name" - '(' shift, and go to state 398 + "aka" shift, and go to state 398 + $default reduce using rule 505 (let_variable_name_with_pos_list) -State 341 - 506 let_variable_name_with_pos_list: "name" . - 508 | "name" . "aka" "name" +State 341 - "aka" shift, and go to state 399 + 508 let_variable_name_with_pos_list: let_variable_name_with_pos_list . ',' "name" + 509 | let_variable_name_with_pos_list . ',' "name" "aka" "name" + 510 let_variable_declaration: let_variable_name_with_pos_list . ':' type_declaration_no_options "end of expression" + 511 | let_variable_name_with_pos_list . ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 512 | let_variable_name_with_pos_list . optional_ref copy_or_move_or_clone expr "end of expression" - $default reduce using rule 506 (let_variable_name_with_pos_list) + ',' shift, and go to state 399 + ':' shift, and go to state 400 + '&' shift, and go to state 401 + $default reduce using rule 503 (optional_ref) -State 342 + optional_ref go to state 402 - 509 let_variable_name_with_pos_list: let_variable_name_with_pos_list . ',' "name" - 510 | let_variable_name_with_pos_list . ',' "name" "aka" "name" - 511 let_variable_declaration: let_variable_name_with_pos_list . ':' type_declaration_no_options "end of expression" - 512 | let_variable_name_with_pos_list . ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 513 | let_variable_name_with_pos_list . optional_ref copy_or_move_or_clone expr "end of expression" - ',' shift, and go to state 400 - ':' shift, and go to state 401 - '&' shift, and go to state 402 +State 342 - $default reduce using rule 504 (optional_ref) + 523 global_let: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration . - optional_ref go to state 403 + $default reduce using rule 523 (global_let) State 343 - 524 global_let: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration . + 82 annotation_argument_value_list: annotation_argument_value_list ',' annotation_argument_value . - $default reduce using rule 524 (global_let) + $default reduce using rule 82 (annotation_argument_value_list) State 344 - 82 annotation_argument_value_list: annotation_argument_value_list ',' annotation_argument_value . + 625 type_declaration_no_options_no_dim: "type" '<' . $@37 type_declaration '>' $@38 - $default reduce using rule 82 (annotation_argument_value_list) + $default reduce using rule 623 ($@37) + + $@37 go to state 403 State 345 - 624 type_declaration_no_options: "type" '<' . $@37 type_declaration '>' $@38 + 648 type_declaration_no_options_no_dim: "array" '<' . $@42 type_declaration '>' $@43 - $default reduce using rule 622 ($@37) + $default reduce using rule 646 ($@42) - $@37 go to state 404 + $@42 go to state 404 State 346 - 647 type_declaration_no_options: "array" '<' . $@42 type_declaration '>' $@43 + 651 type_declaration_no_options_no_dim: "table" '<' . $@44 table_type_pair '>' $@45 - $default reduce using rule 645 ($@42) + $default reduce using rule 649 ($@44) - $@42 go to state 405 + $@44 go to state 405 State 347 - 650 type_declaration_no_options: "table" '<' . $@44 table_type_pair '>' $@45 + 626 type_declaration_no_options_no_dim: "typedecl" '(' . expr ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 + '%' shift, and go to state 14 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 470 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 - $default reduce using rule 648 ($@44) - $@44 go to state 406 +State 348 + 654 type_declaration_no_options_no_dim: "iterator" '<' . $@46 type_declaration '>' $@47 -State 348 + $default reduce using rule 652 ($@46) - 625 type_declaration_no_options: "typedecl" '(' . expr ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 - '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 471 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + $@46 go to state 479 State 349 - 653 type_declaration_no_options: "iterator" '<' . $@46 type_declaration '>' $@47 + 644 type_declaration_no_options_no_dim: "smart_ptr" '<' . $@40 type_declaration '>' $@41 - $default reduce using rule 651 ($@46) + $default reduce using rule 642 ($@40) - $@46 go to state 480 + $@40 go to state 480 State 350 - 643 type_declaration_no_options: "smart_ptr" '<' . $@40 type_declaration '>' $@41 + 601 auto_type_declaration: "auto" '(' . "name" ')' - $default reduce using rule 641 ($@40) - - $@40 go to state 481 + "name" shift, and go to state 481 State 351 - 602 auto_type_declaration: "auto" '(' . "name" ')' + 610 bitfield_type_declaration: "bitfield" '<' . $@35 bitfield_bits '>' $@36 + + $default reduce using rule 608 ($@35) - "name" shift, and go to state 482 + $@35 go to state 482 State 352 - 611 bitfield_type_declaration: "bitfield" '<' . $@35 bitfield_bits '>' $@36 + 658 type_declaration_no_options_no_dim: "block" '<' . $@48 type_declaration '>' $@49 + 661 | "block" '<' . $@50 optional_function_argument_list optional_function_type '>' $@51 - $default reduce using rule 609 ($@35) + ':' reduce using rule 659 ($@50) + '>' reduce using rule 659 ($@50) + '(' reduce using rule 659 ($@50) + $default reduce using rule 656 ($@48) - $@35 go to state 483 + $@48 go to state 483 + $@50 go to state 484 State 353 - 657 type_declaration_no_options: "block" '<' . $@48 type_declaration '>' $@49 - 660 | "block" '<' . $@50 optional_function_argument_list optional_function_type '>' $@51 + 665 type_declaration_no_options_no_dim: "function" '<' . $@52 type_declaration '>' $@53 + 668 | "function" '<' . $@54 optional_function_argument_list optional_function_type '>' $@55 - ':' reduce using rule 658 ($@50) - '>' reduce using rule 658 ($@50) - '(' reduce using rule 658 ($@50) - $default reduce using rule 655 ($@48) + ':' reduce using rule 666 ($@54) + '>' reduce using rule 666 ($@54) + '(' reduce using rule 666 ($@54) + $default reduce using rule 663 ($@52) - $@48 go to state 484 - $@50 go to state 485 + $@52 go to state 485 + $@54 go to state 486 State 354 - 664 type_declaration_no_options: "function" '<' . $@52 type_declaration '>' $@53 - 667 | "function" '<' . $@54 optional_function_argument_list optional_function_type '>' $@55 + 672 type_declaration_no_options_no_dim: "lambda" '<' . $@56 type_declaration '>' $@57 + 675 | "lambda" '<' . $@58 optional_function_argument_list optional_function_type '>' $@59 - ':' reduce using rule 665 ($@54) - '>' reduce using rule 665 ($@54) - '(' reduce using rule 665 ($@54) - $default reduce using rule 662 ($@52) + ':' reduce using rule 673 ($@58) + '>' reduce using rule 673 ($@58) + '(' reduce using rule 673 ($@58) + $default reduce using rule 670 ($@56) - $@52 go to state 486 - $@54 go to state 487 + $@56 go to state 487 + $@58 go to state 488 State 355 - 671 type_declaration_no_options: "lambda" '<' . $@56 type_declaration '>' $@57 - 674 | "lambda" '<' . $@58 optional_function_argument_list optional_function_type '>' $@59 + 678 type_declaration_no_options_no_dim: "tuple" '<' . $@60 tuple_type_list '>' $@61 - ':' reduce using rule 672 ($@58) - '>' reduce using rule 672 ($@58) - '(' reduce using rule 672 ($@58) - $default reduce using rule 669 ($@56) + $default reduce using rule 676 ($@60) - $@56 go to state 488 - $@58 go to state 489 + $@60 go to state 489 State 356 - 677 type_declaration_no_options: "tuple" '<' . $@60 tuple_type_list '>' $@61 + 681 type_declaration_no_options_no_dim: "variant" '<' . $@62 variant_type_list '>' $@63 - $default reduce using rule 675 ($@60) + $default reduce using rule 679 ($@62) - $@60 go to state 490 + $@62 go to state 490 State 357 - 680 type_declaration_no_options: "variant" '<' . $@62 variant_type_list '>' $@63 - - $default reduce using rule 678 ($@62) - - $@62 go to state 491 + 602 auto_type_declaration: "$t" '(' . expr ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 + '%' shift, and go to state 14 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 491 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 358 - 603 auto_type_declaration: "$t" '(' . expr ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 - '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 492 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + 627 type_declaration_no_options_no_dim: '$' name_in_namespace . '(' optional_expr_list ')' + 629 | '$' name_in_namespace . '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' + + '<' shift, and go to state 492 + '(' shift, and go to state 493 State 359 - 626 type_declaration_no_options: '$' name_in_namespace . '(' optional_expr_list ')' - 628 | '$' name_in_namespace . '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' + 632 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "const" . - '<' shift, and go to state 493 - '(' shift, and go to state 494 + $default reduce using rule 632 (type_declaration_no_options_no_dim) State 360 - 631 type_declaration_no_options: type_declaration_no_options "const" . + 637 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "implicit" . - $default reduce using rule 631 (type_declaration_no_options) + $default reduce using rule 637 (type_declaration_no_options_no_dim) State 361 - 636 type_declaration_no_options: type_declaration_no_options "implicit" . + 631 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "explicit" . - $default reduce using rule 636 (type_declaration_no_options) + $default reduce using rule 631 (type_declaration_no_options_no_dim) State 362 - 630 type_declaration_no_options: type_declaration_no_options "explicit" . + 639 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "==" . "const" + 640 | type_declaration_no_options_no_dim "==" . '&' - $default reduce using rule 630 (type_declaration_no_options) + "const" shift, and go to state 494 + '&' shift, and go to state 495 State 363 - 638 type_declaration_no_options: type_declaration_no_options "==" . "const" - 639 | type_declaration_no_options "==" . '&' + 645 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "??" . - "const" shift, and go to state 495 - '&' shift, and go to state 496 + $default reduce using rule 645 (type_declaration_no_options_no_dim) State 364 - 644 type_declaration_no_options: type_declaration_no_options "??" . + 634 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '&' . - $default reduce using rule 644 (type_declaration_no_options) + $default reduce using rule 634 (type_declaration_no_options_no_dim) State 365 - 633 type_declaration_no_options: type_declaration_no_options '&' . + 630 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' . '[' ']' + 633 | type_declaration_no_options_no_dim '-' . "const" + 635 | type_declaration_no_options_no_dim '-' . '&' + 638 | type_declaration_no_options_no_dim '-' . '#' - $default reduce using rule 633 (type_declaration_no_options) + "const" shift, and go to state 496 + '&' shift, and go to state 497 + '[' shift, and go to state 498 + '#' shift, and go to state 499 State 366 - 629 type_declaration_no_options: type_declaration_no_options '-' . '[' ']' - 632 | type_declaration_no_options '-' . "const" - 634 | type_declaration_no_options '-' . '&' - 637 | type_declaration_no_options '-' . '#' + 641 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '*' . - "const" shift, and go to state 497 - '&' shift, and go to state 498 - '[' shift, and go to state 499 - '#' shift, and go to state 500 + $default reduce using rule 641 (type_declaration_no_options_no_dim) State 367 - 640 type_declaration_no_options: type_declaration_no_options '*' . - - $default reduce using rule 640 (type_declaration_no_options) + 613 dim_list: '[' . expr ']' + 614 | '[' . ']' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 + '%' shift, and go to state 14 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + ']' shift, and go to state 500 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 501 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 368 - 614 dim_list: '[' . expr ']' - 621 type_declaration_no_options: type_declaration_no_options '[' . ']' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 - '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - ']' shift, and go to state 501 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 502 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + 636 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '#' . + $default reduce using rule 636 (type_declaration_no_options_no_dim) -State 369 - 635 type_declaration_no_options: type_declaration_no_options '#' . +State 369 - $default reduce using rule 635 (type_declaration_no_options) + 615 dim_list: dim_list . '[' expr ']' + 616 | dim_list . '[' ']' + 618 type_declaration_no_options: type_declaration_no_options_no_dim dim_list . + '[' shift, and go to state 502 -State 370 + $default reduce using rule 618 (type_declaration_no_options) - 615 dim_list: dim_list . '[' expr ']' - 620 type_declaration_no_options: type_declaration_no_options dim_list . - '[' shift, and go to state 503 +State 370 - '[' [reduce using rule 620 (type_declaration_no_options)] - $default reduce using rule 620 (type_declaration_no_options) + 683 type_declaration: type_declaration '|' . type_declaration_no_options + 684 | type_declaration '|' . '#' + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + '#' shift, and go to state 503 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 504 + type_declaration_no_options_no_dim go to state 261 State 371 - 682 type_declaration: type_declaration '|' . type_declaration_no_options - 683 | type_declaration '|' . '#' - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - '#' shift, and go to state 504 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 505 + 606 bitfield_alias_bits: "name" . + + $default reduce using rule 606 (bitfield_alias_bits) State 372 - 607 bitfield_alias_bits: "name" . - - $default reduce using rule 607 (bitfield_alias_bits) + 607 bitfield_alias_bits: bitfield_alias_bits . ',' "name" + 696 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits . optional_comma $@72 "end of code block" + ',' shift, and go to state 505 -State 373 + $default reduce using rule 759 (optional_comma) - 608 bitfield_alias_bits: bitfield_alias_bits . ',' "name" - 695 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits . optional_comma $@72 "end of code block" + optional_comma go to state 506 - ',' shift, and go to state 506 - $default reduce using rule 758 (optional_comma) +State 373 - optional_comma go to state 507 + 485 tuple_alias_type_list: tuple_alias_type_list . "end of expression" + 486 | tuple_alias_type_list . tuple_type "end of expression" + 688 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list . $@66 "end of code block" + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 507 + "end of expression" shift, and go to state 508 + '$' shift, and go to state 254 + + $default reduce using rule 687 ($@66) + + name_in_namespace go to state 255 + tuple_type go to state 509 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 260 + type_declaration_no_options_no_dim go to state 261 + type_declaration go to state 510 + $@66 go to state 511 State 374 - 486 tuple_alias_type_list: tuple_alias_type_list . "end of expression" - 487 | tuple_alias_type_list . tuple_type "end of expression" - 687 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list . $@66 "end of code block" - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 508 - "end of expression" shift, and go to state 509 - '$' shift, and go to state 256 - - $default reduce using rule 686 ($@66) - - name_in_namespace go to state 257 - tuple_type go to state 510 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 262 - type_declaration go to state 511 - $@66 go to state 512 - - -State 375 - - 492 variant_alias_type_list: variant_alias_type_list . "end of expression" - 493 | variant_alias_type_list . variant_type "end of expression" - 691 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list . $@69 "end of code block" + 491 variant_alias_type_list: variant_alias_type_list . "end of expression" + 492 | variant_alias_type_list . variant_type "end of expression" + 692 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list . $@69 "end of code block" - "name" shift, and go to state 513 - "end of expression" shift, and go to state 514 + "name" shift, and go to state 512 + "end of expression" shift, and go to state 513 - $default reduce using rule 690 ($@69) + $default reduce using rule 691 ($@69) - variant_type go to state 515 - $@69 go to state 516 + variant_type go to state 514 + $@69 go to state 515 -State 376 +State 375 175 function_name: "operator" "is" "name" . $default reduce using rule 175 (function_name) -State 377 +State 376 176 function_name: "operator" "as" "name" . $default reduce using rule 176 (function_name) -State 378 +State 377 169 function_name: "operator" "?." "name" . $default reduce using rule 169 (function_name) -State 379 +State 378 164 function_name: "operator" "?[" ']' . $default reduce using rule 164 (function_name) -State 380 +State 379 177 function_name: "operator" '?' "as" . 178 | "operator" '?' "as" . "name" - "name" shift, and go to state 517 + "name" shift, and go to state 516 $default reduce using rule 177 (function_name) -State 381 +State 380 167 function_name: "operator" '.' "name" . 168 | "operator" '.' "name" . ":=" - ":=" shift, and go to state 518 + ":=" shift, and go to state 517 $default reduce using rule 167 (function_name) -State 382 +State 381 163 function_name: "operator" '[' ']' . $default reduce using rule 163 (function_name) -State 383 +State 382 - 478 function_argument_declaration: "$a" . '(' expr ')' + 477 function_argument_declaration: "$a" . '(' expr ')' - '(' shift, and go to state 519 + '(' shift, and go to state 518 -State 384 +State 383 115 optional_function_argument_list: '(' ')' . $default reduce using rule 115 (optional_function_argument_list) -State 385 +State 384 - 477 function_argument_declaration: optional_field_annotation . kwd_let_var_or_nothing variable_declaration + 476 function_argument_declaration: optional_field_annotation . kwd_let_var_or_nothing variable_declaration - "let" shift, and go to state 520 - "var" shift, and go to state 521 + "let" shift, and go to state 519 + "var" shift, and go to state 520 - $default reduce using rule 263 (kwd_let_var_or_nothing) + $default reduce using rule 262 (kwd_let_var_or_nothing) - kwd_let_var_or_nothing go to state 522 + kwd_let_var_or_nothing go to state 521 -State 386 +State 385 - 479 function_argument_list: function_argument_declaration . + 478 function_argument_list: function_argument_declaration . - $default reduce using rule 479 (function_argument_list) + $default reduce using rule 478 (function_argument_list) -State 387 +State 386 116 optional_function_argument_list: '(' function_argument_list . ')' - 480 function_argument_list: function_argument_list . "end of expression" function_argument_declaration + 479 function_argument_list: function_argument_list . "end of expression" function_argument_declaration - "end of expression" shift, and go to state 523 - ')' shift, and go to state 524 + "end of expression" shift, and go to state 522 + ')' shift, and go to state 523 -State 388 +State 387 118 optional_function_type: ':' . type_declaration - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 262 - type_declaration go to state 525 + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 260 + type_declaration_no_options_no_dim go to state 261 + type_declaration go to state 524 -State 389 +State 388 208 function_declaration_header: function_name optional_function_argument_list optional_function_type . $default reduce using rule 208 (function_declaration_header) -State 390 +State 389 211 expression_block: "begin of code block" expressions . "end of code block" 212 | "begin of code block" expressions . "end of code block" "finally" "begin of code block" expressions "end of code block" 233 expressions: expressions . expression_any 234 | expressions . error - error shift, and go to state 526 - "struct" shift, and go to state 407 - "class" shift, and go to state 408 + error shift, and go to state 525 + "struct" shift, and go to state 406 + "class" shift, and go to state 407 "let" shift, and go to state 3 - "while" shift, and go to state 527 - "if" shift, and go to state 528 - "static_if" shift, and go to state 529 - "for" shift, and go to state 530 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "return" shift, and go to state 531 - "null" shift, and go to state 415 - "break" shift, and go to state 532 - "try" shift, and go to state 533 - "table" shift, and go to state 416 - "delete" shift, and go to state 534 - "deref" shift, and go to state 417 - "with" shift, and go to state 535 - "assume" shift, and go to state 536 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 + "while" shift, and go to state 526 + "if" shift, and go to state 527 + "static_if" shift, and go to state 528 + "for" shift, and go to state 529 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "return" shift, and go to state 530 + "null" shift, and go to state 414 + "break" shift, and go to state 531 + "try" shift, and go to state 532 + "table" shift, and go to state 415 + "delete" shift, and go to state 533 + "deref" shift, and go to state 416 + "with" shift, and go to state 534 + "assume" shift, and go to state 535 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 "var" shift, and go to state 8 - "addr" shift, and go to state 420 - "continue" shift, and go to state 537 - "pass" shift, and go to state 538 - "reinterpret" shift, and go to state 421 - "label" shift, and go to state 539 - "goto" shift, and go to state 540 - "unsafe" shift, and go to state 541 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "yield" shift, and go to state 542 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - "end of code block" shift, and go to state 543 - "end of expression" shift, and go to state 544 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + "addr" shift, and go to state 419 + "continue" shift, and go to state 536 + "pass" shift, and go to state 537 + "reinterpret" shift, and go to state 420 + "label" shift, and go to state 538 + "goto" shift, and go to state 539 + "unsafe" shift, and go to state 540 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "yield" shift, and go to state 541 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + "end of code block" shift, and go to state 542 + "end of expression" shift, and go to state 543 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expression_label go to state 545 - expression_goto go to state 546 - if_or_static_if go to state 547 - expression_if_one_liner go to state 548 - expression_if_then_else go to state 549 - expression_for_loop go to state 550 - expression_unsafe go to state 551 - expression_while_loop go to state 552 - expression_with go to state 553 - expression_with_alias go to state 554 - expr_call_pipe go to state 457 - expression_any go to state 555 - name_in_namespace go to state 458 - expression_delete go to state 556 - expr_new go to state 459 - expression_break go to state 557 - expression_continue go to state 558 - expression_return go to state 559 - expression_yield_no_pipe go to state 560 - expression_yield go to state 561 - expression_try_catch go to state 562 - kwd_let go to state 563 - expression_let go to state 564 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_assign go to state 565 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 566 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expression_label go to state 544 + expression_goto go to state 545 + if_or_static_if go to state 546 + expression_if_one_liner go to state 547 + expression_if_then_else go to state 548 + expression_for_loop go to state 549 + expression_unsafe go to state 550 + expression_while_loop go to state 551 + expression_with go to state 552 + expression_with_alias go to state 553 + expr_call_pipe go to state 456 + expression_any go to state 554 + name_in_namespace go to state 457 + expression_delete go to state 555 + expr_new go to state 458 + expression_break go to state 556 + expression_continue go to state 557 + expression_return go to state 558 + expression_yield_no_pipe go to state 559 + expression_yield go to state 560 + expression_try_catch go to state 561 + kwd_let go to state 562 + expression_let go to state 563 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_assign go to state 564 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 565 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 391 +State 390 - 544 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 . enum_list optional_comma $@32 "end of code block" + 543 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 . enum_list optional_comma $@32 "end of code block" - "name" shift, and go to state 567 + "name" shift, and go to state 566 - $default reduce using rule 527 (enum_list) + $default reduce using rule 526 (enum_list) - enum_expression go to state 568 - enum_list go to state 569 + enum_expression go to state 567 + enum_list go to state 568 -State 392 +State 391 - 546 optional_structure_parent: ':' . name_in_namespace + 545 optional_structure_parent: ':' . name_in_namespace - "::" shift, and go to state 55 - "name" shift, and go to state 56 + "name" shift, and go to state 55 - name_in_namespace go to state 570 + name_in_namespace go to state 569 -State 393 +State 392 - 549 structure_name: optional_sealed "name" optional_structure_parent . + 548 structure_name: optional_sealed "name" optional_structure_parent . - $default reduce using rule 549 (structure_name) + $default reduce using rule 548 (structure_name) -State 394 +State 393 - 556 optional_struct_variable_declaration_list: "begin of code block" . struct_variable_declaration_list "end of code block" + 555 optional_struct_variable_declaration_list: "begin of code block" . struct_variable_declaration_list "end of code block" - $default reduce using rule 470 (struct_variable_declaration_list) + $default reduce using rule 469 (struct_variable_declaration_list) - struct_variable_declaration_list go to state 571 + struct_variable_declaration_list go to state 570 -State 395 +State 394 - 559 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 structure_name $@34 optional_struct_variable_declaration_list . + 558 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 structure_name $@34 optional_struct_variable_declaration_list . - $default reduce using rule 559 (structure_declaration) + $default reduce using rule 558 (structure_declaration) -State 396 +State 395 - 516 global_variable_declaration_list: global_variable_declaration_list $@28 optional_field_annotation . let_variable_declaration + 515 global_variable_declaration_list: global_variable_declaration_list $@28 optional_field_annotation . let_variable_declaration - "$i" shift, and go to state 340 - "name" shift, and go to state 341 + "$i" shift, and go to state 339 + "name" shift, and go to state 340 - let_variable_name_with_pos_list go to state 342 - let_variable_declaration go to state 572 + let_variable_name_with_pos_list go to state 341 + let_variable_declaration go to state 571 -State 397 +State 396 97 metadata_argument_list: metadata_argument_list '@' annotation_argument . $default reduce using rule 97 (metadata_argument_list) -State 398 +State 397 - 507 let_variable_name_with_pos_list: "$i" '(' . expr ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 506 let_variable_name_with_pos_list: "$i" '(' . expr ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 573 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 572 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 + + +State 398 + + 507 let_variable_name_with_pos_list: "name" "aka" . "name" + + "name" shift, and go to state 573 State 399 - 508 let_variable_name_with_pos_list: "name" "aka" . "name" + 508 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' . "name" + 509 | let_variable_name_with_pos_list ',' . "name" "aka" "name" "name" shift, and go to state 574 State 400 - 509 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' . "name" - 510 | let_variable_name_with_pos_list ',' . "name" "aka" "name" - - "name" shift, and go to state 575 + 510 let_variable_declaration: let_variable_name_with_pos_list ':' . type_declaration_no_options "end of expression" + 511 | let_variable_name_with_pos_list ':' . type_declaration_no_options copy_or_move_or_clone expr "end of expression" + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 575 + type_declaration_no_options_no_dim go to state 261 State 401 - 511 let_variable_declaration: let_variable_name_with_pos_list ':' . type_declaration_no_options "end of expression" - 512 | let_variable_name_with_pos_list ':' . type_declaration_no_options copy_or_move_or_clone expr "end of expression" - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 576 + 504 optional_ref: '&' . + $default reduce using rule 504 (optional_ref) -State 402 - 505 optional_ref: '&' . +State 402 - $default reduce using rule 505 (optional_ref) + 512 let_variable_declaration: let_variable_name_with_pos_list optional_ref . copy_or_move_or_clone expr "end of expression" + "<-" shift, and go to state 576 + ":=" shift, and go to state 577 + '=' shift, and go to state 578 -State 403 + copy_or_move_or_clone go to state 579 - 513 let_variable_declaration: let_variable_name_with_pos_list optional_ref . copy_or_move_or_clone expr "end of expression" - "<-" shift, and go to state 577 - ":=" shift, and go to state 578 - '=' shift, and go to state 579 +State 403 - copy_or_move_or_clone go to state 580 + 625 type_declaration_no_options_no_dim: "type" '<' $@37 . type_declaration '>' $@38 + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 260 + type_declaration_no_options_no_dim go to state 261 + type_declaration go to state 580 State 404 - 624 type_declaration_no_options: "type" '<' $@37 . type_declaration '>' $@38 - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 262 - type_declaration go to state 581 + 648 type_declaration_no_options_no_dim: "array" '<' $@42 . type_declaration '>' $@43 + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 260 + type_declaration_no_options_no_dim go to state 261 + type_declaration go to state 581 State 405 - 647 type_declaration_no_options: "array" '<' $@42 . type_declaration '>' $@43 - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 262 - type_declaration go to state 582 + 651 type_declaration_no_options_no_dim: "table" '<' $@44 . table_type_pair '>' $@45 + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + table_type_pair go to state 582 + type_declaration_no_options go to state 260 + type_declaration_no_options_no_dim go to state 261 + type_declaration go to state 583 State 406 - 650 type_declaration_no_options: "table" '<' $@44 . table_type_pair '>' $@45 - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - table_type_pair go to state 583 - type_declaration_no_options go to state 262 - type_declaration go to state 584 + 717 make_struct_decl: "struct" . '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' + + '<' shift, and go to state 584 State 407 - 716 make_struct_decl: "struct" . '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' + 720 make_struct_decl: "class" . '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' '<' shift, and go to state 585 State 408 - 719 make_struct_decl: "class" . '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' + 364 expr: "true" . - '<' shift, and go to state 586 + $default reduce using rule 364 (expr) State 409 - 365 expr: "true" . + 365 expr: "false" . $default reduce using rule 365 (expr) State 410 - 366 expr: "false" . - - $default reduce using rule 366 (expr) + 246 expr_new: "new" . structure_type_declaration + 247 | "new" . structure_type_declaration '(' optional_expr_list ')' + 248 | "new" . new_type_declaration '(' use_initializer ')' + 249 | "new" . new_type_declaration '(' use_initializer make_struct_single ')' + 250 | "new" . make_decl + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "array" shift, and go to state 413 + "table" shift, and go to state 415 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "name" shift, and go to state 55 + "begin of code block" shift, and go to state 444 + '<' shift, and go to state 586 + '[' shift, and go to state 450 + + name_in_namespace go to state 255 + new_type_declaration go to state 587 + structure_type_declaration go to state 588 + make_decl go to state 589 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 411 - 247 expr_new: "new" . structure_type_declaration - 248 | "new" . structure_type_declaration '(' optional_expr_list ')' - 249 | "new" . new_type_declaration '(' use_initializer ')' - 250 | "new" . new_type_declaration '(' use_initializer make_struct_single ')' - 251 | "new" . make_decl - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "array" shift, and go to state 414 - "table" shift, and go to state 416 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "::" shift, and go to state 55 - "name" shift, and go to state 56 - "begin of code block" shift, and go to state 445 - '<' shift, and go to state 587 - '[' shift, and go to state 451 - - name_in_namespace go to state 257 - new_type_declaration go to state 588 - structure_type_declaration go to state 589 - make_decl go to state 590 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + 285 expr_type_info: "typeinfo" . '(' name_in_namespace expr ')' + 286 | "typeinfo" . '(' name_in_namespace '<' "name" '>' expr ')' + 287 | "typeinfo" . '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' + + '(' shift, and go to state 590 State 412 - 286 expr_type_info: "typeinfo" . '(' name_in_namespace expr ')' - 287 | "typeinfo" . '(' name_in_namespace '<' "name" '>' expr ')' - 288 | "typeinfo" . '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' + 284 expr_type_decl: "type" . '<' $@11 type_declaration '>' $@12 - '(' shift, and go to state 591 + '<' shift, and go to state 591 State 413 - 285 expr_type_decl: "type" . '<' $@11 type_declaration '>' $@12 + 736 make_dim_decl: "array" . "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' + 739 | "array" . "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' + 742 | "array" . "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' + 743 | "array" . '(' expr_list optional_comma ')' + 746 | "array" . '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' - '<' shift, and go to state 592 + "struct" shift, and go to state 592 + "tuple" shift, and go to state 593 + "variant" shift, and go to state 594 + '<' shift, and go to state 595 + '(' shift, and go to state 596 State 414 - 735 make_dim_decl: "array" . "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' - 738 | "array" . "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' - 741 | "array" . "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' - 742 | "array" . '(' expr_list optional_comma ')' - 745 | "array" . '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' + 358 expr: "null" . - "struct" shift, and go to state 593 - "tuple" shift, and go to state 594 - "variant" shift, and go to state 595 - '<' shift, and go to state 596 - '(' shift, and go to state 597 + $default reduce using rule 358 (expr) State 415 - 359 expr: "null" . + 754 make_table_decl: "table" . '(' expr_map_tuple_list optional_comma ')' + 755 | "table" . '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + 756 | "table" . '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - $default reduce using rule 359 (expr) + '<' shift, and go to state 597 + '(' shift, and go to state 598 State 416 - 753 make_table_decl: "table" . '(' expr_map_tuple_list optional_comma ')' - 754 | "table" . '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - 755 | "table" . '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + 408 expr: "deref" . '(' expr ')' - '<' shift, and go to state 598 '(' shift, and go to state 599 State 417 - 409 expr: "deref" . '(' expr ')' + 275 expr_cast: "cast" . '<' $@5 type_declaration_no_options '>' $@6 expr - '(' shift, and go to state 600 + '<' shift, and go to state 600 State 418 - 276 expr_cast: "cast" . '<' $@5 type_declaration_no_options '>' $@6 expr + 278 expr_cast: "upcast" . '<' $@7 type_declaration_no_options '>' $@8 expr '<' shift, and go to state 601 State 419 - 279 expr_cast: "upcast" . '<' $@7 type_declaration_no_options '>' $@8 expr + 409 expr: "addr" . '(' expr ')' - '<' shift, and go to state 602 + '(' shift, and go to state 602 State 420 - 410 expr: "addr" . '(' expr ')' + 281 expr_cast: "reinterpret" . '<' $@9 type_declaration_no_options '>' $@10 expr - '(' shift, and go to state 603 + '<' shift, and go to state 603 State 421 - 282 expr_cast: "reinterpret" . '<' $@9 type_declaration_no_options '>' $@10 expr + 747 make_dim_decl: "fixed_array" . '(' expr_list optional_comma ')' + 750 | "fixed_array" . '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' '<' shift, and go to state 604 + '(' shift, and go to state 605 State 422 - 746 make_dim_decl: "fixed_array" . '(' expr_list optional_comma ')' - 749 | "fixed_array" . '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' + 726 make_struct_decl: "default" . '<' $@79 type_declaration_no_options '>' $@80 use_initializer - '<' shift, and go to state 605 - '(' shift, and go to state 606 + '<' shift, and go to state 606 State 423 - 725 make_struct_decl: "default" . '<' $@79 type_declaration_no_options '>' $@80 use_initializer + 590 basic_type_declaration: "bitfield" . - '<' shift, and go to state 607 + $default reduce using rule 590 (basic_type_declaration) State 424 - 591 basic_type_declaration: "bitfield" . + 729 make_tuple_call: "tuple" . '(' expr_list optional_comma ')' + 732 | "tuple" . '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' - $default reduce using rule 591 (basic_type_declaration) + '<' shift, and go to state 607 + '(' shift, and go to state 608 State 425 - 728 make_tuple_call: "tuple" . '(' expr_list optional_comma ')' - 731 | "tuple" . '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' + 723 make_struct_decl: "variant" . '<' $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim ')' - '<' shift, and go to state 608 - '(' shift, and go to state 609 + '<' shift, and go to state 609 State 426 - 722 make_struct_decl: "variant" . '<' $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim ')' + 410 expr: "generator" . '<' type_declaration_no_options '>' optional_capture_list '(' ')' + 411 | "generator" . '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' '<' shift, and go to state 610 State 427 - 411 expr: "generator" . '<' type_declaration_no_options '>' optional_capture_list '(' ')' - 412 | "generator" . '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' - - '<' shift, and go to state 611 + 394 expr: "++" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 + '%' shift, and go to state 14 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 611 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 428 - 395 expr: "++" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 395 expr: "--" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 612 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 429 - 396 expr: "--" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 - '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 613 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + 440 expr_mtag: "$$" . '(' expr ')' + + '(' shift, and go to state 613 State 430 - 441 expr_mtag: "$$" . '(' expr ')' + 441 expr_mtag: "$i" . '(' expr ')' '(' shift, and go to state 614 State 431 - 442 expr_mtag: "$i" . '(' expr ')' + 442 expr_mtag: "$v" . '(' expr ')' '(' shift, and go to state 615 State 432 - 443 expr_mtag: "$v" . '(' expr ')' + 443 expr_mtag: "$b" . '(' expr ')' '(' shift, and go to state 616 State 433 - 444 expr_mtag: "$b" . '(' expr ')' + 444 expr_mtag: "$a" . '(' expr ')' '(' shift, and go to state 617 State 434 - 445 expr_mtag: "$a" . '(' expr ')' + 446 expr_mtag: "$c" . '(' expr ')' '(' ')' + 447 | "$c" . '(' expr ')' '(' expr_list ')' '(' shift, and go to state 618 State 435 - 447 expr_mtag: "$c" . '(' expr ')' '(' ')' - 448 | "$c" . '(' expr ')' '(' expr_list ')' + 445 expr_mtag: "..." . - '(' shift, and go to state 619 + $default reduce using rule 445 (expr_mtag) State 436 - 446 expr_mtag: "..." . + 307 expr_numeric_const: "integer constant" . - $default reduce using rule 446 (expr_mtag) + $default reduce using rule 307 (expr_numeric_const) State 437 - 308 expr_numeric_const: "integer constant" . + 309 expr_numeric_const: "long integer constant" . - $default reduce using rule 308 (expr_numeric_const) + $default reduce using rule 309 (expr_numeric_const) State 438 - 310 expr_numeric_const: "long integer constant" . + 308 expr_numeric_const: "unsigned integer constant" . - $default reduce using rule 310 (expr_numeric_const) + $default reduce using rule 308 (expr_numeric_const) State 439 - 309 expr_numeric_const: "unsigned integer constant" . + 310 expr_numeric_const: "unsigned long integer constant" . - $default reduce using rule 309 (expr_numeric_const) + $default reduce using rule 310 (expr_numeric_const) State 440 - 311 expr_numeric_const: "unsigned long integer constant" . + 311 expr_numeric_const: "unsigned int8 constant" . $default reduce using rule 311 (expr_numeric_const) State 441 - 312 expr_numeric_const: "unsigned int8 constant" . + 312 expr_numeric_const: "floating point constant" . $default reduce using rule 312 (expr_numeric_const) State 442 - 313 expr_numeric_const: "floating point constant" . + 313 expr_numeric_const: "double constant" . $default reduce using rule 313 (expr_numeric_const) State 443 - 314 expr_numeric_const: "double constant" . - - $default reduce using rule 314 (expr_numeric_const) + 31 string_builder: "start of the string" . string_builder_body "end of the string" + $default reduce using rule 28 (string_builder_body) -State 444 + string_builder_body go to state 619 - 31 string_builder: "start of the string" . string_builder_body "end of the string" - $default reduce using rule 28 (string_builder_body) +State 444 - string_builder_body go to state 620 + 753 make_table_decl: "begin of code block" . expr_map_tuple_list optional_comma "end of code block" + 763 array_comprehension: "begin of code block" . "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "for" shift, and go to state 620 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 + '%' shift, and go to state 14 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 621 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_map_tuple go to state 622 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + expr_map_tuple_list go to state 623 + make_table_decl go to state 477 + array_comprehension go to state 478 State 445 - 752 make_table_decl: "begin of code block" . expr_map_tuple_list optional_comma "end of code block" - 762 array_comprehension: "begin of code block" . "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "for" shift, and go to state 621 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 371 expr: '-' . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 622 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_map_tuple go to state 623 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - expr_map_tuple_list go to state 624 - make_table_decl go to state 478 - array_comprehension go to state 479 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 624 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 446 - 372 expr: '-' . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 370 expr: '+' . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 625 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 447 - 371 expr: '+' . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 407 expr: '*' . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 626 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 448 - 408 expr: '*' . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 369 expr: '~' . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 627 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 449 - 370 expr: '~' . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 368 expr: '!' . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 628 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 450 - 369 expr: '!' . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 733 make_dim_decl: '[' . expr_list optional_comma ']' + 761 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 762 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "for" shift, and go to state 629 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "iterator" shift, and go to state 630 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 629 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + expr_list go to state 631 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 632 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 451 - 732 make_dim_decl: '[' . expr_list optional_comma ']' - 760 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - 761 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "for" shift, and go to state 630 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "iterator" shift, and go to state 631 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 398 expr: '(' . expr_list optional_comma ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - expr_list go to state 632 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 633 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + expr_list go to state 633 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 632 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 452 - 399 expr: '(' . expr_list optional_comma ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 - '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - expr_list go to state 634 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 633 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + 293 block_or_lambda: '$' . + + $default reduce using rule 293 (block_or_lambda) State 453 - 294 block_or_lambda: '$' . + 294 block_or_lambda: '@' . + 295 | '@' . '@' + 339 func_addr_expr: '@' . '@' func_addr_name + 342 | '@' . '@' '<' $@13 type_declaration_no_options '>' $@14 func_addr_name + 345 | '@' . '@' '<' $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name + 455 expr_mtag: '@' . '@' "$c" '(' expr ')' + + '@' shift, and go to state 634 $default reduce using rule 294 (block_or_lambda) State 454 - 295 block_or_lambda: '@' . - 296 | '@' . '@' - 340 func_addr_expr: '@' . '@' func_addr_name - 343 | '@' . '@' '<' $@13 type_declaration_no_options '>' $@14 func_addr_name - 346 | '@' . '@' '<' $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name - 456 expr_mtag: '@' . '@' "$c" '(' expr ')' + 362 expr: string_builder . - '@' shift, and go to state 635 - - $default reduce using rule 295 (block_or_lambda) + $default reduce using rule 362 (expr) State 455 - 363 expr: string_builder . + 361 expr: expr_reader . - $default reduce using rule 363 (expr) + $default reduce using rule 361 (expr) State 456 - 362 expr: expr_reader . + 439 expr: expr_call_pipe . - $default reduce using rule 362 (expr) + $default reduce using rule 439 (expr) State 457 - 440 expr: expr_call_pipe . + 333 expr_named_call: name_in_namespace . '(' '[' make_struct_fields ']' ')' + 334 | name_in_namespace . '(' expr_list ',' '[' make_struct_fields ']' ')' + 353 expr_call: name_in_namespace . '(' ')' + 354 | name_in_namespace . '(' make_struct_single ')' + 355 | name_in_namespace . '(' expr_list ')' + 359 expr: name_in_namespace . + + '(' shift, and go to state 635 - $default reduce using rule 440 (expr) + '(' [reduce using rule 359 (expr)] + $default reduce using rule 359 (expr) State 458 - 334 expr_named_call: name_in_namespace . '(' '[' make_struct_fields ']' ')' - 335 | name_in_namespace . '(' expr_list ',' '[' make_struct_fields ']' ')' - 354 expr_call: name_in_namespace . '(' ')' - 355 | name_in_namespace . '(' make_struct_single ')' - 356 | name_in_namespace . '(' expr_list ')' - 360 expr: name_in_namespace . - - '(' shift, and go to state 636 + 432 expr: expr_new . - '(' [reduce using rule 360 (expr)] - $default reduce using rule 360 (expr) + $default reduce using rule 432 (expr) State 459 - 433 expr: expr_new . + 431 expr: expr_cast . - $default reduce using rule 433 (expr) + $default reduce using rule 431 (expr) State 460 - 432 expr: expr_cast . + 430 expr: expr_type_decl . - $default reduce using rule 432 (expr) + $default reduce using rule 430 (expr) State 461 - 431 expr: expr_type_decl . + 429 expr: expr_type_info . - $default reduce using rule 431 (expr) + $default reduce using rule 429 (expr) State 462 - 430 expr: expr_type_info . + 304 expr_full_block: block_or_lambda . optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block - $default reduce using rule 430 (expr) + '[' shift, and go to state 15 + '[' [reduce using rule 112 (optional_annotation_list)] + $default reduce using rule 112 (optional_annotation_list) -State 463 + optional_annotation_list go to state 636 - 305 expr_full_block: block_or_lambda . optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block - '[' shift, and go to state 15 +State 463 - '[' [reduce using rule 112 (optional_annotation_list)] - $default reduce using rule 112 (optional_annotation_list) + 435 expr: expr_full_block . - optional_annotation_list go to state 637 + $default reduce using rule 435 (expr) State 464 - 436 expr: expr_full_block . + 360 expr: expr_numeric_const . - $default reduce using rule 436 (expr) + $default reduce using rule 360 (expr) State 465 - 361 expr: expr_numeric_const . + 434 expr: expr_named_call . - $default reduce using rule 361 (expr) + $default reduce using rule 434 (expr) State 466 - 435 expr: expr_named_call . + 433 expr: expr_method_call . - $default reduce using rule 435 (expr) + $default reduce using rule 433 (expr) State 467 - 434 expr: expr_method_call . + 405 expr: func_addr_expr . - $default reduce using rule 434 (expr) + $default reduce using rule 405 (expr) State 468 - 406 expr: func_addr_expr . + 366 expr: expr_field . - $default reduce using rule 406 (expr) + $default reduce using rule 366 (expr) State 469 - 367 expr: expr_field . + 213 expr_call_pipe: expr_call . expr_full_block_assumed_piped + 406 expr: expr_call . - $default reduce using rule 367 (expr) + "begin of code block" shift, and go to state 637 + '$' shift, and go to state 452 + '@' shift, and go to state 638 + "begin of code block" [reduce using rule 406 (expr)] + '$' [reduce using rule 406 (expr)] + '@' [reduce using rule 406 (expr)] + $default reduce using rule 406 (expr) -State 470 + block_or_lambda go to state 639 + expr_full_block_assumed_piped go to state 640 - 213 expr_call_pipe: expr_call . expr_full_block_assumed_piped - 407 expr: expr_call . - - "begin of code block" shift, and go to state 638 - '$' shift, and go to state 453 - '@' shift, and go to state 639 - "begin of code block" [reduce using rule 407 (expr)] - '$' [reduce using rule 407 (expr)] - '@' [reduce using rule 407 (expr)] - $default reduce using rule 407 (expr) +State 470 - block_or_lambda go to state 640 - expr_full_block_assumed_piped go to state 641 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 626 type_declaration_no_options_no_dim: "typedecl" '(' expr . ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 + ')' shift, and go to state 676 State 471 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 625 type_declaration_no_options: "typedecl" '(' expr . ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 - ')' shift, and go to state 677 + 367 expr: expr_mtag . + + $default reduce using rule 367 (expr) State 472 - 368 expr: expr_mtag . + 356 expr_call: basic_type_declaration . '(' ')' + 357 | basic_type_declaration . '(' expr_list ')' - $default reduce using rule 368 (expr) + '(' shift, and go to state 677 State 473 - 357 expr_call: basic_type_declaration . '(' ')' - 358 | basic_type_declaration . '(' expr_list ')' + 363 expr: make_decl . - '(' shift, and go to state 678 + $default reduce using rule 363 (expr) State 474 - 364 expr: make_decl . + 697 make_decl: make_struct_decl . - $default reduce using rule 364 (expr) + $default reduce using rule 697 (make_decl) State 475 - 696 make_decl: make_struct_decl . + 701 make_decl: make_tuple_call . - $default reduce using rule 696 (make_decl) + $default reduce using rule 701 (make_decl) State 476 - 700 make_decl: make_tuple_call . + 698 make_decl: make_dim_decl . - $default reduce using rule 700 (make_decl) + $default reduce using rule 698 (make_decl) State 477 - 697 make_decl: make_dim_decl . + 699 make_decl: make_table_decl . - $default reduce using rule 697 (make_decl) + $default reduce using rule 699 (make_decl) State 478 - 698 make_decl: make_table_decl . + 700 make_decl: array_comprehension . - $default reduce using rule 698 (make_decl) + $default reduce using rule 700 (make_decl) State 479 - 699 make_decl: array_comprehension . - - $default reduce using rule 699 (make_decl) + 654 type_declaration_no_options_no_dim: "iterator" '<' $@46 . type_declaration '>' $@47 + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 260 + type_declaration_no_options_no_dim go to state 261 + type_declaration go to state 678 State 480 - 653 type_declaration_no_options: "iterator" '<' $@46 . type_declaration '>' $@47 - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 262 - type_declaration go to state 679 + 644 type_declaration_no_options_no_dim: "smart_ptr" '<' $@40 . type_declaration '>' $@41 + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 260 + type_declaration_no_options_no_dim go to state 261 + type_declaration go to state 679 State 481 - 643 type_declaration_no_options: "smart_ptr" '<' $@40 . type_declaration '>' $@41 - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 262 - type_declaration go to state 680 + 601 auto_type_declaration: "auto" '(' "name" . ')' + ')' shift, and go to state 680 -State 482 - 602 auto_type_declaration: "auto" '(' "name" . ')' +State 482 - ')' shift, and go to state 681 + 610 bitfield_type_declaration: "bitfield" '<' $@35 . bitfield_bits '>' $@36 + "name" shift, and go to state 681 -State 483 + bitfield_bits go to state 682 - 611 bitfield_type_declaration: "bitfield" '<' $@35 . bitfield_bits '>' $@36 - "name" shift, and go to state 682 +State 483 - bitfield_bits go to state 683 + 658 type_declaration_no_options_no_dim: "block" '<' $@48 . type_declaration '>' $@49 + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 260 + type_declaration_no_options_no_dim go to state 261 + type_declaration go to state 683 State 484 - 657 type_declaration_no_options: "block" '<' $@48 . type_declaration '>' $@49 - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 262 - type_declaration go to state 684 + 661 type_declaration_no_options_no_dim: "block" '<' $@50 . optional_function_argument_list optional_function_type '>' $@51 + '(' shift, and go to state 319 -State 485 + $default reduce using rule 114 (optional_function_argument_list) - 660 type_declaration_no_options: "block" '<' $@50 . optional_function_argument_list optional_function_type '>' $@51 + optional_function_argument_list go to state 684 - '(' shift, and go to state 320 - $default reduce using rule 114 (optional_function_argument_list) +State 485 - optional_function_argument_list go to state 685 + 665 type_declaration_no_options_no_dim: "function" '<' $@52 . type_declaration '>' $@53 + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 260 + type_declaration_no_options_no_dim go to state 261 + type_declaration go to state 685 State 486 - 664 type_declaration_no_options: "function" '<' $@52 . type_declaration '>' $@53 - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 262 - type_declaration go to state 686 + 668 type_declaration_no_options_no_dim: "function" '<' $@54 . optional_function_argument_list optional_function_type '>' $@55 + '(' shift, and go to state 319 -State 487 + $default reduce using rule 114 (optional_function_argument_list) - 667 type_declaration_no_options: "function" '<' $@54 . optional_function_argument_list optional_function_type '>' $@55 + optional_function_argument_list go to state 686 - '(' shift, and go to state 320 - $default reduce using rule 114 (optional_function_argument_list) +State 487 - optional_function_argument_list go to state 687 + 672 type_declaration_no_options_no_dim: "lambda" '<' $@56 . type_declaration '>' $@57 + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 260 + type_declaration_no_options_no_dim go to state 261 + type_declaration go to state 687 State 488 - 671 type_declaration_no_options: "lambda" '<' $@56 . type_declaration '>' $@57 - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 262 - type_declaration go to state 688 + 675 type_declaration_no_options_no_dim: "lambda" '<' $@58 . optional_function_argument_list optional_function_type '>' $@59 + '(' shift, and go to state 319 -State 489 + $default reduce using rule 114 (optional_function_argument_list) - 674 type_declaration_no_options: "lambda" '<' $@58 . optional_function_argument_list optional_function_type '>' $@59 + optional_function_argument_list go to state 688 - '(' shift, and go to state 320 - $default reduce using rule 114 (optional_function_argument_list) +State 489 - optional_function_argument_list go to state 689 + 678 type_declaration_no_options_no_dim: "tuple" '<' $@60 . tuple_type_list '>' $@61 + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 507 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + tuple_type go to state 689 + tuple_type_list go to state 690 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 260 + type_declaration_no_options_no_dim go to state 261 + type_declaration go to state 510 State 490 - 677 type_declaration_no_options: "tuple" '<' $@60 . tuple_type_list '>' $@61 - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 508 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - tuple_type go to state 690 - tuple_type_list go to state 691 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 262 - type_declaration go to state 511 + 681 type_declaration_no_options_no_dim: "variant" '<' $@62 . variant_type_list '>' $@63 + "name" shift, and go to state 512 -State 491 + variant_type go to state 691 + variant_type_list go to state 692 - 680 type_declaration_no_options: "variant" '<' $@62 . variant_type_list '>' $@63 - "name" shift, and go to state 513 +State 491 - variant_type go to state 692 - variant_type_list go to state 693 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 602 auto_type_declaration: "$t" '(' expr . ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 + ')' shift, and go to state 693 State 492 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 603 auto_type_declaration: "$t" '(' expr . ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 - ')' shift, and go to state 694 + 629 type_declaration_no_options_no_dim: '$' name_in_namespace '<' . $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' + + $default reduce using rule 628 ($@39) + + $@39 go to state 694 State 493 - 628 type_declaration_no_options: '$' name_in_namespace '<' . $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' + 627 type_declaration_no_options_no_dim: '$' name_in_namespace '(' . optional_expr_list ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 + '%' shift, and go to state 14 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 - $default reduce using rule 627 ($@39) + $default reduce using rule 235 (optional_expr_list) - $@39 go to state 695 + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + optional_expr_list go to state 695 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + expr_list go to state 696 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 632 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 494 - 626 type_declaration_no_options: '$' name_in_namespace '(' . optional_expr_list ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 - '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 + 639 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "==" "const" . - $default reduce using rule 235 (optional_expr_list) - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - optional_expr_list go to state 696 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - expr_list go to state 697 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 633 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + $default reduce using rule 639 (type_declaration_no_options_no_dim) State 495 - 638 type_declaration_no_options: type_declaration_no_options "==" "const" . + 640 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "==" '&' . - $default reduce using rule 638 (type_declaration_no_options) + $default reduce using rule 640 (type_declaration_no_options_no_dim) State 496 - 639 type_declaration_no_options: type_declaration_no_options "==" '&' . + 633 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' "const" . - $default reduce using rule 639 (type_declaration_no_options) + $default reduce using rule 633 (type_declaration_no_options_no_dim) State 497 - 632 type_declaration_no_options: type_declaration_no_options '-' "const" . + 635 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '&' . - $default reduce using rule 632 (type_declaration_no_options) + $default reduce using rule 635 (type_declaration_no_options_no_dim) State 498 - 634 type_declaration_no_options: type_declaration_no_options '-' '&' . + 630 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '[' . ']' - $default reduce using rule 634 (type_declaration_no_options) + ']' shift, and go to state 697 State 499 - 629 type_declaration_no_options: type_declaration_no_options '-' '[' . ']' + 638 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '#' . - ']' shift, and go to state 698 + $default reduce using rule 638 (type_declaration_no_options_no_dim) State 500 - 637 type_declaration_no_options: type_declaration_no_options '-' '#' . + 614 dim_list: '[' ']' . - $default reduce using rule 637 (type_declaration_no_options) + $default reduce using rule 614 (dim_list) State 501 - 621 type_declaration_no_options: type_declaration_no_options '[' ']' . - - $default reduce using rule 621 (type_declaration_no_options) + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 613 dim_list: '[' expr . ']' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 + ']' shift, and go to state 698 State 502 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 614 dim_list: '[' expr . ']' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 - ']' shift, and go to state 699 + 615 dim_list: dim_list '[' . expr ']' + 616 | dim_list '[' . ']' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 + '%' shift, and go to state 14 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + ']' shift, and go to state 699 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 700 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 503 - 615 dim_list: dim_list '[' . expr ']' + 684 type_declaration: type_declaration '|' '#' . - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 - '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 700 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + $default reduce using rule 684 (type_declaration) State 504 - 683 type_declaration: type_declaration '|' '#' . + 683 type_declaration: type_declaration '|' type_declaration_no_options . $default reduce using rule 683 (type_declaration) State 505 - 620 type_declaration_no_options: type_declaration_no_options . dim_list - 621 | type_declaration_no_options . '[' ']' - 629 | type_declaration_no_options . '-' '[' ']' - 630 | type_declaration_no_options . "explicit" - 631 | type_declaration_no_options . "const" - 632 | type_declaration_no_options . '-' "const" - 633 | type_declaration_no_options . '&' - 634 | type_declaration_no_options . '-' '&' - 635 | type_declaration_no_options . '#' - 636 | type_declaration_no_options . "implicit" - 637 | type_declaration_no_options . '-' '#' - 638 | type_declaration_no_options . "==" "const" - 639 | type_declaration_no_options . "==" '&' - 640 | type_declaration_no_options . '*' - 644 | type_declaration_no_options . "??" - 682 type_declaration: type_declaration '|' type_declaration_no_options . - - "const" shift, and go to state 360 - "implicit" shift, and go to state 361 - "explicit" shift, and go to state 362 - "==" shift, and go to state 363 - "??" shift, and go to state 364 - '&' shift, and go to state 365 - '-' shift, and go to state 366 - '*' shift, and go to state 367 - '[' shift, and go to state 368 - '#' shift, and go to state 369 - - $default reduce using rule 682 (type_declaration) - - dim_list go to state 370 - - -State 506 - - 608 bitfield_alias_bits: bitfield_alias_bits ',' . "name" - 759 optional_comma: ',' . + 607 bitfield_alias_bits: bitfield_alias_bits ',' . "name" + 760 optional_comma: ',' . "name" shift, and go to state 701 - $default reduce using rule 759 (optional_comma) + $default reduce using rule 760 (optional_comma) -State 507 +State 506 - 695 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma . $@72 "end of code block" + 696 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma . $@72 "end of code block" - $default reduce using rule 694 ($@72) + $default reduce using rule 695 ($@72) $@72 go to state 702 -State 508 +State 507 239 name_in_namespace: "name" . 240 | "name" . "::" "name" - 482 tuple_type: "name" . ':' type_declaration + 481 tuple_type: "name" . ':' type_declaration - "::" shift, and go to state 93 + "::" shift, and go to state 91 ':' shift, and go to state 703 $default reduce using rule 239 (name_in_namespace) -State 509 +State 508 - 486 tuple_alias_type_list: tuple_alias_type_list "end of expression" . + 485 tuple_alias_type_list: tuple_alias_type_list "end of expression" . - $default reduce using rule 486 (tuple_alias_type_list) + $default reduce using rule 485 (tuple_alias_type_list) -State 510 +State 509 - 487 tuple_alias_type_list: tuple_alias_type_list tuple_type . "end of expression" + 486 tuple_alias_type_list: tuple_alias_type_list tuple_type . "end of expression" "end of expression" shift, and go to state 704 -State 511 +State 510 - 481 tuple_type: type_declaration . - 682 type_declaration: type_declaration . '|' type_declaration_no_options - 683 | type_declaration . '|' '#' + 480 tuple_type: type_declaration . + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' - '|' shift, and go to state 371 + '|' shift, and go to state 370 - $default reduce using rule 481 (tuple_type) + $default reduce using rule 480 (tuple_type) -State 512 +State 511 - 687 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 . "end of code block" + 688 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 . "end of code block" "end of code block" shift, and go to state 705 -State 513 +State 512 - 488 variant_type: "name" . ':' type_declaration + 487 variant_type: "name" . ':' type_declaration ':' shift, and go to state 706 -State 514 +State 513 - 492 variant_alias_type_list: variant_alias_type_list "end of expression" . + 491 variant_alias_type_list: variant_alias_type_list "end of expression" . - $default reduce using rule 492 (variant_alias_type_list) + $default reduce using rule 491 (variant_alias_type_list) -State 515 +State 514 - 493 variant_alias_type_list: variant_alias_type_list variant_type . "end of expression" + 492 variant_alias_type_list: variant_alias_type_list variant_type . "end of expression" "end of expression" shift, and go to state 707 -State 516 +State 515 - 691 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 . "end of code block" + 692 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 . "end of code block" "end of code block" shift, and go to state 708 -State 517 +State 516 178 function_name: "operator" '?' "as" "name" . $default reduce using rule 178 (function_name) -State 518 +State 517 168 function_name: "operator" '.' "name" ":=" . $default reduce using rule 168 (function_name) -State 519 +State 518 - 478 function_argument_declaration: "$a" '(' . expr ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 477 function_argument_declaration: "$a" '(' . expr ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 709 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 520 +State 519 - 261 kwd_let_var_or_nothing: "let" . + 260 kwd_let_var_or_nothing: "let" . - $default reduce using rule 261 (kwd_let_var_or_nothing) + $default reduce using rule 260 (kwd_let_var_or_nothing) -State 521 +State 520 - 262 kwd_let_var_or_nothing: "var" . + 261 kwd_let_var_or_nothing: "var" . - $default reduce using rule 262 (kwd_let_var_or_nothing) + $default reduce using rule 261 (kwd_let_var_or_nothing) -State 522 +State 521 - 477 function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing . variable_declaration + 476 function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing . variable_declaration "$i" shift, and go to state 710 "name" shift, and go to state 711 @@ -9558,785 +9496,779 @@ State 522 variable_name_with_pos_list go to state 713 -State 523 +State 522 - 480 function_argument_list: function_argument_list "end of expression" . function_argument_declaration + 479 function_argument_list: function_argument_list "end of expression" . function_argument_declaration - "$a" shift, and go to state 383 - '@' shift, and go to state 208 + "$a" shift, and go to state 382 + '@' shift, and go to state 206 - $default reduce using rule 457 (optional_field_annotation) + $default reduce using rule 456 (optional_field_annotation) - metadata_argument_list go to state 209 - optional_field_annotation go to state 385 + metadata_argument_list go to state 207 + optional_field_annotation go to state 384 function_argument_declaration go to state 714 -State 524 +State 523 116 optional_function_argument_list: '(' function_argument_list ')' . $default reduce using rule 116 (optional_function_argument_list) -State 525 +State 524 118 optional_function_type: ':' type_declaration . - 682 type_declaration: type_declaration . '|' type_declaration_no_options - 683 | type_declaration . '|' '#' + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' - '|' shift, and go to state 371 + '|' shift, and go to state 370 $default reduce using rule 118 (optional_function_type) -State 526 +State 525 234 expressions: expressions error . $default reduce using rule 234 (expressions) -State 527 +State 526 72 expression_while_loop: "while" . expr expression_block - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 715 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 528 +State 527 59 if_or_static_if: "if" . $default reduce using rule 59 (if_or_static_if) -State 529 +State 528 60 if_or_static_if: "static_if" . $default reduce using rule 60 (if_or_static_if) -State 530 +State 529 70 expression_for_loop: "for" . '(' variable_name_with_pos_list "in" expr_list ')' expression_block '(' shift, and go to state 716 -State 531 +State 530 - 254 expression_return: "return" . - 255 | "return" . expr - 256 | "return" . "<-" expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 + 253 expression_return: "return" . + 254 | "return" . expr + 255 | "return" . "<-" expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 "<-" shift, and go to state 717 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - $default reduce using rule 254 (expression_return) - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + $default reduce using rule 253 (expression_return) + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 718 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 532 +State 531 - 252 expression_break: "break" . + 251 expression_break: "break" . - $default reduce using rule 252 (expression_break) + $default reduce using rule 251 (expression_break) -State 533 +State 532 - 260 expression_try_catch: "try" . expression_block "recover" expression_block + 259 expression_try_catch: "try" . expression_block "recover" expression_block - "begin of code block" shift, and go to state 322 + "begin of code block" shift, and go to state 321 expression_block go to state 719 -State 534 +State 533 - 242 expression_delete: "delete" . expr - 243 | "delete" . "explicit" expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 + 241 expression_delete: "delete" . expr + 242 | "delete" . "explicit" expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 "explicit" shift, and go to state 720 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 721 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 535 +State 534 73 expression_with: "with" . expr expression_block - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 722 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 536 +State 535 74 expression_with_alias: "assume" . "name" '=' expr "name" shift, and go to state 723 -State 537 +State 536 - 253 expression_continue: "continue" . + 252 expression_continue: "continue" . - $default reduce using rule 253 (expression_continue) + $default reduce using rule 252 (expression_continue) -State 538 +State 537 231 expression_any: "pass" . "end of expression" "end of expression" shift, and go to state 724 -State 539 +State 538 51 expression_label: "label" . "integer constant" ':' "integer constant" shift, and go to state 725 -State 540 +State 539 52 expression_goto: "goto" . "label" "integer constant" 53 | "goto" . expr - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 "label" shift, and go to state 726 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 727 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 541 +State 540 71 expression_unsafe: "unsafe" . expression_block - "begin of code block" shift, and go to state 322 + "begin of code block" shift, and go to state 321 expression_block go to state 728 -State 542 +State 541 - 257 expression_yield_no_pipe: "yield" . expr - 258 | "yield" . "<-" expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 + 256 expression_yield_no_pipe: "yield" . expr + 257 | "yield" . "<-" expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 "<-" shift, and go to state 729 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 730 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 543 +State 542 211 expression_block: "begin of code block" expressions "end of code block" . 212 | "begin of code block" expressions "end of code block" . "finally" "begin of code block" expressions "end of code block" @@ -10346,98 +10278,98 @@ State 543 $default reduce using rule 211 (expression_block) -State 544 +State 543 214 expression_any: "end of expression" . $default reduce using rule 214 (expression_any) -State 545 +State 544 229 expression_any: expression_label . "end of expression" "end of expression" shift, and go to state 732 -State 546 +State 545 230 expression_any: expression_goto . "end of expression" "end of expression" shift, and go to state 733 -State 547 +State 546 68 expression_if_then_else: if_or_static_if . '(' expr ')' expression_block expression_else '(' shift, and go to state 734 -State 548 +State 547 69 expression_if_then_else: expression_if_one_liner . "if" '(' expr ')' expression_else_one_liner "end of expression" "if" shift, and go to state 735 -State 549 +State 548 227 expression_any: expression_if_then_else . $default reduce using rule 227 (expression_any) -State 550 +State 549 222 expression_any: expression_for_loop . $default reduce using rule 222 (expression_any) -State 551 +State 550 219 expression_any: expression_unsafe . $default reduce using rule 219 (expression_any) -State 552 +State 551 218 expression_any: expression_while_loop . $default reduce using rule 218 (expression_any) -State 553 +State 552 220 expression_any: expression_with . $default reduce using rule 220 (expression_any) -State 554 +State 553 221 expression_any: expression_with_alias . $default reduce using rule 221 (expression_any) -State 555 +State 554 233 expressions: expressions expression_any . $default reduce using rule 233 (expressions) -State 556 +State 555 216 expression_any: expression_delete . "end of expression" "end of expression" shift, and go to state 736 -State 557 +State 556 66 expression_if_one_liner: expression_break . 223 expression_any: expression_break . "end of expression" @@ -10447,7 +10379,7 @@ State 557 $default reduce using rule 66 (expression_if_one_liner) -State 558 +State 557 67 expression_if_one_liner: expression_continue . 224 expression_any: expression_continue . "end of expression" @@ -10457,7 +10389,7 @@ State 558 $default reduce using rule 67 (expression_if_one_liner) -State 559 +State 558 64 expression_if_one_liner: expression_return . 225 expression_any: expression_return . "end of expression" @@ -10467,139 +10399,139 @@ State 559 $default reduce using rule 64 (expression_if_one_liner) -State 560 +State 559 65 expression_if_one_liner: expression_yield_no_pipe . - 259 expression_yield: expression_yield_no_pipe . "end of expression" + 258 expression_yield: expression_yield_no_pipe . "end of expression" "end of expression" shift, and go to state 740 $default reduce using rule 65 (expression_if_one_liner) -State 561 +State 560 226 expression_any: expression_yield . $default reduce using rule 226 (expression_any) -State 562 +State 561 228 expression_any: expression_try_catch . $default reduce using rule 228 (expression_any) -State 563 +State 562 - 272 expression_let: kwd_let . optional_in_scope let_variable_declaration - 273 | kwd_let . optional_in_scope tuple_expansion_variable_declaration + 271 expression_let: kwd_let . optional_in_scope let_variable_declaration + 272 | kwd_let . optional_in_scope tuple_expansion_variable_declaration "inscope" shift, and go to state 741 - $default reduce using rule 267 (optional_in_scope) + $default reduce using rule 266 (optional_in_scope) optional_in_scope go to state 742 -State 564 +State 563 217 expression_any: expression_let . $default reduce using rule 217 (expression_any) -State 565 +State 564 215 expression_any: expr_assign . "end of expression" "end of expression" shift, and go to state 743 -State 566 +State 565 63 expression_if_one_liner: expr . - 315 expr_assign: expr . - 316 | expr . '=' expr - 317 | expr . "<-" expr - 318 | expr . ":=" expr - 319 | expr . "&=" expr - 320 | expr . "|=" expr - 321 | expr . "^=" expr - 322 | expr . "&&=" expr - 323 | expr . "||=" expr - 324 | expr . "^^=" expr - 325 | expr . "+=" expr - 326 | expr . "-=" expr - 327 | expr . "*=" expr - 328 | expr . "/=" expr - 329 | expr . "%=" expr - 330 | expr . "<<=" expr - 331 | expr . ">>=" expr - 332 | expr . "<<<=" expr - 333 | expr . ">>>=" expr - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 + 314 expr_assign: expr . + 315 | expr . '=' expr + 316 | expr . "<-" expr + 317 | expr . ":=" expr + 318 | expr . "&=" expr + 319 | expr . "|=" expr + 320 | expr . "^=" expr + 321 | expr . "&&=" expr + 322 | expr . "||=" expr + 323 | expr . "^^=" expr + 324 | expr . "+=" expr + 325 | expr . "-=" expr + 326 | expr . "*=" expr + 327 | expr . "/=" expr + 328 | expr . "%=" expr + 329 | expr . "<<=" expr + 330 | expr . ">>=" expr + 331 | expr . "<<<=" expr + 332 | expr . ">>>=" expr + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 "+=" shift, and go to state 744 "-=" shift, and go to state 745 "/=" shift, and go to state 746 @@ -10608,2206 +10540,2166 @@ State 566 "&=" shift, and go to state 749 "|=" shift, and go to state 750 "^=" shift, and go to state 751 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 "<<=" shift, and go to state 752 ">>=" shift, and go to state 753 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 "<-" shift, and go to state 754 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 ":=" shift, and go to state 755 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 "<<<=" shift, and go to state 756 ">>>=" shift, and go to state 757 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 "&&=" shift, and go to state 758 "||=" shift, and go to state 759 "^^=" shift, and go to state 760 - ".." shift, and go to state 663 + ".." shift, and go to state 662 '=' shift, and go to state 761 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 - - "end of expression" reduce using rule 315 (expr_assign) + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 + + "end of expression" reduce using rule 314 (expr_assign) $default reduce using rule 63 (expression_if_one_liner) -State 567 +State 566 - 525 enum_expression: "name" . - 526 | "name" . '=' expr + 524 enum_expression: "name" . + 525 | "name" . '=' expr '=' shift, and go to state 762 - $default reduce using rule 525 (enum_expression) + $default reduce using rule 524 (enum_expression) -State 568 +State 567 - 528 enum_list: enum_expression . + 527 enum_list: enum_expression . - $default reduce using rule 528 (enum_list) + $default reduce using rule 527 (enum_list) -State 569 +State 568 - 529 enum_list: enum_list . ',' enum_expression - 544 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list . optional_comma $@32 "end of code block" + 528 enum_list: enum_list . ',' enum_expression + 543 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list . optional_comma $@32 "end of code block" ',' shift, and go to state 763 - $default reduce using rule 758 (optional_comma) + $default reduce using rule 759 (optional_comma) optional_comma go to state 764 -State 570 +State 569 - 546 optional_structure_parent: ':' name_in_namespace . + 545 optional_structure_parent: ':' name_in_namespace . - $default reduce using rule 546 (optional_structure_parent) + $default reduce using rule 545 (optional_structure_parent) -State 571 +State 570 - 472 struct_variable_declaration_list: struct_variable_declaration_list . $@25 structure_variable_declaration "end of expression" - 474 | struct_variable_declaration_list . optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" - 476 | struct_variable_declaration_list . optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block - 556 optional_struct_variable_declaration_list: "begin of code block" struct_variable_declaration_list . "end of code block" + 471 struct_variable_declaration_list: struct_variable_declaration_list . $@25 structure_variable_declaration "end of expression" + 473 | struct_variable_declaration_list . optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" + 475 | struct_variable_declaration_list . optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block + 555 optional_struct_variable_declaration_list: "begin of code block" struct_variable_declaration_list . "end of code block" "end of code block" shift, and go to state 765 '[' shift, and go to state 15 "def" reduce using rule 112 (optional_annotation_list) - $default reduce using rule 471 ($@25) + $default reduce using rule 470 ($@25) optional_annotation_list go to state 766 $@25 go to state 767 -State 572 +State 571 - 516 global_variable_declaration_list: global_variable_declaration_list $@28 optional_field_annotation let_variable_declaration . + 515 global_variable_declaration_list: global_variable_declaration_list $@28 optional_field_annotation let_variable_declaration . - $default reduce using rule 516 (global_variable_declaration_list) + $default reduce using rule 515 (global_variable_declaration_list) -State 573 +State 572 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 507 let_variable_name_with_pos_list: "$i" '(' expr . ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 506 let_variable_name_with_pos_list: "$i" '(' expr . ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ')' shift, and go to state 768 +State 573 + + 507 let_variable_name_with_pos_list: "name" "aka" "name" . + + $default reduce using rule 507 (let_variable_name_with_pos_list) + + State 574 - 508 let_variable_name_with_pos_list: "name" "aka" "name" . + 508 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" . + 509 | let_variable_name_with_pos_list ',' "name" . "aka" "name" + + "aka" shift, and go to state 769 $default reduce using rule 508 (let_variable_name_with_pos_list) State 575 - 509 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" . - 510 | let_variable_name_with_pos_list ',' "name" . "aka" "name" + 510 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options . "end of expression" + 511 | let_variable_name_with_pos_list ':' type_declaration_no_options . copy_or_move_or_clone expr "end of expression" - "aka" shift, and go to state 769 + "<-" shift, and go to state 576 + ":=" shift, and go to state 577 + "end of expression" shift, and go to state 770 + '=' shift, and go to state 578 - $default reduce using rule 509 (let_variable_name_with_pos_list) + copy_or_move_or_clone go to state 771 State 576 - 511 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options . "end of expression" - 512 | let_variable_name_with_pos_list ':' type_declaration_no_options . copy_or_move_or_clone expr "end of expression" - 620 type_declaration_no_options: type_declaration_no_options . dim_list - 621 | type_declaration_no_options . '[' ']' - 629 | type_declaration_no_options . '-' '[' ']' - 630 | type_declaration_no_options . "explicit" - 631 | type_declaration_no_options . "const" - 632 | type_declaration_no_options . '-' "const" - 633 | type_declaration_no_options . '&' - 634 | type_declaration_no_options . '-' '&' - 635 | type_declaration_no_options . '#' - 636 | type_declaration_no_options . "implicit" - 637 | type_declaration_no_options . '-' '#' - 638 | type_declaration_no_options . "==" "const" - 639 | type_declaration_no_options . "==" '&' - 640 | type_declaration_no_options . '*' - 644 | type_declaration_no_options . "??" - - "const" shift, and go to state 360 - "implicit" shift, and go to state 361 - "explicit" shift, and go to state 362 - "==" shift, and go to state 363 - "<-" shift, and go to state 577 - "??" shift, and go to state 364 - ":=" shift, and go to state 578 - "end of expression" shift, and go to state 770 - '=' shift, and go to state 579 - '&' shift, and go to state 365 - '-' shift, and go to state 366 - '*' shift, and go to state 367 - '[' shift, and go to state 368 - '#' shift, and go to state 369 + 501 copy_or_move_or_clone: "<-" . - copy_or_move_or_clone go to state 771 - dim_list go to state 370 + $default reduce using rule 501 (copy_or_move_or_clone) State 577 - 502 copy_or_move_or_clone: "<-" . + 502 copy_or_move_or_clone: ":=" . $default reduce using rule 502 (copy_or_move_or_clone) State 578 - 503 copy_or_move_or_clone: ":=" . + 500 copy_or_move_or_clone: '=' . - $default reduce using rule 503 (copy_or_move_or_clone) + $default reduce using rule 500 (copy_or_move_or_clone) State 579 - 501 copy_or_move_or_clone: '=' . - - $default reduce using rule 501 (copy_or_move_or_clone) - - -State 580 - - 513 let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone . expr "end of expression" - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 512 let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone . expr "end of expression" + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 772 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 581 +State 580 - 624 type_declaration_no_options: "type" '<' $@37 type_declaration . '>' $@38 - 682 type_declaration: type_declaration . '|' type_declaration_no_options - 683 | type_declaration . '|' '#' + 625 type_declaration_no_options_no_dim: "type" '<' $@37 type_declaration . '>' $@38 + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' - '|' shift, and go to state 371 + '|' shift, and go to state 370 '>' shift, and go to state 773 -State 582 +State 581 - 647 type_declaration_no_options: "array" '<' $@42 type_declaration . '>' $@43 - 682 type_declaration: type_declaration . '|' type_declaration_no_options - 683 | type_declaration . '|' '#' + 648 type_declaration_no_options_no_dim: "array" '<' $@42 type_declaration . '>' $@43 + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' - '|' shift, and go to state 371 + '|' shift, and go to state 370 '>' shift, and go to state 774 -State 583 +State 582 - 650 type_declaration_no_options: "table" '<' $@44 table_type_pair . '>' $@45 + 651 type_declaration_no_options_no_dim: "table" '<' $@44 table_type_pair . '>' $@45 '>' shift, and go to state 775 -State 584 +State 583 - 612 table_type_pair: type_declaration . - 613 | type_declaration . "end of expression" type_declaration - 682 type_declaration: type_declaration . '|' type_declaration_no_options - 683 | type_declaration . '|' '#' + 611 table_type_pair: type_declaration . + 612 | type_declaration . "end of expression" type_declaration + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' "end of expression" shift, and go to state 776 - '|' shift, and go to state 371 + '|' shift, and go to state 370 - $default reduce using rule 612 (table_type_pair) + $default reduce using rule 611 (table_type_pair) -State 585 +State 584 - 716 make_struct_decl: "struct" '<' . $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' + 717 make_struct_decl: "struct" '<' . $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' - $default reduce using rule 714 ($@73) + $default reduce using rule 715 ($@73) $@73 go to state 777 -State 586 +State 585 - 719 make_struct_decl: "class" '<' . $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' + 720 make_struct_decl: "class" '<' . $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' - $default reduce using rule 717 ($@75) + $default reduce using rule 718 ($@75) $@75 go to state 778 -State 587 +State 586 - 246 new_type_declaration: '<' . $@3 type_declaration '>' $@4 + 245 new_type_declaration: '<' . $@3 type_declaration '>' $@4 - $default reduce using rule 244 ($@3) + $default reduce using rule 243 ($@3) $@3 go to state 779 -State 588 +State 587 - 249 expr_new: "new" new_type_declaration . '(' use_initializer ')' - 250 | "new" new_type_declaration . '(' use_initializer make_struct_single ')' + 248 expr_new: "new" new_type_declaration . '(' use_initializer ')' + 249 | "new" new_type_declaration . '(' use_initializer make_struct_single ')' '(' shift, and go to state 780 -State 589 +State 588 - 247 expr_new: "new" structure_type_declaration . - 248 | "new" structure_type_declaration . '(' optional_expr_list ')' + 246 expr_new: "new" structure_type_declaration . + 247 | "new" structure_type_declaration . '(' optional_expr_list ')' '(' shift, and go to state 781 - '(' [reduce using rule 247 (expr_new)] - $default reduce using rule 247 (expr_new) + '(' [reduce using rule 246 (expr_new)] + $default reduce using rule 246 (expr_new) -State 590 +State 589 - 251 expr_new: "new" make_decl . + 250 expr_new: "new" make_decl . - $default reduce using rule 251 (expr_new) + $default reduce using rule 250 (expr_new) -State 591 +State 590 - 286 expr_type_info: "typeinfo" '(' . name_in_namespace expr ')' - 287 | "typeinfo" '(' . name_in_namespace '<' "name" '>' expr ')' - 288 | "typeinfo" '(' . name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' + 285 expr_type_info: "typeinfo" '(' . name_in_namespace expr ')' + 286 | "typeinfo" '(' . name_in_namespace '<' "name" '>' expr ')' + 287 | "typeinfo" '(' . name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' - "::" shift, and go to state 55 - "name" shift, and go to state 56 + "name" shift, and go to state 55 name_in_namespace go to state 782 -State 592 +State 591 - 285 expr_type_decl: "type" '<' . $@11 type_declaration '>' $@12 + 284 expr_type_decl: "type" '<' . $@11 type_declaration '>' $@12 - $default reduce using rule 283 ($@11) + $default reduce using rule 282 ($@11) $@11 go to state 783 -State 593 +State 592 - 735 make_dim_decl: "array" "struct" . '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' + 736 make_dim_decl: "array" "struct" . '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' '<' shift, and go to state 784 -State 594 +State 593 - 738 make_dim_decl: "array" "tuple" . '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' + 739 make_dim_decl: "array" "tuple" . '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' '<' shift, and go to state 785 -State 595 +State 594 - 741 make_dim_decl: "array" "variant" . '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' + 742 make_dim_decl: "array" "variant" . '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' '<' shift, and go to state 786 -State 596 +State 595 - 745 make_dim_decl: "array" '<' . $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' + 746 make_dim_decl: "array" '<' . $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' - $default reduce using rule 743 ($@89) + $default reduce using rule 744 ($@89) $@89 go to state 787 -State 597 +State 596 - 742 make_dim_decl: "array" '(' . expr_list optional_comma ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 743 make_dim_decl: "array" '(' . expr_list optional_comma ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 expr_list go to state 788 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 633 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 632 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 598 +State 597 - 754 make_table_decl: "table" '<' . type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - 755 | "table" '<' . type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 789 + 755 make_table_decl: "table" '<' . type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + 756 | "table" '<' . type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 789 + type_declaration_no_options_no_dim go to state 261 -State 599 +State 598 - 753 make_table_decl: "table" '(' . expr_map_tuple_list optional_comma ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 754 make_table_decl: "table" '(' . expr_map_tuple_list optional_comma ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 622 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_map_tuple go to state 623 - make_tuple_call go to state 476 - make_dim_decl go to state 477 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 621 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_map_tuple go to state 622 + make_tuple_call go to state 475 + make_dim_decl go to state 476 expr_map_tuple_list go to state 790 - make_table_decl go to state 478 - array_comprehension go to state 479 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 600 +State 599 - 409 expr: "deref" '(' . expr ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 408 expr: "deref" '(' . expr ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 791 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 601 +State 600 - 276 expr_cast: "cast" '<' . $@5 type_declaration_no_options '>' $@6 expr + 275 expr_cast: "cast" '<' . $@5 type_declaration_no_options '>' $@6 expr - $default reduce using rule 274 ($@5) + $default reduce using rule 273 ($@5) $@5 go to state 792 -State 602 +State 601 - 279 expr_cast: "upcast" '<' . $@7 type_declaration_no_options '>' $@8 expr + 278 expr_cast: "upcast" '<' . $@7 type_declaration_no_options '>' $@8 expr - $default reduce using rule 277 ($@7) + $default reduce using rule 276 ($@7) $@7 go to state 793 -State 603 +State 602 - 410 expr: "addr" '(' . expr ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 409 expr: "addr" '(' . expr ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 794 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 604 +State 603 - 282 expr_cast: "reinterpret" '<' . $@9 type_declaration_no_options '>' $@10 expr + 281 expr_cast: "reinterpret" '<' . $@9 type_declaration_no_options '>' $@10 expr - $default reduce using rule 280 ($@9) + $default reduce using rule 279 ($@9) $@9 go to state 795 -State 605 +State 604 - 749 make_dim_decl: "fixed_array" '<' . $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' + 750 make_dim_decl: "fixed_array" '<' . $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' - $default reduce using rule 747 ($@91) + $default reduce using rule 748 ($@91) $@91 go to state 796 -State 606 +State 605 - 746 make_dim_decl: "fixed_array" '(' . expr_list optional_comma ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 747 make_dim_decl: "fixed_array" '(' . expr_list optional_comma ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 expr_list go to state 797 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 633 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 632 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 607 +State 606 - 725 make_struct_decl: "default" '<' . $@79 type_declaration_no_options '>' $@80 use_initializer + 726 make_struct_decl: "default" '<' . $@79 type_declaration_no_options '>' $@80 use_initializer - $default reduce using rule 723 ($@79) + $default reduce using rule 724 ($@79) $@79 go to state 798 -State 608 +State 607 - 731 make_tuple_call: "tuple" '<' . $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' + 732 make_tuple_call: "tuple" '<' . $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' - $default reduce using rule 729 ($@81) + $default reduce using rule 730 ($@81) $@81 go to state 799 -State 609 +State 608 - 728 make_tuple_call: "tuple" '(' . expr_list optional_comma ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 729 make_tuple_call: "tuple" '(' . expr_list optional_comma ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 expr_list go to state 800 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 633 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 632 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 610 +State 609 - 722 make_struct_decl: "variant" '<' . $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim ')' + 723 make_struct_decl: "variant" '<' . $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim ')' - $default reduce using rule 720 ($@77) + $default reduce using rule 721 ($@77) $@77 go to state 801 -State 611 +State 610 - 411 expr: "generator" '<' . type_declaration_no_options '>' optional_capture_list '(' ')' - 412 | "generator" '<' . type_declaration_no_options '>' optional_capture_list '(' expr ')' - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 802 + 410 expr: "generator" '<' . type_declaration_no_options '>' optional_capture_list '(' ')' + 411 | "generator" '<' . type_declaration_no_options '>' optional_capture_list '(' expr ')' + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 802 + type_declaration_no_options_no_dim go to state 261 -State 612 +State 611 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 395 | "++" expr . - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "->" shift, and go to state 652 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 394 | "++" expr . + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "->" shift, and go to state 651 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 395 (expr) + $default reduce using rule 394 (expr) -State 613 +State 612 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 396 | "--" expr . - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "->" shift, and go to state 652 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 395 | "--" expr . + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "->" shift, and go to state 651 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 396 (expr) + $default reduce using rule 395 (expr) -State 614 +State 613 - 441 expr_mtag: "$$" '(' . expr ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 440 expr_mtag: "$$" '(' . expr ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 803 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 615 +State 614 - 442 expr_mtag: "$i" '(' . expr ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 441 expr_mtag: "$i" '(' . expr ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 804 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 616 +State 615 - 443 expr_mtag: "$v" '(' . expr ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 442 expr_mtag: "$v" '(' . expr ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 805 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 617 +State 616 - 444 expr_mtag: "$b" '(' . expr ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 443 expr_mtag: "$b" '(' . expr ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 806 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 618 +State 617 - 445 expr_mtag: "$a" '(' . expr ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 444 expr_mtag: "$a" '(' . expr ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 807 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 619 +State 618 - 447 expr_mtag: "$c" '(' . expr ')' '(' ')' - 448 | "$c" '(' . expr ')' '(' expr_list ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 446 expr_mtag: "$c" '(' . expr ')' '(' ')' + 447 | "$c" '(' . expr ')' '(' expr_list ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 808 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 620 +State 619 29 string_builder_body: string_builder_body . character_sequence 30 | string_builder_body . "{" expr "}" 31 string_builder: "start of the string" string_builder_body . "end of the string" - STRING_CHARACTER shift, and go to state 153 - STRING_CHARACTER_ESC shift, and go to state 154 + STRING_CHARACTER shift, and go to state 151 + STRING_CHARACTER_ESC shift, and go to state 152 "end of the string" shift, and go to state 809 "{" shift, and go to state 810 character_sequence go to state 811 -State 621 +State 620 - 762 array_comprehension: "begin of code block" "for" . variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" + 763 array_comprehension: "begin of code block" "for" . variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" "$i" shift, and go to state 710 "name" shift, and go to state 711 @@ -12815,509 +12707,509 @@ State 621 variable_name_with_pos_list go to state 812 -State 622 +State 621 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 726 make_map_tuple: expr . "=>" expr - 727 | expr . - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 727 make_map_tuple: expr . "=>" expr + 728 | expr . + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 "=>" shift, and go to state 813 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 - - $default reduce using rule 727 (make_map_tuple) + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 + + $default reduce using rule 728 (make_map_tuple) -State 623 +State 622 - 750 expr_map_tuple_list: make_map_tuple . + 751 expr_map_tuple_list: make_map_tuple . - $default reduce using rule 750 (expr_map_tuple_list) + $default reduce using rule 751 (expr_map_tuple_list) -State 624 +State 623 - 751 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple - 752 make_table_decl: "begin of code block" expr_map_tuple_list . optional_comma "end of code block" + 752 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple + 753 make_table_decl: "begin of code block" expr_map_tuple_list . optional_comma "end of code block" ',' shift, and go to state 814 - $default reduce using rule 758 (optional_comma) + $default reduce using rule 759 (optional_comma) optional_comma go to state 815 +State 624 + + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 371 expr: '-' expr . + 372 | expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "->" shift, and go to state 651 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + '.' shift, and go to state 674 + '[' shift, and go to state 675 + + $default reduce using rule 371 (expr) + + State 625 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 372 expr: '-' expr . - 373 | expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "->" shift, and go to state 652 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 370 expr: '+' expr . + 372 | expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "->" shift, and go to state 651 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 372 (expr) + $default reduce using rule 370 (expr) State 626 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 371 expr: '+' expr . - 373 | expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "->" shift, and go to state 652 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - '.' shift, and go to state 675 - '[' shift, and go to state 676 - - $default reduce using rule 371 (expr) + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 407 | '*' expr . + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + '.' shift, and go to state 674 + '[' shift, and go to state 675 + + $default reduce using rule 407 (expr) State 627 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 408 | '*' expr . - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 369 expr: '~' expr . + 372 | expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "->" shift, and go to state 651 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 408 (expr) + $default reduce using rule 369 (expr) State 628 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 370 expr: '~' expr . - 373 | expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "->" shift, and go to state 652 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 368 expr: '!' expr . + 372 | expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "->" shift, and go to state 651 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 370 (expr) + $default reduce using rule 368 (expr) State 629 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 369 expr: '!' expr . - 373 | expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "->" shift, and go to state 652 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - '.' shift, and go to state 675 - '[' shift, and go to state 676 - - $default reduce using rule 369 (expr) - - -State 630 - - 760 array_comprehension: '[' "for" . variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 761 array_comprehension: '[' "for" . variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' "$i" shift, and go to state 710 "name" shift, and go to state 711 @@ -13325,309 +13217,307 @@ State 630 variable_name_with_pos_list go to state 816 -State 631 +State 630 - 761 array_comprehension: '[' "iterator" . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 762 array_comprehension: '[' "iterator" . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' "for" shift, and go to state 817 -State 632 +State 631 - 290 expr_list: expr_list . ',' expr - 732 make_dim_decl: '[' expr_list . optional_comma ']' + 289 expr_list: expr_list . ',' expr + 733 make_dim_decl: '[' expr_list . optional_comma ']' ',' shift, and go to state 818 - $default reduce using rule 758 (optional_comma) + $default reduce using rule 759 (optional_comma) optional_comma go to state 819 -State 633 - - 289 expr_list: expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 +State 632 - $default reduce using rule 289 (expr_list) + 288 expr_list: expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 + + $default reduce using rule 288 (expr_list) -State 634 +State 633 - 290 expr_list: expr_list . ',' expr - 399 expr: '(' expr_list . optional_comma ')' + 289 expr_list: expr_list . ',' expr + 398 expr: '(' expr_list . optional_comma ')' ',' shift, and go to state 818 - $default reduce using rule 758 (optional_comma) + $default reduce using rule 759 (optional_comma) optional_comma go to state 820 -State 635 +State 634 - 296 block_or_lambda: '@' '@' . - 340 func_addr_expr: '@' '@' . func_addr_name - 343 | '@' '@' . '<' $@13 type_declaration_no_options '>' $@14 func_addr_name - 346 | '@' '@' . '<' $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name - 456 expr_mtag: '@' '@' . "$c" '(' expr ')' + 295 block_or_lambda: '@' '@' . + 339 func_addr_expr: '@' '@' . func_addr_name + 342 | '@' '@' . '<' $@13 type_declaration_no_options '>' $@14 func_addr_name + 345 | '@' '@' . '<' $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name + 455 expr_mtag: '@' '@' . "$c" '(' expr ')' - "::" shift, and go to state 55 "$i" shift, and go to state 821 "$c" shift, and go to state 822 - "name" shift, and go to state 56 + "name" shift, and go to state 55 '<' shift, and go to state 823 - $default reduce using rule 296 (block_or_lambda) + $default reduce using rule 295 (block_or_lambda) name_in_namespace go to state 824 func_addr_name go to state 825 -State 636 +State 635 - 334 expr_named_call: name_in_namespace '(' . '[' make_struct_fields ']' ')' - 335 | name_in_namespace '(' . expr_list ',' '[' make_struct_fields ']' ')' - 354 expr_call: name_in_namespace '(' . ')' - 355 | name_in_namespace '(' . make_struct_single ')' - 356 | name_in_namespace '(' . expr_list ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 + 333 expr_named_call: name_in_namespace '(' . '[' make_struct_fields ']' ')' + 334 | name_in_namespace '(' . expr_list ',' '[' make_struct_fields ']' ')' + 353 expr_call: name_in_namespace '(' . ')' + 354 | name_in_namespace '(' . make_struct_single ')' + 355 | name_in_namespace '(' . expr_list ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 "$f" shift, and go to state 826 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 "name" shift, and go to state 827 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 + '~' shift, and go to state 448 + '!' shift, and go to state 449 '[' shift, and go to state 828 - '(' shift, and go to state 452 + '(' shift, and go to state 451 ')' shift, and go to state 829 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 expr_list go to state 830 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 633 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 632 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 make_struct_fields go to state 831 make_struct_single go to state 832 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 637 +State 636 - 305 expr_full_block: block_or_lambda optional_annotation_list . optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block + 304 expr_full_block: block_or_lambda optional_annotation_list . optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block '[' shift, and go to state 833 - $default reduce using rule 303 (optional_capture_list) + $default reduce using rule 302 (optional_capture_list) optional_capture_list go to state 834 -State 638 +State 637 - 307 expr_full_block_assumed_piped: "begin of code block" . expressions "end of code block" + 306 expr_full_block_assumed_piped: "begin of code block" . expressions "end of code block" $default reduce using rule 232 (expressions) expressions go to state 835 -State 639 +State 638 - 295 block_or_lambda: '@' . - 296 | '@' . '@' + 294 block_or_lambda: '@' . + 295 | '@' . '@' '@' shift, and go to state 836 - $default reduce using rule 295 (block_or_lambda) + $default reduce using rule 294 (block_or_lambda) -State 640 +State 639 - 306 expr_full_block_assumed_piped: block_or_lambda . optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block + 305 expr_full_block_assumed_piped: block_or_lambda . optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block '[' shift, and go to state 15 @@ -13637,3088 +13527,3061 @@ State 640 optional_annotation_list go to state 837 -State 641 +State 640 213 expr_call_pipe: expr_call expr_full_block_assumed_piped . $default reduce using rule 213 (expr_call_pipe) -State 642 +State 641 - 417 expr: expr "is" . "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr "is" . basic_type_declaration - 419 | expr "is" . "name" - 455 expr_mtag: expr "is" . "$f" '(' expr ')' + 416 expr: expr "is" . "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr "is" . basic_type_declaration + 418 | expr "is" . "name" + 454 expr_mtag: expr "is" . "$f" '(' expr ')' "type" shift, and go to state 838 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 "$f" shift, and go to state 839 "name" shift, and go to state 840 basic_type_declaration go to state 841 -State 643 +State 642 - 420 expr: expr "as" . "name" - 423 | expr "as" . "type" '<' $@21 type_declaration '>' $@22 - 424 | expr "as" . basic_type_declaration - 453 expr_mtag: expr "as" . "$f" '(' expr ')' + 419 expr: expr "as" . "name" + 422 | expr "as" . "type" '<' $@21 type_declaration '>' $@22 + 423 | expr "as" . basic_type_declaration + 452 expr_mtag: expr "as" . "$f" '(' expr ')' "type" shift, and go to state 842 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 "$f" shift, and go to state 843 "name" shift, and go to state 844 basic_type_declaration go to state 845 -State 644 +State 643 - 373 expr: expr "<<" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 372 expr: expr "<<" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 846 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 645 +State 644 - 374 expr: expr ">>" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 373 expr: expr ">>" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 847 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 646 +State 645 - 397 expr: expr "++" . + 396 expr: expr "++" . - $default reduce using rule 397 (expr) + $default reduce using rule 396 (expr) -State 647 +State 646 - 398 expr: expr "--" . + 397 expr: expr "--" . - $default reduce using rule 398 (expr) + $default reduce using rule 397 (expr) -State 648 +State 647 - 386 expr: expr "<=" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 385 expr: expr "<=" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 848 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 649 +State 648 - 387 expr: expr ">=" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 386 expr: expr ">=" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 849 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 650 +State 649 - 384 expr: expr "==" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 383 expr: expr "==" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 850 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 651 +State 650 - 385 expr: expr "!=" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 384 expr: expr "!=" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 851 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 652 +State 651 - 336 expr_method_call: expr "->" . "name" '(' ')' - 337 | expr "->" . "name" '(' expr_list ')' + 335 expr_method_call: expr "->" . "name" '(' ')' + 336 | expr "->" . "name" '(' expr_list ')' "name" shift, and go to state 852 -State 653 +State 652 - 413 expr: expr "??" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 412 expr: expr "??" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 853 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 654 +State 653 - 404 expr: expr "?." . "name" - 450 expr_mtag: expr "?." . "$f" '(' expr ')' + 403 expr: expr "?." . "name" + 449 expr_mtag: expr "?." . "$f" '(' expr ')' "$f" shift, and go to state 854 "name" shift, and go to state 855 -State 655 +State 654 - 402 expr: expr "?[" . expr ']' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 401 expr: expr "?[" . expr ']' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 856 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 656 +State 655 - 437 expr: expr "<|" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 436 expr: expr "<|" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 857 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 657 +State 656 - 438 expr: expr "|>" . expr - 439 | expr "|>" . basic_type_declaration - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 437 expr: expr "|>" . expr + 438 | expr "|>" . basic_type_declaration + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 858 - expr_mtag go to state 472 + expr_mtag go to state 471 basic_type_declaration go to state 859 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 658 +State 657 - 375 expr: expr "<<<" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 374 expr: expr "<<<" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 860 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 659 +State 658 - 376 expr: expr ">>>" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 375 expr: expr ">>>" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 861 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 660 +State 659 - 391 expr: expr "&&" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 390 expr: expr "&&" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 862 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 661 +State 660 - 392 expr: expr "||" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 391 expr: expr "||" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 863 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 662 +State 661 - 393 expr: expr "^^" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 392 expr: expr "^^" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 864 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 663 +State 662 - 394 expr: expr ".." . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 393 expr: expr ".." . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 865 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 664 +State 663 - 414 expr: expr '?' . expr ':' expr - 425 | expr '?' . "as" "name" - 428 | expr '?' . "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr '?' . "as" basic_type_declaration - 454 expr_mtag: expr '?' . "as" "$f" '(' expr ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 + 413 expr: expr '?' . expr ':' expr + 424 | expr '?' . "as" "name" + 427 | expr '?' . "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr '?' . "as" basic_type_declaration + 453 expr_mtag: expr '?' . "as" "$f" '(' expr ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 "as" shift, and go to state 866 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 867 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 665 +State 664 - 389 expr: expr '|' . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 388 expr: expr '|' . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 868 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 666 +State 665 - 390 expr: expr '^' . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 389 expr: expr '^' . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 869 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 667 +State 666 - 388 expr: expr '&' . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 387 expr: expr '&' . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 870 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 668 +State 667 - 382 expr: expr '<' . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 381 expr: expr '<' . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 871 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 669 +State 668 - 383 expr: expr '>' . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 382 expr: expr '>' . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 872 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 670 +State 669 - 378 expr: expr '-' . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 377 expr: expr '-' . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 873 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 671 +State 670 - 377 expr: expr '+' . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 376 expr: expr '+' . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 874 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 672 +State 671 - 379 expr: expr '*' . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 378 expr: expr '*' . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 875 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 673 +State 672 - 380 expr: expr '/' . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 379 expr: expr '/' . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 876 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 674 +State 673 - 381 expr: expr '%' . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 380 expr: expr '%' . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 877 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 675 +State 674 - 347 expr_field: expr '.' . "name" - 348 | expr '.' . '.' "name" - 349 | expr '.' . "name" '(' ')' - 350 | expr '.' . "name" '(' expr_list ')' - 353 | expr '.' . $@17 error $@18 - 401 expr: expr '.' . '[' expr ']' - 403 | expr '.' . "?[" expr ']' - 405 | expr '.' . "?." "name" - 449 expr_mtag: expr '.' . "$f" '(' expr ')' - 451 | expr '.' . '.' "$f" '(' expr ')' - 452 | expr '.' . "?." "$f" '(' expr ')' + 346 expr_field: expr '.' . "name" + 347 | expr '.' . '.' "name" + 348 | expr '.' . "name" '(' ')' + 349 | expr '.' . "name" '(' expr_list ')' + 352 | expr '.' . $@17 error $@18 + 400 expr: expr '.' . '[' expr ']' + 402 | expr '.' . "?[" expr ']' + 404 | expr '.' . "?." "name" + 448 expr_mtag: expr '.' . "$f" '(' expr ')' + 450 | expr '.' . '.' "$f" '(' expr ')' + 451 | expr '.' . "?." "$f" '(' expr ')' "?." shift, and go to state 878 "?[" shift, and go to state 879 @@ -16727,862 +16590,867 @@ State 675 '.' shift, and go to state 882 '[' shift, and go to state 883 - $default reduce using rule 351 ($@17) + $default reduce using rule 350 ($@17) $@17 go to state 884 -State 676 +State 675 - 400 expr: expr '[' . expr ']' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 399 expr: expr '[' . expr ']' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 885 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 677 +State 676 - 625 type_declaration_no_options: "typedecl" '(' expr ')' . + 626 type_declaration_no_options_no_dim: "typedecl" '(' expr ')' . - $default reduce using rule 625 (type_declaration_no_options) + $default reduce using rule 626 (type_declaration_no_options_no_dim) -State 678 +State 677 - 357 expr_call: basic_type_declaration '(' . ')' - 358 | basic_type_declaration '(' . expr_list ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 356 expr_call: basic_type_declaration '(' . ')' + 357 | basic_type_declaration '(' . expr_list ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 ')' shift, and go to state 886 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 expr_list go to state 887 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 633 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 632 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 -State 679 +State 678 - 653 type_declaration_no_options: "iterator" '<' $@46 type_declaration . '>' $@47 - 682 type_declaration: type_declaration . '|' type_declaration_no_options - 683 | type_declaration . '|' '#' + 654 type_declaration_no_options_no_dim: "iterator" '<' $@46 type_declaration . '>' $@47 + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' - '|' shift, and go to state 371 + '|' shift, and go to state 370 '>' shift, and go to state 888 -State 680 +State 679 - 643 type_declaration_no_options: "smart_ptr" '<' $@40 type_declaration . '>' $@41 - 682 type_declaration: type_declaration . '|' type_declaration_no_options - 683 | type_declaration . '|' '#' + 644 type_declaration_no_options_no_dim: "smart_ptr" '<' $@40 type_declaration . '>' $@41 + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' - '|' shift, and go to state 371 + '|' shift, and go to state 370 '>' shift, and go to state 889 -State 681 +State 680 - 602 auto_type_declaration: "auto" '(' "name" ')' . + 601 auto_type_declaration: "auto" '(' "name" ')' . - $default reduce using rule 602 (auto_type_declaration) + $default reduce using rule 601 (auto_type_declaration) -State 682 +State 681 - 604 bitfield_bits: "name" . + 603 bitfield_bits: "name" . - $default reduce using rule 604 (bitfield_bits) + $default reduce using rule 603 (bitfield_bits) -State 683 +State 682 - 605 bitfield_bits: bitfield_bits . "end of expression" "name" - 611 bitfield_type_declaration: "bitfield" '<' $@35 bitfield_bits . '>' $@36 + 604 bitfield_bits: bitfield_bits . "end of expression" "name" + 610 bitfield_type_declaration: "bitfield" '<' $@35 bitfield_bits . '>' $@36 "end of expression" shift, and go to state 890 '>' shift, and go to state 891 -State 684 +State 683 - 657 type_declaration_no_options: "block" '<' $@48 type_declaration . '>' $@49 - 682 type_declaration: type_declaration . '|' type_declaration_no_options - 683 | type_declaration . '|' '#' + 658 type_declaration_no_options_no_dim: "block" '<' $@48 type_declaration . '>' $@49 + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' - '|' shift, and go to state 371 + '|' shift, and go to state 370 '>' shift, and go to state 892 -State 685 +State 684 - 660 type_declaration_no_options: "block" '<' $@50 optional_function_argument_list . optional_function_type '>' $@51 + 661 type_declaration_no_options_no_dim: "block" '<' $@50 optional_function_argument_list . optional_function_type '>' $@51 - ':' shift, and go to state 388 + ':' shift, and go to state 387 $default reduce using rule 117 (optional_function_type) optional_function_type go to state 893 -State 686 +State 685 - 664 type_declaration_no_options: "function" '<' $@52 type_declaration . '>' $@53 - 682 type_declaration: type_declaration . '|' type_declaration_no_options - 683 | type_declaration . '|' '#' + 665 type_declaration_no_options_no_dim: "function" '<' $@52 type_declaration . '>' $@53 + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' - '|' shift, and go to state 371 + '|' shift, and go to state 370 '>' shift, and go to state 894 -State 687 +State 686 - 667 type_declaration_no_options: "function" '<' $@54 optional_function_argument_list . optional_function_type '>' $@55 + 668 type_declaration_no_options_no_dim: "function" '<' $@54 optional_function_argument_list . optional_function_type '>' $@55 - ':' shift, and go to state 388 + ':' shift, and go to state 387 $default reduce using rule 117 (optional_function_type) optional_function_type go to state 895 -State 688 +State 687 - 671 type_declaration_no_options: "lambda" '<' $@56 type_declaration . '>' $@57 - 682 type_declaration: type_declaration . '|' type_declaration_no_options - 683 | type_declaration . '|' '#' + 672 type_declaration_no_options_no_dim: "lambda" '<' $@56 type_declaration . '>' $@57 + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' - '|' shift, and go to state 371 + '|' shift, and go to state 370 '>' shift, and go to state 896 -State 689 +State 688 - 674 type_declaration_no_options: "lambda" '<' $@58 optional_function_argument_list . optional_function_type '>' $@59 + 675 type_declaration_no_options_no_dim: "lambda" '<' $@58 optional_function_argument_list . optional_function_type '>' $@59 - ':' shift, and go to state 388 + ':' shift, and go to state 387 $default reduce using rule 117 (optional_function_type) optional_function_type go to state 897 -State 690 +State 689 - 483 tuple_type_list: tuple_type . + 482 tuple_type_list: tuple_type . - $default reduce using rule 483 (tuple_type_list) + $default reduce using rule 482 (tuple_type_list) -State 691 +State 690 - 484 tuple_type_list: tuple_type_list . "end of expression" tuple_type - 677 type_declaration_no_options: "tuple" '<' $@60 tuple_type_list . '>' $@61 + 483 tuple_type_list: tuple_type_list . "end of expression" tuple_type + 678 type_declaration_no_options_no_dim: "tuple" '<' $@60 tuple_type_list . '>' $@61 "end of expression" shift, and go to state 898 '>' shift, and go to state 899 -State 692 +State 691 - 489 variant_type_list: variant_type . + 488 variant_type_list: variant_type . - $default reduce using rule 489 (variant_type_list) + $default reduce using rule 488 (variant_type_list) -State 693 +State 692 - 490 variant_type_list: variant_type_list . "end of expression" variant_type - 680 type_declaration_no_options: "variant" '<' $@62 variant_type_list . '>' $@63 + 489 variant_type_list: variant_type_list . "end of expression" variant_type + 681 type_declaration_no_options_no_dim: "variant" '<' $@62 variant_type_list . '>' $@63 "end of expression" shift, and go to state 900 '>' shift, and go to state 901 -State 694 +State 693 - 603 auto_type_declaration: "$t" '(' expr ')' . + 602 auto_type_declaration: "$t" '(' expr ')' . - $default reduce using rule 603 (auto_type_declaration) + $default reduce using rule 602 (auto_type_declaration) -State 695 +State 694 - 628 type_declaration_no_options: '$' name_in_namespace '<' $@39 . type_declaration_no_options_list '>' '(' optional_expr_list ')' - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - type_declaration_no_options_list go to state 902 - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 262 - type_declaration go to state 903 + 629 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 . type_declaration_no_options_list '>' '(' optional_expr_list ')' + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + type_declaration_no_options_list go to state 902 + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 260 + type_declaration_no_options_no_dim go to state 261 + type_declaration go to state 903 -State 696 +State 695 - 626 type_declaration_no_options: '$' name_in_namespace '(' optional_expr_list . ')' + 627 type_declaration_no_options_no_dim: '$' name_in_namespace '(' optional_expr_list . ')' ')' shift, and go to state 904 -State 697 +State 696 236 optional_expr_list: expr_list . - 290 expr_list: expr_list . ',' expr + 289 expr_list: expr_list . ',' expr ',' shift, and go to state 905 $default reduce using rule 236 (optional_expr_list) +State 697 + + 630 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '[' ']' . + + $default reduce using rule 630 (type_declaration_no_options_no_dim) + + State 698 - 629 type_declaration_no_options: type_declaration_no_options '-' '[' ']' . + 613 dim_list: '[' expr ']' . - $default reduce using rule 629 (type_declaration_no_options) + $default reduce using rule 613 (dim_list) State 699 - 614 dim_list: '[' expr ']' . + 616 dim_list: dim_list '[' ']' . - $default reduce using rule 614 (dim_list) + $default reduce using rule 616 (dim_list) State 700 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' 615 dim_list: dim_list '[' expr . ']' - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ']' shift, and go to state 906 State 701 - 608 bitfield_alias_bits: bitfield_alias_bits ',' "name" . + 607 bitfield_alias_bits: bitfield_alias_bits ',' "name" . - $default reduce using rule 608 (bitfield_alias_bits) + $default reduce using rule 607 (bitfield_alias_bits) State 702 - 695 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 . "end of code block" + 696 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 . "end of code block" "end of code block" shift, and go to state 907 State 703 - 482 tuple_type: "name" ':' . type_declaration - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 262 - type_declaration go to state 908 + 481 tuple_type: "name" ':' . type_declaration + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 260 + type_declaration_no_options_no_dim go to state 261 + type_declaration go to state 908 State 704 - 487 tuple_alias_type_list: tuple_alias_type_list tuple_type "end of expression" . + 486 tuple_alias_type_list: tuple_alias_type_list tuple_type "end of expression" . - $default reduce using rule 487 (tuple_alias_type_list) + $default reduce using rule 486 (tuple_alias_type_list) State 705 - 687 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" . + 688 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" . - $default reduce using rule 687 (tuple_alias_declaration) + $default reduce using rule 688 (tuple_alias_declaration) State 706 - 488 variant_type: "name" ':' . type_declaration - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 262 - type_declaration go to state 909 + 487 variant_type: "name" ':' . type_declaration + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 260 + type_declaration_no_options_no_dim go to state 261 + type_declaration go to state 909 State 707 - 493 variant_alias_type_list: variant_alias_type_list variant_type "end of expression" . + 492 variant_alias_type_list: variant_alias_type_list variant_type "end of expression" . - $default reduce using rule 493 (variant_alias_type_list) + $default reduce using rule 492 (variant_alias_type_list) State 708 - 691 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" . + 692 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" . - $default reduce using rule 691 (variant_alias_declaration) + $default reduce using rule 692 (variant_alias_declaration) State 709 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 478 function_argument_declaration: "$a" '(' expr . ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 477 function_argument_declaration: "$a" '(' expr . ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ')' shift, and go to state 910 State 710 - 561 variable_name_with_pos_list: "$i" . '(' expr ')' + 560 variable_name_with_pos_list: "$i" . '(' expr ')' '(' shift, and go to state 911 State 711 - 560 variable_name_with_pos_list: "name" . - 562 | "name" . "aka" "name" + 559 variable_name_with_pos_list: "name" . + 561 | "name" . "aka" "name" "aka" shift, and go to state 912 - $default reduce using rule 560 (variable_name_with_pos_list) + $default reduce using rule 559 (variable_name_with_pos_list) State 712 - 477 function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing variable_declaration . + 476 function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing variable_declaration . - $default reduce using rule 477 (function_argument_declaration) + $default reduce using rule 476 (function_argument_declaration) State 713 - 496 variable_declaration: variable_name_with_pos_list . - 497 | variable_name_with_pos_list . '&' - 498 | variable_name_with_pos_list . ':' type_declaration - 499 | variable_name_with_pos_list . ':' type_declaration copy_or_move expr - 500 | variable_name_with_pos_list . copy_or_move expr - 563 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" - 564 | variable_name_with_pos_list . ',' "name" "aka" "name" + 495 variable_declaration: variable_name_with_pos_list . + 496 | variable_name_with_pos_list . '&' + 497 | variable_name_with_pos_list . ':' type_declaration + 498 | variable_name_with_pos_list . ':' type_declaration copy_or_move expr + 499 | variable_name_with_pos_list . copy_or_move expr + 562 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" + 563 | variable_name_with_pos_list . ',' "name" "aka" "name" "<-" shift, and go to state 913 ',' shift, and go to state 914 @@ -17590,116 +17458,116 @@ State 713 ':' shift, and go to state 916 '&' shift, and go to state 917 - $default reduce using rule 496 (variable_declaration) + $default reduce using rule 495 (variable_declaration) copy_or_move go to state 918 State 714 - 480 function_argument_list: function_argument_list "end of expression" function_argument_declaration . + 479 function_argument_list: function_argument_list "end of expression" function_argument_declaration . - $default reduce using rule 480 (function_argument_list) + $default reduce using rule 479 (function_argument_list) State 715 72 expression_while_loop: "while" expr . expression_block - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - "begin of code block" shift, and go to state 322 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + "begin of code block" shift, and go to state 321 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 expression_block go to state 919 @@ -17716,529 +17584,527 @@ State 716 State 717 - 256 expression_return: "return" "<-" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 255 expression_return: "return" "<-" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 921 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 718 - 255 expression_return: "return" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 254 expression_return: "return" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 255 (expression_return) + $default reduce using rule 254 (expression_return) State 719 - 260 expression_try_catch: "try" expression_block . "recover" expression_block + 259 expression_try_catch: "try" expression_block . "recover" expression_block "recover" shift, and go to state 922 State 720 - 243 expression_delete: "delete" "explicit" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 242 expression_delete: "delete" "explicit" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 923 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 721 - 242 expression_delete: "delete" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 - - $default reduce using rule 242 (expression_delete) + 241 expression_delete: "delete" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 + + $default reduce using rule 241 (expression_delete) State 722 73 expression_with: "with" expr . expression_block - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - "begin of code block" shift, and go to state 322 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + "begin of code block" shift, and go to state 321 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 expression_block go to state 924 @@ -18274,100 +18140,100 @@ State 726 State 727 53 expression_goto: "goto" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 $default reduce using rule 53 (expression_goto) @@ -18381,212 +18247,211 @@ State 728 State 729 - 258 expression_yield_no_pipe: "yield" "<-" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 257 expression_yield_no_pipe: "yield" "<-" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 928 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 730 - 257 expression_yield_no_pipe: "yield" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 - - $default reduce using rule 257 (expression_yield_no_pipe) + 256 expression_yield_no_pipe: "yield" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 + + $default reduce using rule 256 (expression_yield_no_pipe) State 731 @@ -18614,109 +18479,108 @@ State 734 68 expression_if_then_else: if_or_static_if '(' . expr ')' expression_block expression_else - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 930 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 735 @@ -18756,29 +18620,29 @@ State 739 State 740 - 259 expression_yield: expression_yield_no_pipe "end of expression" . + 258 expression_yield: expression_yield_no_pipe "end of expression" . - $default reduce using rule 259 (expression_yield) + $default reduce using rule 258 (expression_yield) State 741 - 266 optional_in_scope: "inscope" . + 265 optional_in_scope: "inscope" . - $default reduce using rule 266 (optional_in_scope) + $default reduce using rule 265 (optional_in_scope) State 742 - 272 expression_let: kwd_let optional_in_scope . let_variable_declaration - 273 | kwd_let optional_in_scope . tuple_expansion_variable_declaration + 271 expression_let: kwd_let optional_in_scope . let_variable_declaration + 272 | kwd_let optional_in_scope . tuple_expansion_variable_declaration - "$i" shift, and go to state 340 - "name" shift, and go to state 341 + "$i" shift, and go to state 339 + "name" shift, and go to state 340 '(' shift, and go to state 932 tuple_expansion_variable_declaration go to state 933 - let_variable_name_with_pos_list go to state 342 + let_variable_name_with_pos_list go to state 341 let_variable_declaration go to state 934 @@ -18791,4293 +18655,4217 @@ State 743 State 744 - 325 expr_assign: expr "+=" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 324 expr_assign: expr "+=" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 935 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 745 - 326 expr_assign: expr "-=" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 325 expr_assign: expr "-=" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 936 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 746 - 328 expr_assign: expr "/=" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 327 expr_assign: expr "/=" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 937 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 747 - 327 expr_assign: expr "*=" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 326 expr_assign: expr "*=" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 938 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 748 - 329 expr_assign: expr "%=" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 328 expr_assign: expr "%=" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 939 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 749 - 319 expr_assign: expr "&=" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 318 expr_assign: expr "&=" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 940 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 750 - 320 expr_assign: expr "|=" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 319 expr_assign: expr "|=" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 941 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 751 - 321 expr_assign: expr "^=" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 320 expr_assign: expr "^=" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 942 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 752 - 330 expr_assign: expr "<<=" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 329 expr_assign: expr "<<=" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 943 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 753 - 331 expr_assign: expr ">>=" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 330 expr_assign: expr ">>=" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 944 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 754 - 317 expr_assign: expr "<-" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 316 expr_assign: expr "<-" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 945 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 755 - 318 expr_assign: expr ":=" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 317 expr_assign: expr ":=" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 946 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 756 - 332 expr_assign: expr "<<<=" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 331 expr_assign: expr "<<<=" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 947 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 757 - 333 expr_assign: expr ">>>=" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 332 expr_assign: expr ">>>=" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 948 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 758 - 322 expr_assign: expr "&&=" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 321 expr_assign: expr "&&=" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 949 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 759 - 323 expr_assign: expr "||=" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 322 expr_assign: expr "||=" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 950 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 760 - 324 expr_assign: expr "^^=" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 323 expr_assign: expr "^^=" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 951 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 761 - 316 expr_assign: expr '=' . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 315 expr_assign: expr '=' . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 952 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 762 - 526 enum_expression: "name" '=' . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 525 enum_expression: "name" '=' . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 953 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 763 - 529 enum_list: enum_list ',' . enum_expression - 759 optional_comma: ',' . + 528 enum_list: enum_list ',' . enum_expression + 760 optional_comma: ',' . - "name" shift, and go to state 567 + "name" shift, and go to state 566 - $default reduce using rule 759 (optional_comma) + $default reduce using rule 760 (optional_comma) enum_expression go to state 954 State 764 - 544 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma . $@32 "end of code block" + 543 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma . $@32 "end of code block" - $default reduce using rule 543 ($@32) + $default reduce using rule 542 ($@32) $@32 go to state 955 State 765 - 556 optional_struct_variable_declaration_list: "begin of code block" struct_variable_declaration_list "end of code block" . + 555 optional_struct_variable_declaration_list: "begin of code block" struct_variable_declaration_list "end of code block" . - $default reduce using rule 556 (optional_struct_variable_declaration_list) + $default reduce using rule 555 (optional_struct_variable_declaration_list) State 766 - 474 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list . "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" - 476 | struct_variable_declaration_list optional_annotation_list . "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block + 473 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list . "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" + 475 | struct_variable_declaration_list optional_annotation_list . "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block "def" shift, and go to state 956 State 767 - 472 struct_variable_declaration_list: struct_variable_declaration_list $@25 . structure_variable_declaration "end of expression" + 471 struct_variable_declaration_list: struct_variable_declaration_list $@25 . structure_variable_declaration "end of expression" - '@' shift, and go to state 208 + '@' shift, and go to state 206 - $default reduce using rule 457 (optional_field_annotation) + $default reduce using rule 456 (optional_field_annotation) - metadata_argument_list go to state 209 + metadata_argument_list go to state 207 optional_field_annotation go to state 957 structure_variable_declaration go to state 958 State 768 - 507 let_variable_name_with_pos_list: "$i" '(' expr ')' . + 506 let_variable_name_with_pos_list: "$i" '(' expr ')' . - $default reduce using rule 507 (let_variable_name_with_pos_list) + $default reduce using rule 506 (let_variable_name_with_pos_list) State 769 - 510 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" "aka" . "name" + 509 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" "aka" . "name" "name" shift, and go to state 959 State 770 - 511 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" . + 510 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" . - $default reduce using rule 511 (let_variable_declaration) + $default reduce using rule 510 (let_variable_declaration) State 771 - 512 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone . expr "end of expression" - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 511 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone . expr "end of expression" + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 960 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 772 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 513 let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr . "end of expression" - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 512 let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr . "end of expression" + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 "end of expression" shift, and go to state 961 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 State 773 - 624 type_declaration_no_options: "type" '<' $@37 type_declaration '>' . $@38 + 625 type_declaration_no_options_no_dim: "type" '<' $@37 type_declaration '>' . $@38 - $default reduce using rule 623 ($@38) + $default reduce using rule 624 ($@38) $@38 go to state 962 State 774 - 647 type_declaration_no_options: "array" '<' $@42 type_declaration '>' . $@43 + 648 type_declaration_no_options_no_dim: "array" '<' $@42 type_declaration '>' . $@43 - $default reduce using rule 646 ($@43) + $default reduce using rule 647 ($@43) $@43 go to state 963 State 775 - 650 type_declaration_no_options: "table" '<' $@44 table_type_pair '>' . $@45 + 651 type_declaration_no_options_no_dim: "table" '<' $@44 table_type_pair '>' . $@45 - $default reduce using rule 649 ($@45) + $default reduce using rule 650 ($@45) $@45 go to state 964 State 776 - 613 table_type_pair: type_declaration "end of expression" . type_declaration - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 262 - type_declaration go to state 965 + 612 table_type_pair: type_declaration "end of expression" . type_declaration + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 260 + type_declaration_no_options_no_dim go to state 261 + type_declaration go to state 965 State 777 - 716 make_struct_decl: "struct" '<' $@73 . type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 966 + 717 make_struct_decl: "struct" '<' $@73 . type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 966 + type_declaration_no_options_no_dim go to state 261 State 778 - 719 make_struct_decl: "class" '<' $@75 . type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 967 + 720 make_struct_decl: "class" '<' $@75 . type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 967 + type_declaration_no_options_no_dim go to state 261 State 779 - 246 new_type_declaration: '<' $@3 . type_declaration '>' $@4 - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 262 - type_declaration go to state 968 + 245 new_type_declaration: '<' $@3 . type_declaration '>' $@4 + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 260 + type_declaration_no_options_no_dim go to state 261 + type_declaration go to state 968 State 780 - 249 expr_new: "new" new_type_declaration '(' . use_initializer ')' - 250 | "new" new_type_declaration '(' . use_initializer make_struct_single ')' + 248 expr_new: "new" new_type_declaration '(' . use_initializer ')' + 249 | "new" new_type_declaration '(' . use_initializer make_struct_single ')' "uninitialized" shift, and go to state 969 - $default reduce using rule 712 (use_initializer) + $default reduce using rule 713 (use_initializer) use_initializer go to state 970 State 781 - 248 expr_new: "new" structure_type_declaration '(' . optional_expr_list ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 247 expr_new: "new" structure_type_declaration '(' . optional_expr_list ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 $default reduce using rule 235 (optional_expr_list) - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 optional_expr_list go to state 971 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - expr_list go to state 697 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 633 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + expr_list go to state 696 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 632 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 782 - 286 expr_type_info: "typeinfo" '(' name_in_namespace . expr ')' - 287 | "typeinfo" '(' name_in_namespace . '<' "name" '>' expr ')' - 288 | "typeinfo" '(' name_in_namespace . '<' "name" "end of expression" "name" '>' expr ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 + 285 expr_type_info: "typeinfo" '(' name_in_namespace . expr ')' + 286 | "typeinfo" '(' name_in_namespace . '<' "name" '>' expr ')' + 287 | "typeinfo" '(' name_in_namespace . '<' "name" "end of expression" "name" '>' expr ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 '<' shift, and go to state 972 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 973 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 783 - 285 expr_type_decl: "type" '<' $@11 . type_declaration '>' $@12 - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 262 - type_declaration go to state 974 + 284 expr_type_decl: "type" '<' $@11 . type_declaration '>' $@12 + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 260 + type_declaration_no_options_no_dim go to state 261 + type_declaration go to state 974 State 784 - 735 make_dim_decl: "array" "struct" '<' . $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' + 736 make_dim_decl: "array" "struct" '<' . $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' - $default reduce using rule 733 ($@83) + $default reduce using rule 734 ($@83) $@83 go to state 975 State 785 - 738 make_dim_decl: "array" "tuple" '<' . $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' + 739 make_dim_decl: "array" "tuple" '<' . $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' - $default reduce using rule 736 ($@85) + $default reduce using rule 737 ($@85) $@85 go to state 976 State 786 - 741 make_dim_decl: "array" "variant" '<' . $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' + 742 make_dim_decl: "array" "variant" '<' . $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' - $default reduce using rule 739 ($@87) + $default reduce using rule 740 ($@87) $@87 go to state 977 State 787 - 745 make_dim_decl: "array" '<' $@89 . type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 978 + 746 make_dim_decl: "array" '<' $@89 . type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 978 + type_declaration_no_options_no_dim go to state 261 State 788 - 290 expr_list: expr_list . ',' expr - 742 make_dim_decl: "array" '(' expr_list . optional_comma ')' + 289 expr_list: expr_list . ',' expr + 743 make_dim_decl: "array" '(' expr_list . optional_comma ')' ',' shift, and go to state 818 - $default reduce using rule 758 (optional_comma) + $default reduce using rule 759 (optional_comma) optional_comma go to state 979 State 789 - 620 type_declaration_no_options: type_declaration_no_options . dim_list - 621 | type_declaration_no_options . '[' ']' - 629 | type_declaration_no_options . '-' '[' ']' - 630 | type_declaration_no_options . "explicit" - 631 | type_declaration_no_options . "const" - 632 | type_declaration_no_options . '-' "const" - 633 | type_declaration_no_options . '&' - 634 | type_declaration_no_options . '-' '&' - 635 | type_declaration_no_options . '#' - 636 | type_declaration_no_options . "implicit" - 637 | type_declaration_no_options . '-' '#' - 638 | type_declaration_no_options . "==" "const" - 639 | type_declaration_no_options . "==" '&' - 640 | type_declaration_no_options . '*' - 644 | type_declaration_no_options . "??" - 754 make_table_decl: "table" '<' type_declaration_no_options . '>' '(' expr_map_tuple_list optional_comma ')' - 755 | "table" '<' type_declaration_no_options . "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - - "const" shift, and go to state 360 - "implicit" shift, and go to state 361 - "explicit" shift, and go to state 362 - "==" shift, and go to state 363 - "??" shift, and go to state 364 + 755 make_table_decl: "table" '<' type_declaration_no_options . '>' '(' expr_map_tuple_list optional_comma ')' + 756 | "table" '<' type_declaration_no_options . "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + "end of expression" shift, and go to state 980 - '&' shift, and go to state 365 '>' shift, and go to state 981 - '-' shift, and go to state 366 - '*' shift, and go to state 367 - '[' shift, and go to state 368 - '#' shift, and go to state 369 - - dim_list go to state 370 State 790 - 751 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple - 753 make_table_decl: "table" '(' expr_map_tuple_list . optional_comma ')' + 752 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple + 754 make_table_decl: "table" '(' expr_map_tuple_list . optional_comma ')' ',' shift, and go to state 814 - $default reduce using rule 758 (optional_comma) + $default reduce using rule 759 (optional_comma) optional_comma go to state 982 State 791 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 409 | "deref" '(' expr . ')' - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 408 | "deref" '(' expr . ')' + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ')' shift, and go to state 983 State 792 - 276 expr_cast: "cast" '<' $@5 . type_declaration_no_options '>' $@6 expr - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 984 + 275 expr_cast: "cast" '<' $@5 . type_declaration_no_options '>' $@6 expr + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 984 + type_declaration_no_options_no_dim go to state 261 State 793 - 279 expr_cast: "upcast" '<' $@7 . type_declaration_no_options '>' $@8 expr - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 985 + 278 expr_cast: "upcast" '<' $@7 . type_declaration_no_options '>' $@8 expr + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 985 + type_declaration_no_options_no_dim go to state 261 State 794 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 410 | "addr" '(' expr . ')' - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 409 | "addr" '(' expr . ')' + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ')' shift, and go to state 986 State 795 - 282 expr_cast: "reinterpret" '<' $@9 . type_declaration_no_options '>' $@10 expr - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 987 + 281 expr_cast: "reinterpret" '<' $@9 . type_declaration_no_options '>' $@10 expr + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 987 + type_declaration_no_options_no_dim go to state 261 State 796 - 749 make_dim_decl: "fixed_array" '<' $@91 . type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 988 + 750 make_dim_decl: "fixed_array" '<' $@91 . type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 988 + type_declaration_no_options_no_dim go to state 261 State 797 - 290 expr_list: expr_list . ',' expr - 746 make_dim_decl: "fixed_array" '(' expr_list . optional_comma ')' + 289 expr_list: expr_list . ',' expr + 747 make_dim_decl: "fixed_array" '(' expr_list . optional_comma ')' ',' shift, and go to state 818 - $default reduce using rule 758 (optional_comma) + $default reduce using rule 759 (optional_comma) optional_comma go to state 989 State 798 - 725 make_struct_decl: "default" '<' $@79 . type_declaration_no_options '>' $@80 use_initializer - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 990 + 726 make_struct_decl: "default" '<' $@79 . type_declaration_no_options '>' $@80 use_initializer + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 990 + type_declaration_no_options_no_dim go to state 261 State 799 - 731 make_tuple_call: "tuple" '<' $@81 . type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 991 + 732 make_tuple_call: "tuple" '<' $@81 . type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 991 + type_declaration_no_options_no_dim go to state 261 State 800 - 290 expr_list: expr_list . ',' expr - 728 make_tuple_call: "tuple" '(' expr_list . optional_comma ')' + 289 expr_list: expr_list . ',' expr + 729 make_tuple_call: "tuple" '(' expr_list . optional_comma ')' ',' shift, and go to state 818 - $default reduce using rule 758 (optional_comma) + $default reduce using rule 759 (optional_comma) optional_comma go to state 992 State 801 - 722 make_struct_decl: "variant" '<' $@77 . type_declaration_no_options '>' $@78 '(' make_struct_dim ')' - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 993 + 723 make_struct_decl: "variant" '<' $@77 . type_declaration_no_options '>' $@78 '(' make_struct_dim ')' + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 993 + type_declaration_no_options_no_dim go to state 261 State 802 - 411 expr: "generator" '<' type_declaration_no_options . '>' optional_capture_list '(' ')' - 412 | "generator" '<' type_declaration_no_options . '>' optional_capture_list '(' expr ')' - 620 type_declaration_no_options: type_declaration_no_options . dim_list - 621 | type_declaration_no_options . '[' ']' - 629 | type_declaration_no_options . '-' '[' ']' - 630 | type_declaration_no_options . "explicit" - 631 | type_declaration_no_options . "const" - 632 | type_declaration_no_options . '-' "const" - 633 | type_declaration_no_options . '&' - 634 | type_declaration_no_options . '-' '&' - 635 | type_declaration_no_options . '#' - 636 | type_declaration_no_options . "implicit" - 637 | type_declaration_no_options . '-' '#' - 638 | type_declaration_no_options . "==" "const" - 639 | type_declaration_no_options . "==" '&' - 640 | type_declaration_no_options . '*' - 644 | type_declaration_no_options . "??" - - "const" shift, and go to state 360 - "implicit" shift, and go to state 361 - "explicit" shift, and go to state 362 - "==" shift, and go to state 363 - "??" shift, and go to state 364 - '&' shift, and go to state 365 - '>' shift, and go to state 994 - '-' shift, and go to state 366 - '*' shift, and go to state 367 - '[' shift, and go to state 368 - '#' shift, and go to state 369 - - dim_list go to state 370 + 410 expr: "generator" '<' type_declaration_no_options . '>' optional_capture_list '(' ')' + 411 | "generator" '<' type_declaration_no_options . '>' optional_capture_list '(' expr ')' + + '>' shift, and go to state 994 State 803 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 441 expr_mtag: "$$" '(' expr . ')' - 449 | expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 440 expr_mtag: "$$" '(' expr . ')' + 448 | expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ')' shift, and go to state 995 State 804 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 442 expr_mtag: "$i" '(' expr . ')' - 449 | expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 441 expr_mtag: "$i" '(' expr . ')' + 448 | expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ')' shift, and go to state 996 State 805 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 443 expr_mtag: "$v" '(' expr . ')' - 449 | expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 442 expr_mtag: "$v" '(' expr . ')' + 448 | expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ')' shift, and go to state 997 State 806 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 444 expr_mtag: "$b" '(' expr . ')' - 449 | expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 443 expr_mtag: "$b" '(' expr . ')' + 448 | expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ')' shift, and go to state 998 State 807 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 445 expr_mtag: "$a" '(' expr . ')' - 449 | expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 444 expr_mtag: "$a" '(' expr . ')' + 448 | expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ')' shift, and go to state 999 State 808 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 447 expr_mtag: "$c" '(' expr . ')' '(' ')' - 448 | "$c" '(' expr . ')' '(' expr_list ')' - 449 | expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 446 expr_mtag: "$c" '(' expr . ')' '(' ')' + 447 | "$c" '(' expr . ')' '(' expr_list ')' + 448 | expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ')' shift, and go to state 1000 @@ -23092,109 +22880,108 @@ State 810 30 string_builder_body: string_builder_body "{" . expr "}" - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1001 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 811 @@ -23203,8 +22990,8 @@ State 811 26 | character_sequence . STRING_CHARACTER_ESC 29 string_builder_body: string_builder_body character_sequence . - STRING_CHARACTER shift, and go to state 211 - STRING_CHARACTER_ESC shift, and go to state 212 + STRING_CHARACTER shift, and go to state 209 + STRING_CHARACTER_ESC shift, and go to state 210 STRING_CHARACTER [reduce using rule 29 (string_builder_body)] STRING_CHARACTER_ESC [reduce using rule 29 (string_builder_body)] @@ -23213,9 +23000,9 @@ State 811 State 812 - 563 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" - 564 | variable_name_with_pos_list . ',' "name" "aka" "name" - 762 array_comprehension: "begin of code block" "for" variable_name_with_pos_list . "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" + 562 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" + 563 | variable_name_with_pos_list . ',' "name" "aka" "name" + 763 array_comprehension: "begin of code block" "for" variable_name_with_pos_list . "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" "in" shift, and go to state 1002 ',' shift, and go to state 914 @@ -23223,238 +23010,236 @@ State 812 State 813 - 726 make_map_tuple: expr "=>" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 727 make_map_tuple: expr "=>" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1003 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 814 - 751 expr_map_tuple_list: expr_map_tuple_list ',' . make_map_tuple - 759 optional_comma: ',' . - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 752 expr_map_tuple_list: expr_map_tuple_list ',' . make_map_tuple + 760 optional_comma: ',' . + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - $default reduce using rule 759 (optional_comma) - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 622 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + $default reduce using rule 760 (optional_comma) + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 621 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 make_map_tuple go to state 1004 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 815 - 752 make_table_decl: "begin of code block" expr_map_tuple_list optional_comma . "end of code block" + 753 make_table_decl: "begin of code block" expr_map_tuple_list optional_comma . "end of code block" "end of code block" shift, and go to state 1005 State 816 - 563 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" - 564 | variable_name_with_pos_list . ',' "name" "aka" "name" - 760 array_comprehension: '[' "for" variable_name_with_pos_list . "in" expr_list "end of expression" expr array_comprehension_where ']' + 562 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" + 563 | variable_name_with_pos_list . ',' "name" "aka" "name" + 761 array_comprehension: '[' "for" variable_name_with_pos_list . "in" expr_list "end of expression" expr array_comprehension_where ']' "in" shift, and go to state 1006 ',' shift, and go to state 914 @@ -23462,7 +23247,7 @@ State 816 State 817 - 761 array_comprehension: '[' "iterator" "for" . variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 762 array_comprehension: '[' "iterator" "for" . variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' "$i" shift, and go to state 710 "name" shift, and go to state 711 @@ -23472,153 +23257,152 @@ State 817 State 818 - 290 expr_list: expr_list ',' . expr - 759 optional_comma: ',' . - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 289 expr_list: expr_list ',' . expr + 760 optional_comma: ',' . + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - $default reduce using rule 759 (optional_comma) - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + $default reduce using rule 760 (optional_comma) + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1008 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 819 - 732 make_dim_decl: '[' expr_list optional_comma . ']' + 733 make_dim_decl: '[' expr_list optional_comma . ']' ']' shift, and go to state 1009 State 820 - 399 expr: '(' expr_list optional_comma . ')' + 398 expr: '(' expr_list optional_comma . ')' ')' shift, and go to state 1010 State 821 - 339 func_addr_name: "$i" . '(' expr ')' + 338 func_addr_name: "$i" . '(' expr ')' '(' shift, and go to state 1011 State 822 - 456 expr_mtag: '@' '@' "$c" . '(' expr ')' + 455 expr_mtag: '@' '@' "$c" . '(' expr ')' '(' shift, and go to state 1012 State 823 - 343 func_addr_expr: '@' '@' '<' . $@13 type_declaration_no_options '>' $@14 func_addr_name - 346 | '@' '@' '<' . $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name + 342 func_addr_expr: '@' '@' '<' . $@13 type_declaration_no_options '>' $@14 func_addr_name + 345 | '@' '@' '<' . $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name - ':' reduce using rule 344 ($@15) - '>' reduce using rule 344 ($@15) - '(' reduce using rule 344 ($@15) - $default reduce using rule 341 ($@13) + ':' reduce using rule 343 ($@15) + '>' reduce using rule 343 ($@15) + '(' reduce using rule 343 ($@15) + $default reduce using rule 340 ($@13) $@13 go to state 1013 $@15 go to state 1014 @@ -23626,22 +23410,22 @@ State 823 State 824 - 338 func_addr_name: name_in_namespace . + 337 func_addr_name: name_in_namespace . - $default reduce using rule 338 (func_addr_name) + $default reduce using rule 337 (func_addr_name) State 825 - 340 func_addr_expr: '@' '@' func_addr_name . + 339 func_addr_expr: '@' '@' func_addr_name . - $default reduce using rule 340 (func_addr_expr) + $default reduce using rule 339 (func_addr_expr) State 826 - 705 make_struct_fields: "$f" . '(' expr ')' copy_or_move expr - 706 | "$f" . '(' expr ')' ":=" expr + 706 make_struct_fields: "$f" . '(' expr ')' copy_or_move expr + 707 | "$f" . '(' expr ')' ":=" expr '(' shift, and go to state 1015 @@ -23650,12 +23434,12 @@ State 827 239 name_in_namespace: "name" . 240 | "name" . "::" "name" - 701 make_struct_fields: "name" . copy_or_move expr - 702 | "name" . ":=" expr + 702 make_struct_fields: "name" . copy_or_move expr + 703 | "name" . ":=" expr "<-" shift, and go to state 913 ":=" shift, and go to state 1016 - "::" shift, and go to state 93 + "::" shift, and go to state 91 '=' shift, and go to state 915 $default reduce using rule 239 (name_in_namespace) @@ -23665,133 +23449,132 @@ State 827 State 828 - 334 expr_named_call: name_in_namespace '(' '[' . make_struct_fields ']' ')' - 732 make_dim_decl: '[' . expr_list optional_comma ']' - 760 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - 761 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "for" shift, and go to state 630 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "iterator" shift, and go to state 631 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 + 333 expr_named_call: name_in_namespace '(' '[' . make_struct_fields ']' ')' + 733 make_dim_decl: '[' . expr_list optional_comma ']' + 761 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 762 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "for" shift, and go to state 629 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "iterator" shift, and go to state 630 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 "$f" shift, and go to state 826 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 "name" shift, and go to state 827 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - expr_list go to state 632 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 633 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + expr_list go to state 631 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 632 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 make_struct_fields go to state 1018 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 829 - 354 expr_call: name_in_namespace '(' ')' . + 353 expr_call: name_in_namespace '(' ')' . - $default reduce using rule 354 (expr_call) + $default reduce using rule 353 (expr_call) State 830 - 290 expr_list: expr_list . ',' expr - 335 expr_named_call: name_in_namespace '(' expr_list . ',' '[' make_struct_fields ']' ')' - 356 expr_call: name_in_namespace '(' expr_list . ')' + 289 expr_list: expr_list . ',' expr + 334 expr_named_call: name_in_namespace '(' expr_list . ',' '[' make_struct_fields ']' ')' + 355 expr_call: name_in_namespace '(' expr_list . ')' ',' shift, and go to state 1019 ')' shift, and go to state 1020 @@ -23799,36 +23582,36 @@ State 830 State 831 - 703 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr - 704 | make_struct_fields . ',' "name" ":=" expr - 707 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr - 708 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr - 709 make_struct_single: make_struct_fields . + 704 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr + 705 | make_struct_fields . ',' "name" ":=" expr + 708 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr + 709 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr + 710 make_struct_single: make_struct_fields . ',' shift, and go to state 1021 - $default reduce using rule 709 (make_struct_single) + $default reduce using rule 710 (make_struct_single) State 832 - 355 expr_call: name_in_namespace '(' make_struct_single . ')' + 354 expr_call: name_in_namespace '(' make_struct_single . ')' ')' shift, and go to state 1022 State 833 - 304 optional_capture_list: '[' . '[' capture_list ']' ']' + 303 optional_capture_list: '[' . '[' capture_list ']' ']' '[' shift, and go to state 1023 State 834 - 305 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list . optional_function_argument_list optional_function_type block_or_simple_block + 304 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list . optional_function_argument_list optional_function_type block_or_simple_block - '(' shift, and go to state 320 + '(' shift, and go to state 319 $default reduce using rule 114 (optional_function_argument_list) @@ -23839,1698 +23622,1697 @@ State 835 233 expressions: expressions . expression_any 234 | expressions . error - 307 expr_full_block_assumed_piped: "begin of code block" expressions . "end of code block" + 306 expr_full_block_assumed_piped: "begin of code block" expressions . "end of code block" - error shift, and go to state 526 - "struct" shift, and go to state 407 - "class" shift, and go to state 408 + error shift, and go to state 525 + "struct" shift, and go to state 406 + "class" shift, and go to state 407 "let" shift, and go to state 3 - "while" shift, and go to state 527 - "if" shift, and go to state 528 - "static_if" shift, and go to state 529 - "for" shift, and go to state 530 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "return" shift, and go to state 531 - "null" shift, and go to state 415 - "break" shift, and go to state 532 - "try" shift, and go to state 533 - "table" shift, and go to state 416 - "delete" shift, and go to state 534 - "deref" shift, and go to state 417 - "with" shift, and go to state 535 - "assume" shift, and go to state 536 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 + "while" shift, and go to state 526 + "if" shift, and go to state 527 + "static_if" shift, and go to state 528 + "for" shift, and go to state 529 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "return" shift, and go to state 530 + "null" shift, and go to state 414 + "break" shift, and go to state 531 + "try" shift, and go to state 532 + "table" shift, and go to state 415 + "delete" shift, and go to state 533 + "deref" shift, and go to state 416 + "with" shift, and go to state 534 + "assume" shift, and go to state 535 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 "var" shift, and go to state 8 - "addr" shift, and go to state 420 - "continue" shift, and go to state 537 - "pass" shift, and go to state 538 - "reinterpret" shift, and go to state 421 - "label" shift, and go to state 539 - "goto" shift, and go to state 540 - "unsafe" shift, and go to state 541 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "yield" shift, and go to state 542 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 + "addr" shift, and go to state 419 + "continue" shift, and go to state 536 + "pass" shift, and go to state 537 + "reinterpret" shift, and go to state 420 + "label" shift, and go to state 538 + "goto" shift, and go to state 539 + "unsafe" shift, and go to state 540 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "yield" shift, and go to state 541 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 "end of code block" shift, and go to state 1025 - "end of expression" shift, and go to state 544 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + "end of expression" shift, and go to state 543 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expression_label go to state 545 - expression_goto go to state 546 - if_or_static_if go to state 547 - expression_if_one_liner go to state 548 - expression_if_then_else go to state 549 - expression_for_loop go to state 550 - expression_unsafe go to state 551 - expression_while_loop go to state 552 - expression_with go to state 553 - expression_with_alias go to state 554 - expr_call_pipe go to state 457 - expression_any go to state 555 - name_in_namespace go to state 458 - expression_delete go to state 556 - expr_new go to state 459 - expression_break go to state 557 - expression_continue go to state 558 - expression_return go to state 559 - expression_yield_no_pipe go to state 560 - expression_yield go to state 561 - expression_try_catch go to state 562 - kwd_let go to state 563 - expression_let go to state 564 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_assign go to state 565 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 566 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expression_label go to state 544 + expression_goto go to state 545 + if_or_static_if go to state 546 + expression_if_one_liner go to state 547 + expression_if_then_else go to state 548 + expression_for_loop go to state 549 + expression_unsafe go to state 550 + expression_while_loop go to state 551 + expression_with go to state 552 + expression_with_alias go to state 553 + expr_call_pipe go to state 456 + expression_any go to state 554 + name_in_namespace go to state 457 + expression_delete go to state 555 + expr_new go to state 458 + expression_break go to state 556 + expression_continue go to state 557 + expression_return go to state 558 + expression_yield_no_pipe go to state 559 + expression_yield go to state 560 + expression_try_catch go to state 561 + kwd_let go to state 562 + expression_let go to state 563 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_assign go to state 564 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 565 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 836 - 296 block_or_lambda: '@' '@' . + 295 block_or_lambda: '@' '@' . - $default reduce using rule 296 (block_or_lambda) + $default reduce using rule 295 (block_or_lambda) State 837 - 306 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list . optional_capture_list optional_function_argument_list optional_function_type expression_block + 305 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list . optional_capture_list optional_function_argument_list optional_function_type expression_block '[' shift, and go to state 833 - $default reduce using rule 303 (optional_capture_list) + $default reduce using rule 302 (optional_capture_list) optional_capture_list go to state 1026 State 838 - 417 expr: expr "is" "type" . '<' $@19 type_declaration_no_options '>' $@20 + 416 expr: expr "is" "type" . '<' $@19 type_declaration_no_options '>' $@20 '<' shift, and go to state 1027 State 839 - 455 expr_mtag: expr "is" "$f" . '(' expr ')' + 454 expr_mtag: expr "is" "$f" . '(' expr ')' '(' shift, and go to state 1028 State 840 - 419 expr: expr "is" "name" . + 418 expr: expr "is" "name" . - $default reduce using rule 419 (expr) + $default reduce using rule 418 (expr) State 841 - 418 expr: expr "is" basic_type_declaration . + 417 expr: expr "is" basic_type_declaration . - $default reduce using rule 418 (expr) + $default reduce using rule 417 (expr) State 842 - 423 expr: expr "as" "type" . '<' $@21 type_declaration '>' $@22 + 422 expr: expr "as" "type" . '<' $@21 type_declaration '>' $@22 '<' shift, and go to state 1029 State 843 - 453 expr_mtag: expr "as" "$f" . '(' expr ')' + 452 expr_mtag: expr "as" "$f" . '(' expr ')' '(' shift, and go to state 1030 State 844 - 420 expr: expr "as" "name" . + 419 expr: expr "as" "name" . - $default reduce using rule 420 (expr) + $default reduce using rule 419 (expr) State 845 - 424 expr: expr "as" basic_type_declaration . + 423 expr: expr "as" basic_type_declaration . - $default reduce using rule 424 (expr) + $default reduce using rule 423 (expr) State 846 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 373 | expr "<<" expr . - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 372 | expr "<<" expr . + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 373 (expr) + $default reduce using rule 372 (expr) State 847 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 374 | expr ">>" expr . - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 373 | expr ">>" expr . + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 374 (expr) + $default reduce using rule 373 (expr) State 848 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 386 | expr "<=" expr . - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 385 | expr "<=" expr . + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 386 (expr) + $default reduce using rule 385 (expr) State 849 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 387 | expr ">=" expr . - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 386 | expr ">=" expr . + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 387 (expr) + $default reduce using rule 386 (expr) State 850 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 384 | expr "==" expr . - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 383 | expr "==" expr . + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 384 (expr) + $default reduce using rule 383 (expr) State 851 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 385 | expr "!=" expr . - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 384 | expr "!=" expr . + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 385 (expr) + $default reduce using rule 384 (expr) State 852 - 336 expr_method_call: expr "->" "name" . '(' ')' - 337 | expr "->" "name" . '(' expr_list ')' + 335 expr_method_call: expr "->" "name" . '(' ')' + 336 | expr "->" "name" . '(' expr_list ')' '(' shift, and go to state 1031 State 853 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 413 | expr "??" expr . - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 412 | expr "??" expr . + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 413 (expr) + $default reduce using rule 412 (expr) State 854 - 450 expr_mtag: expr "?." "$f" . '(' expr ')' + 449 expr_mtag: expr "?." "$f" . '(' expr ')' '(' shift, and go to state 1032 State 855 - 404 expr: expr "?." "name" . + 403 expr: expr "?." "name" . - $default reduce using rule 404 (expr) + $default reduce using rule 403 (expr) State 856 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 402 | expr "?[" expr . ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 401 | expr "?[" expr . ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ']' shift, and go to state 1033 State 857 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 437 | expr "<|" expr . - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "->" shift, and go to state 652 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 436 | expr "<|" expr . + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "->" shift, and go to state 651 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 437 (expr) + $default reduce using rule 436 (expr) State 858 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 438 | expr "|>" expr . - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "->" shift, and go to state 652 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 437 | expr "|>" expr . + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "->" shift, and go to state 651 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 438 (expr) + $default reduce using rule 437 (expr) State 859 - 357 expr_call: basic_type_declaration . '(' ')' - 358 | basic_type_declaration . '(' expr_list ')' - 439 expr: expr "|>" basic_type_declaration . + 356 expr_call: basic_type_declaration . '(' ')' + 357 | basic_type_declaration . '(' expr_list ')' + 438 expr: expr "|>" basic_type_declaration . - '(' shift, and go to state 678 + '(' shift, and go to state 677 - $default reduce using rule 439 (expr) + $default reduce using rule 438 (expr) State 860 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 375 | expr "<<<" expr . - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 374 | expr "<<<" expr . + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 375 (expr) + $default reduce using rule 374 (expr) State 861 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 376 | expr ">>>" expr . - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 375 | expr ">>>" expr . + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 376 (expr) + $default reduce using rule 375 (expr) State 862 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 391 | expr "&&" expr . - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 390 | expr "&&" expr . + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 391 (expr) + $default reduce using rule 390 (expr) State 863 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 392 | expr "||" expr . - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "^^" shift, and go to state 662 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 391 | expr "||" expr . + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "^^" shift, and go to state 661 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 392 (expr) + $default reduce using rule 391 (expr) State 864 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 393 | expr "^^" expr . - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 392 | expr "^^" expr . + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 393 (expr) + $default reduce using rule 392 (expr) State 865 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 394 | expr ".." expr . - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 393 | expr ".." expr . + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ".." error (nonassociative) - $default reduce using rule 394 (expr) + $default reduce using rule 393 (expr) State 866 - 425 expr: expr '?' "as" . "name" - 428 | expr '?' "as" . "type" '<' $@23 type_declaration '>' $@24 - 429 | expr '?' "as" . basic_type_declaration - 454 expr_mtag: expr '?' "as" . "$f" '(' expr ')' + 424 expr: expr '?' "as" . "name" + 427 | expr '?' "as" . "type" '<' $@23 type_declaration '>' $@24 + 428 | expr '?' "as" . basic_type_declaration + 453 expr_mtag: expr '?' "as" . "$f" '(' expr ')' "type" shift, and go to state 1034 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 "$f" shift, and go to state 1035 "name" shift, and go to state 1036 @@ -25539,960 +25321,960 @@ State 866 State 867 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 414 | expr '?' expr . ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 413 | expr '?' expr . ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 ':' shift, and go to state 1038 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 State 868 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 389 | expr '|' expr . - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 388 | expr '|' expr . + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 389 (expr) + $default reduce using rule 388 (expr) State 869 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 390 | expr '^' expr . - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 389 | expr '^' expr . + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 390 (expr) + $default reduce using rule 389 (expr) State 870 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 388 | expr '&' expr . - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 387 | expr '&' expr . + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 388 (expr) + $default reduce using rule 387 (expr) State 871 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 382 | expr '<' expr . - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 381 | expr '<' expr . + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 382 (expr) + $default reduce using rule 381 (expr) State 872 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 383 | expr '>' expr . - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 382 | expr '>' expr . + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 383 (expr) + $default reduce using rule 382 (expr) State 873 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 378 | expr '-' expr . - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 377 | expr '-' expr . + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 378 (expr) + $default reduce using rule 377 (expr) State 874 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 377 | expr '+' expr . - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 376 | expr '+' expr . + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 377 (expr) + $default reduce using rule 376 (expr) State 875 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 379 | expr '*' expr . - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 378 | expr '*' expr . + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 379 (expr) + $default reduce using rule 378 (expr) State 876 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 380 | expr '/' expr . - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 379 | expr '/' expr . + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 380 (expr) + $default reduce using rule 379 (expr) State 877 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 381 | expr '%' expr . - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 380 | expr '%' expr . + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 381 (expr) + $default reduce using rule 380 (expr) State 878 - 405 expr: expr '.' "?." . "name" - 452 expr_mtag: expr '.' "?." . "$f" '(' expr ')' + 404 expr: expr '.' "?." . "name" + 451 expr_mtag: expr '.' "?." . "$f" '(' expr ')' "$f" shift, and go to state 1039 "name" shift, and go to state 1040 @@ -26500,136 +26282,135 @@ State 878 State 879 - 403 expr: expr '.' "?[" . expr ']' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 402 expr: expr '.' "?[" . expr ']' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1041 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 880 - 449 expr_mtag: expr '.' "$f" . '(' expr ')' + 448 expr_mtag: expr '.' "$f" . '(' expr ')' '(' shift, and go to state 1042 State 881 - 347 expr_field: expr '.' "name" . - 349 | expr '.' "name" . '(' ')' - 350 | expr '.' "name" . '(' expr_list ')' + 346 expr_field: expr '.' "name" . + 348 | expr '.' "name" . '(' ')' + 349 | expr '.' "name" . '(' expr_list ')' '(' shift, and go to state 1043 - '(' [reduce using rule 347 (expr_field)] - $default reduce using rule 347 (expr_field) + '(' [reduce using rule 346 (expr_field)] + $default reduce using rule 346 (expr_field) State 882 - 348 expr_field: expr '.' '.' . "name" - 451 expr_mtag: expr '.' '.' . "$f" '(' expr ')' + 347 expr_field: expr '.' '.' . "name" + 450 expr_mtag: expr '.' '.' . "$f" '(' expr ')' "$f" shift, and go to state 1044 "name" shift, and go to state 1045 @@ -26637,231 +26418,230 @@ State 882 State 883 - 401 expr: expr '.' '[' . expr ']' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 400 expr: expr '.' '[' . expr ']' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1046 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 884 - 353 expr_field: expr '.' $@17 . error $@18 + 352 expr_field: expr '.' $@17 . error $@18 error shift, and go to state 1047 State 885 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 400 | expr '[' expr . ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 399 | expr '[' expr . ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ']' shift, and go to state 1048 State 886 - 357 expr_call: basic_type_declaration '(' ')' . + 356 expr_call: basic_type_declaration '(' ')' . - $default reduce using rule 357 (expr_call) + $default reduce using rule 356 (expr_call) State 887 - 290 expr_list: expr_list . ',' expr - 358 expr_call: basic_type_declaration '(' expr_list . ')' + 289 expr_list: expr_list . ',' expr + 357 expr_call: basic_type_declaration '(' expr_list . ')' ',' shift, and go to state 905 ')' shift, and go to state 1049 @@ -26869,167 +26649,167 @@ State 887 State 888 - 653 type_declaration_no_options: "iterator" '<' $@46 type_declaration '>' . $@47 + 654 type_declaration_no_options_no_dim: "iterator" '<' $@46 type_declaration '>' . $@47 - $default reduce using rule 652 ($@47) + $default reduce using rule 653 ($@47) $@47 go to state 1050 State 889 - 643 type_declaration_no_options: "smart_ptr" '<' $@40 type_declaration '>' . $@41 + 644 type_declaration_no_options_no_dim: "smart_ptr" '<' $@40 type_declaration '>' . $@41 - $default reduce using rule 642 ($@41) + $default reduce using rule 643 ($@41) $@41 go to state 1051 State 890 - 605 bitfield_bits: bitfield_bits "end of expression" . "name" + 604 bitfield_bits: bitfield_bits "end of expression" . "name" "name" shift, and go to state 1052 State 891 - 611 bitfield_type_declaration: "bitfield" '<' $@35 bitfield_bits '>' . $@36 + 610 bitfield_type_declaration: "bitfield" '<' $@35 bitfield_bits '>' . $@36 - $default reduce using rule 610 ($@36) + $default reduce using rule 609 ($@36) $@36 go to state 1053 State 892 - 657 type_declaration_no_options: "block" '<' $@48 type_declaration '>' . $@49 + 658 type_declaration_no_options_no_dim: "block" '<' $@48 type_declaration '>' . $@49 - $default reduce using rule 656 ($@49) + $default reduce using rule 657 ($@49) $@49 go to state 1054 State 893 - 660 type_declaration_no_options: "block" '<' $@50 optional_function_argument_list optional_function_type . '>' $@51 + 661 type_declaration_no_options_no_dim: "block" '<' $@50 optional_function_argument_list optional_function_type . '>' $@51 '>' shift, and go to state 1055 State 894 - 664 type_declaration_no_options: "function" '<' $@52 type_declaration '>' . $@53 + 665 type_declaration_no_options_no_dim: "function" '<' $@52 type_declaration '>' . $@53 - $default reduce using rule 663 ($@53) + $default reduce using rule 664 ($@53) $@53 go to state 1056 State 895 - 667 type_declaration_no_options: "function" '<' $@54 optional_function_argument_list optional_function_type . '>' $@55 + 668 type_declaration_no_options_no_dim: "function" '<' $@54 optional_function_argument_list optional_function_type . '>' $@55 '>' shift, and go to state 1057 State 896 - 671 type_declaration_no_options: "lambda" '<' $@56 type_declaration '>' . $@57 + 672 type_declaration_no_options_no_dim: "lambda" '<' $@56 type_declaration '>' . $@57 - $default reduce using rule 670 ($@57) + $default reduce using rule 671 ($@57) $@57 go to state 1058 State 897 - 674 type_declaration_no_options: "lambda" '<' $@58 optional_function_argument_list optional_function_type . '>' $@59 + 675 type_declaration_no_options_no_dim: "lambda" '<' $@58 optional_function_argument_list optional_function_type . '>' $@59 '>' shift, and go to state 1059 State 898 - 484 tuple_type_list: tuple_type_list "end of expression" . tuple_type - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 508 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - tuple_type go to state 1060 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 262 - type_declaration go to state 511 + 483 tuple_type_list: tuple_type_list "end of expression" . tuple_type + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 507 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + tuple_type go to state 1060 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 260 + type_declaration_no_options_no_dim go to state 261 + type_declaration go to state 510 State 899 - 677 type_declaration_no_options: "tuple" '<' $@60 tuple_type_list '>' . $@61 + 678 type_declaration_no_options_no_dim: "tuple" '<' $@60 tuple_type_list '>' . $@61 - $default reduce using rule 676 ($@61) + $default reduce using rule 677 ($@61) $@61 go to state 1061 State 900 - 490 variant_type_list: variant_type_list "end of expression" . variant_type + 489 variant_type_list: variant_type_list "end of expression" . variant_type - "name" shift, and go to state 513 + "name" shift, and go to state 512 variant_type go to state 1062 State 901 - 680 type_declaration_no_options: "variant" '<' $@62 variant_type_list '>' . $@63 + 681 type_declaration_no_options_no_dim: "variant" '<' $@62 variant_type_list '>' . $@63 - $default reduce using rule 679 ($@63) + $default reduce using rule 680 ($@63) $@63 go to state 1063 @@ -27037,7 +26817,7 @@ State 901 State 902 238 type_declaration_no_options_list: type_declaration_no_options_list . "end of expression" type_declaration - 628 type_declaration_no_options: '$' name_in_namespace '<' $@39 type_declaration_no_options_list . '>' '(' optional_expr_list ')' + 629 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list . '>' '(' optional_expr_list ')' "end of expression" shift, and go to state 1064 '>' shift, and go to state 1065 @@ -27046,128 +26826,127 @@ State 902 State 903 237 type_declaration_no_options_list: type_declaration . - 682 type_declaration: type_declaration . '|' type_declaration_no_options - 683 | type_declaration . '|' '#' + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' - '|' shift, and go to state 371 + '|' shift, and go to state 370 $default reduce using rule 237 (type_declaration_no_options_list) State 904 - 626 type_declaration_no_options: '$' name_in_namespace '(' optional_expr_list ')' . + 627 type_declaration_no_options_no_dim: '$' name_in_namespace '(' optional_expr_list ')' . - $default reduce using rule 626 (type_declaration_no_options) + $default reduce using rule 627 (type_declaration_no_options_no_dim) State 905 - 290 expr_list: expr_list ',' . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 289 expr_list: expr_list ',' . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1008 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 906 @@ -27179,350 +26958,348 @@ State 906 State 907 - 695 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" . + 696 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" . - $default reduce using rule 695 (bitfield_alias_declaration) + $default reduce using rule 696 (bitfield_alias_declaration) State 908 - 482 tuple_type: "name" ':' type_declaration . - 682 type_declaration: type_declaration . '|' type_declaration_no_options - 683 | type_declaration . '|' '#' + 481 tuple_type: "name" ':' type_declaration . + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' - '|' shift, and go to state 371 + '|' shift, and go to state 370 - $default reduce using rule 482 (tuple_type) + $default reduce using rule 481 (tuple_type) State 909 - 488 variant_type: "name" ':' type_declaration . - 682 type_declaration: type_declaration . '|' type_declaration_no_options - 683 | type_declaration . '|' '#' + 487 variant_type: "name" ':' type_declaration . + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' - '|' shift, and go to state 371 + '|' shift, and go to state 370 - $default reduce using rule 488 (variant_type) + $default reduce using rule 487 (variant_type) State 910 - 478 function_argument_declaration: "$a" '(' expr ')' . + 477 function_argument_declaration: "$a" '(' expr ')' . - $default reduce using rule 478 (function_argument_declaration) + $default reduce using rule 477 (function_argument_declaration) State 911 - 561 variable_name_with_pos_list: "$i" '(' . expr ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 560 variable_name_with_pos_list: "$i" '(' . expr ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1066 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 912 - 562 variable_name_with_pos_list: "name" "aka" . "name" + 561 variable_name_with_pos_list: "name" "aka" . "name" "name" shift, and go to state 1067 State 913 - 495 copy_or_move: "<-" . + 494 copy_or_move: "<-" . - $default reduce using rule 495 (copy_or_move) + $default reduce using rule 494 (copy_or_move) State 914 - 563 variable_name_with_pos_list: variable_name_with_pos_list ',' . "name" - 564 | variable_name_with_pos_list ',' . "name" "aka" "name" + 562 variable_name_with_pos_list: variable_name_with_pos_list ',' . "name" + 563 | variable_name_with_pos_list ',' . "name" "aka" "name" "name" shift, and go to state 1068 State 915 - 494 copy_or_move: '=' . + 493 copy_or_move: '=' . - $default reduce using rule 494 (copy_or_move) + $default reduce using rule 493 (copy_or_move) State 916 - 498 variable_declaration: variable_name_with_pos_list ':' . type_declaration - 499 | variable_name_with_pos_list ':' . type_declaration copy_or_move expr - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 262 - type_declaration go to state 1069 + 497 variable_declaration: variable_name_with_pos_list ':' . type_declaration + 498 | variable_name_with_pos_list ':' . type_declaration copy_or_move expr + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 260 + type_declaration_no_options_no_dim go to state 261 + type_declaration go to state 1069 State 917 - 497 variable_declaration: variable_name_with_pos_list '&' . + 496 variable_declaration: variable_name_with_pos_list '&' . - $default reduce using rule 497 (variable_declaration) + $default reduce using rule 496 (variable_declaration) State 918 - 500 variable_declaration: variable_name_with_pos_list copy_or_move . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 499 variable_declaration: variable_name_with_pos_list copy_or_move . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1070 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 919 @@ -27535,8 +27312,8 @@ State 919 State 920 70 expression_for_loop: "for" '(' variable_name_with_pos_list . "in" expr_list ')' expression_block - 563 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" - 564 | variable_name_with_pos_list . ',' "name" "aka" "name" + 562 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" + 563 | variable_name_with_pos_list . ',' "name" "aka" "name" "in" shift, and go to state 1071 ',' shift, and go to state 914 @@ -27544,213 +27321,213 @@ State 920 State 921 - 256 expression_return: "return" "<-" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 - - $default reduce using rule 256 (expression_return) + 255 expression_return: "return" "<-" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 + + $default reduce using rule 255 (expression_return) State 922 - 260 expression_try_catch: "try" expression_block "recover" . expression_block + 259 expression_try_catch: "try" expression_block "recover" . expression_block - "begin of code block" shift, and go to state 322 + "begin of code block" shift, and go to state 321 expression_block go to state 1072 State 923 - 243 expression_delete: "delete" "explicit" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 - - $default reduce using rule 243 (expression_delete) + 242 expression_delete: "delete" "explicit" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 + + $default reduce using rule 242 (expression_delete) State 924 @@ -27764,109 +27541,108 @@ State 925 74 expression_with_alias: "assume" "name" '=' . expr - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1073 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 926 @@ -27885,103 +27661,103 @@ State 927 State 928 - 258 expression_yield_no_pipe: "yield" "<-" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 - - $default reduce using rule 258 (expression_yield_no_pipe) + 257 expression_yield_no_pipe: "yield" "<-" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 + + $default reduce using rule 257 (expression_yield_no_pipe) State 929 @@ -27996,100 +27772,100 @@ State 929 State 930 68 expression_if_then_else: if_or_static_if '(' expr . ')' expression_block expression_else - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ')' shift, and go to state 1075 @@ -28097,115 +27873,114 @@ State 931 69 expression_if_then_else: expression_if_one_liner "if" '(' . expr ')' expression_else_one_liner "end of expression" - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1076 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 932 - 270 tuple_expansion_variable_declaration: '(' . tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 271 | '(' . tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" + 269 tuple_expansion_variable_declaration: '(' . tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 270 | '(' . tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" "name" shift, and go to state 1077 @@ -28214,2217 +27989,2163 @@ State 932 State 933 - 273 expression_let: kwd_let optional_in_scope tuple_expansion_variable_declaration . + 272 expression_let: kwd_let optional_in_scope tuple_expansion_variable_declaration . - $default reduce using rule 273 (expression_let) + $default reduce using rule 272 (expression_let) State 934 - 272 expression_let: kwd_let optional_in_scope let_variable_declaration . + 271 expression_let: kwd_let optional_in_scope let_variable_declaration . - $default reduce using rule 272 (expression_let) + $default reduce using rule 271 (expression_let) State 935 - 325 expr_assign: expr "+=" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 324 expr_assign: expr "+=" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 325 (expr_assign) + $default reduce using rule 324 (expr_assign) State 936 - 326 expr_assign: expr "-=" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 325 expr_assign: expr "-=" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 326 (expr_assign) + $default reduce using rule 325 (expr_assign) State 937 - 328 expr_assign: expr "/=" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 327 expr_assign: expr "/=" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 328 (expr_assign) + $default reduce using rule 327 (expr_assign) State 938 - 327 expr_assign: expr "*=" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 326 expr_assign: expr "*=" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 327 (expr_assign) + $default reduce using rule 326 (expr_assign) State 939 - 329 expr_assign: expr "%=" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 328 expr_assign: expr "%=" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 329 (expr_assign) + $default reduce using rule 328 (expr_assign) State 940 - 319 expr_assign: expr "&=" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 318 expr_assign: expr "&=" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 319 (expr_assign) + $default reduce using rule 318 (expr_assign) State 941 - 320 expr_assign: expr "|=" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 319 expr_assign: expr "|=" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 320 (expr_assign) + $default reduce using rule 319 (expr_assign) State 942 - 321 expr_assign: expr "^=" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 320 expr_assign: expr "^=" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 321 (expr_assign) + $default reduce using rule 320 (expr_assign) State 943 - 330 expr_assign: expr "<<=" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 329 expr_assign: expr "<<=" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 330 (expr_assign) + $default reduce using rule 329 (expr_assign) State 944 - 331 expr_assign: expr ">>=" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 330 expr_assign: expr ">>=" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 331 (expr_assign) + $default reduce using rule 330 (expr_assign) State 945 - 317 expr_assign: expr "<-" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 316 expr_assign: expr "<-" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 317 (expr_assign) + $default reduce using rule 316 (expr_assign) State 946 - 318 expr_assign: expr ":=" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 317 expr_assign: expr ":=" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 318 (expr_assign) + $default reduce using rule 317 (expr_assign) State 947 - 332 expr_assign: expr "<<<=" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 331 expr_assign: expr "<<<=" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 332 (expr_assign) + $default reduce using rule 331 (expr_assign) State 948 - 333 expr_assign: expr ">>>=" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 - - $default reduce using rule 333 (expr_assign) + 332 expr_assign: expr ">>>=" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 + + $default reduce using rule 332 (expr_assign) State 949 - 322 expr_assign: expr "&&=" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 321 expr_assign: expr "&&=" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 322 (expr_assign) + $default reduce using rule 321 (expr_assign) State 950 - 323 expr_assign: expr "||=" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 322 expr_assign: expr "||=" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 323 (expr_assign) + $default reduce using rule 322 (expr_assign) State 951 - 324 expr_assign: expr "^^=" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 323 expr_assign: expr "^^=" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 324 (expr_assign) + $default reduce using rule 323 (expr_assign) State 952 - 316 expr_assign: expr '=' expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 - - $default reduce using rule 316 (expr_assign) + 315 expr_assign: expr '=' expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 + + $default reduce using rule 315 (expr_assign) State 953 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 526 enum_expression: "name" '=' expr . - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 - - $default reduce using rule 526 (enum_expression) + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 525 enum_expression: "name" '=' expr . + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 + + $default reduce using rule 525 (enum_expression) State 954 - 529 enum_list: enum_list ',' enum_expression . + 528 enum_list: enum_list ',' enum_expression . - $default reduce using rule 529 (enum_list) + $default reduce using rule 528 (enum_list) State 955 - 544 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 . "end of code block" + 543 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 . "end of code block" "end of code block" shift, and go to state 1079 State 956 - 474 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" . optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" - 476 | struct_variable_declaration_list optional_annotation_list "def" . optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block + 473 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" . optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" + 475 | struct_variable_declaration_list optional_annotation_list "def" . optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block "public" shift, and go to state 1080 "private" shift, and go to state 1081 - $default reduce using rule 464 (optional_public_or_private_member_variable) + $default reduce using rule 463 (optional_public_or_private_member_variable) optional_public_or_private_member_variable go to state 1082 State 957 - 469 structure_variable_declaration: optional_field_annotation . optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration + 468 structure_variable_declaration: optional_field_annotation . optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration "static" shift, and go to state 1083 - $default reduce using rule 467 (optional_static_member_variable) + $default reduce using rule 466 (optional_static_member_variable) optional_static_member_variable go to state 1084 State 958 - 472 struct_variable_declaration_list: struct_variable_declaration_list $@25 structure_variable_declaration . "end of expression" + 471 struct_variable_declaration_list: struct_variable_declaration_list $@25 structure_variable_declaration . "end of expression" "end of expression" shift, and go to state 1085 State 959 - 510 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" "aka" "name" . + 509 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" "aka" "name" . - $default reduce using rule 510 (let_variable_name_with_pos_list) + $default reduce using rule 509 (let_variable_name_with_pos_list) State 960 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 512 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr . "end of expression" - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 511 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr . "end of expression" + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 "end of expression" shift, and go to state 1086 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 State 961 - 513 let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr "end of expression" . + 512 let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr "end of expression" . - $default reduce using rule 513 (let_variable_declaration) + $default reduce using rule 512 (let_variable_declaration) State 962 - 624 type_declaration_no_options: "type" '<' $@37 type_declaration '>' $@38 . + 625 type_declaration_no_options_no_dim: "type" '<' $@37 type_declaration '>' $@38 . - $default reduce using rule 624 (type_declaration_no_options) + $default reduce using rule 625 (type_declaration_no_options_no_dim) State 963 - 647 type_declaration_no_options: "array" '<' $@42 type_declaration '>' $@43 . + 648 type_declaration_no_options_no_dim: "array" '<' $@42 type_declaration '>' $@43 . - $default reduce using rule 647 (type_declaration_no_options) + $default reduce using rule 648 (type_declaration_no_options_no_dim) State 964 - 650 type_declaration_no_options: "table" '<' $@44 table_type_pair '>' $@45 . + 651 type_declaration_no_options_no_dim: "table" '<' $@44 table_type_pair '>' $@45 . - $default reduce using rule 650 (type_declaration_no_options) + $default reduce using rule 651 (type_declaration_no_options_no_dim) State 965 - 613 table_type_pair: type_declaration "end of expression" type_declaration . - 682 type_declaration: type_declaration . '|' type_declaration_no_options - 683 | type_declaration . '|' '#' + 612 table_type_pair: type_declaration "end of expression" type_declaration . + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' - '|' shift, and go to state 371 + '|' shift, and go to state 370 - $default reduce using rule 613 (table_type_pair) + $default reduce using rule 612 (table_type_pair) State 966 - 620 type_declaration_no_options: type_declaration_no_options . dim_list - 621 | type_declaration_no_options . '[' ']' - 629 | type_declaration_no_options . '-' '[' ']' - 630 | type_declaration_no_options . "explicit" - 631 | type_declaration_no_options . "const" - 632 | type_declaration_no_options . '-' "const" - 633 | type_declaration_no_options . '&' - 634 | type_declaration_no_options . '-' '&' - 635 | type_declaration_no_options . '#' - 636 | type_declaration_no_options . "implicit" - 637 | type_declaration_no_options . '-' '#' - 638 | type_declaration_no_options . "==" "const" - 639 | type_declaration_no_options . "==" '&' - 640 | type_declaration_no_options . '*' - 644 | type_declaration_no_options . "??" - 716 make_struct_decl: "struct" '<' $@73 type_declaration_no_options . '>' $@74 '(' use_initializer make_struct_dim ')' - - "const" shift, and go to state 360 - "implicit" shift, and go to state 361 - "explicit" shift, and go to state 362 - "==" shift, and go to state 363 - "??" shift, and go to state 364 - '&' shift, and go to state 365 - '>' shift, and go to state 1087 - '-' shift, and go to state 366 - '*' shift, and go to state 367 - '[' shift, and go to state 368 - '#' shift, and go to state 369 - - dim_list go to state 370 + 717 make_struct_decl: "struct" '<' $@73 type_declaration_no_options . '>' $@74 '(' use_initializer make_struct_dim ')' + + '>' shift, and go to state 1087 State 967 - 620 type_declaration_no_options: type_declaration_no_options . dim_list - 621 | type_declaration_no_options . '[' ']' - 629 | type_declaration_no_options . '-' '[' ']' - 630 | type_declaration_no_options . "explicit" - 631 | type_declaration_no_options . "const" - 632 | type_declaration_no_options . '-' "const" - 633 | type_declaration_no_options . '&' - 634 | type_declaration_no_options . '-' '&' - 635 | type_declaration_no_options . '#' - 636 | type_declaration_no_options . "implicit" - 637 | type_declaration_no_options . '-' '#' - 638 | type_declaration_no_options . "==" "const" - 639 | type_declaration_no_options . "==" '&' - 640 | type_declaration_no_options . '*' - 644 | type_declaration_no_options . "??" - 719 make_struct_decl: "class" '<' $@75 type_declaration_no_options . '>' $@76 '(' use_initializer make_struct_dim ')' - - "const" shift, and go to state 360 - "implicit" shift, and go to state 361 - "explicit" shift, and go to state 362 - "==" shift, and go to state 363 - "??" shift, and go to state 364 - '&' shift, and go to state 365 - '>' shift, and go to state 1088 - '-' shift, and go to state 366 - '*' shift, and go to state 367 - '[' shift, and go to state 368 - '#' shift, and go to state 369 - - dim_list go to state 370 + 720 make_struct_decl: "class" '<' $@75 type_declaration_no_options . '>' $@76 '(' use_initializer make_struct_dim ')' + + '>' shift, and go to state 1088 State 968 - 246 new_type_declaration: '<' $@3 type_declaration . '>' $@4 - 682 type_declaration: type_declaration . '|' type_declaration_no_options - 683 | type_declaration . '|' '#' + 245 new_type_declaration: '<' $@3 type_declaration . '>' $@4 + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' - '|' shift, and go to state 371 + '|' shift, and go to state 370 '>' shift, and go to state 1089 State 969 - 713 use_initializer: "uninitialized" . + 714 use_initializer: "uninitialized" . - $default reduce using rule 713 (use_initializer) + $default reduce using rule 714 (use_initializer) State 970 - 249 expr_new: "new" new_type_declaration '(' use_initializer . ')' - 250 | "new" new_type_declaration '(' use_initializer . make_struct_single ')' + 248 expr_new: "new" new_type_declaration '(' use_initializer . ')' + 249 | "new" new_type_declaration '(' use_initializer . make_struct_single ')' "$f" shift, and go to state 826 "name" shift, and go to state 1090 @@ -30436,725 +30157,509 @@ State 970 State 971 - 248 expr_new: "new" structure_type_declaration '(' optional_expr_list . ')' + 247 expr_new: "new" structure_type_declaration '(' optional_expr_list . ')' ')' shift, and go to state 1093 State 972 - 287 expr_type_info: "typeinfo" '(' name_in_namespace '<' . "name" '>' expr ')' - 288 | "typeinfo" '(' name_in_namespace '<' . "name" "end of expression" "name" '>' expr ')' + 286 expr_type_info: "typeinfo" '(' name_in_namespace '<' . "name" '>' expr ')' + 287 | "typeinfo" '(' name_in_namespace '<' . "name" "end of expression" "name" '>' expr ')' "name" shift, and go to state 1094 State 973 - 286 expr_type_info: "typeinfo" '(' name_in_namespace expr . ')' - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 285 expr_type_info: "typeinfo" '(' name_in_namespace expr . ')' + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ')' shift, and go to state 1095 State 974 - 285 expr_type_decl: "type" '<' $@11 type_declaration . '>' $@12 - 682 type_declaration: type_declaration . '|' type_declaration_no_options - 683 | type_declaration . '|' '#' + 284 expr_type_decl: "type" '<' $@11 type_declaration . '>' $@12 + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' - '|' shift, and go to state 371 + '|' shift, and go to state 370 '>' shift, and go to state 1096 State 975 - 735 make_dim_decl: "array" "struct" '<' $@83 . type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 1097 + 736 make_dim_decl: "array" "struct" '<' $@83 . type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 1097 + type_declaration_no_options_no_dim go to state 261 State 976 - 738 make_dim_decl: "array" "tuple" '<' $@85 . type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 1098 + 739 make_dim_decl: "array" "tuple" '<' $@85 . type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 1098 + type_declaration_no_options_no_dim go to state 261 State 977 - 741 make_dim_decl: "array" "variant" '<' $@87 . type_declaration_no_options '>' $@88 '(' make_struct_dim ')' - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 1099 + 742 make_dim_decl: "array" "variant" '<' $@87 . type_declaration_no_options '>' $@88 '(' make_struct_dim ')' + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 1099 + type_declaration_no_options_no_dim go to state 261 State 978 - 620 type_declaration_no_options: type_declaration_no_options . dim_list - 621 | type_declaration_no_options . '[' ']' - 629 | type_declaration_no_options . '-' '[' ']' - 630 | type_declaration_no_options . "explicit" - 631 | type_declaration_no_options . "const" - 632 | type_declaration_no_options . '-' "const" - 633 | type_declaration_no_options . '&' - 634 | type_declaration_no_options . '-' '&' - 635 | type_declaration_no_options . '#' - 636 | type_declaration_no_options . "implicit" - 637 | type_declaration_no_options . '-' '#' - 638 | type_declaration_no_options . "==" "const" - 639 | type_declaration_no_options . "==" '&' - 640 | type_declaration_no_options . '*' - 644 | type_declaration_no_options . "??" - 745 make_dim_decl: "array" '<' $@89 type_declaration_no_options . '>' $@90 '(' expr_list optional_comma ')' - - "const" shift, and go to state 360 - "implicit" shift, and go to state 361 - "explicit" shift, and go to state 362 - "==" shift, and go to state 363 - "??" shift, and go to state 364 - '&' shift, and go to state 365 - '>' shift, and go to state 1100 - '-' shift, and go to state 366 - '*' shift, and go to state 367 - '[' shift, and go to state 368 - '#' shift, and go to state 369 - - dim_list go to state 370 + 746 make_dim_decl: "array" '<' $@89 type_declaration_no_options . '>' $@90 '(' expr_list optional_comma ')' + + '>' shift, and go to state 1100 State 979 - 742 make_dim_decl: "array" '(' expr_list optional_comma . ')' + 743 make_dim_decl: "array" '(' expr_list optional_comma . ')' ')' shift, and go to state 1101 State 980 - 755 make_table_decl: "table" '<' type_declaration_no_options "end of expression" . type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 1102 + 756 make_table_decl: "table" '<' type_declaration_no_options "end of expression" . type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 1102 + type_declaration_no_options_no_dim go to state 261 State 981 - 754 make_table_decl: "table" '<' type_declaration_no_options '>' . '(' expr_map_tuple_list optional_comma ')' + 755 make_table_decl: "table" '<' type_declaration_no_options '>' . '(' expr_map_tuple_list optional_comma ')' '(' shift, and go to state 1103 State 982 - 753 make_table_decl: "table" '(' expr_map_tuple_list optional_comma . ')' + 754 make_table_decl: "table" '(' expr_map_tuple_list optional_comma . ')' ')' shift, and go to state 1104 State 983 - 409 expr: "deref" '(' expr ')' . + 408 expr: "deref" '(' expr ')' . - $default reduce using rule 409 (expr) + $default reduce using rule 408 (expr) State 984 - 276 expr_cast: "cast" '<' $@5 type_declaration_no_options . '>' $@6 expr - 620 type_declaration_no_options: type_declaration_no_options . dim_list - 621 | type_declaration_no_options . '[' ']' - 629 | type_declaration_no_options . '-' '[' ']' - 630 | type_declaration_no_options . "explicit" - 631 | type_declaration_no_options . "const" - 632 | type_declaration_no_options . '-' "const" - 633 | type_declaration_no_options . '&' - 634 | type_declaration_no_options . '-' '&' - 635 | type_declaration_no_options . '#' - 636 | type_declaration_no_options . "implicit" - 637 | type_declaration_no_options . '-' '#' - 638 | type_declaration_no_options . "==" "const" - 639 | type_declaration_no_options . "==" '&' - 640 | type_declaration_no_options . '*' - 644 | type_declaration_no_options . "??" - - "const" shift, and go to state 360 - "implicit" shift, and go to state 361 - "explicit" shift, and go to state 362 - "==" shift, and go to state 363 - "??" shift, and go to state 364 - '&' shift, and go to state 365 - '>' shift, and go to state 1105 - '-' shift, and go to state 366 - '*' shift, and go to state 367 - '[' shift, and go to state 368 - '#' shift, and go to state 369 - - dim_list go to state 370 + 275 expr_cast: "cast" '<' $@5 type_declaration_no_options . '>' $@6 expr + + '>' shift, and go to state 1105 State 985 - 279 expr_cast: "upcast" '<' $@7 type_declaration_no_options . '>' $@8 expr - 620 type_declaration_no_options: type_declaration_no_options . dim_list - 621 | type_declaration_no_options . '[' ']' - 629 | type_declaration_no_options . '-' '[' ']' - 630 | type_declaration_no_options . "explicit" - 631 | type_declaration_no_options . "const" - 632 | type_declaration_no_options . '-' "const" - 633 | type_declaration_no_options . '&' - 634 | type_declaration_no_options . '-' '&' - 635 | type_declaration_no_options . '#' - 636 | type_declaration_no_options . "implicit" - 637 | type_declaration_no_options . '-' '#' - 638 | type_declaration_no_options . "==" "const" - 639 | type_declaration_no_options . "==" '&' - 640 | type_declaration_no_options . '*' - 644 | type_declaration_no_options . "??" - - "const" shift, and go to state 360 - "implicit" shift, and go to state 361 - "explicit" shift, and go to state 362 - "==" shift, and go to state 363 - "??" shift, and go to state 364 - '&' shift, and go to state 365 - '>' shift, and go to state 1106 - '-' shift, and go to state 366 - '*' shift, and go to state 367 - '[' shift, and go to state 368 - '#' shift, and go to state 369 - - dim_list go to state 370 + 278 expr_cast: "upcast" '<' $@7 type_declaration_no_options . '>' $@8 expr + + '>' shift, and go to state 1106 State 986 - 410 expr: "addr" '(' expr ')' . + 409 expr: "addr" '(' expr ')' . - $default reduce using rule 410 (expr) + $default reduce using rule 409 (expr) State 987 - 282 expr_cast: "reinterpret" '<' $@9 type_declaration_no_options . '>' $@10 expr - 620 type_declaration_no_options: type_declaration_no_options . dim_list - 621 | type_declaration_no_options . '[' ']' - 629 | type_declaration_no_options . '-' '[' ']' - 630 | type_declaration_no_options . "explicit" - 631 | type_declaration_no_options . "const" - 632 | type_declaration_no_options . '-' "const" - 633 | type_declaration_no_options . '&' - 634 | type_declaration_no_options . '-' '&' - 635 | type_declaration_no_options . '#' - 636 | type_declaration_no_options . "implicit" - 637 | type_declaration_no_options . '-' '#' - 638 | type_declaration_no_options . "==" "const" - 639 | type_declaration_no_options . "==" '&' - 640 | type_declaration_no_options . '*' - 644 | type_declaration_no_options . "??" - - "const" shift, and go to state 360 - "implicit" shift, and go to state 361 - "explicit" shift, and go to state 362 - "==" shift, and go to state 363 - "??" shift, and go to state 364 - '&' shift, and go to state 365 - '>' shift, and go to state 1107 - '-' shift, and go to state 366 - '*' shift, and go to state 367 - '[' shift, and go to state 368 - '#' shift, and go to state 369 - - dim_list go to state 370 + 281 expr_cast: "reinterpret" '<' $@9 type_declaration_no_options . '>' $@10 expr + + '>' shift, and go to state 1107 State 988 - 620 type_declaration_no_options: type_declaration_no_options . dim_list - 621 | type_declaration_no_options . '[' ']' - 629 | type_declaration_no_options . '-' '[' ']' - 630 | type_declaration_no_options . "explicit" - 631 | type_declaration_no_options . "const" - 632 | type_declaration_no_options . '-' "const" - 633 | type_declaration_no_options . '&' - 634 | type_declaration_no_options . '-' '&' - 635 | type_declaration_no_options . '#' - 636 | type_declaration_no_options . "implicit" - 637 | type_declaration_no_options . '-' '#' - 638 | type_declaration_no_options . "==" "const" - 639 | type_declaration_no_options . "==" '&' - 640 | type_declaration_no_options . '*' - 644 | type_declaration_no_options . "??" - 749 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options . '>' $@92 '(' expr_list optional_comma ')' - - "const" shift, and go to state 360 - "implicit" shift, and go to state 361 - "explicit" shift, and go to state 362 - "==" shift, and go to state 363 - "??" shift, and go to state 364 - '&' shift, and go to state 365 - '>' shift, and go to state 1108 - '-' shift, and go to state 366 - '*' shift, and go to state 367 - '[' shift, and go to state 368 - '#' shift, and go to state 369 - - dim_list go to state 370 + 750 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options . '>' $@92 '(' expr_list optional_comma ')' + + '>' shift, and go to state 1108 State 989 - 746 make_dim_decl: "fixed_array" '(' expr_list optional_comma . ')' + 747 make_dim_decl: "fixed_array" '(' expr_list optional_comma . ')' ')' shift, and go to state 1109 State 990 - 620 type_declaration_no_options: type_declaration_no_options . dim_list - 621 | type_declaration_no_options . '[' ']' - 629 | type_declaration_no_options . '-' '[' ']' - 630 | type_declaration_no_options . "explicit" - 631 | type_declaration_no_options . "const" - 632 | type_declaration_no_options . '-' "const" - 633 | type_declaration_no_options . '&' - 634 | type_declaration_no_options . '-' '&' - 635 | type_declaration_no_options . '#' - 636 | type_declaration_no_options . "implicit" - 637 | type_declaration_no_options . '-' '#' - 638 | type_declaration_no_options . "==" "const" - 639 | type_declaration_no_options . "==" '&' - 640 | type_declaration_no_options . '*' - 644 | type_declaration_no_options . "??" - 725 make_struct_decl: "default" '<' $@79 type_declaration_no_options . '>' $@80 use_initializer - - "const" shift, and go to state 360 - "implicit" shift, and go to state 361 - "explicit" shift, and go to state 362 - "==" shift, and go to state 363 - "??" shift, and go to state 364 - '&' shift, and go to state 365 - '>' shift, and go to state 1110 - '-' shift, and go to state 366 - '*' shift, and go to state 367 - '[' shift, and go to state 368 - '#' shift, and go to state 369 - - dim_list go to state 370 + 726 make_struct_decl: "default" '<' $@79 type_declaration_no_options . '>' $@80 use_initializer + + '>' shift, and go to state 1110 State 991 - 620 type_declaration_no_options: type_declaration_no_options . dim_list - 621 | type_declaration_no_options . '[' ']' - 629 | type_declaration_no_options . '-' '[' ']' - 630 | type_declaration_no_options . "explicit" - 631 | type_declaration_no_options . "const" - 632 | type_declaration_no_options . '-' "const" - 633 | type_declaration_no_options . '&' - 634 | type_declaration_no_options . '-' '&' - 635 | type_declaration_no_options . '#' - 636 | type_declaration_no_options . "implicit" - 637 | type_declaration_no_options . '-' '#' - 638 | type_declaration_no_options . "==" "const" - 639 | type_declaration_no_options . "==" '&' - 640 | type_declaration_no_options . '*' - 644 | type_declaration_no_options . "??" - 731 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options . '>' $@82 '(' use_initializer make_struct_dim ')' - - "const" shift, and go to state 360 - "implicit" shift, and go to state 361 - "explicit" shift, and go to state 362 - "==" shift, and go to state 363 - "??" shift, and go to state 364 - '&' shift, and go to state 365 - '>' shift, and go to state 1111 - '-' shift, and go to state 366 - '*' shift, and go to state 367 - '[' shift, and go to state 368 - '#' shift, and go to state 369 - - dim_list go to state 370 + 732 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options . '>' $@82 '(' use_initializer make_struct_dim ')' + + '>' shift, and go to state 1111 State 992 - 728 make_tuple_call: "tuple" '(' expr_list optional_comma . ')' + 729 make_tuple_call: "tuple" '(' expr_list optional_comma . ')' ')' shift, and go to state 1112 State 993 - 620 type_declaration_no_options: type_declaration_no_options . dim_list - 621 | type_declaration_no_options . '[' ']' - 629 | type_declaration_no_options . '-' '[' ']' - 630 | type_declaration_no_options . "explicit" - 631 | type_declaration_no_options . "const" - 632 | type_declaration_no_options . '-' "const" - 633 | type_declaration_no_options . '&' - 634 | type_declaration_no_options . '-' '&' - 635 | type_declaration_no_options . '#' - 636 | type_declaration_no_options . "implicit" - 637 | type_declaration_no_options . '-' '#' - 638 | type_declaration_no_options . "==" "const" - 639 | type_declaration_no_options . "==" '&' - 640 | type_declaration_no_options . '*' - 644 | type_declaration_no_options . "??" - 722 make_struct_decl: "variant" '<' $@77 type_declaration_no_options . '>' $@78 '(' make_struct_dim ')' - - "const" shift, and go to state 360 - "implicit" shift, and go to state 361 - "explicit" shift, and go to state 362 - "==" shift, and go to state 363 - "??" shift, and go to state 364 - '&' shift, and go to state 365 - '>' shift, and go to state 1113 - '-' shift, and go to state 366 - '*' shift, and go to state 367 - '[' shift, and go to state 368 - '#' shift, and go to state 369 - - dim_list go to state 370 + 723 make_struct_decl: "variant" '<' $@77 type_declaration_no_options . '>' $@78 '(' make_struct_dim ')' + + '>' shift, and go to state 1113 State 994 - 411 expr: "generator" '<' type_declaration_no_options '>' . optional_capture_list '(' ')' - 412 | "generator" '<' type_declaration_no_options '>' . optional_capture_list '(' expr ')' + 410 expr: "generator" '<' type_declaration_no_options '>' . optional_capture_list '(' ')' + 411 | "generator" '<' type_declaration_no_options '>' . optional_capture_list '(' expr ')' '[' shift, and go to state 833 - $default reduce using rule 303 (optional_capture_list) + $default reduce using rule 302 (optional_capture_list) optional_capture_list go to state 1114 State 995 - 441 expr_mtag: "$$" '(' expr ')' . + 440 expr_mtag: "$$" '(' expr ')' . - $default reduce using rule 441 (expr_mtag) + $default reduce using rule 440 (expr_mtag) State 996 - 442 expr_mtag: "$i" '(' expr ')' . + 441 expr_mtag: "$i" '(' expr ')' . - $default reduce using rule 442 (expr_mtag) + $default reduce using rule 441 (expr_mtag) State 997 - 443 expr_mtag: "$v" '(' expr ')' . + 442 expr_mtag: "$v" '(' expr ')' . - $default reduce using rule 443 (expr_mtag) + $default reduce using rule 442 (expr_mtag) State 998 - 444 expr_mtag: "$b" '(' expr ')' . + 443 expr_mtag: "$b" '(' expr ')' . - $default reduce using rule 444 (expr_mtag) + $default reduce using rule 443 (expr_mtag) State 999 - 445 expr_mtag: "$a" '(' expr ')' . + 444 expr_mtag: "$a" '(' expr ')' . - $default reduce using rule 445 (expr_mtag) + $default reduce using rule 444 (expr_mtag) State 1000 - 447 expr_mtag: "$c" '(' expr ')' . '(' ')' - 448 | "$c" '(' expr ')' . '(' expr_list ')' + 446 expr_mtag: "$c" '(' expr ')' . '(' ')' + 447 | "$c" '(' expr ')' . '(' expr_list ')' '(' shift, and go to state 1115 @@ -31162,443 +30667,441 @@ State 1000 State 1001 30 string_builder_body: string_builder_body "{" expr . "}" - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 "}" shift, and go to state 1116 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 State 1002 - 762 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" . expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 763 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" . expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 expr_list go to state 1117 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 633 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 632 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1003 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 726 make_map_tuple: expr "=>" expr . - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 - - $default reduce using rule 726 (make_map_tuple) + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 727 make_map_tuple: expr "=>" expr . + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 + + $default reduce using rule 727 (make_map_tuple) State 1004 - 751 expr_map_tuple_list: expr_map_tuple_list ',' make_map_tuple . + 752 expr_map_tuple_list: expr_map_tuple_list ',' make_map_tuple . - $default reduce using rule 751 (expr_map_tuple_list) + $default reduce using rule 752 (expr_map_tuple_list) State 1005 - 752 make_table_decl: "begin of code block" expr_map_tuple_list optional_comma "end of code block" . + 753 make_table_decl: "begin of code block" expr_map_tuple_list optional_comma "end of code block" . - $default reduce using rule 752 (make_table_decl) + $default reduce using rule 753 (make_table_decl) State 1006 - 760 array_comprehension: '[' "for" variable_name_with_pos_list "in" . expr_list "end of expression" expr array_comprehension_where ']' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 761 array_comprehension: '[' "for" variable_name_with_pos_list "in" . expr_list "end of expression" expr array_comprehension_where ']' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 expr_list go to state 1118 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 633 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 632 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1007 - 563 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" - 564 | variable_name_with_pos_list . ',' "name" "aka" "name" - 761 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list . "in" expr_list "end of expression" expr array_comprehension_where ']' + 562 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" + 563 | variable_name_with_pos_list . ',' "name" "aka" "name" + 762 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list . "in" expr_list "end of expression" expr array_comprehension_where ']' "in" shift, and go to state 1119 ',' shift, and go to state 914 @@ -31606,398 +31109,396 @@ State 1007 State 1008 - 290 expr_list: expr_list ',' expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 - - $default reduce using rule 290 (expr_list) + 289 expr_list: expr_list ',' expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 + + $default reduce using rule 289 (expr_list) State 1009 - 732 make_dim_decl: '[' expr_list optional_comma ']' . + 733 make_dim_decl: '[' expr_list optional_comma ']' . - $default reduce using rule 732 (make_dim_decl) + $default reduce using rule 733 (make_dim_decl) State 1010 - 399 expr: '(' expr_list optional_comma ')' . + 398 expr: '(' expr_list optional_comma ')' . - $default reduce using rule 399 (expr) + $default reduce using rule 398 (expr) State 1011 - 339 func_addr_name: "$i" '(' . expr ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 338 func_addr_name: "$i" '(' . expr ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1120 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1012 - 456 expr_mtag: '@' '@' "$c" '(' . expr ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 455 expr_mtag: '@' '@' "$c" '(' . expr ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1121 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1013 - 343 func_addr_expr: '@' '@' '<' $@13 . type_declaration_no_options '>' $@14 func_addr_name - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 1122 + 342 func_addr_expr: '@' '@' '<' $@13 . type_declaration_no_options '>' $@14 func_addr_name + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 1122 + type_declaration_no_options_no_dim go to state 261 State 1014 - 346 func_addr_expr: '@' '@' '<' $@15 . optional_function_argument_list optional_function_type '>' $@16 func_addr_name + 345 func_addr_expr: '@' '@' '<' $@15 . optional_function_argument_list optional_function_type '>' $@16 func_addr_name - '(' shift, and go to state 320 + '(' shift, and go to state 319 $default reduce using rule 114 (optional_function_argument_list) @@ -32006,339 +31507,336 @@ State 1014 State 1015 - 705 make_struct_fields: "$f" '(' . expr ')' copy_or_move expr - 706 | "$f" '(' . expr ')' ":=" expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 706 make_struct_fields: "$f" '(' . expr ')' copy_or_move expr + 707 | "$f" '(' . expr ')' ":=" expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1124 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1016 - 702 make_struct_fields: "name" ":=" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 703 make_struct_fields: "name" ":=" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1125 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1017 - 701 make_struct_fields: "name" copy_or_move . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 702 make_struct_fields: "name" copy_or_move . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1126 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1018 - 334 expr_named_call: name_in_namespace '(' '[' make_struct_fields . ']' ')' - 703 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr - 704 | make_struct_fields . ',' "name" ":=" expr - 707 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr - 708 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr + 333 expr_named_call: name_in_namespace '(' '[' make_struct_fields . ']' ')' + 704 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr + 705 | make_struct_fields . ',' "name" ":=" expr + 708 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr + 709 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr ',' shift, and go to state 1021 ']' shift, and go to state 1127 @@ -32346,127 +31844,126 @@ State 1018 State 1019 - 290 expr_list: expr_list ',' . expr - 335 expr_named_call: name_in_namespace '(' expr_list ',' . '[' make_struct_fields ']' ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 289 expr_list: expr_list ',' . expr + 334 expr_named_call: name_in_namespace '(' expr_list ',' . '[' make_struct_fields ']' ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 + '~' shift, and go to state 448 + '!' shift, and go to state 449 '[' shift, and go to state 1128 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1008 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1020 - 356 expr_call: name_in_namespace '(' expr_list ')' . + 355 expr_call: name_in_namespace '(' expr_list ')' . - $default reduce using rule 356 (expr_call) + $default reduce using rule 355 (expr_call) State 1021 - 703 make_struct_fields: make_struct_fields ',' . "name" copy_or_move expr - 704 | make_struct_fields ',' . "name" ":=" expr - 707 | make_struct_fields ',' . "$f" '(' expr ')' copy_or_move expr - 708 | make_struct_fields ',' . "$f" '(' expr ')' ":=" expr + 704 make_struct_fields: make_struct_fields ',' . "name" copy_or_move expr + 705 | make_struct_fields ',' . "name" ":=" expr + 708 | make_struct_fields ',' . "$f" '(' expr ')' copy_or_move expr + 709 | make_struct_fields ',' . "$f" '(' expr ')' ":=" expr "$f" shift, and go to state 1129 "name" shift, and go to state 1130 @@ -32474,14 +31971,14 @@ State 1021 State 1022 - 355 expr_call: name_in_namespace '(' make_struct_single ')' . + 354 expr_call: name_in_namespace '(' make_struct_single ')' . - $default reduce using rule 355 (expr_call) + $default reduce using rule 354 (expr_call) State 1023 - 304 optional_capture_list: '[' '[' . capture_list ']' ']' + 303 optional_capture_list: '[' '[' . capture_list ']' ']' "<-" shift, and go to state 1131 ":=" shift, and go to state 1132 @@ -32494,9 +31991,9 @@ State 1023 State 1024 - 305 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list . optional_function_type block_or_simple_block + 304 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list . optional_function_type block_or_simple_block - ':' shift, and go to state 388 + ':' shift, and go to state 387 $default reduce using rule 117 (optional_function_type) @@ -32505,16 +32002,16 @@ State 1024 State 1025 - 307 expr_full_block_assumed_piped: "begin of code block" expressions "end of code block" . + 306 expr_full_block_assumed_piped: "begin of code block" expressions "end of code block" . - $default reduce using rule 307 (expr_full_block_assumed_piped) + $default reduce using rule 306 (expr_full_block_assumed_piped) State 1026 - 306 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list . optional_function_argument_list optional_function_type expression_block + 305 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list . optional_function_argument_list optional_function_type expression_block - '(' shift, and go to state 320 + '(' shift, and go to state 319 $default reduce using rule 114 (optional_function_argument_list) @@ -32523,1693 +32020,1685 @@ State 1026 State 1027 - 417 expr: expr "is" "type" '<' . $@19 type_declaration_no_options '>' $@20 + 416 expr: expr "is" "type" '<' . $@19 type_declaration_no_options '>' $@20 - $default reduce using rule 415 ($@19) + $default reduce using rule 414 ($@19) $@19 go to state 1139 State 1028 - 455 expr_mtag: expr "is" "$f" '(' . expr ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 454 expr_mtag: expr "is" "$f" '(' . expr ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1140 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1029 - 423 expr: expr "as" "type" '<' . $@21 type_declaration '>' $@22 + 422 expr: expr "as" "type" '<' . $@21 type_declaration '>' $@22 - $default reduce using rule 421 ($@21) + $default reduce using rule 420 ($@21) $@21 go to state 1141 State 1030 - 453 expr_mtag: expr "as" "$f" '(' . expr ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 452 expr_mtag: expr "as" "$f" '(' . expr ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1142 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1031 - 336 expr_method_call: expr "->" "name" '(' . ')' - 337 | expr "->" "name" '(' . expr_list ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 335 expr_method_call: expr "->" "name" '(' . ')' + 336 | expr "->" "name" '(' . expr_list ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 ')' shift, and go to state 1143 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 expr_list go to state 1144 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 633 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 632 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1032 - 450 expr_mtag: expr "?." "$f" '(' . expr ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 449 expr_mtag: expr "?." "$f" '(' . expr ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1145 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1033 - 402 expr: expr "?[" expr ']' . + 401 expr: expr "?[" expr ']' . - $default reduce using rule 402 (expr) + $default reduce using rule 401 (expr) State 1034 - 428 expr: expr '?' "as" "type" . '<' $@23 type_declaration '>' $@24 + 427 expr: expr '?' "as" "type" . '<' $@23 type_declaration '>' $@24 '<' shift, and go to state 1146 State 1035 - 454 expr_mtag: expr '?' "as" "$f" . '(' expr ')' + 453 expr_mtag: expr '?' "as" "$f" . '(' expr ')' '(' shift, and go to state 1147 State 1036 - 425 expr: expr '?' "as" "name" . + 424 expr: expr '?' "as" "name" . - $default reduce using rule 425 (expr) + $default reduce using rule 424 (expr) State 1037 - 429 expr: expr '?' "as" basic_type_declaration . + 428 expr: expr '?' "as" basic_type_declaration . - $default reduce using rule 429 (expr) + $default reduce using rule 428 (expr) State 1038 - 414 expr: expr '?' expr ':' . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 413 expr: expr '?' expr ':' . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1148 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1039 - 452 expr_mtag: expr '.' "?." "$f" . '(' expr ')' + 451 expr_mtag: expr '.' "?." "$f" . '(' expr ')' '(' shift, and go to state 1149 State 1040 - 405 expr: expr '.' "?." "name" . + 404 expr: expr '.' "?." "name" . - $default reduce using rule 405 (expr) + $default reduce using rule 404 (expr) State 1041 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 403 | expr '.' "?[" expr . ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 402 | expr '.' "?[" expr . ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ']' shift, and go to state 1150 State 1042 - 449 expr_mtag: expr '.' "$f" '(' . expr ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 448 expr_mtag: expr '.' "$f" '(' . expr ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1151 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1043 - 349 expr_field: expr '.' "name" '(' . ')' - 350 | expr '.' "name" '(' . expr_list ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 348 expr_field: expr '.' "name" '(' . ')' + 349 | expr '.' "name" '(' . expr_list ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 ')' shift, and go to state 1152 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 expr_list go to state 1153 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 633 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 632 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1044 - 451 expr_mtag: expr '.' '.' "$f" . '(' expr ')' + 450 expr_mtag: expr '.' '.' "$f" . '(' expr ')' '(' shift, and go to state 1154 State 1045 - 348 expr_field: expr '.' '.' "name" . + 347 expr_field: expr '.' '.' "name" . - $default reduce using rule 348 (expr_field) + $default reduce using rule 347 (expr_field) State 1046 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 401 | expr '.' '[' expr . ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 400 | expr '.' '[' expr . ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ']' shift, and go to state 1155 State 1047 - 353 expr_field: expr '.' $@17 error . $@18 + 352 expr_field: expr '.' $@17 error . $@18 - $default reduce using rule 352 ($@18) + $default reduce using rule 351 ($@18) $@18 go to state 1156 State 1048 - 400 expr: expr '[' expr ']' . + 399 expr: expr '[' expr ']' . - $default reduce using rule 400 (expr) + $default reduce using rule 399 (expr) State 1049 - 358 expr_call: basic_type_declaration '(' expr_list ')' . + 357 expr_call: basic_type_declaration '(' expr_list ')' . - $default reduce using rule 358 (expr_call) + $default reduce using rule 357 (expr_call) State 1050 - 653 type_declaration_no_options: "iterator" '<' $@46 type_declaration '>' $@47 . + 654 type_declaration_no_options_no_dim: "iterator" '<' $@46 type_declaration '>' $@47 . - $default reduce using rule 653 (type_declaration_no_options) + $default reduce using rule 654 (type_declaration_no_options_no_dim) State 1051 - 643 type_declaration_no_options: "smart_ptr" '<' $@40 type_declaration '>' $@41 . + 644 type_declaration_no_options_no_dim: "smart_ptr" '<' $@40 type_declaration '>' $@41 . - $default reduce using rule 643 (type_declaration_no_options) + $default reduce using rule 644 (type_declaration_no_options_no_dim) State 1052 - 605 bitfield_bits: bitfield_bits "end of expression" "name" . + 604 bitfield_bits: bitfield_bits "end of expression" "name" . - $default reduce using rule 605 (bitfield_bits) + $default reduce using rule 604 (bitfield_bits) State 1053 - 611 bitfield_type_declaration: "bitfield" '<' $@35 bitfield_bits '>' $@36 . + 610 bitfield_type_declaration: "bitfield" '<' $@35 bitfield_bits '>' $@36 . - $default reduce using rule 611 (bitfield_type_declaration) + $default reduce using rule 610 (bitfield_type_declaration) State 1054 - 657 type_declaration_no_options: "block" '<' $@48 type_declaration '>' $@49 . + 658 type_declaration_no_options_no_dim: "block" '<' $@48 type_declaration '>' $@49 . - $default reduce using rule 657 (type_declaration_no_options) + $default reduce using rule 658 (type_declaration_no_options_no_dim) State 1055 - 660 type_declaration_no_options: "block" '<' $@50 optional_function_argument_list optional_function_type '>' . $@51 + 661 type_declaration_no_options_no_dim: "block" '<' $@50 optional_function_argument_list optional_function_type '>' . $@51 - $default reduce using rule 659 ($@51) + $default reduce using rule 660 ($@51) $@51 go to state 1157 State 1056 - 664 type_declaration_no_options: "function" '<' $@52 type_declaration '>' $@53 . + 665 type_declaration_no_options_no_dim: "function" '<' $@52 type_declaration '>' $@53 . - $default reduce using rule 664 (type_declaration_no_options) + $default reduce using rule 665 (type_declaration_no_options_no_dim) State 1057 - 667 type_declaration_no_options: "function" '<' $@54 optional_function_argument_list optional_function_type '>' . $@55 + 668 type_declaration_no_options_no_dim: "function" '<' $@54 optional_function_argument_list optional_function_type '>' . $@55 - $default reduce using rule 666 ($@55) + $default reduce using rule 667 ($@55) $@55 go to state 1158 State 1058 - 671 type_declaration_no_options: "lambda" '<' $@56 type_declaration '>' $@57 . + 672 type_declaration_no_options_no_dim: "lambda" '<' $@56 type_declaration '>' $@57 . - $default reduce using rule 671 (type_declaration_no_options) + $default reduce using rule 672 (type_declaration_no_options_no_dim) State 1059 - 674 type_declaration_no_options: "lambda" '<' $@58 optional_function_argument_list optional_function_type '>' . $@59 + 675 type_declaration_no_options_no_dim: "lambda" '<' $@58 optional_function_argument_list optional_function_type '>' . $@59 - $default reduce using rule 673 ($@59) + $default reduce using rule 674 ($@59) $@59 go to state 1159 State 1060 - 484 tuple_type_list: tuple_type_list "end of expression" tuple_type . + 483 tuple_type_list: tuple_type_list "end of expression" tuple_type . - $default reduce using rule 484 (tuple_type_list) + $default reduce using rule 483 (tuple_type_list) State 1061 - 677 type_declaration_no_options: "tuple" '<' $@60 tuple_type_list '>' $@61 . + 678 type_declaration_no_options_no_dim: "tuple" '<' $@60 tuple_type_list '>' $@61 . - $default reduce using rule 677 (type_declaration_no_options) + $default reduce using rule 678 (type_declaration_no_options_no_dim) State 1062 - 490 variant_type_list: variant_type_list "end of expression" variant_type . + 489 variant_type_list: variant_type_list "end of expression" variant_type . - $default reduce using rule 490 (variant_type_list) + $default reduce using rule 489 (variant_type_list) State 1063 - 680 type_declaration_no_options: "variant" '<' $@62 variant_type_list '>' $@63 . + 681 type_declaration_no_options_no_dim: "variant" '<' $@62 variant_type_list '>' $@63 . - $default reduce using rule 680 (type_declaration_no_options) + $default reduce using rule 681 (type_declaration_no_options_no_dim) State 1064 238 type_declaration_no_options_list: type_declaration_no_options_list "end of expression" . type_declaration - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 262 - type_declaration go to state 1160 + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 260 + type_declaration_no_options_no_dim go to state 261 + type_declaration go to state 1160 State 1065 - 628 type_declaration_no_options: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' . '(' optional_expr_list ')' + 629 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' . '(' optional_expr_list ')' '(' shift, and go to state 1161 State 1066 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 561 variable_name_with_pos_list: "$i" '(' expr . ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 560 variable_name_with_pos_list: "$i" '(' expr . ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ')' shift, and go to state 1162 State 1067 - 562 variable_name_with_pos_list: "name" "aka" "name" . + 561 variable_name_with_pos_list: "name" "aka" "name" . - $default reduce using rule 562 (variable_name_with_pos_list) + $default reduce using rule 561 (variable_name_with_pos_list) State 1068 - 563 variable_name_with_pos_list: variable_name_with_pos_list ',' "name" . - 564 | variable_name_with_pos_list ',' "name" . "aka" "name" + 562 variable_name_with_pos_list: variable_name_with_pos_list ',' "name" . + 563 | variable_name_with_pos_list ',' "name" . "aka" "name" "aka" shift, and go to state 1163 - $default reduce using rule 563 (variable_name_with_pos_list) + $default reduce using rule 562 (variable_name_with_pos_list) State 1069 - 498 variable_declaration: variable_name_with_pos_list ':' type_declaration . - 499 | variable_name_with_pos_list ':' type_declaration . copy_or_move expr - 682 type_declaration: type_declaration . '|' type_declaration_no_options - 683 | type_declaration . '|' '#' + 497 variable_declaration: variable_name_with_pos_list ':' type_declaration . + 498 | variable_name_with_pos_list ':' type_declaration . copy_or_move expr + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' "<-" shift, and go to state 913 '=' shift, and go to state 915 - '|' shift, and go to state 371 + '|' shift, and go to state 370 - $default reduce using rule 498 (variable_declaration) + $default reduce using rule 497 (variable_declaration) copy_or_move go to state 1164 State 1070 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 500 variable_declaration: variable_name_with_pos_list copy_or_move expr . - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 - - $default reduce using rule 500 (variable_declaration) + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 499 variable_declaration: variable_name_with_pos_list copy_or_move expr . + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 + + $default reduce using rule 499 (variable_declaration) State 1071 70 expression_for_loop: "for" '(' variable_name_with_pos_list "in" . expr_list ')' expression_block - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 expr_list go to state 1165 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 633 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 632 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1072 - 260 expression_try_catch: "try" expression_block "recover" expression_block . + 259 expression_try_catch: "try" expression_block "recover" expression_block . - $default reduce using rule 260 (expression_try_catch) + $default reduce using rule 259 (expression_try_catch) State 1073 74 expression_with_alias: "assume" "name" '=' expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 $default reduce using rule 74 (expression_with_alias) @@ -34220,158 +33709,157 @@ State 1074 233 expressions: expressions . expression_any 234 | expressions . error - error shift, and go to state 526 - "struct" shift, and go to state 407 - "class" shift, and go to state 408 + error shift, and go to state 525 + "struct" shift, and go to state 406 + "class" shift, and go to state 407 "let" shift, and go to state 3 - "while" shift, and go to state 527 - "if" shift, and go to state 528 - "static_if" shift, and go to state 529 - "for" shift, and go to state 530 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "return" shift, and go to state 531 - "null" shift, and go to state 415 - "break" shift, and go to state 532 - "try" shift, and go to state 533 - "table" shift, and go to state 416 - "delete" shift, and go to state 534 - "deref" shift, and go to state 417 - "with" shift, and go to state 535 - "assume" shift, and go to state 536 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 + "while" shift, and go to state 526 + "if" shift, and go to state 527 + "static_if" shift, and go to state 528 + "for" shift, and go to state 529 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "return" shift, and go to state 530 + "null" shift, and go to state 414 + "break" shift, and go to state 531 + "try" shift, and go to state 532 + "table" shift, and go to state 415 + "delete" shift, and go to state 533 + "deref" shift, and go to state 416 + "with" shift, and go to state 534 + "assume" shift, and go to state 535 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 "var" shift, and go to state 8 - "addr" shift, and go to state 420 - "continue" shift, and go to state 537 - "pass" shift, and go to state 538 - "reinterpret" shift, and go to state 421 - "label" shift, and go to state 539 - "goto" shift, and go to state 540 - "unsafe" shift, and go to state 541 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "yield" shift, and go to state 542 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 + "addr" shift, and go to state 419 + "continue" shift, and go to state 536 + "pass" shift, and go to state 537 + "reinterpret" shift, and go to state 420 + "label" shift, and go to state 538 + "goto" shift, and go to state 539 + "unsafe" shift, and go to state 540 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "yield" shift, and go to state 541 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 "end of code block" shift, and go to state 1166 - "end of expression" shift, and go to state 544 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + "end of expression" shift, and go to state 543 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expression_label go to state 545 - expression_goto go to state 546 - if_or_static_if go to state 547 - expression_if_one_liner go to state 548 - expression_if_then_else go to state 549 - expression_for_loop go to state 550 - expression_unsafe go to state 551 - expression_while_loop go to state 552 - expression_with go to state 553 - expression_with_alias go to state 554 - expr_call_pipe go to state 457 - expression_any go to state 555 - name_in_namespace go to state 458 - expression_delete go to state 556 - expr_new go to state 459 - expression_break go to state 557 - expression_continue go to state 558 - expression_return go to state 559 - expression_yield_no_pipe go to state 560 - expression_yield go to state 561 - expression_try_catch go to state 562 - kwd_let go to state 563 - expression_let go to state 564 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_assign go to state 565 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 566 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expression_label go to state 544 + expression_goto go to state 545 + if_or_static_if go to state 546 + expression_if_one_liner go to state 547 + expression_if_then_else go to state 548 + expression_for_loop go to state 549 + expression_unsafe go to state 550 + expression_while_loop go to state 551 + expression_with go to state 552 + expression_with_alias go to state 553 + expr_call_pipe go to state 456 + expression_any go to state 554 + name_in_namespace go to state 457 + expression_delete go to state 555 + expr_new go to state 458 + expression_break go to state 556 + expression_continue go to state 557 + expression_return go to state 558 + expression_yield_no_pipe go to state 559 + expression_yield go to state 560 + expression_try_catch go to state 561 + kwd_let go to state 562 + expression_let go to state 563 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_assign go to state 564 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 565 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1075 68 expression_if_then_else: if_or_static_if '(' expr ')' . expression_block expression_else - "begin of code block" shift, and go to state 322 + "begin of code block" shift, and go to state 321 expression_block go to state 1167 @@ -34379,115 +33867,115 @@ State 1075 State 1076 69 expression_if_then_else: expression_if_one_liner "if" '(' expr . ')' expression_else_one_liner "end of expression" - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ')' shift, and go to state 1168 State 1077 - 268 tuple_expansion: "name" . + 267 tuple_expansion: "name" . - $default reduce using rule 268 (tuple_expansion) + $default reduce using rule 267 (tuple_expansion) State 1078 - 269 tuple_expansion: tuple_expansion . ',' "name" - 270 tuple_expansion_variable_declaration: '(' tuple_expansion . ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 271 | '(' tuple_expansion . ')' optional_ref copy_or_move_or_clone expr "end of expression" + 268 tuple_expansion: tuple_expansion . ',' "name" + 269 tuple_expansion_variable_declaration: '(' tuple_expansion . ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 270 | '(' tuple_expansion . ')' optional_ref copy_or_move_or_clone expr "end of expression" ',' shift, and go to state 1169 ')' shift, and go to state 1170 @@ -34495,102 +33983,102 @@ State 1078 State 1079 - 544 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" . + 543 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" . - $default reduce using rule 544 (enum_declaration) + $default reduce using rule 543 (enum_declaration) State 1080 - 465 optional_public_or_private_member_variable: "public" . + 464 optional_public_or_private_member_variable: "public" . - $default reduce using rule 465 (optional_public_or_private_member_variable) + $default reduce using rule 464 (optional_public_or_private_member_variable) State 1081 - 466 optional_public_or_private_member_variable: "private" . + 465 optional_public_or_private_member_variable: "private" . - $default reduce using rule 466 (optional_public_or_private_member_variable) + $default reduce using rule 465 (optional_public_or_private_member_variable) State 1082 - 474 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable . "abstract" optional_constant $@26 function_declaration_header "end of expression" - 476 | struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable . optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block + 473 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable . "abstract" optional_constant $@26 function_declaration_header "end of expression" + 475 | struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable . optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block "abstract" shift, and go to state 1171 "static" shift, and go to state 1083 - $default reduce using rule 467 (optional_static_member_variable) + $default reduce using rule 466 (optional_static_member_variable) optional_static_member_variable go to state 1172 State 1083 - 468 optional_static_member_variable: "static" . + 467 optional_static_member_variable: "static" . - $default reduce using rule 468 (optional_static_member_variable) + $default reduce using rule 467 (optional_static_member_variable) State 1084 - 469 structure_variable_declaration: optional_field_annotation optional_static_member_variable . optional_override optional_public_or_private_member_variable variable_declaration + 468 structure_variable_declaration: optional_field_annotation optional_static_member_variable . optional_override optional_public_or_private_member_variable variable_declaration "override" shift, and go to state 1173 "sealed" shift, and go to state 1174 - $default reduce using rule 459 (optional_override) + $default reduce using rule 458 (optional_override) optional_override go to state 1175 State 1085 - 472 struct_variable_declaration_list: struct_variable_declaration_list $@25 structure_variable_declaration "end of expression" . + 471 struct_variable_declaration_list: struct_variable_declaration_list $@25 structure_variable_declaration "end of expression" . - $default reduce using rule 472 (struct_variable_declaration_list) + $default reduce using rule 471 (struct_variable_declaration_list) State 1086 - 512 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" . + 511 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" . - $default reduce using rule 512 (let_variable_declaration) + $default reduce using rule 511 (let_variable_declaration) State 1087 - 716 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' . $@74 '(' use_initializer make_struct_dim ')' + 717 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' . $@74 '(' use_initializer make_struct_dim ')' - $default reduce using rule 715 ($@74) + $default reduce using rule 716 ($@74) $@74 go to state 1176 State 1088 - 719 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' . $@76 '(' use_initializer make_struct_dim ')' + 720 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' . $@76 '(' use_initializer make_struct_dim ')' - $default reduce using rule 718 ($@76) + $default reduce using rule 719 ($@76) $@76 go to state 1177 State 1089 - 246 new_type_declaration: '<' $@3 type_declaration '>' . $@4 + 245 new_type_declaration: '<' $@3 type_declaration '>' . $@4 - $default reduce using rule 245 ($@4) + $default reduce using rule 244 ($@4) $@4 go to state 1178 State 1090 - 701 make_struct_fields: "name" . copy_or_move expr - 702 | "name" . ":=" expr + 702 make_struct_fields: "name" . copy_or_move expr + 703 | "name" . ":=" expr "<-" shift, and go to state 913 ":=" shift, and go to state 1016 @@ -34601,29 +34089,29 @@ State 1090 State 1091 - 249 expr_new: "new" new_type_declaration '(' use_initializer ')' . + 248 expr_new: "new" new_type_declaration '(' use_initializer ')' . - $default reduce using rule 249 (expr_new) + $default reduce using rule 248 (expr_new) State 1092 - 250 expr_new: "new" new_type_declaration '(' use_initializer make_struct_single . ')' + 249 expr_new: "new" new_type_declaration '(' use_initializer make_struct_single . ')' ')' shift, and go to state 1179 State 1093 - 248 expr_new: "new" structure_type_declaration '(' optional_expr_list ')' . + 247 expr_new: "new" structure_type_declaration '(' optional_expr_list ')' . - $default reduce using rule 248 (expr_new) + $default reduce using rule 247 (expr_new) State 1094 - 287 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" . '>' expr ')' - 288 | "typeinfo" '(' name_in_namespace '<' "name" . "end of expression" "name" '>' expr ')' + 286 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" . '>' expr ')' + 287 | "typeinfo" '(' name_in_namespace '<' "name" . "end of expression" "name" '>' expr ')' "end of expression" shift, and go to state 1180 '>' shift, and go to state 1181 @@ -34631,485 +34119,375 @@ State 1094 State 1095 - 286 expr_type_info: "typeinfo" '(' name_in_namespace expr ')' . + 285 expr_type_info: "typeinfo" '(' name_in_namespace expr ')' . - $default reduce using rule 286 (expr_type_info) + $default reduce using rule 285 (expr_type_info) State 1096 - 285 expr_type_decl: "type" '<' $@11 type_declaration '>' . $@12 + 284 expr_type_decl: "type" '<' $@11 type_declaration '>' . $@12 - $default reduce using rule 284 ($@12) + $default reduce using rule 283 ($@12) $@12 go to state 1182 State 1097 - 620 type_declaration_no_options: type_declaration_no_options . dim_list - 621 | type_declaration_no_options . '[' ']' - 629 | type_declaration_no_options . '-' '[' ']' - 630 | type_declaration_no_options . "explicit" - 631 | type_declaration_no_options . "const" - 632 | type_declaration_no_options . '-' "const" - 633 | type_declaration_no_options . '&' - 634 | type_declaration_no_options . '-' '&' - 635 | type_declaration_no_options . '#' - 636 | type_declaration_no_options . "implicit" - 637 | type_declaration_no_options . '-' '#' - 638 | type_declaration_no_options . "==" "const" - 639 | type_declaration_no_options . "==" '&' - 640 | type_declaration_no_options . '*' - 644 | type_declaration_no_options . "??" - 735 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options . '>' $@84 '(' use_initializer make_struct_dim ')' - - "const" shift, and go to state 360 - "implicit" shift, and go to state 361 - "explicit" shift, and go to state 362 - "==" shift, and go to state 363 - "??" shift, and go to state 364 - '&' shift, and go to state 365 - '>' shift, and go to state 1183 - '-' shift, and go to state 366 - '*' shift, and go to state 367 - '[' shift, and go to state 368 - '#' shift, and go to state 369 - - dim_list go to state 370 + 736 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options . '>' $@84 '(' use_initializer make_struct_dim ')' + + '>' shift, and go to state 1183 State 1098 - 620 type_declaration_no_options: type_declaration_no_options . dim_list - 621 | type_declaration_no_options . '[' ']' - 629 | type_declaration_no_options . '-' '[' ']' - 630 | type_declaration_no_options . "explicit" - 631 | type_declaration_no_options . "const" - 632 | type_declaration_no_options . '-' "const" - 633 | type_declaration_no_options . '&' - 634 | type_declaration_no_options . '-' '&' - 635 | type_declaration_no_options . '#' - 636 | type_declaration_no_options . "implicit" - 637 | type_declaration_no_options . '-' '#' - 638 | type_declaration_no_options . "==" "const" - 639 | type_declaration_no_options . "==" '&' - 640 | type_declaration_no_options . '*' - 644 | type_declaration_no_options . "??" - 738 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options . '>' $@86 '(' use_initializer make_struct_dim ')' - - "const" shift, and go to state 360 - "implicit" shift, and go to state 361 - "explicit" shift, and go to state 362 - "==" shift, and go to state 363 - "??" shift, and go to state 364 - '&' shift, and go to state 365 - '>' shift, and go to state 1184 - '-' shift, and go to state 366 - '*' shift, and go to state 367 - '[' shift, and go to state 368 - '#' shift, and go to state 369 - - dim_list go to state 370 + 739 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options . '>' $@86 '(' use_initializer make_struct_dim ')' + + '>' shift, and go to state 1184 State 1099 - 620 type_declaration_no_options: type_declaration_no_options . dim_list - 621 | type_declaration_no_options . '[' ']' - 629 | type_declaration_no_options . '-' '[' ']' - 630 | type_declaration_no_options . "explicit" - 631 | type_declaration_no_options . "const" - 632 | type_declaration_no_options . '-' "const" - 633 | type_declaration_no_options . '&' - 634 | type_declaration_no_options . '-' '&' - 635 | type_declaration_no_options . '#' - 636 | type_declaration_no_options . "implicit" - 637 | type_declaration_no_options . '-' '#' - 638 | type_declaration_no_options . "==" "const" - 639 | type_declaration_no_options . "==" '&' - 640 | type_declaration_no_options . '*' - 644 | type_declaration_no_options . "??" - 741 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options . '>' $@88 '(' make_struct_dim ')' - - "const" shift, and go to state 360 - "implicit" shift, and go to state 361 - "explicit" shift, and go to state 362 - "==" shift, and go to state 363 - "??" shift, and go to state 364 - '&' shift, and go to state 365 - '>' shift, and go to state 1185 - '-' shift, and go to state 366 - '*' shift, and go to state 367 - '[' shift, and go to state 368 - '#' shift, and go to state 369 - - dim_list go to state 370 + 742 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options . '>' $@88 '(' make_struct_dim ')' + + '>' shift, and go to state 1185 State 1100 - 745 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' . $@90 '(' expr_list optional_comma ')' + 746 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' . $@90 '(' expr_list optional_comma ')' - $default reduce using rule 744 ($@90) + $default reduce using rule 745 ($@90) $@90 go to state 1186 State 1101 - 742 make_dim_decl: "array" '(' expr_list optional_comma ')' . + 743 make_dim_decl: "array" '(' expr_list optional_comma ')' . - $default reduce using rule 742 (make_dim_decl) + $default reduce using rule 743 (make_dim_decl) State 1102 - 620 type_declaration_no_options: type_declaration_no_options . dim_list - 621 | type_declaration_no_options . '[' ']' - 629 | type_declaration_no_options . '-' '[' ']' - 630 | type_declaration_no_options . "explicit" - 631 | type_declaration_no_options . "const" - 632 | type_declaration_no_options . '-' "const" - 633 | type_declaration_no_options . '&' - 634 | type_declaration_no_options . '-' '&' - 635 | type_declaration_no_options . '#' - 636 | type_declaration_no_options . "implicit" - 637 | type_declaration_no_options . '-' '#' - 638 | type_declaration_no_options . "==" "const" - 639 | type_declaration_no_options . "==" '&' - 640 | type_declaration_no_options . '*' - 644 | type_declaration_no_options . "??" - 755 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options . '>' '(' expr_map_tuple_list optional_comma ')' - - "const" shift, and go to state 360 - "implicit" shift, and go to state 361 - "explicit" shift, and go to state 362 - "==" shift, and go to state 363 - "??" shift, and go to state 364 - '&' shift, and go to state 365 - '>' shift, and go to state 1187 - '-' shift, and go to state 366 - '*' shift, and go to state 367 - '[' shift, and go to state 368 - '#' shift, and go to state 369 - - dim_list go to state 370 + 756 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options . '>' '(' expr_map_tuple_list optional_comma ')' + + '>' shift, and go to state 1187 State 1103 - 754 make_table_decl: "table" '<' type_declaration_no_options '>' '(' . expr_map_tuple_list optional_comma ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 755 make_table_decl: "table" '<' type_declaration_no_options '>' '(' . expr_map_tuple_list optional_comma ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 622 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_map_tuple go to state 623 - make_tuple_call go to state 476 - make_dim_decl go to state 477 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 621 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_map_tuple go to state 622 + make_tuple_call go to state 475 + make_dim_decl go to state 476 expr_map_tuple_list go to state 1188 - make_table_decl go to state 478 - array_comprehension go to state 479 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1104 - 753 make_table_decl: "table" '(' expr_map_tuple_list optional_comma ')' . + 754 make_table_decl: "table" '(' expr_map_tuple_list optional_comma ')' . - $default reduce using rule 753 (make_table_decl) + $default reduce using rule 754 (make_table_decl) State 1105 - 276 expr_cast: "cast" '<' $@5 type_declaration_no_options '>' . $@6 expr + 275 expr_cast: "cast" '<' $@5 type_declaration_no_options '>' . $@6 expr - $default reduce using rule 275 ($@6) + $default reduce using rule 274 ($@6) $@6 go to state 1189 State 1106 - 279 expr_cast: "upcast" '<' $@7 type_declaration_no_options '>' . $@8 expr + 278 expr_cast: "upcast" '<' $@7 type_declaration_no_options '>' . $@8 expr - $default reduce using rule 278 ($@8) + $default reduce using rule 277 ($@8) $@8 go to state 1190 State 1107 - 282 expr_cast: "reinterpret" '<' $@9 type_declaration_no_options '>' . $@10 expr + 281 expr_cast: "reinterpret" '<' $@9 type_declaration_no_options '>' . $@10 expr - $default reduce using rule 281 ($@10) + $default reduce using rule 280 ($@10) $@10 go to state 1191 State 1108 - 749 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' . $@92 '(' expr_list optional_comma ')' + 750 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' . $@92 '(' expr_list optional_comma ')' - $default reduce using rule 748 ($@92) + $default reduce using rule 749 ($@92) $@92 go to state 1192 State 1109 - 746 make_dim_decl: "fixed_array" '(' expr_list optional_comma ')' . + 747 make_dim_decl: "fixed_array" '(' expr_list optional_comma ')' . - $default reduce using rule 746 (make_dim_decl) + $default reduce using rule 747 (make_dim_decl) State 1110 - 725 make_struct_decl: "default" '<' $@79 type_declaration_no_options '>' . $@80 use_initializer + 726 make_struct_decl: "default" '<' $@79 type_declaration_no_options '>' . $@80 use_initializer - $default reduce using rule 724 ($@80) + $default reduce using rule 725 ($@80) $@80 go to state 1193 State 1111 - 731 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' . $@82 '(' use_initializer make_struct_dim ')' + 732 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' . $@82 '(' use_initializer make_struct_dim ')' - $default reduce using rule 730 ($@82) + $default reduce using rule 731 ($@82) $@82 go to state 1194 State 1112 - 728 make_tuple_call: "tuple" '(' expr_list optional_comma ')' . + 729 make_tuple_call: "tuple" '(' expr_list optional_comma ')' . - $default reduce using rule 728 (make_tuple_call) + $default reduce using rule 729 (make_tuple_call) State 1113 - 722 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' . $@78 '(' make_struct_dim ')' + 723 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' . $@78 '(' make_struct_dim ')' - $default reduce using rule 721 ($@78) + $default reduce using rule 722 ($@78) $@78 go to state 1195 State 1114 - 411 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list . '(' ')' - 412 | "generator" '<' type_declaration_no_options '>' optional_capture_list . '(' expr ')' + 410 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list . '(' ')' + 411 | "generator" '<' type_declaration_no_options '>' optional_capture_list . '(' expr ')' '(' shift, and go to state 1196 State 1115 - 447 expr_mtag: "$c" '(' expr ')' '(' . ')' - 448 | "$c" '(' expr ')' '(' . expr_list ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 446 expr_mtag: "$c" '(' expr ')' '(' . ')' + 447 | "$c" '(' expr ')' '(' . expr_list ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 ')' shift, and go to state 1197 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 expr_list go to state 1198 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 633 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 632 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1116 @@ -35121,8 +34499,8 @@ State 1116 State 1117 - 290 expr_list: expr_list . ',' expr - 762 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list . "end of expression" make_map_tuple array_comprehension_where "end of code block" + 289 expr_list: expr_list . ',' expr + 763 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list . "end of expression" make_map_tuple array_comprehension_where "end of code block" "end of expression" shift, and go to state 1199 ',' shift, and go to state 905 @@ -35130,8 +34508,8 @@ State 1117 State 1118 - 290 expr_list: expr_list . ',' expr - 760 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list . "end of expression" expr array_comprehension_where ']' + 289 expr_list: expr_list . ',' expr + 761 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list . "end of expression" expr array_comprehension_where ']' "end of expression" shift, and go to state 1200 ',' shift, and go to state 905 @@ -35139,353 +34517,325 @@ State 1118 State 1119 - 761 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" . expr_list "end of expression" expr array_comprehension_where ']' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 762 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" . expr_list "end of expression" expr array_comprehension_where ']' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 expr_list go to state 1201 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 633 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 632 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1120 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 339 func_addr_name: "$i" '(' expr . ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 338 func_addr_name: "$i" '(' expr . ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ')' shift, and go to state 1202 State 1121 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 456 | '@' '@' "$c" '(' expr . ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 455 | '@' '@' "$c" '(' expr . ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ')' shift, and go to state 1203 State 1122 - 343 func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options . '>' $@14 func_addr_name - 620 type_declaration_no_options: type_declaration_no_options . dim_list - 621 | type_declaration_no_options . '[' ']' - 629 | type_declaration_no_options . '-' '[' ']' - 630 | type_declaration_no_options . "explicit" - 631 | type_declaration_no_options . "const" - 632 | type_declaration_no_options . '-' "const" - 633 | type_declaration_no_options . '&' - 634 | type_declaration_no_options . '-' '&' - 635 | type_declaration_no_options . '#' - 636 | type_declaration_no_options . "implicit" - 637 | type_declaration_no_options . '-' '#' - 638 | type_declaration_no_options . "==" "const" - 639 | type_declaration_no_options . "==" '&' - 640 | type_declaration_no_options . '*' - 644 | type_declaration_no_options . "??" - - "const" shift, and go to state 360 - "implicit" shift, and go to state 361 - "explicit" shift, and go to state 362 - "==" shift, and go to state 363 - "??" shift, and go to state 364 - '&' shift, and go to state 365 - '>' shift, and go to state 1204 - '-' shift, and go to state 366 - '*' shift, and go to state 367 - '[' shift, and go to state 368 - '#' shift, and go to state 369 - - dim_list go to state 370 + 342 func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options . '>' $@14 func_addr_name + + '>' shift, and go to state 1204 State 1123 - 346 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list . optional_function_type '>' $@16 func_addr_name + 345 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list . optional_function_type '>' $@16 func_addr_name - ':' shift, and go to state 388 + ':' shift, and go to state 387 $default reduce using rule 117 (optional_function_type) @@ -35494,443 +34844,442 @@ State 1123 State 1124 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 705 make_struct_fields: "$f" '(' expr . ')' copy_or_move expr - 706 | "$f" '(' expr . ')' ":=" expr - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 706 make_struct_fields: "$f" '(' expr . ')' copy_or_move expr + 707 | "$f" '(' expr . ')' ":=" expr + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ')' shift, and go to state 1206 State 1125 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 702 make_struct_fields: "name" ":=" expr . - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 703 make_struct_fields: "name" ":=" expr . + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 702 (make_struct_fields) + $default reduce using rule 703 (make_struct_fields) State 1126 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 701 make_struct_fields: "name" copy_or_move expr . - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 - - $default reduce using rule 701 (make_struct_fields) + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 702 make_struct_fields: "name" copy_or_move expr . + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 + + $default reduce using rule 702 (make_struct_fields) State 1127 - 334 expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' . ')' + 333 expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' . ')' ')' shift, and go to state 1207 State 1128 - 335 expr_named_call: name_in_namespace '(' expr_list ',' '[' . make_struct_fields ']' ')' - 732 make_dim_decl: '[' . expr_list optional_comma ']' - 760 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - 761 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "for" shift, and go to state 630 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "iterator" shift, and go to state 631 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 + 334 expr_named_call: name_in_namespace '(' expr_list ',' '[' . make_struct_fields ']' ')' + 733 make_dim_decl: '[' . expr_list optional_comma ']' + 761 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 762 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "for" shift, and go to state 629 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "iterator" shift, and go to state 630 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 "$f" shift, and go to state 826 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 "name" shift, and go to state 827 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - expr_list go to state 632 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 633 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + expr_list go to state 631 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 632 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 make_struct_fields go to state 1208 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1129 - 707 make_struct_fields: make_struct_fields ',' "$f" . '(' expr ')' copy_or_move expr - 708 | make_struct_fields ',' "$f" . '(' expr ')' ":=" expr + 708 make_struct_fields: make_struct_fields ',' "$f" . '(' expr ')' copy_or_move expr + 709 | make_struct_fields ',' "$f" . '(' expr ')' ":=" expr '(' shift, and go to state 1209 State 1130 - 703 make_struct_fields: make_struct_fields ',' "name" . copy_or_move expr - 704 | make_struct_fields ',' "name" . ":=" expr + 704 make_struct_fields: make_struct_fields ',' "name" . copy_or_move expr + 705 | make_struct_fields ',' "name" . ":=" expr "<-" shift, and go to state 913 ":=" shift, and go to state 1210 @@ -35941,43 +35290,43 @@ State 1130 State 1131 - 299 capture_entry: "<-" . "name" + 298 capture_entry: "<-" . "name" "name" shift, and go to state 1212 State 1132 - 300 capture_entry: ":=" . "name" + 299 capture_entry: ":=" . "name" "name" shift, and go to state 1213 State 1133 - 298 capture_entry: '=' . "name" + 297 capture_entry: '=' . "name" "name" shift, and go to state 1214 State 1134 - 297 capture_entry: '&' . "name" + 296 capture_entry: '&' . "name" "name" shift, and go to state 1215 State 1135 - 301 capture_list: capture_entry . + 300 capture_list: capture_entry . - $default reduce using rule 301 (capture_list) + $default reduce using rule 300 (capture_list) State 1136 - 302 capture_list: capture_list . ',' capture_entry - 304 optional_capture_list: '[' '[' capture_list . ']' ']' + 301 capture_list: capture_list . ',' capture_entry + 303 optional_capture_list: '[' '[' capture_list . ']' ']' ',' shift, and go to state 1216 ']' shift, and go to state 1217 @@ -35985,10 +35334,10 @@ State 1136 State 1137 - 305 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type . block_or_simple_block + 304 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type . block_or_simple_block "=>" shift, and go to state 1218 - "begin of code block" shift, and go to state 322 + "begin of code block" shift, and go to state 321 expression_block go to state 1219 block_or_simple_block go to state 1220 @@ -35996,9 +35345,9 @@ State 1137 State 1138 - 306 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list . optional_function_type expression_block + 305 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list . optional_function_type expression_block - ':' shift, and go to state 388 + ':' shift, and go to state 387 $default reduce using rule 117 (optional_function_type) @@ -36007,328 +35356,328 @@ State 1138 State 1139 - 417 expr: expr "is" "type" '<' $@19 . type_declaration_no_options '>' $@20 - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 1222 + 416 expr: expr "is" "type" '<' $@19 . type_declaration_no_options '>' $@20 + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 1222 + type_declaration_no_options_no_dim go to state 261 State 1140 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 455 | expr "is" "$f" '(' expr . ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 454 | expr "is" "$f" '(' expr . ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ')' shift, and go to state 1223 State 1141 - 423 expr: expr "as" "type" '<' $@21 . type_declaration '>' $@22 - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 262 - type_declaration go to state 1224 + 422 expr: expr "as" "type" '<' $@21 . type_declaration '>' $@22 + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 260 + type_declaration_no_options_no_dim go to state 261 + type_declaration go to state 1224 State 1142 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 453 | expr "as" "$f" '(' expr . ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 452 | expr "as" "$f" '(' expr . ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ')' shift, and go to state 1225 State 1143 - 336 expr_method_call: expr "->" "name" '(' ')' . + 335 expr_method_call: expr "->" "name" '(' ')' . - $default reduce using rule 336 (expr_method_call) + $default reduce using rule 335 (expr_method_call) State 1144 - 290 expr_list: expr_list . ',' expr - 337 expr_method_call: expr "->" "name" '(' expr_list . ')' + 289 expr_list: expr_list . ',' expr + 336 expr_method_call: expr "->" "name" '(' expr_list . ')' ',' shift, and go to state 905 ')' shift, and go to state 1226 @@ -36336,549 +35685,547 @@ State 1144 State 1145 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 450 | expr "?." "$f" '(' expr . ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 449 | expr "?." "$f" '(' expr . ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ')' shift, and go to state 1227 State 1146 - 428 expr: expr '?' "as" "type" '<' . $@23 type_declaration '>' $@24 + 427 expr: expr '?' "as" "type" '<' . $@23 type_declaration '>' $@24 - $default reduce using rule 426 ($@23) + $default reduce using rule 425 ($@23) $@23 go to state 1228 State 1147 - 454 expr_mtag: expr '?' "as" "$f" '(' . expr ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 453 expr_mtag: expr '?' "as" "$f" '(' . expr ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1229 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1148 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 414 | expr '?' expr ':' expr . - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 - - $default reduce using rule 414 (expr) + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 413 | expr '?' expr ':' expr . + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 + + $default reduce using rule 413 (expr) State 1149 - 452 expr_mtag: expr '.' "?." "$f" '(' . expr ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 451 expr_mtag: expr '.' "?." "$f" '(' . expr ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1230 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1150 - 403 expr: expr '.' "?[" expr ']' . + 402 expr: expr '.' "?[" expr ']' . - $default reduce using rule 403 (expr) + $default reduce using rule 402 (expr) State 1151 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr '.' "$f" '(' expr . ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 448 | expr '.' "$f" '(' expr . ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ')' shift, and go to state 1231 State 1152 - 349 expr_field: expr '.' "name" '(' ')' . + 348 expr_field: expr '.' "name" '(' ')' . - $default reduce using rule 349 (expr_field) + $default reduce using rule 348 (expr_field) State 1153 - 290 expr_list: expr_list . ',' expr - 350 expr_field: expr '.' "name" '(' expr_list . ')' + 289 expr_list: expr_list . ',' expr + 349 expr_field: expr '.' "name" '(' expr_list . ')' ',' shift, and go to state 905 ')' shift, and go to state 1232 @@ -36886,399 +36233,396 @@ State 1153 State 1154 - 451 expr_mtag: expr '.' '.' "$f" '(' . expr ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 450 expr_mtag: expr '.' '.' "$f" '(' . expr ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1233 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1155 - 401 expr: expr '.' '[' expr ']' . + 400 expr: expr '.' '[' expr ']' . - $default reduce using rule 401 (expr) + $default reduce using rule 400 (expr) State 1156 - 353 expr_field: expr '.' $@17 error $@18 . + 352 expr_field: expr '.' $@17 error $@18 . - $default reduce using rule 353 (expr_field) + $default reduce using rule 352 (expr_field) State 1157 - 660 type_declaration_no_options: "block" '<' $@50 optional_function_argument_list optional_function_type '>' $@51 . + 661 type_declaration_no_options_no_dim: "block" '<' $@50 optional_function_argument_list optional_function_type '>' $@51 . - $default reduce using rule 660 (type_declaration_no_options) + $default reduce using rule 661 (type_declaration_no_options_no_dim) State 1158 - 667 type_declaration_no_options: "function" '<' $@54 optional_function_argument_list optional_function_type '>' $@55 . + 668 type_declaration_no_options_no_dim: "function" '<' $@54 optional_function_argument_list optional_function_type '>' $@55 . - $default reduce using rule 667 (type_declaration_no_options) + $default reduce using rule 668 (type_declaration_no_options_no_dim) State 1159 - 674 type_declaration_no_options: "lambda" '<' $@58 optional_function_argument_list optional_function_type '>' $@59 . + 675 type_declaration_no_options_no_dim: "lambda" '<' $@58 optional_function_argument_list optional_function_type '>' $@59 . - $default reduce using rule 674 (type_declaration_no_options) + $default reduce using rule 675 (type_declaration_no_options_no_dim) State 1160 238 type_declaration_no_options_list: type_declaration_no_options_list "end of expression" type_declaration . - 682 type_declaration: type_declaration . '|' type_declaration_no_options - 683 | type_declaration . '|' '#' + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' - '|' shift, and go to state 371 + '|' shift, and go to state 370 $default reduce using rule 238 (type_declaration_no_options_list) State 1161 - 628 type_declaration_no_options: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' . optional_expr_list ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 629 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' . optional_expr_list ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 $default reduce using rule 235 (optional_expr_list) - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 optional_expr_list go to state 1234 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - expr_list go to state 697 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 633 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + expr_list go to state 696 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 632 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1162 - 561 variable_name_with_pos_list: "$i" '(' expr ')' . + 560 variable_name_with_pos_list: "$i" '(' expr ')' . - $default reduce using rule 561 (variable_name_with_pos_list) + $default reduce using rule 560 (variable_name_with_pos_list) State 1163 - 564 variable_name_with_pos_list: variable_name_with_pos_list ',' "name" "aka" . "name" + 563 variable_name_with_pos_list: variable_name_with_pos_list ',' "name" "aka" . "name" "name" shift, and go to state 1235 State 1164 - 499 variable_declaration: variable_name_with_pos_list ':' type_declaration copy_or_move . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 498 variable_declaration: variable_name_with_pos_list ':' type_declaration copy_or_move . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1236 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1165 70 expression_for_loop: "for" '(' variable_name_with_pos_list "in" expr_list . ')' expression_block - 290 expr_list: expr_list . ',' expr + 289 expr_list: expr_list . ',' expr ',' shift, and go to state 905 ')' shift, and go to state 1237 @@ -37318,758 +36662,753 @@ State 1168 State 1169 - 269 tuple_expansion: tuple_expansion ',' . "name" + 268 tuple_expansion: tuple_expansion ',' . "name" "name" shift, and go to state 1245 State 1170 - 270 tuple_expansion_variable_declaration: '(' tuple_expansion ')' . ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 271 | '(' tuple_expansion ')' . optional_ref copy_or_move_or_clone expr "end of expression" + 269 tuple_expansion_variable_declaration: '(' tuple_expansion ')' . ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 270 | '(' tuple_expansion ')' . optional_ref copy_or_move_or_clone expr "end of expression" ':' shift, and go to state 1246 - '&' shift, and go to state 402 + '&' shift, and go to state 401 - $default reduce using rule 504 (optional_ref) + $default reduce using rule 503 (optional_ref) optional_ref go to state 1247 State 1171 - 474 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" . optional_constant $@26 function_declaration_header "end of expression" + 473 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" . optional_constant $@26 function_declaration_header "end of expression" "const" shift, and go to state 1248 - $default reduce using rule 462 (optional_constant) + $default reduce using rule 461 (optional_constant) optional_constant go to state 1249 State 1172 - 476 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable . optional_override optional_constant $@27 function_declaration_header expression_block + 475 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable . optional_override optional_constant $@27 function_declaration_header expression_block "override" shift, and go to state 1173 "sealed" shift, and go to state 1174 - $default reduce using rule 459 (optional_override) + $default reduce using rule 458 (optional_override) optional_override go to state 1250 State 1173 - 460 optional_override: "override" . + 459 optional_override: "override" . - $default reduce using rule 460 (optional_override) + $default reduce using rule 459 (optional_override) State 1174 - 461 optional_override: "sealed" . + 460 optional_override: "sealed" . - $default reduce using rule 461 (optional_override) + $default reduce using rule 460 (optional_override) State 1175 - 469 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override . optional_public_or_private_member_variable variable_declaration + 468 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override . optional_public_or_private_member_variable variable_declaration "public" shift, and go to state 1080 "private" shift, and go to state 1081 - $default reduce using rule 464 (optional_public_or_private_member_variable) + $default reduce using rule 463 (optional_public_or_private_member_variable) optional_public_or_private_member_variable go to state 1251 State 1176 - 716 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 . '(' use_initializer make_struct_dim ')' + 717 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 . '(' use_initializer make_struct_dim ')' '(' shift, and go to state 1252 State 1177 - 719 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 . '(' use_initializer make_struct_dim ')' + 720 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 . '(' use_initializer make_struct_dim ')' '(' shift, and go to state 1253 State 1178 - 246 new_type_declaration: '<' $@3 type_declaration '>' $@4 . + 245 new_type_declaration: '<' $@3 type_declaration '>' $@4 . - $default reduce using rule 246 (new_type_declaration) + $default reduce using rule 245 (new_type_declaration) State 1179 - 250 expr_new: "new" new_type_declaration '(' use_initializer make_struct_single ')' . + 249 expr_new: "new" new_type_declaration '(' use_initializer make_struct_single ')' . - $default reduce using rule 250 (expr_new) + $default reduce using rule 249 (expr_new) State 1180 - 288 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" . "name" '>' expr ')' + 287 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" . "name" '>' expr ')' "name" shift, and go to state 1254 State 1181 - 287 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' . expr ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 286 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' . expr ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1255 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1182 - 285 expr_type_decl: "type" '<' $@11 type_declaration '>' $@12 . + 284 expr_type_decl: "type" '<' $@11 type_declaration '>' $@12 . - $default reduce using rule 285 (expr_type_decl) + $default reduce using rule 284 (expr_type_decl) State 1183 - 735 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' . $@84 '(' use_initializer make_struct_dim ')' + 736 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' . $@84 '(' use_initializer make_struct_dim ')' - $default reduce using rule 734 ($@84) + $default reduce using rule 735 ($@84) $@84 go to state 1256 State 1184 - 738 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' . $@86 '(' use_initializer make_struct_dim ')' + 739 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' . $@86 '(' use_initializer make_struct_dim ')' - $default reduce using rule 737 ($@86) + $default reduce using rule 738 ($@86) $@86 go to state 1257 State 1185 - 741 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' . $@88 '(' make_struct_dim ')' + 742 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' . $@88 '(' make_struct_dim ')' - $default reduce using rule 740 ($@88) + $default reduce using rule 741 ($@88) $@88 go to state 1258 State 1186 - 745 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 . '(' expr_list optional_comma ')' + 746 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 . '(' expr_list optional_comma ')' '(' shift, and go to state 1259 State 1187 - 755 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' . '(' expr_map_tuple_list optional_comma ')' + 756 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' . '(' expr_map_tuple_list optional_comma ')' '(' shift, and go to state 1260 State 1188 - 751 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple - 754 make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list . optional_comma ')' + 752 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple + 755 make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list . optional_comma ')' ',' shift, and go to state 814 - $default reduce using rule 758 (optional_comma) + $default reduce using rule 759 (optional_comma) optional_comma go to state 1261 State 1189 - 276 expr_cast: "cast" '<' $@5 type_declaration_no_options '>' $@6 . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 275 expr_cast: "cast" '<' $@5 type_declaration_no_options '>' $@6 . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1262 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1190 - 279 expr_cast: "upcast" '<' $@7 type_declaration_no_options '>' $@8 . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 278 expr_cast: "upcast" '<' $@7 type_declaration_no_options '>' $@8 . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1263 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1191 - 282 expr_cast: "reinterpret" '<' $@9 type_declaration_no_options '>' $@10 . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 281 expr_cast: "reinterpret" '<' $@9 type_declaration_no_options '>' $@10 . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1264 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1192 - 749 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 . '(' expr_list optional_comma ')' + 750 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 . '(' expr_list optional_comma ')' '(' shift, and go to state 1265 State 1193 - 725 make_struct_decl: "default" '<' $@79 type_declaration_no_options '>' $@80 . use_initializer + 726 make_struct_decl: "default" '<' $@79 type_declaration_no_options '>' $@80 . use_initializer "uninitialized" shift, and go to state 969 - $default reduce using rule 712 (use_initializer) + $default reduce using rule 713 (use_initializer) use_initializer go to state 1266 State 1194 - 731 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 . '(' use_initializer make_struct_dim ')' + 732 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 . '(' use_initializer make_struct_dim ')' '(' shift, and go to state 1267 State 1195 - 722 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 . '(' make_struct_dim ')' + 723 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 . '(' make_struct_dim ')' '(' shift, and go to state 1268 State 1196 - 411 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' . ')' - 412 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' . expr ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 410 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' . ')' + 411 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' . expr ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 ')' shift, and go to state 1269 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1270 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1197 - 447 expr_mtag: "$c" '(' expr ')' '(' ')' . + 446 expr_mtag: "$c" '(' expr ')' '(' ')' . - $default reduce using rule 447 (expr_mtag) + $default reduce using rule 446 (expr_mtag) State 1198 - 290 expr_list: expr_list . ',' expr - 448 expr_mtag: "$c" '(' expr ')' '(' expr_list . ')' + 289 expr_list: expr_list . ',' expr + 447 expr_mtag: "$c" '(' expr ')' '(' expr_list . ')' ',' shift, and go to state 905 ')' shift, and go to state 1271 @@ -38077,227 +37416,225 @@ State 1198 State 1199 - 762 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" . make_map_tuple array_comprehension_where "end of code block" - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 763 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" . make_map_tuple array_comprehension_where "end of code block" + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 622 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 621 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 make_map_tuple go to state 1272 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1200 - 760 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" . expr array_comprehension_where ']' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 761 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" . expr array_comprehension_where ']' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1273 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1201 - 290 expr_list: expr_list . ',' expr - 761 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list . "end of expression" expr array_comprehension_where ']' + 289 expr_list: expr_list . ',' expr + 762 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list . "end of expression" expr array_comprehension_where ']' "end of expression" shift, and go to state 1274 ',' shift, and go to state 905 @@ -38305,38 +37642,38 @@ State 1201 State 1202 - 339 func_addr_name: "$i" '(' expr ')' . + 338 func_addr_name: "$i" '(' expr ')' . - $default reduce using rule 339 (func_addr_name) + $default reduce using rule 338 (func_addr_name) State 1203 - 456 expr_mtag: '@' '@' "$c" '(' expr ')' . + 455 expr_mtag: '@' '@' "$c" '(' expr ')' . - $default reduce using rule 456 (expr_mtag) + $default reduce using rule 455 (expr_mtag) State 1204 - 343 func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options '>' . $@14 func_addr_name + 342 func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options '>' . $@14 func_addr_name - $default reduce using rule 342 ($@14) + $default reduce using rule 341 ($@14) $@14 go to state 1275 State 1205 - 346 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type . '>' $@16 func_addr_name + 345 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type . '>' $@16 func_addr_name '>' shift, and go to state 1276 State 1206 - 705 make_struct_fields: "$f" '(' expr ')' . copy_or_move expr - 706 | "$f" '(' expr ')' . ":=" expr + 706 make_struct_fields: "$f" '(' expr ')' . copy_or_move expr + 707 | "$f" '(' expr ')' . ":=" expr "<-" shift, and go to state 913 ":=" shift, and go to state 1277 @@ -38347,18 +37684,18 @@ State 1206 State 1207 - 334 expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' ')' . + 333 expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' ')' . - $default reduce using rule 334 (expr_named_call) + $default reduce using rule 333 (expr_named_call) State 1208 - 335 expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields . ']' ')' - 703 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr - 704 | make_struct_fields . ',' "name" ":=" expr - 707 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr - 708 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr + 334 expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields . ']' ')' + 704 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr + 705 | make_struct_fields . ',' "name" ":=" expr + 708 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr + 709 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr ',' shift, and go to state 1021 ']' shift, and go to state 1279 @@ -38366,363 +37703,360 @@ State 1208 State 1209 - 707 make_struct_fields: make_struct_fields ',' "$f" '(' . expr ')' copy_or_move expr - 708 | make_struct_fields ',' "$f" '(' . expr ')' ":=" expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 708 make_struct_fields: make_struct_fields ',' "$f" '(' . expr ')' copy_or_move expr + 709 | make_struct_fields ',' "$f" '(' . expr ')' ":=" expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1280 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1210 - 704 make_struct_fields: make_struct_fields ',' "name" ":=" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 705 make_struct_fields: make_struct_fields ',' "name" ":=" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1281 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1211 - 703 make_struct_fields: make_struct_fields ',' "name" copy_or_move . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 704 make_struct_fields: make_struct_fields ',' "name" copy_or_move . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1282 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1212 - 299 capture_entry: "<-" "name" . + 298 capture_entry: "<-" "name" . - $default reduce using rule 299 (capture_entry) + $default reduce using rule 298 (capture_entry) State 1213 - 300 capture_entry: ":=" "name" . + 299 capture_entry: ":=" "name" . - $default reduce using rule 300 (capture_entry) + $default reduce using rule 299 (capture_entry) State 1214 - 298 capture_entry: '=' "name" . + 297 capture_entry: '=' "name" . - $default reduce using rule 298 (capture_entry) + $default reduce using rule 297 (capture_entry) State 1215 - 297 capture_entry: '&' "name" . + 296 capture_entry: '&' "name" . - $default reduce using rule 297 (capture_entry) + $default reduce using rule 296 (capture_entry) State 1216 - 302 capture_list: capture_list ',' . capture_entry + 301 capture_list: capture_list ',' . capture_entry "<-" shift, and go to state 1131 ":=" shift, and go to state 1132 @@ -38734,708 +38068,680 @@ State 1216 State 1217 - 304 optional_capture_list: '[' '[' capture_list ']' . ']' + 303 optional_capture_list: '[' '[' capture_list ']' . ']' ']' shift, and go to state 1284 State 1218 - 292 block_or_simple_block: "=>" . expr - 293 | "=>" . "<-" expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 + 291 block_or_simple_block: "=>" . expr + 292 | "=>" . "<-" expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 "<-" shift, and go to state 1285 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1286 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1219 - 291 block_or_simple_block: expression_block . + 290 block_or_simple_block: expression_block . - $default reduce using rule 291 (block_or_simple_block) + $default reduce using rule 290 (block_or_simple_block) State 1220 - 305 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block . + 304 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block . - $default reduce using rule 305 (expr_full_block) + $default reduce using rule 304 (expr_full_block) State 1221 - 306 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type . expression_block + 305 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type . expression_block - "begin of code block" shift, and go to state 322 + "begin of code block" shift, and go to state 321 expression_block go to state 1287 State 1222 - 417 expr: expr "is" "type" '<' $@19 type_declaration_no_options . '>' $@20 - 620 type_declaration_no_options: type_declaration_no_options . dim_list - 621 | type_declaration_no_options . '[' ']' - 629 | type_declaration_no_options . '-' '[' ']' - 630 | type_declaration_no_options . "explicit" - 631 | type_declaration_no_options . "const" - 632 | type_declaration_no_options . '-' "const" - 633 | type_declaration_no_options . '&' - 634 | type_declaration_no_options . '-' '&' - 635 | type_declaration_no_options . '#' - 636 | type_declaration_no_options . "implicit" - 637 | type_declaration_no_options . '-' '#' - 638 | type_declaration_no_options . "==" "const" - 639 | type_declaration_no_options . "==" '&' - 640 | type_declaration_no_options . '*' - 644 | type_declaration_no_options . "??" - - "const" shift, and go to state 360 - "implicit" shift, and go to state 361 - "explicit" shift, and go to state 362 - "==" shift, and go to state 363 - "??" shift, and go to state 364 - '&' shift, and go to state 365 - '>' shift, and go to state 1288 - '-' shift, and go to state 366 - '*' shift, and go to state 367 - '[' shift, and go to state 368 - '#' shift, and go to state 369 - - dim_list go to state 370 + 416 expr: expr "is" "type" '<' $@19 type_declaration_no_options . '>' $@20 + + '>' shift, and go to state 1288 State 1223 - 455 expr_mtag: expr "is" "$f" '(' expr ')' . + 454 expr_mtag: expr "is" "$f" '(' expr ')' . - $default reduce using rule 455 (expr_mtag) + $default reduce using rule 454 (expr_mtag) State 1224 - 423 expr: expr "as" "type" '<' $@21 type_declaration . '>' $@22 - 682 type_declaration: type_declaration . '|' type_declaration_no_options - 683 | type_declaration . '|' '#' + 422 expr: expr "as" "type" '<' $@21 type_declaration . '>' $@22 + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' - '|' shift, and go to state 371 + '|' shift, and go to state 370 '>' shift, and go to state 1289 State 1225 - 453 expr_mtag: expr "as" "$f" '(' expr ')' . + 452 expr_mtag: expr "as" "$f" '(' expr ')' . - $default reduce using rule 453 (expr_mtag) + $default reduce using rule 452 (expr_mtag) State 1226 - 337 expr_method_call: expr "->" "name" '(' expr_list ')' . + 336 expr_method_call: expr "->" "name" '(' expr_list ')' . - $default reduce using rule 337 (expr_method_call) + $default reduce using rule 336 (expr_method_call) State 1227 - 450 expr_mtag: expr "?." "$f" '(' expr ')' . + 449 expr_mtag: expr "?." "$f" '(' expr ')' . - $default reduce using rule 450 (expr_mtag) + $default reduce using rule 449 (expr_mtag) State 1228 - 428 expr: expr '?' "as" "type" '<' $@23 . type_declaration '>' $@24 - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 262 - type_declaration go to state 1290 + 427 expr: expr '?' "as" "type" '<' $@23 . type_declaration '>' $@24 + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 260 + type_declaration_no_options_no_dim go to state 261 + type_declaration go to state 1290 State 1229 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr '?' "as" "$f" '(' expr . ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 453 | expr '?' "as" "$f" '(' expr . ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ')' shift, and go to state 1291 State 1230 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr '.' "?." "$f" '(' expr . ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 451 | expr '.' "?." "$f" '(' expr . ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ')' shift, and go to state 1292 State 1231 - 449 expr_mtag: expr '.' "$f" '(' expr ')' . + 448 expr_mtag: expr '.' "$f" '(' expr ')' . - $default reduce using rule 449 (expr_mtag) + $default reduce using rule 448 (expr_mtag) State 1232 - 350 expr_field: expr '.' "name" '(' expr_list ')' . + 349 expr_field: expr '.' "name" '(' expr_list ')' . - $default reduce using rule 350 (expr_field) + $default reduce using rule 349 (expr_field) State 1233 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr '.' '.' "$f" '(' expr . ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 450 | expr '.' '.' "$f" '(' expr . ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ')' shift, and go to state 1293 State 1234 - 628 type_declaration_no_options: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list . ')' + 629 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list . ')' ')' shift, and go to state 1294 State 1235 - 564 variable_name_with_pos_list: variable_name_with_pos_list ',' "name" "aka" "name" . + 563 variable_name_with_pos_list: variable_name_with_pos_list ',' "name" "aka" "name" . - $default reduce using rule 564 (variable_name_with_pos_list) + $default reduce using rule 563 (variable_name_with_pos_list) State 1236 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 499 variable_declaration: variable_name_with_pos_list ':' type_declaration copy_or_move expr . - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 498 variable_declaration: variable_name_with_pos_list ':' type_declaration copy_or_move expr . + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 499 (variable_declaration) + $default reduce using rule 498 (variable_declaration) State 1237 70 expression_for_loop: "for" '(' variable_name_with_pos_list "in" expr_list ')' . expression_block - "begin of code block" shift, and go to state 322 + "begin of code block" shift, and go to state 321 expression_block go to state 1295 @@ -39444,7 +38750,7 @@ State 1238 57 expression_else: "else" . expression_block - "begin of code block" shift, and go to state 322 + "begin of code block" shift, and go to state 321 expression_block go to state 1296 @@ -39481,118 +38787,117 @@ State 1243 62 expression_else_one_liner: "else" . expression_if_one_liner - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "return" shift, and go to state 531 - "null" shift, and go to state 415 - "break" shift, and go to state 532 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "continue" shift, and go to state 537 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "yield" shift, and go to state 542 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "return" shift, and go to state 530 + "null" shift, and go to state 414 + "break" shift, and go to state 531 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "continue" shift, and go to state 536 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "yield" shift, and go to state 541 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 expression_if_one_liner go to state 1298 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 expression_break go to state 1299 expression_continue go to state 1300 expression_return go to state 1301 expression_yield_no_pipe go to state 1302 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1303 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1244 @@ -39604,108 +38909,108 @@ State 1244 State 1245 - 269 tuple_expansion: tuple_expansion ',' "name" . + 268 tuple_expansion: tuple_expansion ',' "name" . - $default reduce using rule 269 (tuple_expansion) + $default reduce using rule 268 (tuple_expansion) State 1246 - 270 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' . type_declaration_no_options copy_or_move_or_clone expr "end of expression" - - "type" shift, and go to state 216 - "array" shift, and go to state 217 - "table" shift, and go to state 218 - "typedecl" shift, and go to state 219 - "iterator" shift, and go to state 220 - "smart_ptr" shift, and go to state 221 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "auto" shift, and go to state 225 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 231 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "block" shift, and go to state 243 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "function" shift, and go to state 247 - "lambda" shift, and go to state 248 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 253 - "variant" shift, and go to state 254 - "::" shift, and go to state 55 - "$t" shift, and go to state 255 - "name" shift, and go to state 56 - '$' shift, and go to state 256 - - name_in_namespace go to state 257 - basic_type_declaration go to state 258 - structure_type_declaration go to state 259 - auto_type_declaration go to state 260 - bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 1305 + 269 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' . type_declaration_no_options copy_or_move_or_clone expr "end of expression" + + "type" shift, and go to state 214 + "array" shift, and go to state 215 + "table" shift, and go to state 216 + "typedecl" shift, and go to state 217 + "iterator" shift, and go to state 218 + "smart_ptr" shift, and go to state 219 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "auto" shift, and go to state 223 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 229 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "block" shift, and go to state 241 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "function" shift, and go to state 245 + "lambda" shift, and go to state 246 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 251 + "variant" shift, and go to state 252 + "$t" shift, and go to state 253 + "name" shift, and go to state 55 + '$' shift, and go to state 254 + + name_in_namespace go to state 255 + basic_type_declaration go to state 256 + structure_type_declaration go to state 257 + auto_type_declaration go to state 258 + bitfield_type_declaration go to state 259 + type_declaration_no_options go to state 1305 + type_declaration_no_options_no_dim go to state 261 State 1247 - 271 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref . copy_or_move_or_clone expr "end of expression" + 270 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref . copy_or_move_or_clone expr "end of expression" - "<-" shift, and go to state 577 - ":=" shift, and go to state 578 - '=' shift, and go to state 579 + "<-" shift, and go to state 576 + ":=" shift, and go to state 577 + '=' shift, and go to state 578 copy_or_move_or_clone go to state 1306 State 1248 - 463 optional_constant: "const" . + 462 optional_constant: "const" . - $default reduce using rule 463 (optional_constant) + $default reduce using rule 462 (optional_constant) State 1249 - 474 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant . $@26 function_declaration_header "end of expression" + 473 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant . $@26 function_declaration_header "end of expression" - $default reduce using rule 473 ($@26) + $default reduce using rule 472 ($@26) $@26 go to state 1307 State 1250 - 476 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override . optional_constant $@27 function_declaration_header expression_block + 475 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override . optional_constant $@27 function_declaration_header expression_block "const" shift, and go to state 1248 - $default reduce using rule 462 (optional_constant) + $default reduce using rule 461 (optional_constant) optional_constant go to state 1308 State 1251 - 469 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable . variable_declaration + 468 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable . variable_declaration "$i" shift, and go to state 710 "name" shift, and go to state 711 @@ -39716,774 +39021,771 @@ State 1251 State 1252 - 716 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' . use_initializer make_struct_dim ')' + 717 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' . use_initializer make_struct_dim ')' "uninitialized" shift, and go to state 969 - $default reduce using rule 712 (use_initializer) + $default reduce using rule 713 (use_initializer) use_initializer go to state 1310 State 1253 - 719 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' . use_initializer make_struct_dim ')' + 720 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' . use_initializer make_struct_dim ')' "uninitialized" shift, and go to state 969 - $default reduce using rule 712 (use_initializer) + $default reduce using rule 713 (use_initializer) use_initializer go to state 1311 State 1254 - 288 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" . '>' expr ')' + 287 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" . '>' expr ')' '>' shift, and go to state 1312 State 1255 - 287 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' expr . ')' - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 286 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' expr . ')' + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ')' shift, and go to state 1313 State 1256 - 735 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 . '(' use_initializer make_struct_dim ')' + 736 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 . '(' use_initializer make_struct_dim ')' '(' shift, and go to state 1314 State 1257 - 738 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 . '(' use_initializer make_struct_dim ')' + 739 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 . '(' use_initializer make_struct_dim ')' '(' shift, and go to state 1315 State 1258 - 741 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 . '(' make_struct_dim ')' + 742 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 . '(' make_struct_dim ')' '(' shift, and go to state 1316 State 1259 - 745 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' . expr_list optional_comma ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 746 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' . expr_list optional_comma ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 expr_list go to state 1317 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 633 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 632 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1260 - 755 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' . expr_map_tuple_list optional_comma ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 756 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' . expr_map_tuple_list optional_comma ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 622 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_map_tuple go to state 623 - make_tuple_call go to state 476 - make_dim_decl go to state 477 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 621 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_map_tuple go to state 622 + make_tuple_call go to state 475 + make_dim_decl go to state 476 expr_map_tuple_list go to state 1318 - make_table_decl go to state 478 - array_comprehension go to state 479 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1261 - 754 make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma . ')' + 755 make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma . ')' ')' shift, and go to state 1319 State 1262 - 276 expr_cast: "cast" '<' $@5 type_declaration_no_options '>' $@6 expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 - - $default reduce using rule 276 (expr_cast) + 275 expr_cast: "cast" '<' $@5 type_declaration_no_options '>' $@6 expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 + + $default reduce using rule 275 (expr_cast) State 1263 - 279 expr_cast: "upcast" '<' $@7 type_declaration_no_options '>' $@8 expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 - - $default reduce using rule 279 (expr_cast) + 278 expr_cast: "upcast" '<' $@7 type_declaration_no_options '>' $@8 expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 + + $default reduce using rule 278 (expr_cast) State 1264 - 282 expr_cast: "reinterpret" '<' $@9 type_declaration_no_options '>' $@10 expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 - - $default reduce using rule 282 (expr_cast) + 281 expr_cast: "reinterpret" '<' $@9 type_declaration_no_options '>' $@10 expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 + + $default reduce using rule 281 (expr_cast) State 1265 - 749 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' . expr_list optional_comma ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 750 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' . expr_list optional_comma ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 expr_list go to state 1320 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 - expr go to state 633 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 + expr go to state 632 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1266 - 725 make_struct_decl: "default" '<' $@79 type_declaration_no_options '>' $@80 use_initializer . + 726 make_struct_decl: "default" '<' $@79 type_declaration_no_options '>' $@80 use_initializer . - $default reduce using rule 725 (make_struct_decl) + $default reduce using rule 726 (make_struct_decl) State 1267 - 731 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' . use_initializer make_struct_dim ')' + 732 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' . use_initializer make_struct_dim ')' "uninitialized" shift, and go to state 969 - $default reduce using rule 712 (use_initializer) + $default reduce using rule 713 (use_initializer) use_initializer go to state 1321 State 1268 - 722 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 '(' . make_struct_dim ')' + 723 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 '(' . make_struct_dim ')' "$f" shift, and go to state 826 "name" shift, and go to state 1090 @@ -40494,349 +39796,347 @@ State 1268 State 1269 - 411 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' ')' . + 410 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' ')' . - $default reduce using rule 411 (expr) + $default reduce using rule 410 (expr) State 1270 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 412 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr . ')' - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 411 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr . ')' + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ')' shift, and go to state 1324 State 1271 - 448 expr_mtag: "$c" '(' expr ')' '(' expr_list ')' . + 447 expr_mtag: "$c" '(' expr ')' '(' expr_list ')' . - $default reduce using rule 448 (expr_mtag) + $default reduce using rule 447 (expr_mtag) State 1272 - 762 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple . array_comprehension_where "end of code block" + 763 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple . array_comprehension_where "end of code block" "end of expression" shift, and go to state 1325 - $default reduce using rule 756 (array_comprehension_where) + $default reduce using rule 757 (array_comprehension_where) array_comprehension_where go to state 1326 State 1273 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 760 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr . array_comprehension_where ']' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 761 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr . array_comprehension_where ']' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 "end of expression" shift, and go to state 1325 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 - - $default reduce using rule 756 (array_comprehension_where) + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 + + $default reduce using rule 757 (array_comprehension_where) array_comprehension_where go to state 1327 State 1274 - 761 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" . expr array_comprehension_where ']' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 762 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" . expr array_comprehension_where ']' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1328 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1275 - 343 func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options '>' $@14 . func_addr_name + 342 func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options '>' $@14 . func_addr_name - "::" shift, and go to state 55 "$i" shift, and go to state 821 - "name" shift, and go to state 56 + "name" shift, and go to state 55 name_in_namespace go to state 824 func_addr_name go to state 1329 @@ -40844,827 +40144,824 @@ State 1275 State 1276 - 346 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type '>' . $@16 func_addr_name + 345 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type '>' . $@16 func_addr_name - $default reduce using rule 345 ($@16) + $default reduce using rule 344 ($@16) $@16 go to state 1330 State 1277 - 706 make_struct_fields: "$f" '(' expr ')' ":=" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 707 make_struct_fields: "$f" '(' expr ')' ":=" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1331 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1278 - 705 make_struct_fields: "$f" '(' expr ')' copy_or_move . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 706 make_struct_fields: "$f" '(' expr ')' copy_or_move . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1332 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1279 - 335 expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' . ')' + 334 expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' . ')' ')' shift, and go to state 1333 State 1280 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 707 make_struct_fields: make_struct_fields ',' "$f" '(' expr . ')' copy_or_move expr - 708 | make_struct_fields ',' "$f" '(' expr . ')' ":=" expr - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 708 make_struct_fields: make_struct_fields ',' "$f" '(' expr . ')' copy_or_move expr + 709 | make_struct_fields ',' "$f" '(' expr . ')' ":=" expr + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ')' shift, and go to state 1334 State 1281 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 704 make_struct_fields: make_struct_fields ',' "name" ":=" expr . - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 705 make_struct_fields: make_struct_fields ',' "name" ":=" expr . + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 704 (make_struct_fields) + $default reduce using rule 705 (make_struct_fields) State 1282 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 703 make_struct_fields: make_struct_fields ',' "name" copy_or_move expr . - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 704 make_struct_fields: make_struct_fields ',' "name" copy_or_move expr . + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 703 (make_struct_fields) + $default reduce using rule 704 (make_struct_fields) State 1283 - 302 capture_list: capture_list ',' capture_entry . + 301 capture_list: capture_list ',' capture_entry . - $default reduce using rule 302 (capture_list) + $default reduce using rule 301 (capture_list) State 1284 - 304 optional_capture_list: '[' '[' capture_list ']' ']' . + 303 optional_capture_list: '[' '[' capture_list ']' ']' . - $default reduce using rule 304 (optional_capture_list) + $default reduce using rule 303 (optional_capture_list) State 1285 - 293 block_or_simple_block: "=>" "<-" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 292 block_or_simple_block: "=>" "<-" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1335 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1286 - 292 block_or_simple_block: "=>" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 291 block_or_simple_block: "=>" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ".." error (nonassociative) - $default reduce using rule 292 (block_or_simple_block) + $default reduce using rule 291 (block_or_simple_block) State 1287 - 306 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block . + 305 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block . - $default reduce using rule 306 (expr_full_block_assumed_piped) + $default reduce using rule 305 (expr_full_block_assumed_piped) State 1288 - 417 expr: expr "is" "type" '<' $@19 type_declaration_no_options '>' . $@20 + 416 expr: expr "is" "type" '<' $@19 type_declaration_no_options '>' . $@20 - $default reduce using rule 416 ($@20) + $default reduce using rule 415 ($@20) $@20 go to state 1336 State 1289 - 423 expr: expr "as" "type" '<' $@21 type_declaration '>' . $@22 + 422 expr: expr "as" "type" '<' $@21 type_declaration '>' . $@22 - $default reduce using rule 422 ($@22) + $default reduce using rule 421 ($@22) $@22 go to state 1337 State 1290 - 428 expr: expr '?' "as" "type" '<' $@23 type_declaration . '>' $@24 - 682 type_declaration: type_declaration . '|' type_declaration_no_options - 683 | type_declaration . '|' '#' + 427 expr: expr '?' "as" "type" '<' $@23 type_declaration . '>' $@24 + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' - '|' shift, and go to state 371 + '|' shift, and go to state 370 '>' shift, and go to state 1338 State 1291 - 454 expr_mtag: expr '?' "as" "$f" '(' expr ')' . + 453 expr_mtag: expr '?' "as" "$f" '(' expr ')' . - $default reduce using rule 454 (expr_mtag) + $default reduce using rule 453 (expr_mtag) State 1292 - 452 expr_mtag: expr '.' "?." "$f" '(' expr ')' . + 451 expr_mtag: expr '.' "?." "$f" '(' expr ')' . - $default reduce using rule 452 (expr_mtag) + $default reduce using rule 451 (expr_mtag) State 1293 - 451 expr_mtag: expr '.' '.' "$f" '(' expr ')' . + 450 expr_mtag: expr '.' '.' "$f" '(' expr ')' . - $default reduce using rule 451 (expr_mtag) + $default reduce using rule 450 (expr_mtag) State 1294 - 628 type_declaration_no_options: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' . + 629 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' . - $default reduce using rule 628 (type_declaration_no_options) + $default reduce using rule 629 (type_declaration_no_options_no_dim) State 1295 @@ -41685,109 +40982,108 @@ State 1297 58 expression_else: elif_or_static_elif '(' . expr ')' expression_block expression_else - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1339 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1298 @@ -41828,100 +41124,100 @@ State 1302 State 1303 63 expression_if_one_liner: expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 $default reduce using rule 63 (expression_if_one_liner) @@ -41935,207 +41231,180 @@ State 1304 State 1305 - 270 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options . copy_or_move_or_clone expr "end of expression" - 620 type_declaration_no_options: type_declaration_no_options . dim_list - 621 | type_declaration_no_options . '[' ']' - 629 | type_declaration_no_options . '-' '[' ']' - 630 | type_declaration_no_options . "explicit" - 631 | type_declaration_no_options . "const" - 632 | type_declaration_no_options . '-' "const" - 633 | type_declaration_no_options . '&' - 634 | type_declaration_no_options . '-' '&' - 635 | type_declaration_no_options . '#' - 636 | type_declaration_no_options . "implicit" - 637 | type_declaration_no_options . '-' '#' - 638 | type_declaration_no_options . "==" "const" - 639 | type_declaration_no_options . "==" '&' - 640 | type_declaration_no_options . '*' - 644 | type_declaration_no_options . "??" - - "const" shift, and go to state 360 - "implicit" shift, and go to state 361 - "explicit" shift, and go to state 362 - "==" shift, and go to state 363 - "<-" shift, and go to state 577 - "??" shift, and go to state 364 - ":=" shift, and go to state 578 - '=' shift, and go to state 579 - '&' shift, and go to state 365 - '-' shift, and go to state 366 - '*' shift, and go to state 367 - '[' shift, and go to state 368 - '#' shift, and go to state 369 + 269 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options . copy_or_move_or_clone expr "end of expression" + + "<-" shift, and go to state 576 + ":=" shift, and go to state 577 + '=' shift, and go to state 578 copy_or_move_or_clone go to state 1340 - dim_list go to state 370 State 1306 - 271 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone . expr "end of expression" - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 270 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone . expr "end of expression" + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1341 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1307 - 474 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 . function_declaration_header "end of expression" - - "operator" shift, and go to state 171 - "bool" shift, and go to state 172 - "string" shift, and go to state 173 - "int" shift, and go to state 174 - "int2" shift, and go to state 175 - "int3" shift, and go to state 176 - "int4" shift, and go to state 177 - "uint" shift, and go to state 178 - "uint2" shift, and go to state 179 - "uint3" shift, and go to state 180 - "uint4" shift, and go to state 181 - "float" shift, and go to state 182 - "float2" shift, and go to state 183 - "float3" shift, and go to state 184 - "float4" shift, and go to state 185 - "range" shift, and go to state 186 - "urange" shift, and go to state 187 - "range64" shift, and go to state 188 - "urange64" shift, and go to state 189 - "int64" shift, and go to state 190 - "uint64" shift, and go to state 191 - "double" shift, and go to state 192 - "int8" shift, and go to state 193 - "uint8" shift, and go to state 194 - "int16" shift, and go to state 195 - "uint16" shift, and go to state 196 - "++" shift, and go to state 197 - "--" shift, and go to state 198 - "name" shift, and go to state 199 - - function_name go to state 200 + 473 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 . function_declaration_header "end of expression" + + "operator" shift, and go to state 169 + "bool" shift, and go to state 170 + "string" shift, and go to state 171 + "int" shift, and go to state 172 + "int2" shift, and go to state 173 + "int3" shift, and go to state 174 + "int4" shift, and go to state 175 + "uint" shift, and go to state 176 + "uint2" shift, and go to state 177 + "uint3" shift, and go to state 178 + "uint4" shift, and go to state 179 + "float" shift, and go to state 180 + "float2" shift, and go to state 181 + "float3" shift, and go to state 182 + "float4" shift, and go to state 183 + "range" shift, and go to state 184 + "urange" shift, and go to state 185 + "range64" shift, and go to state 186 + "urange64" shift, and go to state 187 + "int64" shift, and go to state 188 + "uint64" shift, and go to state 189 + "double" shift, and go to state 190 + "int8" shift, and go to state 191 + "uint8" shift, and go to state 192 + "int16" shift, and go to state 193 + "uint16" shift, and go to state 194 + "++" shift, and go to state 195 + "--" shift, and go to state 196 + "name" shift, and go to state 197 + + function_name go to state 198 function_declaration_header go to state 1342 State 1308 - 476 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant . $@27 function_declaration_header expression_block + 475 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant . $@27 function_declaration_header expression_block - $default reduce using rule 475 ($@27) + $default reduce using rule 474 ($@27) $@27 go to state 1343 State 1309 - 469 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration . + 468 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration . - $default reduce using rule 469 (structure_variable_declaration) + $default reduce using rule 468 (structure_variable_declaration) State 1310 - 716 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer . make_struct_dim ')' + 717 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer . make_struct_dim ')' "$f" shift, and go to state 826 "name" shift, and go to state 1090 @@ -42146,7 +41415,7 @@ State 1310 State 1311 - 719 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer . make_struct_dim ')' + 720 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer . make_struct_dim ')' "$f" shift, and go to state 826 "name" shift, and go to state 1090 @@ -42157,145 +41426,144 @@ State 1311 State 1312 - 288 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' . expr ')' - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 287 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' . expr ')' + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1346 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1313 - 287 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' expr ')' . + 286 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' expr ')' . - $default reduce using rule 287 (expr_type_info) + $default reduce using rule 286 (expr_type_info) State 1314 - 735 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' . use_initializer make_struct_dim ')' + 736 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' . use_initializer make_struct_dim ')' "uninitialized" shift, and go to state 969 - $default reduce using rule 712 (use_initializer) + $default reduce using rule 713 (use_initializer) use_initializer go to state 1347 State 1315 - 738 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' . use_initializer make_struct_dim ')' + 739 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' . use_initializer make_struct_dim ')' "uninitialized" shift, and go to state 969 - $default reduce using rule 712 (use_initializer) + $default reduce using rule 713 (use_initializer) use_initializer go to state 1348 State 1316 - 741 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' . make_struct_dim ')' + 742 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' . make_struct_dim ')' "$f" shift, and go to state 826 "name" shift, and go to state 1090 @@ -42306,50 +41574,50 @@ State 1316 State 1317 - 290 expr_list: expr_list . ',' expr - 745 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list . optional_comma ')' + 289 expr_list: expr_list . ',' expr + 746 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list . optional_comma ')' ',' shift, and go to state 818 - $default reduce using rule 758 (optional_comma) + $default reduce using rule 759 (optional_comma) optional_comma go to state 1350 State 1318 - 751 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple - 755 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list . optional_comma ')' + 752 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple + 756 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list . optional_comma ')' ',' shift, and go to state 814 - $default reduce using rule 758 (optional_comma) + $default reduce using rule 759 (optional_comma) optional_comma go to state 1351 State 1319 - 754 make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' . + 755 make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' . - $default reduce using rule 754 (make_table_decl) + $default reduce using rule 755 (make_table_decl) State 1320 - 290 expr_list: expr_list . ',' expr - 749 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list . optional_comma ')' + 289 expr_list: expr_list . ',' expr + 750 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list . optional_comma ')' ',' shift, and go to state 818 - $default reduce using rule 758 (optional_comma) + $default reduce using rule 759 (optional_comma) optional_comma go to state 1352 State 1321 - 731 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer . make_struct_dim ')' + 732 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer . make_struct_dim ')' "$f" shift, and go to state 826 "name" shift, and go to state 1090 @@ -42360,21 +41628,21 @@ State 1321 State 1322 - 703 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr - 704 | make_struct_fields . ',' "name" ":=" expr - 707 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr - 708 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr - 710 make_struct_dim: make_struct_fields . + 704 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr + 705 | make_struct_fields . ',' "name" ":=" expr + 708 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr + 709 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr + 711 make_struct_dim: make_struct_fields . ',' shift, and go to state 1021 - $default reduce using rule 710 (make_struct_dim) + $default reduce using rule 711 (make_struct_dim) State 1323 - 711 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 722 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim . ')' + 712 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 723 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim . ')' "end of expression" shift, and go to state 1354 ')' shift, and go to state 1355 @@ -42382,150 +41650,149 @@ State 1323 State 1324 - 412 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' . + 411 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' . - $default reduce using rule 412 (expr) + $default reduce using rule 411 (expr) State 1325 - 757 array_comprehension_where: "end of expression" . "where" expr + 758 array_comprehension_where: "end of expression" . "where" expr "where" shift, and go to state 1356 State 1326 - 762 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where . "end of code block" + 763 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where . "end of code block" "end of code block" shift, and go to state 1357 State 1327 - 760 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where . ']' + 761 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where . ']' ']' shift, and go to state 1358 State 1328 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 761 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr . array_comprehension_where ']' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 762 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr . array_comprehension_where ']' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 "end of expression" shift, and go to state 1325 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 - - $default reduce using rule 756 (array_comprehension_where) + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 + + $default reduce using rule 757 (array_comprehension_where) array_comprehension_where go to state 1359 State 1329 - 343 func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options '>' $@14 func_addr_name . + 342 func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options '>' $@14 func_addr_name . - $default reduce using rule 343 (func_addr_expr) + $default reduce using rule 342 (func_addr_expr) State 1330 - 346 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type '>' $@16 . func_addr_name + 345 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type '>' $@16 . func_addr_name - "::" shift, and go to state 55 "$i" shift, and go to state 821 - "name" shift, and go to state 56 + "name" shift, and go to state 55 name_in_namespace go to state 824 func_addr_name go to state 1360 @@ -42533,217 +41800,217 @@ State 1330 State 1331 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 706 make_struct_fields: "$f" '(' expr ')' ":=" expr . - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 707 make_struct_fields: "$f" '(' expr ')' ":=" expr . + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 706 (make_struct_fields) + $default reduce using rule 707 (make_struct_fields) State 1332 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 705 make_struct_fields: "$f" '(' expr ')' copy_or_move expr . - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 706 make_struct_fields: "$f" '(' expr ')' copy_or_move expr . + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 705 (make_struct_fields) + $default reduce using rule 706 (make_struct_fields) State 1333 - 335 expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' ')' . + 334 expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' ')' . - $default reduce using rule 335 (expr_named_call) + $default reduce using rule 334 (expr_named_call) State 1334 - 707 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' . copy_or_move expr - 708 | make_struct_fields ',' "$f" '(' expr ')' . ":=" expr + 708 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' . copy_or_move expr + 709 | make_struct_fields ',' "$f" '(' expr ')' . ":=" expr "<-" shift, and go to state 913 ":=" shift, and go to state 1361 @@ -42754,123 +42021,123 @@ State 1334 State 1335 - 293 block_or_simple_block: "=>" "<-" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 - - $default reduce using rule 293 (block_or_simple_block) + 292 block_or_simple_block: "=>" "<-" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 + + $default reduce using rule 292 (block_or_simple_block) State 1336 - 417 expr: expr "is" "type" '<' $@19 type_declaration_no_options '>' $@20 . + 416 expr: expr "is" "type" '<' $@19 type_declaration_no_options '>' $@20 . - $default reduce using rule 417 (expr) + $default reduce using rule 416 (expr) State 1337 - 423 expr: expr "as" "type" '<' $@21 type_declaration '>' $@22 . + 422 expr: expr "as" "type" '<' $@21 type_declaration '>' $@22 . - $default reduce using rule 423 (expr) + $default reduce using rule 422 (expr) State 1338 - 428 expr: expr '?' "as" "type" '<' $@23 type_declaration '>' . $@24 + 427 expr: expr '?' "as" "type" '<' $@23 type_declaration '>' . $@24 - $default reduce using rule 427 ($@24) + $default reduce using rule 426 ($@24) $@24 go to state 1363 @@ -42878,361 +42145,360 @@ State 1338 State 1339 58 expression_else: elif_or_static_elif '(' expr . ')' expression_block expression_else - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ')' shift, and go to state 1364 State 1340 - 270 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone . expr "end of expression" - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 269 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone . expr "end of expression" + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1365 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1341 - 271 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr . "end of expression" - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 + 270 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr . "end of expression" + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 "end of expression" shift, and go to state 1366 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 State 1342 - 474 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header . "end of expression" + 473 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header . "end of expression" "end of expression" shift, and go to state 1367 State 1343 - 476 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 . function_declaration_header expression_block - - "operator" shift, and go to state 171 - "bool" shift, and go to state 172 - "string" shift, and go to state 173 - "int" shift, and go to state 174 - "int2" shift, and go to state 175 - "int3" shift, and go to state 176 - "int4" shift, and go to state 177 - "uint" shift, and go to state 178 - "uint2" shift, and go to state 179 - "uint3" shift, and go to state 180 - "uint4" shift, and go to state 181 - "float" shift, and go to state 182 - "float2" shift, and go to state 183 - "float3" shift, and go to state 184 - "float4" shift, and go to state 185 - "range" shift, and go to state 186 - "urange" shift, and go to state 187 - "range64" shift, and go to state 188 - "urange64" shift, and go to state 189 - "int64" shift, and go to state 190 - "uint64" shift, and go to state 191 - "double" shift, and go to state 192 - "int8" shift, and go to state 193 - "uint8" shift, and go to state 194 - "int16" shift, and go to state 195 - "uint16" shift, and go to state 196 - "++" shift, and go to state 197 - "--" shift, and go to state 198 - "name" shift, and go to state 199 - - function_name go to state 200 + 475 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 . function_declaration_header expression_block + + "operator" shift, and go to state 169 + "bool" shift, and go to state 170 + "string" shift, and go to state 171 + "int" shift, and go to state 172 + "int2" shift, and go to state 173 + "int3" shift, and go to state 174 + "int4" shift, and go to state 175 + "uint" shift, and go to state 176 + "uint2" shift, and go to state 177 + "uint3" shift, and go to state 178 + "uint4" shift, and go to state 179 + "float" shift, and go to state 180 + "float2" shift, and go to state 181 + "float3" shift, and go to state 182 + "float4" shift, and go to state 183 + "range" shift, and go to state 184 + "urange" shift, and go to state 185 + "range64" shift, and go to state 186 + "urange64" shift, and go to state 187 + "int64" shift, and go to state 188 + "uint64" shift, and go to state 189 + "double" shift, and go to state 190 + "int8" shift, and go to state 191 + "uint8" shift, and go to state 192 + "int16" shift, and go to state 193 + "uint16" shift, and go to state 194 + "++" shift, and go to state 195 + "--" shift, and go to state 196 + "name" shift, and go to state 197 + + function_name go to state 198 function_declaration_header go to state 1368 State 1344 - 711 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 716 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim . ')' + 712 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 717 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim . ')' "end of expression" shift, and go to state 1354 ')' shift, and go to state 1369 @@ -43240,8 +42506,8 @@ State 1344 State 1345 - 711 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 719 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim . ')' + 712 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 720 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim . ')' "end of expression" shift, and go to state 1354 ')' shift, and go to state 1370 @@ -43249,107 +42515,107 @@ State 1345 State 1346 - 288 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr . ')' - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 287 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr . ')' + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 ')' shift, and go to state 1371 State 1347 - 735 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer . make_struct_dim ')' + 736 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer . make_struct_dim ')' "$f" shift, and go to state 826 "name" shift, and go to state 1090 @@ -43360,7 +42626,7 @@ State 1347 State 1348 - 738 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer . make_struct_dim ')' + 739 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer . make_struct_dim ')' "$f" shift, and go to state 826 "name" shift, and go to state 1090 @@ -43371,8 +42637,8 @@ State 1348 State 1349 - 711 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 741 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim . ')' + 712 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 742 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim . ')' "end of expression" shift, and go to state 1354 ')' shift, and go to state 1374 @@ -43380,29 +42646,29 @@ State 1349 State 1350 - 745 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma . ')' + 746 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma . ')' ')' shift, and go to state 1375 State 1351 - 755 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma . ')' + 756 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma . ')' ')' shift, and go to state 1376 State 1352 - 749 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma . ')' + 750 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma . ')' ')' shift, and go to state 1377 State 1353 - 711 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 731 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim . ')' + 712 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 732 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim . ')' "end of expression" shift, and go to state 1354 ')' shift, and go to state 1378 @@ -43410,7 +42676,7 @@ State 1353 State 1354 - 711 make_struct_dim: make_struct_dim "end of expression" . make_struct_fields + 712 make_struct_dim: make_struct_dim "end of expression" . make_struct_fields "$f" shift, and go to state 826 "name" shift, and go to state 1090 @@ -43420,530 +42686,527 @@ State 1354 State 1355 - 722 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim ')' . + 723 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim ')' . - $default reduce using rule 722 (make_struct_decl) + $default reduce using rule 723 (make_struct_decl) State 1356 - 757 array_comprehension_where: "end of expression" "where" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 758 array_comprehension_where: "end of expression" "where" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1380 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1357 - 762 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" . + 763 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" . - $default reduce using rule 762 (array_comprehension) + $default reduce using rule 763 (array_comprehension) State 1358 - 760 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' . + 761 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' . - $default reduce using rule 760 (array_comprehension) + $default reduce using rule 761 (array_comprehension) State 1359 - 761 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where . ']' + 762 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where . ']' ']' shift, and go to state 1381 State 1360 - 346 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name . + 345 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name . - $default reduce using rule 346 (func_addr_expr) + $default reduce using rule 345 (func_addr_expr) State 1361 - 708 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' ":=" . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 709 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' ":=" . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1382 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1362 - 707 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' copy_or_move . expr - - "struct" shift, and go to state 407 - "class" shift, and go to state 408 - "true" shift, and go to state 409 - "false" shift, and go to state 410 - "new" shift, and go to state 411 - "typeinfo" shift, and go to state 412 - "type" shift, and go to state 413 - "array" shift, and go to state 414 - "null" shift, and go to state 415 - "table" shift, and go to state 416 - "deref" shift, and go to state 417 - "cast" shift, and go to state 418 - "upcast" shift, and go to state 419 - "addr" shift, and go to state 420 - "reinterpret" shift, and go to state 421 - "fixed_array" shift, and go to state 422 - "default" shift, and go to state 423 - "bool" shift, and go to state 222 - "void" shift, and go to state 223 - "string" shift, and go to state 224 - "int" shift, and go to state 226 - "int2" shift, and go to state 227 - "int3" shift, and go to state 228 - "int4" shift, and go to state 229 - "uint" shift, and go to state 230 - "bitfield" shift, and go to state 424 - "uint2" shift, and go to state 232 - "uint3" shift, and go to state 233 - "uint4" shift, and go to state 234 - "float" shift, and go to state 235 - "float2" shift, and go to state 236 - "float3" shift, and go to state 237 - "float4" shift, and go to state 238 - "range" shift, and go to state 239 - "urange" shift, and go to state 240 - "range64" shift, and go to state 241 - "urange64" shift, and go to state 242 - "int64" shift, and go to state 244 - "uint64" shift, and go to state 245 - "double" shift, and go to state 246 - "int8" shift, and go to state 249 - "uint8" shift, and go to state 250 - "int16" shift, and go to state 251 - "uint16" shift, and go to state 252 - "tuple" shift, and go to state 425 - "variant" shift, and go to state 426 - "generator" shift, and go to state 427 - "++" shift, and go to state 428 - "--" shift, and go to state 429 - "::" shift, and go to state 55 - "$$" shift, and go to state 430 - "$i" shift, and go to state 431 - "$v" shift, and go to state 432 - "$b" shift, and go to state 433 - "$a" shift, and go to state 434 - "$c" shift, and go to state 435 - "..." shift, and go to state 436 - "integer constant" shift, and go to state 437 - "long integer constant" shift, and go to state 438 - "unsigned integer constant" shift, and go to state 439 - "unsigned long integer constant" shift, and go to state 440 - "unsigned int8 constant" shift, and go to state 441 - "floating point constant" shift, and go to state 442 - "double constant" shift, and go to state 443 - "name" shift, and go to state 56 - "start of the string" shift, and go to state 444 - "begin of code block" shift, and go to state 445 - '-' shift, and go to state 446 - '+' shift, and go to state 447 - '*' shift, and go to state 448 + 708 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' copy_or_move . expr + + "struct" shift, and go to state 406 + "class" shift, and go to state 407 + "true" shift, and go to state 408 + "false" shift, and go to state 409 + "new" shift, and go to state 410 + "typeinfo" shift, and go to state 411 + "type" shift, and go to state 412 + "array" shift, and go to state 413 + "null" shift, and go to state 414 + "table" shift, and go to state 415 + "deref" shift, and go to state 416 + "cast" shift, and go to state 417 + "upcast" shift, and go to state 418 + "addr" shift, and go to state 419 + "reinterpret" shift, and go to state 420 + "fixed_array" shift, and go to state 421 + "default" shift, and go to state 422 + "bool" shift, and go to state 220 + "void" shift, and go to state 221 + "string" shift, and go to state 222 + "int" shift, and go to state 224 + "int2" shift, and go to state 225 + "int3" shift, and go to state 226 + "int4" shift, and go to state 227 + "uint" shift, and go to state 228 + "bitfield" shift, and go to state 423 + "uint2" shift, and go to state 230 + "uint3" shift, and go to state 231 + "uint4" shift, and go to state 232 + "float" shift, and go to state 233 + "float2" shift, and go to state 234 + "float3" shift, and go to state 235 + "float4" shift, and go to state 236 + "range" shift, and go to state 237 + "urange" shift, and go to state 238 + "range64" shift, and go to state 239 + "urange64" shift, and go to state 240 + "int64" shift, and go to state 242 + "uint64" shift, and go to state 243 + "double" shift, and go to state 244 + "int8" shift, and go to state 247 + "uint8" shift, and go to state 248 + "int16" shift, and go to state 249 + "uint16" shift, and go to state 250 + "tuple" shift, and go to state 424 + "variant" shift, and go to state 425 + "generator" shift, and go to state 426 + "++" shift, and go to state 427 + "--" shift, and go to state 428 + "$$" shift, and go to state 429 + "$i" shift, and go to state 430 + "$v" shift, and go to state 431 + "$b" shift, and go to state 432 + "$a" shift, and go to state 433 + "$c" shift, and go to state 434 + "..." shift, and go to state 435 + "integer constant" shift, and go to state 436 + "long integer constant" shift, and go to state 437 + "unsigned integer constant" shift, and go to state 438 + "unsigned long integer constant" shift, and go to state 439 + "unsigned int8 constant" shift, and go to state 440 + "floating point constant" shift, and go to state 441 + "double constant" shift, and go to state 442 + "name" shift, and go to state 55 + "start of the string" shift, and go to state 443 + "begin of code block" shift, and go to state 444 + '-' shift, and go to state 445 + '+' shift, and go to state 446 + '*' shift, and go to state 447 '%' shift, and go to state 14 - '~' shift, and go to state 449 - '!' shift, and go to state 450 - '[' shift, and go to state 451 - '(' shift, and go to state 452 - '$' shift, and go to state 453 - '@' shift, and go to state 454 - - string_builder go to state 455 - expr_reader go to state 456 - expr_call_pipe go to state 457 - name_in_namespace go to state 458 - expr_new go to state 459 - expr_cast go to state 460 - expr_type_decl go to state 461 - expr_type_info go to state 462 - block_or_lambda go to state 463 - expr_full_block go to state 464 - expr_numeric_const go to state 465 - expr_named_call go to state 466 - expr_method_call go to state 467 - func_addr_expr go to state 468 - expr_field go to state 469 - expr_call go to state 470 + '~' shift, and go to state 448 + '!' shift, and go to state 449 + '[' shift, and go to state 450 + '(' shift, and go to state 451 + '$' shift, and go to state 452 + '@' shift, and go to state 453 + + string_builder go to state 454 + expr_reader go to state 455 + expr_call_pipe go to state 456 + name_in_namespace go to state 457 + expr_new go to state 458 + expr_cast go to state 459 + expr_type_decl go to state 460 + expr_type_info go to state 461 + block_or_lambda go to state 462 + expr_full_block go to state 463 + expr_numeric_const go to state 464 + expr_named_call go to state 465 + expr_method_call go to state 466 + func_addr_expr go to state 467 + expr_field go to state 468 + expr_call go to state 469 expr go to state 1383 - expr_mtag go to state 472 - basic_type_declaration go to state 473 - make_decl go to state 474 - make_struct_decl go to state 475 - make_tuple_call go to state 476 - make_dim_decl go to state 477 - make_table_decl go to state 478 - array_comprehension go to state 479 + expr_mtag go to state 471 + basic_type_declaration go to state 472 + make_decl go to state 473 + make_struct_decl go to state 474 + make_tuple_call go to state 475 + make_dim_decl go to state 476 + make_table_decl go to state 477 + array_comprehension go to state 478 State 1363 - 428 expr: expr '?' "as" "type" '<' $@23 type_declaration '>' $@24 . + 427 expr: expr '?' "as" "type" '<' $@23 type_declaration '>' $@24 . - $default reduce using rule 428 (expr) + $default reduce using rule 427 (expr) State 1364 58 expression_else: elif_or_static_elif '(' expr ')' . expression_block expression_else - "begin of code block" shift, and go to state 322 + "begin of code block" shift, and go to state 321 expression_block go to state 1384 State 1365 - 270 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr . "end of expression" - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 + 269 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr . "end of expression" + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 "end of expression" shift, and go to state 1385 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 State 1366 - 271 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" . + 270 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" . - $default reduce using rule 271 (tuple_expansion_variable_declaration) + $default reduce using rule 270 (tuple_expansion_variable_declaration) State 1367 - 474 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" . + 473 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" . - $default reduce using rule 474 (struct_variable_declaration_list) + $default reduce using rule 473 (struct_variable_declaration_list) State 1368 - 476 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header . expression_block + 475 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header . expression_block - "begin of code block" shift, and go to state 322 + "begin of code block" shift, and go to state 321 expression_block go to state 1386 State 1369 - 716 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' . + 717 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' . - $default reduce using rule 716 (make_struct_decl) + $default reduce using rule 717 (make_struct_decl) State 1370 - 719 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' . + 720 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' . - $default reduce using rule 719 (make_struct_decl) + $default reduce using rule 720 (make_struct_decl) State 1371 - 288 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' . + 287 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' . - $default reduce using rule 288 (expr_type_info) + $default reduce using rule 287 (expr_type_info) State 1372 - 711 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 735 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim . ')' + 712 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 736 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim . ')' "end of expression" shift, and go to state 1354 ')' shift, and go to state 1387 @@ -43951,8 +43214,8 @@ State 1372 State 1373 - 711 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 738 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim . ')' + 712 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 739 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim . ')' "end of expression" shift, and go to state 1354 ')' shift, and go to state 1388 @@ -43960,360 +43223,360 @@ State 1373 State 1374 - 741 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' . + 742 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' . - $default reduce using rule 741 (make_dim_decl) + $default reduce using rule 742 (make_dim_decl) State 1375 - 745 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' . + 746 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' . - $default reduce using rule 745 (make_dim_decl) + $default reduce using rule 746 (make_dim_decl) State 1376 - 755 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' . + 756 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' . - $default reduce using rule 755 (make_table_decl) + $default reduce using rule 756 (make_table_decl) State 1377 - 749 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' . + 750 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' . - $default reduce using rule 749 (make_dim_decl) + $default reduce using rule 750 (make_dim_decl) State 1378 - 731 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' . + 732 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' . - $default reduce using rule 731 (make_tuple_call) + $default reduce using rule 732 (make_tuple_call) State 1379 - 703 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr - 704 | make_struct_fields . ',' "name" ":=" expr - 707 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr - 708 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr - 711 make_struct_dim: make_struct_dim "end of expression" make_struct_fields . + 704 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr + 705 | make_struct_fields . ',' "name" ":=" expr + 708 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr + 709 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr + 712 make_struct_dim: make_struct_dim "end of expression" make_struct_fields . ',' shift, and go to state 1021 - $default reduce using rule 711 (make_struct_dim) + $default reduce using rule 712 (make_struct_dim) State 1380 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 757 array_comprehension_where: "end of expression" "where" expr . - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 - - $default reduce using rule 757 (array_comprehension_where) + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 758 array_comprehension_where: "end of expression" "where" expr . + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 + + $default reduce using rule 758 (array_comprehension_where) State 1381 - 761 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' . + 762 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' . - $default reduce using rule 761 (array_comprehension) + $default reduce using rule 762 (array_comprehension) State 1382 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 708 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' ":=" expr . - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 - - $default reduce using rule 708 (make_struct_fields) + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 709 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' ":=" expr . + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 + + $default reduce using rule 709 (make_struct_fields) State 1383 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 707 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' copy_or_move expr . - - "is" shift, and go to state 642 - "as" shift, and go to state 643 - "<<" shift, and go to state 644 - ">>" shift, and go to state 645 - "++" shift, and go to state 646 - "--" shift, and go to state 647 - "<=" shift, and go to state 648 - ">=" shift, and go to state 649 - "==" shift, and go to state 650 - "!=" shift, and go to state 651 - "->" shift, and go to state 652 - "??" shift, and go to state 653 - "?." shift, and go to state 654 - "?[" shift, and go to state 655 - "<|" shift, and go to state 656 - "|>" shift, and go to state 657 - "<<<" shift, and go to state 658 - ">>>" shift, and go to state 659 - "&&" shift, and go to state 660 - "||" shift, and go to state 661 - "^^" shift, and go to state 662 - ".." shift, and go to state 663 - '?' shift, and go to state 664 - '|' shift, and go to state 665 - '^' shift, and go to state 666 - '&' shift, and go to state 667 - '<' shift, and go to state 668 - '>' shift, and go to state 669 - '-' shift, and go to state 670 - '+' shift, and go to state 671 - '*' shift, and go to state 672 - '/' shift, and go to state 673 - '%' shift, and go to state 674 - '.' shift, and go to state 675 - '[' shift, and go to state 676 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 708 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' copy_or_move expr . + + "is" shift, and go to state 641 + "as" shift, and go to state 642 + "<<" shift, and go to state 643 + ">>" shift, and go to state 644 + "++" shift, and go to state 645 + "--" shift, and go to state 646 + "<=" shift, and go to state 647 + ">=" shift, and go to state 648 + "==" shift, and go to state 649 + "!=" shift, and go to state 650 + "->" shift, and go to state 651 + "??" shift, and go to state 652 + "?." shift, and go to state 653 + "?[" shift, and go to state 654 + "<|" shift, and go to state 655 + "|>" shift, and go to state 656 + "<<<" shift, and go to state 657 + ">>>" shift, and go to state 658 + "&&" shift, and go to state 659 + "||" shift, and go to state 660 + "^^" shift, and go to state 661 + ".." shift, and go to state 662 + '?' shift, and go to state 663 + '|' shift, and go to state 664 + '^' shift, and go to state 665 + '&' shift, and go to state 666 + '<' shift, and go to state 667 + '>' shift, and go to state 668 + '-' shift, and go to state 669 + '+' shift, and go to state 670 + '*' shift, and go to state 671 + '/' shift, and go to state 672 + '%' shift, and go to state 673 + '.' shift, and go to state 674 + '[' shift, and go to state 675 - $default reduce using rule 707 (make_struct_fields) + $default reduce using rule 708 (make_struct_fields) State 1384 @@ -44332,30 +43595,30 @@ State 1384 State 1385 - 270 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" . + 269 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" . - $default reduce using rule 270 (tuple_expansion_variable_declaration) + $default reduce using rule 269 (tuple_expansion_variable_declaration) State 1386 - 476 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block . + 475 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block . - $default reduce using rule 476 (struct_variable_declaration_list) + $default reduce using rule 475 (struct_variable_declaration_list) State 1387 - 735 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' . + 736 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' . - $default reduce using rule 735 (make_dim_decl) + $default reduce using rule 736 (make_dim_decl) State 1388 - 738 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' . + 739 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' . - $default reduce using rule 738 (make_dim_decl) + $default reduce using rule 739 (make_dim_decl) State 1389 diff --git a/src/parser/ds2_parser.ypp b/src/parser/ds2_parser.ypp index 46ecdb41a..2a1e169f4 100644 --- a/src/parser/ds2_parser.ypp +++ b/src/parser/ds2_parser.ypp @@ -351,6 +351,7 @@ %type optional_enum_basic_type_declaration %type type_declaration %type type_declaration_no_options +%type type_declaration_no_options_no_dim %type new_type_declaration %type auto_type_declaration %type bitfield_type_declaration @@ -1273,7 +1274,6 @@ name_in_namespace delete $name; $$ = $namespace; } - | COLCOL NAME[name] { *$name = "::" + *$name; $$ = $name; } ; expression_delete @@ -2593,18 +2593,25 @@ dim_list $$ = new TypeDecl(Type::autoinfer); appendDimExpr($$, $dimExpr); } + | '[' ']' { + $$ = new TypeDecl(Type::autoinfer); + appendDimExpr($$, nullptr); + } | dim_list[list] '[' expr[dimExpr] ']' { $$ = $list; appendDimExpr($$, $dimExpr); } + | dim_list[list] '[' ']' { + $$ = $list; + appendDimExpr($$, nullptr); + } ; type_declaration_no_options - : basic_type_declaration[basicType] { $$ = new TypeDecl($basicType); $$->at = tokAt(scanner,@basicType); } - | auto_type_declaration[typeDecl] { $$ = $typeDecl; } - | bitfield_type_declaration[typeDecl] { $$ = $typeDecl; } - | structure_type_declaration[typeDecl] { $$ = $typeDecl; } - | type_declaration_no_options[typeDecl] dim_list[dimlist] { + : type_declaration_no_options_no_dim[typeDecl] { + $$ = $typeDecl; + } + | type_declaration_no_options_no_dim[typeDecl] dim_list[dimlist] { if ( $typeDecl->baseType==Type::typeDecl ) { das2_yyerror(scanner,"type declaration can`t be used as array base type",tokAt(scanner,@typeDecl), CompilationError::invalid_type); @@ -2619,12 +2626,13 @@ type_declaration_no_options $dimlist->dimExpr.clear(); delete $dimlist; } - | type_declaration_no_options[typeDecl] '[' ']' { - $typeDecl->dim.push_back(TypeDecl::dimAuto); - $typeDecl->dimExpr.push_back(nullptr); - $typeDecl->removeDim = false; - $$ = $typeDecl; - } + ; + +type_declaration_no_options_no_dim + : basic_type_declaration[basicType] { $$ = new TypeDecl($basicType); $$->at = tokAt(scanner,@basicType); } + | auto_type_declaration[typeDecl] { $$ = $typeDecl; } + | bitfield_type_declaration[typeDecl] { $$ = $typeDecl; } + | structure_type_declaration[typeDecl] { $$ = $typeDecl; } | DAS_TYPE '<' { yyextra->das_arrow_depth ++; } type_declaration[typeDecl] '>' { yyextra->das_arrow_depth --; } { $typeDecl->autoToAlias = true; $$ = $typeDecl; @@ -2648,56 +2656,56 @@ type_declaration_no_options $$->dimExpr.insert($$->dimExpr.begin(), new ExprConstString(tokAt(scanner,@name), *$name)); delete $name; } - | type_declaration_no_options[typeDecl] '-' '[' ']' { + | type_declaration_no_options_no_dim[typeDecl] '-' '[' ']' { $typeDecl->removeDim = true; $$ = $typeDecl; } - | type_declaration_no_options[typeDecl] DAS_EXPLICIT { + | type_declaration_no_options_no_dim[typeDecl] DAS_EXPLICIT { $typeDecl->isExplicit = true; $$ = $typeDecl; } - | type_declaration_no_options[typeDecl] DAS_CONST { + | type_declaration_no_options_no_dim[typeDecl] DAS_CONST { $typeDecl->constant = true; $typeDecl->removeConstant = false; $$ = $typeDecl; } - | type_declaration_no_options[typeDecl] '-' DAS_CONST { + | type_declaration_no_options_no_dim[typeDecl] '-' DAS_CONST { $typeDecl->constant = false; $typeDecl->removeConstant = true; $$ = $typeDecl; } - | type_declaration_no_options[typeDecl] '&' { + | type_declaration_no_options_no_dim[typeDecl] '&' { $typeDecl->ref = true; $typeDecl->removeRef = false; $$ = $typeDecl; } - | type_declaration_no_options[typeDecl] '-' '&' { + | type_declaration_no_options_no_dim[typeDecl] '-' '&' { $typeDecl->ref = false; $typeDecl->removeRef = true; $$ = $typeDecl; } - | type_declaration_no_options[typeDecl] '#' { + | type_declaration_no_options_no_dim[typeDecl] '#' { $$ = $typeDecl; $$->temporary = true; } - | type_declaration_no_options[typeDecl] DAS_IMPLICIT { + | type_declaration_no_options_no_dim[typeDecl] DAS_IMPLICIT { $$ = $typeDecl; $$->implicit = true; } - | type_declaration_no_options[typeDecl] '-' '#' { + | type_declaration_no_options_no_dim[typeDecl] '-' '#' { $typeDecl->temporary = false; $typeDecl->removeTemporary = true; $$ = $typeDecl; } - | type_declaration_no_options[typeDecl] EQUEQU DAS_CONST { + | type_declaration_no_options_no_dim[typeDecl] EQUEQU DAS_CONST { $typeDecl->explicitConst = true; $$ = $typeDecl; } - | type_declaration_no_options[typeDecl] EQUEQU '&' { + | type_declaration_no_options_no_dim[typeDecl] EQUEQU '&' { $typeDecl->explicitRef = true; $$ = $typeDecl; } - | type_declaration_no_options[typeDecl] '*' { + | type_declaration_no_options_no_dim[typeDecl] '*' { $$ = new TypeDecl(Type::tPointer); $$->at = tokAt(scanner,@typeDecl); $$->firstType = TypeDeclPtr($typeDecl); @@ -2708,7 +2716,7 @@ type_declaration_no_options $$->smartPtr = true; $$->firstType = TypeDeclPtr($typeDecl); } - | type_declaration_no_options[typeDecl] QQ { + | type_declaration_no_options_no_dim[typeDecl] QQ { $$ = new TypeDecl(Type::tPointer); $$->at = tokAt(scanner,@typeDecl); $$->firstType = make_smart(Type::tPointer); diff --git a/src/parser/ds_parser.cpp b/src/parser/ds_parser.cpp index 99b062eb3..dc871ad68 100644 --- a/src/parser/ds_parser.cpp +++ b/src/parser/ds_parser.cpp @@ -970,16 +970,16 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 2 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 14587 +#define YYLAST 14273 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 217 /* YYNNTS -- Number of nonterminals. */ #define YYNNTS 288 /* YYNRULES -- Number of rules. */ -#define YYNRULES 866 +#define YYNRULES 865 /* YYNSTATES -- Number of states. */ -#define YYNSTATES 1631 +#define YYNSTATES 1629 /* YYMAXUTOK -- Last valid token kind. */ #define YYMAXUTOK 444 @@ -1073,67 +1073,67 @@ static const yytype_int16 yyrline[] = 1253, 1254, 1255, 1256, 1257, 1258, 1259, 1260, 1261, 1262, 1263, 1264, 1265, 1266, 1270, 1275, 1281, 1287, 1298, 1299, 1303, 1304, 1308, 1312, 1319, 1319, 1319, 1325, 1325, 1325, - 1334, 1368, 1371, 1374, 1377, 1383, 1384, 1395, 1399, 1402, - 1410, 1410, 1410, 1413, 1419, 1422, 1426, 1430, 1437, 1443, - 1447, 1451, 1454, 1457, 1465, 1468, 1471, 1479, 1482, 1490, - 1493, 1496, 1504, 1510, 1511, 1512, 1516, 1517, 1521, 1522, - 1526, 1531, 1539, 1545, 1551, 1560, 1572, 1575, 1581, 1581, - 1581, 1584, 1584, 1584, 1589, 1589, 1589, 1597, 1597, 1597, - 1603, 1613, 1624, 1639, 1642, 1648, 1649, 1656, 1667, 1668, - 1669, 1673, 1674, 1675, 1676, 1680, 1685, 1693, 1694, 1698, - 1703, 1710, 1717, 1717, 1726, 1727, 1728, 1729, 1730, 1731, - 1732, 1736, 1737, 1738, 1739, 1740, 1741, 1742, 1743, 1744, - 1745, 1746, 1747, 1748, 1749, 1750, 1751, 1752, 1753, 1754, - 1758, 1759, 1760, 1761, 1766, 1767, 1768, 1769, 1770, 1771, + 1334, 1368, 1371, 1374, 1377, 1383, 1384, 1398, 1401, 1409, + 1409, 1409, 1412, 1418, 1421, 1425, 1429, 1436, 1442, 1446, + 1450, 1453, 1456, 1464, 1467, 1470, 1478, 1481, 1489, 1492, + 1495, 1503, 1509, 1510, 1511, 1515, 1516, 1520, 1521, 1525, + 1530, 1538, 1544, 1550, 1559, 1571, 1574, 1580, 1580, 1580, + 1583, 1583, 1583, 1588, 1588, 1588, 1596, 1596, 1596, 1602, + 1612, 1623, 1638, 1641, 1647, 1648, 1655, 1666, 1667, 1668, + 1672, 1673, 1674, 1675, 1679, 1684, 1692, 1693, 1697, 1702, + 1709, 1716, 1716, 1725, 1726, 1727, 1728, 1729, 1730, 1731, + 1735, 1736, 1737, 1738, 1739, 1740, 1741, 1742, 1743, 1744, + 1745, 1746, 1747, 1748, 1749, 1750, 1751, 1752, 1753, 1757, + 1758, 1759, 1760, 1765, 1766, 1767, 1768, 1769, 1770, 1771, 1772, 1773, 1774, 1775, 1776, 1777, 1778, 1779, 1780, 1781, - 1782, 1787, 1794, 1806, 1811, 1821, 1825, 1832, 1835, 1835, - 1835, 1840, 1840, 1840, 1853, 1857, 1861, 1866, 1873, 1873, - 1873, 1880, 1884, 1893, 1897, 1900, 1906, 1907, 1908, 1909, + 1786, 1793, 1805, 1810, 1820, 1824, 1831, 1834, 1834, 1834, + 1839, 1839, 1839, 1852, 1856, 1860, 1865, 1872, 1872, 1872, + 1879, 1883, 1892, 1896, 1899, 1905, 1906, 1907, 1908, 1909, 1910, 1911, 1912, 1913, 1914, 1915, 1916, 1917, 1918, 1919, 1920, 1921, 1922, 1923, 1924, 1925, 1926, 1927, 1928, 1929, 1930, 1931, 1932, 1933, 1934, 1935, 1936, 1937, 1938, 1939, - 1940, 1941, 1947, 1948, 1949, 1950, 1951, 1964, 1965, 1966, - 1967, 1968, 1969, 1970, 1971, 1972, 1973, 1974, 1975, 1978, - 1981, 1982, 1985, 1985, 1985, 1988, 1993, 1997, 2001, 2001, - 2001, 2006, 2009, 2013, 2013, 2013, 2018, 2021, 2022, 2023, - 2024, 2025, 2026, 2027, 2028, 2029, 2031, 2035, 2036, 2041, - 2045, 2046, 2047, 2048, 2049, 2050, 2051, 2055, 2059, 2063, - 2067, 2071, 2075, 2079, 2083, 2087, 2094, 2095, 2096, 2100, - 2101, 2102, 2106, 2107, 2111, 2112, 2113, 2117, 2118, 2122, - 2133, 2136, 2136, 2155, 2154, 2169, 2168, 2181, 2190, 2199, - 2209, 2210, 2214, 2217, 2226, 2227, 2231, 2234, 2237, 2253, - 2262, 2263, 2267, 2270, 2273, 2287, 2288, 2292, 2298, 2304, - 2307, 2311, 2317, 2326, 2327, 2328, 2332, 2333, 2337, 2344, - 2349, 2358, 2364, 2375, 2378, 2383, 2388, 2396, 2407, 2410, - 2410, 2430, 2431, 2435, 2436, 2437, 2441, 2444, 2444, 2463, - 2466, 2469, 2484, 2503, 2504, 2505, 2510, 2510, 2536, 2537, - 2541, 2542, 2542, 2546, 2547, 2548, 2552, 2562, 2567, 2562, - 2579, 2584, 2579, 2599, 2600, 2604, 2605, 2609, 2615, 2616, - 2620, 2621, 2622, 2626, 2629, 2635, 2640, 2635, 2654, 2661, - 2666, 2675, 2681, 2692, 2693, 2694, 2695, 2696, 2697, 2698, + 1940, 1946, 1947, 1948, 1949, 1950, 1963, 1964, 1965, 1966, + 1967, 1968, 1969, 1970, 1971, 1972, 1973, 1974, 1977, 1980, + 1981, 1984, 1984, 1984, 1987, 1992, 1996, 2000, 2000, 2000, + 2005, 2008, 2012, 2012, 2012, 2017, 2020, 2021, 2022, 2023, + 2024, 2025, 2026, 2027, 2028, 2030, 2034, 2035, 2040, 2044, + 2045, 2046, 2047, 2048, 2049, 2050, 2054, 2058, 2062, 2066, + 2070, 2074, 2078, 2082, 2086, 2093, 2094, 2095, 2099, 2100, + 2101, 2105, 2106, 2110, 2111, 2112, 2116, 2117, 2121, 2132, + 2135, 2135, 2154, 2153, 2168, 2167, 2180, 2189, 2198, 2208, + 2209, 2213, 2216, 2225, 2226, 2230, 2233, 2236, 2252, 2261, + 2262, 2266, 2269, 2272, 2286, 2287, 2291, 2297, 2303, 2306, + 2310, 2316, 2325, 2326, 2327, 2331, 2332, 2336, 2343, 2348, + 2357, 2363, 2374, 2377, 2382, 2387, 2395, 2406, 2409, 2409, + 2429, 2430, 2434, 2435, 2436, 2440, 2443, 2443, 2462, 2465, + 2468, 2483, 2502, 2503, 2504, 2509, 2509, 2535, 2536, 2540, + 2541, 2541, 2545, 2546, 2547, 2551, 2561, 2566, 2561, 2578, + 2583, 2578, 2598, 2599, 2603, 2604, 2608, 2614, 2615, 2619, + 2620, 2621, 2625, 2628, 2634, 2639, 2634, 2653, 2660, 2665, + 2674, 2680, 2691, 2692, 2693, 2694, 2695, 2696, 2697, 2698, 2699, 2700, 2701, 2702, 2703, 2704, 2705, 2706, 2707, 2708, - 2709, 2710, 2711, 2712, 2713, 2714, 2715, 2716, 2717, 2718, - 2722, 2723, 2724, 2725, 2726, 2727, 2728, 2729, 2733, 2744, - 2748, 2755, 2767, 2774, 2783, 2788, 2791, 2804, 2804, 2804, - 2817, 2821, 2828, 2832, 2839, 2840, 2841, 2842, 2843, 2858, - 2864, 2864, 2864, 2868, 2873, 2880, 2880, 2887, 2891, 2895, - 2900, 2905, 2910, 2915, 2919, 2923, 2928, 2932, 2936, 2941, - 2941, 2941, 2947, 2954, 2954, 2954, 2959, 2959, 2959, 2965, - 2965, 2965, 2970, 2974, 2974, 2974, 2979, 2979, 2979, 2988, - 2992, 2992, 2992, 2997, 2997, 2997, 3006, 3010, 3010, 3010, - 3015, 3015, 3015, 3024, 3024, 3024, 3030, 3030, 3030, 3039, - 3042, 3053, 3069, 3069, 3074, 3079, 3069, 3104, 3104, 3109, - 3115, 3104, 3140, 3140, 3145, 3150, 3140, 3180, 3181, 3182, - 3183, 3184, 3188, 3195, 3202, 3208, 3214, 3221, 3228, 3234, - 3244, 3252, 3257, 3264, 3265, 3270, 3271, 3275, 3276, 3280, - 3281, 3285, 3286, 3287, 3291, 3292, 3293, 3297, 3298, 3302, - 3308, 3315, 3323, 3330, 3338, 3347, 3347, 3347, 3355, 3355, - 3355, 3362, 3362, 3362, 3369, 3369, 3369, 3380, 3383, 3389, - 3403, 3409, 3415, 3421, 3421, 3421, 3431, 3436, 3443, 3451, - 3456, 3463, 3463, 3463, 3473, 3473, 3473, 3483, 3483, 3483, - 3493, 3501, 3501, 3501, 3509, 3516, 3516, 3516, 3526, 3531, - 3538, 3541, 3547, 3555, 3564, 3572, 3580, 3593, 3594, 3598, - 3599, 3604, 3607, 3610, 3613, 3616, 3619 + 2709, 2710, 2711, 2712, 2713, 2714, 2715, 2716, 2717, 2721, + 2722, 2723, 2724, 2725, 2726, 2727, 2728, 2732, 2743, 2747, + 2754, 2766, 2773, 2782, 2787, 2790, 2803, 2803, 2803, 2816, + 2820, 2827, 2831, 2838, 2839, 2840, 2841, 2842, 2857, 2863, + 2863, 2863, 2867, 2872, 2879, 2879, 2886, 2890, 2894, 2899, + 2904, 2909, 2914, 2918, 2922, 2927, 2931, 2935, 2940, 2940, + 2940, 2946, 2953, 2953, 2953, 2958, 2958, 2958, 2964, 2964, + 2964, 2969, 2973, 2973, 2973, 2978, 2978, 2978, 2987, 2991, + 2991, 2991, 2996, 2996, 2996, 3005, 3009, 3009, 3009, 3014, + 3014, 3014, 3023, 3023, 3023, 3029, 3029, 3029, 3038, 3041, + 3052, 3068, 3068, 3073, 3078, 3068, 3103, 3103, 3108, 3114, + 3103, 3139, 3139, 3144, 3149, 3139, 3179, 3180, 3181, 3182, + 3183, 3187, 3194, 3201, 3207, 3213, 3220, 3227, 3233, 3243, + 3251, 3256, 3263, 3264, 3269, 3270, 3274, 3275, 3279, 3280, + 3284, 3285, 3286, 3290, 3291, 3292, 3296, 3297, 3301, 3307, + 3314, 3322, 3329, 3337, 3346, 3346, 3346, 3354, 3354, 3354, + 3361, 3361, 3361, 3368, 3368, 3368, 3379, 3382, 3388, 3402, + 3408, 3414, 3420, 3420, 3420, 3430, 3435, 3442, 3450, 3455, + 3462, 3462, 3462, 3472, 3472, 3472, 3482, 3482, 3482, 3492, + 3500, 3500, 3500, 3508, 3515, 3515, 3515, 3525, 3530, 3537, + 3540, 3546, 3554, 3563, 3571, 3579, 3592, 3593, 3597, 3598, + 3603, 3606, 3609, 3612, 3615, 3618 }; #endif @@ -1279,12 +1279,12 @@ yysymbol_name (yysymbol_kind_t yysymbol) } #endif -#define YYPACT_NINF (-1431) +#define YYPACT_NINF (-1434) #define yypact_value_is_default(Yyn) \ ((Yyn) == YYPACT_NINF) -#define YYTABLE_NINF (-741) +#define YYTABLE_NINF (-740) #define yytable_value_is_error(Yyn) \ ((Yyn) == YYTABLE_NINF) @@ -1293,170 +1293,169 @@ yysymbol_name (yysymbol_kind_t yysymbol) STATE-NUM. */ static const yytype_int16 yypact[] = { - -1431, 66, -1431, -1431, 38, 41, 242, -91, -1431, -101, - 442, 442, 442, -1431, 98, 67, -1431, -1431, -33, -1431, - -1431, -1431, 479, -1431, 113, -1431, -1431, -1431, -1431, -1431, - -1431, -1431, -1431, -1431, -1431, 115, -1431, 45, 122, 194, - -1431, -1431, -1431, -1431, 242, -1431, 27, -1431, 442, 442, - -1431, -1431, 113, -1431, -1431, -1431, -1431, -1431, 223, 323, - -1431, -1431, -1431, 67, 67, 67, 344, -1431, 638, 212, - -1431, -1431, -1431, -1431, 578, 594, 613, -1431, 616, 56, - 38, 425, 41, 410, 534, -1431, 521, 521, -1431, 584, - 485, 6, 576, 624, 604, 607, 615, -1431, 617, 475, - -1431, -1431, -69, 38, 67, 67, 67, 67, -1431, -1431, - -1431, -1431, -1431, -1431, -1431, 620, -1431, -1431, -1431, -1431, - -1431, 612, -1431, -1431, -1431, -1431, -1431, 590, 89, -1431, - -1431, -1431, -1431, 736, -1431, -1431, -1431, -1431, -1431, 625, - -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, 621, - -1431, 182, -1431, 575, 654, 638, 14419, -1431, -13, 702, - -1431, -73, -1431, -1431, 628, -1431, -1431, -1431, -1431, -1431, - -1431, -1431, 208, -1431, 634, -1431, 630, 647, 649, -1431, - -1431, 12914, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, - -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, - -1431, -1431, -1431, -1431, -1431, -1431, -1431, 797, 798, -1431, - 622, 650, -1431, 455, -1431, 667, -1431, 658, 38, 38, - 637, 50, -1431, -1431, -1431, 89, -1431, 9858, -1431, -1431, - -1431, 671, 675, -1431, -1431, -1431, -1431, -1431, -1431, -1431, - -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, - -1431, -1431, -1431, 678, 642, -1431, -1431, -1431, -1431, -1431, - -1431, -1431, -1431, -1431, -1431, -1431, -1431, 833, -1431, -1431, - -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, - 687, 653, -1431, -1431, 124, 669, -1431, -1431, -1431, -1431, - -1431, -1431, -1431, -1431, -1431, -1431, -1431, 688, 676, 690, - -1431, -73, 267, -1431, 38, 659, 831, 462, -1431, -1431, - 682, 684, 692, 674, 697, 698, -1431, -1431, -1431, 680, - -1431, -1431, -1431, -1431, -1431, 700, -1431, -1431, -1431, -1431, - -1431, -1431, -1431, -1431, -1431, -1431, -1431, 704, -1431, -1431, - -1431, 705, 707, -1431, -1431, -1431, -1431, 708, 709, 683, - 98, -1431, -1431, -1431, -1431, -1431, 976, 713, -1431, -1431, - -1431, -1431, -1431, -1431, -1431, 737, 769, -1431, 695, -1431, - 261, -1431, -30, 9858, -1431, 2363, 202, -1431, 98, -1431, - -1431, -1431, 50, 699, -1431, 9053, 740, 741, 9858, -1431, - -39, -1431, -1431, -1431, 9053, -1431, -1431, 743, -1431, 356, - 370, 378, -1431, -1431, 9053, 332, -1431, -1431, -1431, 2, - -1431, -1431, -1431, 13, 5211, -1431, 703, 9614, 415, 9713, - 417, -1431, -1431, 9053, -1431, -1431, 188, -28, -1431, 713, - -1431, 719, 721, 9053, -1431, -1431, -1431, -1431, -1431, 131, - 710, 726, 26, 3183, -1431, -1431, 650, 337, 5413, 714, - 9053, 752, 728, 732, 715, -1431, 748, 742, 768, 5615, - 71, 364, 746, -1431, 381, 747, 751, 3385, 9053, 9053, - 108, 108, 108, 724, 729, 734, 735, 738, 744, -1431, - 9416, 9515, 5819, -1431, -1431, -1431, -1431, -1431, -1431, -1431, - 6021, 756, -1431, 6225, 916, -1431, 9053, 9053, 9053, 9053, - 9053, 4807, 9053, -1431, 745, -1431, -1431, 773, 777, 9053, - 949, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, - 551, -1431, -16, 779, -1431, 781, 782, 783, -1431, 786, - -1431, -1431, 903, -1431, -1431, -1431, -1431, 760, -1431, -1431, - -66, -1431, -1431, -1431, -1431, -1431, -1431, 1931, -1431, 759, - -1431, -1431, -1431, -1431, -1431, -1431, 390, -1431, 796, -1431, - -1431, 31, -1431, -1431, 761, 784, -1431, 10297, -1431, 934, - 599, -1431, -1431, -1431, 3789, 9858, 9858, 9858, 10407, 9858, - 9858, 765, 811, 9858, 622, 9858, 622, 9858, 622, 9957, - 812, 10442, -1431, 9053, -1431, -1431, -1431, -1431, 770, -1431, - -1431, 12437, 9053, -1431, 976, 802, -1431, 804, -25, -1431, - 805, 713, 814, 795, -1431, 807, 815, 10552, 790, 953, - -1431, -49, -1431, -1431, -1431, 12949, 188, -1431, 791, -1431, - -1431, 98, -1431, 803, 813, 824, -1431, 9053, 3789, -1431, - 818, 861, 10040, 985, 9858, 9053, 9053, 13690, 9053, 12949, - 820, -1431, -1431, 9053, -1431, -1431, 816, 857, 13690, 9053, - -1431, -1431, 9053, -1431, -1431, 9053, -1431, 9858, 3789, -1431, - 10040, 322, 322, 806, -1431, 760, -1431, -1431, -1431, 9053, - 9053, 9053, 9053, 9053, 9053, 188, 1708, 188, 2777, 188, - 13048, -1431, 632, -1431, 12949, -1431, 586, 188, -1431, 838, - 847, 322, 322, 120, 322, 322, 188, 1014, 843, 13690, - 843, 287, -1431, -1431, 12949, -1431, -1431, -1431, -1431, 5009, - -1431, -1431, -1431, -1431, -1431, -1431, -9, 872, 108, -1431, - 14216, 14311, 3991, 3991, 3991, 3991, 3991, 3991, 3991, 3991, - 9053, 9053, -1431, -1431, 9053, 3991, 3991, 9053, 9053, 9053, - 865, 3991, 9053, 431, 9053, 9053, 9053, 9053, 9053, 9053, - 3991, 3991, 9053, 9053, 9053, 3991, 3991, 3991, 9053, 3991, - 6427, 9053, 9053, 9053, 9053, 9053, 9053, 9053, 9053, 9053, - 9053, 125, 9053, -1431, 6629, -1431, 9053, -1431, 202, -1431, - 67, 1025, -73, -1431, 866, -1431, 3789, -1431, 10152, -106, - 154, 845, 414, -1431, 253, 346, -1431, -1431, -8, 411, - 669, 533, 669, 546, 669, -1431, 152, -1431, 233, -1431, - 9858, 828, 818, -1431, -1431, 12472, -1431, -1431, 9858, -1431, - -1431, 9858, -1431, -1431, -1431, 9053, 877, -1431, 879, -1431, - 9858, -1431, 3789, 9858, 9858, -1431, 18, 9858, 6831, 7033, - 9858, -1431, -1431, -1431, 9858, 843, -1431, 818, 9053, 9053, - 9053, 9053, 9053, 9053, 9053, 9053, 9053, 9053, 9053, 9053, - 9053, 9053, 9053, 9053, 9053, 9053, 650, 519, 838, 13690, - 10587, -1431, -1431, 9858, 9858, 10697, 9858, -1431, -1431, 10732, - 9858, 843, 9858, 9858, 843, 9858, 579, -1431, 10040, -1431, - 872, 10842, 10877, 10987, 11022, 11132, 11167, 21, 108, 836, - 139, 2980, 4195, 7235, 13147, 863, -10, 167, 871, 252, - 28, 7437, -10, 497, 34, 9053, 882, 9053, -1431, -1431, - 9858, -1431, 9858, -1431, 9053, 597, 35, 9053, 884, -1431, - 42, 188, 9053, 839, 868, 858, 873, 395, -1431, -1431, - 569, 9053, 760, 4399, -1431, 231, 863, 870, 908, 908, - -1431, -1431, -3, 622, -1431, 885, 876, -1431, -1431, 891, - 889, -1431, -1431, 108, 108, 108, -1431, -1431, 2130, -1431, - 2130, -1431, 2130, -1431, 2130, -1431, 2130, -1431, 2130, -1431, - 2130, -1431, 2130, 486, 486, 191, -1431, 2130, -1431, 2130, - 191, 1978, 1978, 892, -1431, 2130, 280, 893, -1431, 12571, - -18, -18, 759, 13690, 486, 486, -1431, 2130, -1431, 2130, - 14030, 13905, 13940, -1431, 2130, -1431, 2130, -1431, 2130, 13780, - -1431, 2130, 14342, 13182, 14058, 14148, 1301, 191, 191, 733, - 733, 280, 280, 280, 432, 9053, 894, 895, 440, 9053, - 1076, 12670, -1431, 266, 13272, 910, 271, 631, 1028, 923, - -1431, -1431, 10262, -1431, -1431, -1431, -1431, 9858, -1431, -1431, - 928, -1431, -1431, 914, -1431, 915, -1431, 917, 9957, -1431, - 812, -1431, 235, 713, -1431, -1431, 713, 713, 11277, -1431, - 1068, -56, -1431, 10040, 864, 905, 9053, 547, -1431, 282, - -74, 944, 11312, 548, 9858, 9858, 9858, 960, 900, 13690, - 13690, 13690, 13690, 13690, 13690, 13690, 13690, 13690, 13690, 13690, - 13690, 13690, 13690, 13690, 13690, 13690, 13690, -1431, 9858, 904, - 907, -1431, 9053, 1008, 1063, -1431, 1188, -1431, 1786, 911, - 2283, 2697, 913, 2899, 872, 622, -1431, -1431, -1431, -1431, - -1431, 906, 9053, -1431, 9053, 9053, 9053, 4603, 12437, 7, - 9053, 467, 481, 167, -1431, -1431, 918, -1431, 9053, 9053, - -1431, 920, -1431, 9053, 481, 478, 922, -1431, -1431, 9053, - 13690, -1431, -1431, 293, 348, 13307, 9053, -1431, -1431, 2575, - 9053, 44, -1431, -1431, 9053, 9053, 9858, 622, 650, -1431, - -1431, 9053, -1431, 1482, 872, 289, 9255, -1431, -1431, -1431, - 307, 283, 969, 970, 974, 975, -1431, 315, 669, -1431, - 9053, -1431, 9053, -1431, -1431, -1431, 7639, 9053, -1431, 924, - 932, -1431, -1431, 9053, 933, -1431, 12705, 9053, 7841, 935, - -1431, 12804, -1431, -1431, -1431, -1431, -1431, 973, -1431, -1431, - 196, -1431, 15, -1431, -1431, -1431, -1431, -1431, 713, -1431, - -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, - -1431, -1431, -1431, 9858, 937, -1431, 989, 9053, -1431, -1431, - 357, -1431, -1431, 109, -1431, 945, 366, -1431, -1431, 3102, - 3305, 3507, -1431, -1431, 3709, 9053, -1431, 13690, -1431, -1431, - -1431, -1431, -1431, -1431, -1431, -1431, -1431, 948, 669, 8043, - 508, 11422, 13690, 13690, -10, 167, 13690, 950, 153, 863, - -1431, -1431, 13690, 871, -1431, 512, -10, 952, -1431, -1431, - -1431, -1431, 520, -1431, -1431, -1431, 529, -1431, 532, 9053, - 11457, 11567, 3911, 669, -1431, 12949, -1431, 981, 622, 954, - 4399, 997, 955, 437, -1431, -1431, -1431, -1431, -3, 961, - 135, 9858, 11602, 9858, 11712, -1431, 302, 11747, -1431, 9053, - 13815, 9053, -1431, 11857, -1431, 308, 9053, -1431, -1431, -1431, - 1141, 15, -1431, -1431, 631, -1431, -1431, -1431, 713, 9053, - -1431, 13690, 962, 963, -1431, -1431, -1431, 1009, 9053, -1431, - -1431, -1431, -1431, 966, 968, 838, 9053, 9053, 9053, 971, - 1112, 972, 978, 8245, 135, -1431, 311, 9053, 160, 167, - -1431, 9053, 9053, 9053, 9053, 478, -1431, 9053, 9053, 979, - 9053, 9053, 536, -1431, -1431, -1431, 993, 569, 3587, -1431, - 669, -1431, 330, -1431, 558, 9858, -39, -1431, -1431, 8447, - -1431, -1431, 3988, -1431, 549, -1431, -1431, -1431, 9858, 11892, - 12002, -1431, -1431, 12037, -1431, -1431, 1141, 188, 980, 1112, - 1112, 1000, 12147, 983, 987, 992, 9053, 9053, 984, 191, - 191, 191, 9053, -1431, 1112, 481, -1431, 12182, -1431, -1431, - 13397, 9053, 9053, -1431, 12292, 13690, 13690, 13397, -1431, 1021, - 191, 9053, -1431, 1021, 13397, 9053, 324, -1431, -1431, 8649, - 8851, -1431, -1431, -1431, -1431, -1431, 13690, 650, 994, 9858, - -39, 940, 9053, 9053, 13780, -1431, -1431, 555, -1431, -1431, - -1431, 14419, -1431, -1431, -1431, 481, 481, 9053, -1431, 1112, - 1112, 481, 843, 838, -1431, 843, 481, 74, -1431, 1154, - 998, 13690, 13690, 179, 1031, 1032, 999, 1034, 1003, 13397, - -1431, 324, 9053, 9053, 13690, -1431, -1431, 940, 9053, 9053, - 13436, 13815, -1431, -1431, -1431, 1035, 14419, 118, 132, 12327, - 481, 481, 136, 1006, 1013, 1015, 172, -1431, 9053, 1005, - 9053, 9053, 1010, 1043, -1431, -1431, -1431, 1018, -1431, 13690, - 9053, 13526, 13561, -1431, -1431, -1431, 650, -1431, -1431, -1431, - 180, 189, -1431, -1431, -1431, -1431, -1431, 13690, -1431, 13690, - 13690, -1431, -1431, -1431, 13651, -1431, -1431, -1431, -1431, -1431, - -1431 + -1434, 86, -1434, -1434, 50, -51, 371, -27, -1434, 90, + 329, 329, 329, -1434, 11, 130, -1434, -1434, 43, -1434, + -1434, -1434, 404, -1434, 178, -1434, -1434, -1434, -1434, -1434, + -1434, -1434, -1434, -1434, -1434, 7, -1434, 58, 70, 93, + -1434, -1434, -1434, -1434, 371, -1434, 38, -1434, 329, 329, + -1434, -1434, 178, -1434, -1434, -1434, -1434, -1434, 141, -1434, + -1434, -1434, 130, 130, 130, 110, -1434, 636, 62, -1434, + -1434, -1434, -1434, 621, 626, 628, -1434, 629, 37, 50, + 297, -51, 145, 221, -1434, 613, 613, -1434, 320, 347, + -2, 369, 630, 390, 411, 432, 441, 502, -1434, -1434, + -77, 50, 130, 130, 130, 130, -1434, -1434, -1434, -1434, + -1434, -1434, -1434, 495, -1434, -1434, -1434, -1434, -1434, 511, + -1434, -1434, -1434, -1434, -1434, 561, 123, -1434, -1434, -1434, + -1434, 641, -1434, -1434, -1434, -1434, -1434, 547, -1434, -1434, + -1434, -1434, -1434, -1434, -1434, -1434, -1434, 570, -1434, 228, + -1434, 576, 609, 636, 2095, -1434, 417, 656, -1434, -71, + -1434, -1434, 627, -1434, -1434, -1434, -1434, -1434, -1434, -1434, + 239, -1434, 586, -1434, 598, 608, 620, -1434, -1434, 12708, + -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, + -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, + -1434, -1434, -1434, -1434, -1434, 741, 771, -1434, 594, 642, + -1434, 488, -1434, 651, -1434, 646, 50, 50, 611, 33, + -1434, -1434, -1434, 123, -1434, 9723, -1434, -1434, -1434, 661, + 662, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, + -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, + -1434, 664, 622, -1434, -1434, -1434, -1434, -1434, -1434, -1434, + -1434, -1434, -1434, -1434, -1434, 814, -1434, -1434, -1434, -1434, + -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, 671, 633, + -1434, -1434, -81, 652, -1434, -1434, -1434, -1434, -1434, -1434, + -1434, -1434, -1434, -1434, -1434, 668, 653, 669, -1434, -71, + 82, -1434, 50, 640, 798, 489, -1434, -1434, 665, 666, + 667, 643, 670, 672, -1434, -1434, -1434, 650, -1434, -1434, + -1434, -1434, -1434, 676, -1434, -1434, -1434, -1434, -1434, -1434, + -1434, -1434, -1434, -1434, -1434, 678, -1434, -1434, -1434, 680, + 685, -1434, -1434, -1434, -1434, 691, 695, 663, 11, -1434, + -1434, -1434, -1434, -1434, 402, 674, -1434, -1434, -1434, -1434, + -1434, -1434, -1434, 721, 755, -1434, 679, -1434, 73, -1434, + 87, 9723, -1434, 2361, 433, -1434, 11, -1434, -1434, -1434, + 33, 684, -1434, 9051, 725, 728, 9723, -1434, 140, -1434, + -1434, -1434, 9051, -1434, -1434, 730, -1434, 344, 353, 356, + -1434, -1434, 9051, -111, -1434, -1434, -1434, 14, -1434, -1434, + -1434, -1, 5209, -1434, 689, 945, 437, 9612, 459, -1434, + -1434, 9051, -1434, -1434, 169, -73, -1434, 674, -1434, 707, + 708, 9051, -1434, -1434, -1434, -1434, -1434, 578, 690, 710, + 28, 3181, -1434, -1434, 642, 118, 5411, 693, 9051, 738, + 714, 715, 697, -1434, 732, 717, 750, 5613, -94, 379, + 720, -1434, 381, 724, 727, 3383, 9051, 9051, 129, 129, + 129, 712, 713, 716, 718, 722, 723, -1434, 9414, 9513, + 5817, -1434, -1434, -1434, -1434, -1434, -1434, -1434, 6019, 734, + -1434, 6223, 893, -1434, 9051, 9051, 9051, 9051, 9051, 4805, + 9051, -1434, 729, -1434, -1434, 753, 756, 9051, 928, -1434, + -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, 579, -1434, + -72, 759, -1434, 760, 762, 763, -1434, 765, -1434, -1434, + 881, -1434, -1434, -1434, -1434, 740, -1434, -1434, -49, -1434, + -1434, -1434, -1434, -1434, -1434, 1929, -1434, 736, -1434, -1434, + -1434, -1434, -1434, -1434, 306, -1434, 772, -1434, -1434, 23, + -1434, -1434, 742, 766, -1434, 10091, -1434, 911, 597, -1434, + -1434, -1434, 3787, 9723, 9723, 9723, 10201, 9723, 9723, 743, + 787, 9723, 594, 9723, 594, 9723, 594, 9822, 792, 10236, + -1434, 9051, -1434, -1434, -1434, -1434, 751, -1434, -1434, 12231, + 9051, -1434, 402, 781, -1434, 785, -66, -1434, 786, 674, + 789, 782, -1434, 793, 795, 10346, 764, 935, -1434, 94, + -1434, -1434, -1434, 12743, 169, -1434, 767, -1434, -1434, 11, + -1434, 788, 790, 797, -1434, 9051, 3787, -1434, 796, 848, + 9835, 967, 9723, 9051, 9051, 13484, 9051, 12743, 800, -1434, + -1434, 9051, -1434, -1434, 802, 831, 13484, 9051, -1434, -1434, + 9051, -1434, -1434, 9051, -1434, 9723, 3787, -1434, 9835, 367, + 367, 779, -1434, 740, -1434, -1434, -1434, 9051, 9051, 9051, + 9051, 9051, 9051, 169, 1706, 169, 2775, 169, 12842, -1434, + 637, -1434, 12743, -1434, 585, 169, -1434, 810, 821, 367, + 367, -20, 367, 367, 169, 988, 815, 13484, 815, 263, + -1434, -1434, 12743, -1434, -1434, -1434, -1434, 5007, -1434, -1434, + -1434, -1434, -1434, -1434, -55, 844, 129, -1434, 9301, 14010, + 3989, 3989, 3989, 3989, 3989, 3989, 3989, 3989, 9051, 9051, + -1434, -1434, 9051, 3989, 3989, 9051, 9051, 9051, 835, 3989, + 9051, 479, 9051, 9051, 9051, 9051, 9051, 9051, 3989, 3989, + 9051, 9051, 9051, 3989, 3989, 3989, 9051, 3989, 6425, 9051, + 9051, 9051, 9051, 9051, 9051, 9051, 9051, 9051, 9051, -29, + 9051, -1434, 6627, -1434, 9051, -1434, 433, -1434, 130, 998, + -71, -1434, 838, -1434, 3787, -1434, 9946, 248, 520, 813, + 468, -1434, 522, 523, -1434, -1434, 5, 531, 652, 545, + 652, 550, 652, -1434, 151, -1434, 298, -1434, 9723, 801, + 796, -1434, -1434, 12266, -1434, -1434, 9723, -1434, -1434, 9723, + -1434, -1434, -1434, 9051, 841, -1434, 842, -1434, 9723, -1434, + 3787, 9723, 9723, -1434, 10, 9723, 6829, 7031, 9723, -1434, + -1434, -1434, 9723, 815, -1434, 796, 9051, 9051, 9051, 9051, + 9051, 9051, 9051, 9051, 9051, 9051, 9051, 9051, 9051, 9051, + 9051, 9051, 9051, 9051, 642, 938, 810, 13484, 10381, -1434, + -1434, 9723, 9723, 10491, 9723, -1434, -1434, 10526, 9723, 815, + 9723, 9723, 815, 9723, 256, -1434, 9835, -1434, 844, 10636, + 10671, 10781, 10816, 10926, 10961, 24, 129, 836, 162, 2978, + 4193, 7233, 12941, 825, -5, 156, 826, -7, 26, 7435, + -5, 590, 36, 9051, 834, 9051, -1434, -1434, 9723, -1434, + 9723, -1434, 9051, 592, 39, 9051, 876, -1434, 44, 169, + 9051, 850, 846, 851, 853, 409, -1434, -1434, 588, 9051, + 740, 4397, -1434, 260, 825, 855, 898, 898, -1434, -1434, + -42, 594, -1434, 880, 857, -1434, -1434, 882, 864, -1434, + -1434, 129, 129, 129, -1434, -1434, 2128, -1434, 2128, -1434, + 2128, -1434, 2128, -1434, 2128, -1434, 2128, -1434, 2128, -1434, + 2128, 1257, 1257, 1894, -1434, 2128, -1434, 2128, 1894, 1074, + 1074, 867, -1434, 2128, 100, 868, -1434, 12365, -54, -54, + 736, 13484, 1257, 1257, -1434, 2128, -1434, 2128, 13824, 13699, + 13734, -1434, 2128, -1434, 2128, -1434, 2128, 13574, -1434, 2128, + 14105, 12976, 13852, 13942, 1299, 1894, 1894, 126, 126, 100, + 100, 100, 481, 9051, 869, 870, 482, 9051, 1073, 12464, + -1434, 261, 13066, 904, 291, 631, 1018, 906, -1434, -1434, + 10056, -1434, -1434, -1434, -1434, 9723, -1434, -1434, 919, -1434, + -1434, 897, -1434, 899, -1434, 902, 9822, -1434, 792, -1434, + 336, 674, -1434, -1434, 674, 674, 11071, -1434, 1050, -28, + -1434, 9835, 862, 1784, 9051, 551, -1434, 267, 170, 929, + 11106, 553, 9723, 9723, 9723, 2281, 885, 13484, 13484, 13484, + 13484, 13484, 13484, 13484, 13484, 13484, 13484, 13484, 13484, 13484, + 13484, 13484, 13484, 13484, 13484, -1434, 9723, 888, 889, -1434, + 9051, 2695, 2897, -1434, 3100, -1434, 3303, 890, 3505, 3707, + 891, 3909, 844, 594, -1434, -1434, -1434, -1434, -1434, 894, + 9051, -1434, 9051, 9051, 9051, 4601, 12231, 4, 9051, 484, + 497, 156, -1434, -1434, 896, -1434, 9051, 9051, -1434, 900, + -1434, 9051, 497, 491, 903, -1434, -1434, 9051, 13484, -1434, + -1434, 349, 395, 13101, 9051, -1434, -1434, 2573, 9051, 45, + -1434, -1434, 9051, 9051, 9723, 594, 642, -1434, -1434, 9051, + -1434, 1480, 844, 333, 9253, -1434, -1434, -1434, 335, 269, + 933, 937, 940, 941, -1434, 337, 652, -1434, 9051, -1434, + 9051, -1434, -1434, -1434, 7637, 9051, -1434, 917, 905, -1434, + -1434, 9051, 907, -1434, 12499, 9051, 7839, 908, -1434, 12598, + -1434, -1434, -1434, -1434, -1434, 936, -1434, -1434, 120, -1434, + 66, -1434, -1434, -1434, -1434, -1434, 674, -1434, -1434, -1434, + -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, + -1434, 9723, 909, -1434, 947, 9051, -1434, -1434, 446, -1434, + -1434, 177, -1434, 912, 398, -1434, -1434, 3986, 4113, 4190, + -1434, -1434, 4317, 9051, -1434, 13484, -1434, -1434, -1434, -1434, + -1434, -1434, -1434, -1434, -1434, 910, 652, 8041, 514, 11216, + 13484, 13484, -5, 156, 13484, 915, 193, 825, -1434, -1434, + 13484, 826, -1434, 516, -5, 913, -1434, -1434, -1434, -1434, + 518, -1434, -1434, -1434, 519, -1434, 521, 9051, 11251, 11361, + 4394, 652, -1434, 12743, -1434, 948, 594, 916, 4397, 963, + 923, 342, -1434, -1434, -1434, -1434, -42, 924, 42, 9723, + 11396, 9723, 11506, -1434, 274, 11541, -1434, 9051, 13609, 9051, + -1434, 11651, -1434, 277, 9051, -1434, -1434, -1434, 1108, 66, + -1434, -1434, 631, -1434, -1434, -1434, 674, 9051, -1434, 13484, + 930, 931, -1434, -1434, -1434, 973, 9051, -1434, -1434, -1434, + -1434, 934, 943, 810, 9051, 9051, 9051, 944, 1076, 946, + 950, 8243, 42, -1434, 285, 9051, 223, 156, -1434, 9051, + 9051, 9051, 9051, 491, -1434, 9051, 9051, 951, 9051, 9051, + 529, -1434, -1434, -1434, 953, 588, 3585, -1434, 652, -1434, + 340, -1434, 472, 9723, 140, -1434, -1434, 8445, -1434, -1434, + 4598, -1434, 558, -1434, -1434, -1434, 9723, 11686, 11796, -1434, + -1434, 11831, -1434, -1434, 1108, 169, 939, 1076, 1076, 955, + 11941, 952, 954, 956, 9051, 9051, 957, 1894, 1894, 1894, + 9051, -1434, 1076, 497, -1434, 11976, -1434, -1434, 13191, 9051, + 9051, -1434, 12086, 13484, 13484, 13191, -1434, 970, 1894, 9051, + -1434, 970, 13191, 9051, 331, -1434, -1434, 8647, 8849, -1434, + -1434, -1434, -1434, -1434, 13484, 642, 958, 9723, 140, 731, + 9051, 9051, 13574, -1434, -1434, 560, -1434, -1434, -1434, 2095, + -1434, -1434, -1434, 497, 497, 9051, -1434, 1076, 1076, 497, + 815, 810, -1434, 815, 497, 128, -1434, 1101, 961, 13484, + 13484, 280, 981, 986, 960, 990, 964, 13191, -1434, 331, + 9051, 9051, 13484, -1434, -1434, 731, 9051, 9051, 13230, 13609, + -1434, -1434, -1434, 994, 2095, 133, 134, 12121, 497, 497, + 137, 965, 966, 968, 204, -1434, 9051, 971, 9051, 9051, + 972, 997, -1434, -1434, -1434, 974, -1434, 13484, 9051, 13320, + 13355, -1434, -1434, -1434, 642, -1434, -1434, -1434, 206, 224, + -1434, -1434, -1434, -1434, -1434, 13484, -1434, 13484, 13484, -1434, + -1434, -1434, 13445, -1434, -1434, -1434, -1434, -1434, -1434 }; /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM. @@ -1464,238 +1463,237 @@ static const yytype_int16 yypact[] = means the default is an error. */ static const yytype_int16 yydefact[] = { - 2, 120, 1, 296, 0, 0, 0, 601, 297, 0, - 593, 593, 593, 16, 0, 0, 15, 3, 0, 10, - 9, 8, 0, 7, 581, 6, 11, 5, 4, 13, + 2, 120, 1, 295, 0, 0, 0, 600, 296, 0, + 592, 592, 592, 16, 0, 0, 15, 3, 0, 10, + 9, 8, 0, 7, 580, 6, 11, 5, 4, 13, 12, 14, 92, 93, 91, 100, 102, 37, 53, 50, - 51, 39, 40, 41, 0, 42, 48, 38, 593, 593, - 22, 21, 581, 595, 594, 762, 752, 757, 0, 265, - 35, 107, 108, 0, 0, 0, 109, 111, 118, 0, - 106, 17, 619, 618, 213, 603, 620, 582, 583, 0, - 0, 0, 0, 43, 0, 49, 0, 0, 46, 0, - 0, 593, 0, 18, 0, 0, 0, 267, 0, 0, - 117, 112, 0, 0, 0, 0, 0, 0, 121, 215, - 214, 217, 212, 605, 604, 0, 622, 621, 625, 585, - 584, 587, 98, 99, 96, 97, 95, 0, 0, 94, - 103, 54, 52, 48, 45, 44, 596, 598, 600, 0, - 602, 19, 20, 23, 763, 753, 758, 266, 33, 36, - 116, 0, 113, 114, 115, 119, 0, 606, 0, 615, - 578, 516, 24, 25, 0, 87, 88, 85, 86, 84, - 83, 89, 0, 47, 0, 599, 0, 0, 0, 34, - 110, 0, 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, 0, 0, 127, - 122, 0, 607, 0, 616, 0, 626, 579, 0, 0, - 518, 0, 26, 27, 28, 0, 101, 0, 764, 754, - 759, 181, 182, 179, 130, 131, 133, 132, 134, 135, - 136, 137, 163, 164, 161, 162, 154, 165, 166, 155, - 152, 153, 180, 174, 0, 178, 167, 168, 169, 170, - 141, 142, 143, 138, 139, 140, 151, 0, 157, 158, - 156, 149, 150, 145, 144, 146, 147, 148, 129, 128, - 173, 0, 159, 160, 516, 125, 244, 218, 589, 660, - 663, 666, 667, 661, 664, 662, 665, 0, 613, 623, - 586, 516, 0, 104, 0, 0, 568, 566, 588, 90, - 0, 0, 0, 0, 0, 0, 633, 653, 634, 669, - 635, 639, 640, 641, 642, 659, 646, 647, 648, 649, - 650, 651, 652, 654, 655, 656, 657, 722, 638, 645, - 658, 729, 736, 636, 643, 637, 644, 0, 0, 0, - 0, 668, 684, 687, 685, 686, 749, 597, 674, 546, - 552, 183, 184, 177, 172, 185, 175, 171, 0, 123, - 295, 540, 0, 0, 216, 0, 608, 610, 0, 617, - 530, 627, 0, 0, 105, 0, 0, 0, 0, 567, - 0, 690, 713, 716, 0, 719, 709, 0, 677, 723, - 730, 737, 743, 746, 0, 0, 699, 704, 698, 0, - 712, 708, 701, 0, 0, 703, 688, 0, 765, 755, - 760, 186, 176, 0, 293, 294, 0, 516, 124, 126, - 246, 0, 0, 0, 63, 64, 76, 422, 423, 0, - 0, 0, 0, 281, 416, 279, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 280, 0, 0, 0, 0, - 0, 0, 0, 659, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 505, - 0, 0, 0, 344, 346, 345, 347, 348, 349, 350, - 0, 0, 29, 0, 219, 223, 0, 0, 0, 0, - 0, 0, 0, 328, 329, 420, 419, 0, 0, 0, - 0, 239, 234, 231, 230, 232, 233, 264, 245, 225, - 499, 224, 417, 0, 490, 71, 72, 69, 237, 70, - 238, 240, 299, 229, 489, 488, 487, 120, 493, 418, - 0, 226, 492, 491, 463, 424, 464, 351, 425, 0, - 421, 767, 771, 768, 769, 770, 0, 590, 0, 589, - 614, 531, 580, 517, 0, 0, 499, 0, 570, 571, - 0, 564, 565, 563, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 122, 0, 122, 0, 122, 0, - 0, 0, 695, 248, 706, 707, 700, 702, 0, 705, - 689, 0, 0, 751, 750, 0, 675, 0, 265, 547, - 0, 542, 0, 0, 553, 0, 0, 0, 0, 628, - 538, 557, 541, 805, 808, 0, 0, 270, 274, 273, - 278, 0, 317, 0, 0, 0, 841, 0, 0, 285, - 282, 0, 323, 0, 0, 0, 0, 268, 0, 0, - 0, 308, 311, 0, 243, 314, 0, 0, 57, 0, - 78, 845, 0, 814, 823, 0, 811, 0, 0, 290, - 287, 452, 453, 329, 339, 120, 263, 261, 262, 0, - 0, 0, 0, 0, 0, 0, 783, 0, 0, 0, - 821, 848, 0, 254, 0, 257, 0, 0, 850, 859, - 0, 429, 428, 465, 427, 426, 0, 0, 859, 323, - 859, 330, 241, 242, 0, 74, 342, 222, 497, 0, - 228, 235, 236, 284, 289, 298, 0, 337, 0, 227, + 51, 39, 40, 41, 0, 42, 48, 38, 592, 592, + 22, 21, 580, 594, 593, 761, 751, 756, 265, 35, + 107, 108, 0, 0, 0, 109, 111, 118, 0, 106, + 17, 618, 617, 213, 602, 619, 581, 582, 0, 0, + 0, 0, 43, 0, 49, 0, 0, 46, 0, 0, + 592, 0, 18, 0, 0, 0, 0, 0, 117, 112, + 0, 0, 0, 0, 0, 0, 121, 215, 214, 217, + 212, 604, 603, 0, 621, 620, 624, 584, 583, 586, + 98, 99, 96, 97, 95, 0, 0, 94, 103, 54, + 52, 48, 45, 44, 595, 597, 599, 0, 601, 19, + 20, 23, 762, 752, 757, 266, 33, 36, 116, 0, + 113, 114, 115, 119, 0, 605, 0, 614, 577, 515, + 24, 25, 0, 87, 88, 85, 86, 84, 83, 89, + 0, 47, 0, 598, 0, 0, 0, 34, 110, 0, + 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, 0, 0, 127, 122, 0, + 606, 0, 615, 0, 625, 578, 0, 0, 517, 0, + 26, 27, 28, 0, 101, 0, 763, 753, 758, 181, + 182, 179, 130, 131, 133, 132, 134, 135, 136, 137, + 163, 164, 161, 162, 154, 165, 166, 155, 152, 153, + 180, 174, 0, 178, 167, 168, 169, 170, 141, 142, + 143, 138, 139, 140, 151, 0, 157, 158, 156, 149, + 150, 145, 144, 146, 147, 148, 129, 128, 173, 0, + 159, 160, 515, 125, 244, 218, 588, 659, 662, 665, + 666, 660, 663, 661, 664, 0, 612, 622, 585, 515, + 0, 104, 0, 0, 567, 565, 587, 90, 0, 0, + 0, 0, 0, 0, 632, 652, 633, 668, 634, 638, + 639, 640, 641, 658, 645, 646, 647, 648, 649, 650, + 651, 653, 654, 655, 656, 721, 637, 644, 657, 728, + 735, 635, 642, 636, 643, 0, 0, 0, 0, 667, + 683, 686, 684, 685, 748, 596, 673, 545, 551, 183, + 184, 177, 172, 185, 175, 171, 0, 123, 294, 539, + 0, 0, 216, 0, 607, 609, 0, 616, 529, 626, + 0, 0, 105, 0, 0, 0, 0, 566, 0, 689, + 712, 715, 0, 718, 708, 0, 676, 722, 729, 736, + 742, 745, 0, 0, 698, 703, 697, 0, 711, 707, + 700, 0, 0, 702, 687, 0, 764, 754, 759, 186, + 176, 0, 292, 293, 0, 515, 124, 126, 246, 0, + 0, 0, 63, 64, 76, 421, 422, 0, 0, 0, + 0, 280, 415, 278, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 279, 0, 0, 0, 0, 0, 0, + 0, 658, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 504, 0, 0, + 0, 343, 345, 344, 346, 347, 348, 349, 0, 0, + 29, 0, 219, 223, 0, 0, 0, 0, 0, 0, + 0, 327, 328, 419, 418, 0, 0, 0, 0, 239, + 234, 231, 230, 232, 233, 264, 245, 225, 498, 224, + 416, 0, 489, 71, 72, 69, 237, 70, 238, 240, + 298, 229, 488, 487, 486, 120, 492, 417, 0, 226, + 491, 490, 462, 423, 463, 350, 424, 0, 420, 766, + 770, 767, 768, 769, 0, 589, 0, 588, 613, 530, + 579, 516, 0, 0, 498, 0, 569, 570, 0, 563, + 564, 562, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 122, 0, 122, 0, 122, 0, 0, 0, + 694, 248, 705, 706, 699, 701, 0, 704, 688, 0, + 0, 750, 749, 0, 674, 0, 265, 546, 0, 541, + 0, 0, 552, 0, 0, 0, 0, 627, 537, 556, + 540, 804, 807, 0, 0, 269, 273, 272, 277, 0, + 316, 0, 0, 0, 840, 0, 0, 284, 281, 0, + 322, 0, 0, 0, 0, 267, 0, 0, 0, 307, + 310, 0, 243, 313, 0, 0, 57, 0, 78, 844, + 0, 813, 822, 0, 810, 0, 0, 289, 286, 451, + 452, 328, 338, 120, 263, 261, 262, 0, 0, 0, + 0, 0, 0, 0, 782, 0, 0, 0, 820, 847, + 0, 254, 0, 257, 0, 0, 849, 858, 0, 428, + 427, 464, 426, 425, 0, 0, 858, 322, 858, 329, + 241, 242, 0, 74, 341, 222, 496, 0, 228, 235, + 236, 283, 288, 297, 0, 336, 0, 227, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 454, 455, 0, 0, 0, 0, 0, 0, + 453, 454, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 407, + 0, 221, 0, 590, 0, 608, 610, 623, 0, 0, + 515, 568, 0, 572, 0, 576, 350, 0, 0, 0, + 679, 692, 0, 0, 669, 671, 0, 0, 125, 0, + 125, 0, 125, 543, 0, 549, 0, 670, 0, 0, + 249, 696, 681, 0, 675, 765, 0, 547, 755, 0, + 553, 760, 538, 0, 0, 555, 0, 554, 0, 557, + 0, 0, 0, 79, 0, 0, 796, 0, 0, 830, + 833, 836, 0, 858, 285, 282, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 408, 0, 221, 0, 591, 0, 609, 611, 624, - 0, 0, 516, 569, 0, 573, 0, 577, 351, 0, - 0, 0, 680, 693, 0, 0, 670, 672, 0, 0, - 125, 0, 125, 0, 125, 544, 0, 550, 0, 671, - 0, 0, 249, 697, 682, 0, 676, 766, 0, 548, - 756, 0, 554, 761, 539, 0, 0, 556, 0, 555, - 0, 558, 0, 0, 0, 79, 0, 0, 797, 0, - 0, 831, 834, 837, 0, 859, 286, 283, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 859, 269, - 0, 80, 81, 0, 0, 0, 0, 55, 56, 0, - 0, 859, 0, 0, 859, 0, 0, 291, 288, 330, - 337, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 265, 0, 0, 0, 817, 781, 783, 0, 826, 0, - 0, 0, 783, 0, 0, 0, 0, 0, 786, 853, - 0, 247, 0, 32, 0, 30, 0, 860, 0, 244, - 0, 0, 860, 0, 0, 0, 0, 398, 395, 397, - 60, 0, 120, 0, 411, 0, 780, 0, 0, 0, - 307, 306, 0, 122, 260, 0, 0, 476, 475, 0, - 0, 477, 481, 0, 0, 0, 373, 382, 361, 383, - 362, 385, 364, 384, 363, 386, 365, 376, 355, 377, - 356, 378, 357, 430, 431, 443, 387, 366, 388, 367, - 444, 441, 442, 0, 375, 353, 470, 0, 461, 0, - 494, 495, 496, 354, 432, 433, 389, 368, 390, 369, - 448, 449, 450, 379, 358, 380, 359, 381, 360, 451, - 374, 352, 0, 0, 446, 447, 445, 439, 440, 435, - 434, 436, 437, 438, 0, 0, 0, 404, 0, 0, - 0, 0, 414, 0, 0, 0, 0, 524, 527, 0, - 572, 575, 351, 576, 691, 714, 717, 0, 720, 710, - 0, 678, 724, 0, 731, 0, 738, 0, 0, 744, - 0, 747, 0, 252, 694, 683, 543, 549, 0, 630, - 631, 559, 562, 561, 0, 0, 0, 0, 798, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 324, - 361, 362, 364, 363, 365, 355, 356, 357, 366, 367, - 353, 368, 369, 358, 359, 360, 352, 292, 0, 0, - 0, 466, 0, 0, 0, 467, 0, 498, 0, 0, - 0, 0, 0, 0, 337, 122, 500, 501, 502, 503, - 504, 0, 0, 784, 0, 0, 0, 0, 323, 783, - 0, 0, 0, 0, 792, 793, 0, 800, 0, 0, - 790, 0, 829, 0, 0, 0, 0, 788, 830, 0, - 820, 785, 849, 0, 0, 0, 0, 851, 852, 0, - 0, 0, 828, 456, 0, 0, 0, 122, 0, 58, - 59, 0, 73, 65, 337, 0, 0, 413, 412, 300, - 0, 0, 0, 0, 0, 0, 335, 0, 125, 472, - 0, 478, 0, 372, 370, 371, 0, 0, 459, 0, - 0, 482, 486, 0, 0, 462, 0, 0, 0, 0, - 405, 0, 409, 457, 415, 592, 612, 121, 525, 526, - 527, 528, 519, 532, 574, 692, 715, 718, 681, 721, - 711, 673, 679, 725, 727, 732, 734, 739, 741, 545, - 745, 551, 748, 0, 0, 629, 0, 0, 806, 809, - 0, 271, 276, 0, 275, 0, 0, 320, 318, 0, - 0, 0, 842, 840, 0, 0, 854, 82, 309, 312, - 315, 846, 844, 815, 824, 822, 812, 0, 125, 0, - 0, 0, 773, 772, 783, 0, 818, 0, 0, 782, - 799, 791, 819, 827, 789, 0, 783, 0, 795, 796, - 803, 787, 0, 255, 258, 31, 0, 220, 0, 0, - 0, 0, 0, 125, 61, 0, 66, 0, 122, 0, - 0, 0, 0, 566, 333, 334, 332, 331, 0, 0, - 0, 0, 0, 0, 0, 393, 0, 0, 483, 0, - 471, 0, 460, 0, 406, 0, 0, 458, 410, 537, - 522, 519, 520, 521, 524, 728, 735, 742, 253, 248, - 632, 560, 0, 0, 77, 272, 277, 0, 0, 319, - 832, 835, 838, 0, 0, 859, 0, 0, 0, 0, - 797, 0, 0, 0, 0, 506, 0, 0, 0, 0, - 801, 0, 0, 0, 0, 0, 794, 0, 0, 250, - 0, 0, 0, 396, 515, 399, 0, 60, 0, 75, - 125, 391, 0, 301, 566, 0, 0, 336, 338, 0, - 325, 341, 0, 514, 0, 512, 394, 509, 0, 0, - 0, 508, 407, 0, 523, 533, 522, 0, 0, 797, - 797, 0, 0, 0, 0, 0, 0, 0, 0, 310, - 313, 316, 0, 816, 797, 0, 468, 0, 340, 507, - 857, 0, 0, 802, 0, 775, 774, 857, 804, 857, - 256, 248, 259, 857, 857, 0, 0, 402, 62, 281, - 0, 67, 71, 72, 69, 70, 68, 0, 0, 0, - 0, 0, 0, 0, 326, 473, 479, 0, 513, 511, - 510, 0, 535, 529, 696, 0, 0, 0, 321, 797, - 797, 0, 859, 859, 855, 859, 0, 0, 469, 0, - 0, 777, 776, 0, 0, 0, 0, 0, 0, 857, - 400, 0, 0, 0, 287, 343, 392, 0, 0, 0, - 0, 327, 474, 480, 484, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 813, 0, 0, - 0, 0, 0, 0, 251, 865, 861, 0, 403, 288, - 0, 0, 0, 305, 485, 534, 0, 807, 810, 322, - 0, 0, 839, 843, 856, 847, 825, 858, 863, 779, - 778, 864, 866, 862, 0, 304, 303, 536, 833, 836, - 302 + 0, 0, 0, 0, 0, 0, 858, 268, 0, 80, + 81, 0, 0, 0, 0, 55, 56, 0, 0, 858, + 0, 0, 858, 0, 0, 290, 287, 329, 336, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 265, 0, + 0, 0, 816, 780, 782, 0, 825, 0, 0, 0, + 782, 0, 0, 0, 0, 0, 785, 852, 0, 247, + 0, 32, 0, 30, 0, 859, 0, 244, 0, 0, + 859, 0, 0, 0, 0, 397, 394, 396, 60, 0, + 120, 0, 410, 0, 779, 0, 0, 0, 306, 305, + 0, 122, 260, 0, 0, 475, 474, 0, 0, 476, + 480, 0, 0, 0, 372, 381, 360, 382, 361, 384, + 363, 383, 362, 385, 364, 375, 354, 376, 355, 377, + 356, 429, 430, 442, 386, 365, 387, 366, 443, 440, + 441, 0, 374, 352, 469, 0, 460, 0, 493, 494, + 495, 353, 431, 432, 388, 367, 389, 368, 447, 448, + 449, 378, 357, 379, 358, 380, 359, 450, 373, 351, + 0, 0, 445, 446, 444, 438, 439, 434, 433, 435, + 436, 437, 0, 0, 0, 403, 0, 0, 0, 0, + 413, 0, 0, 0, 0, 523, 526, 0, 571, 574, + 350, 575, 690, 713, 716, 0, 719, 709, 0, 677, + 723, 0, 730, 0, 737, 0, 0, 743, 0, 746, + 0, 252, 693, 682, 542, 548, 0, 629, 630, 558, + 561, 560, 0, 0, 0, 0, 797, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 323, 360, 361, + 363, 362, 364, 354, 355, 356, 365, 366, 352, 367, + 368, 357, 358, 359, 351, 291, 0, 0, 0, 465, + 0, 0, 0, 466, 0, 497, 0, 0, 0, 0, + 0, 0, 336, 122, 499, 500, 501, 502, 503, 0, + 0, 783, 0, 0, 0, 0, 322, 782, 0, 0, + 0, 0, 791, 792, 0, 799, 0, 0, 789, 0, + 828, 0, 0, 0, 0, 787, 829, 0, 819, 784, + 848, 0, 0, 0, 0, 850, 851, 0, 0, 0, + 827, 455, 0, 0, 0, 122, 0, 58, 59, 0, + 73, 65, 336, 0, 0, 412, 411, 299, 0, 0, + 0, 0, 0, 0, 334, 0, 125, 471, 0, 477, + 0, 371, 369, 370, 0, 0, 458, 0, 0, 481, + 485, 0, 0, 461, 0, 0, 0, 0, 404, 0, + 408, 456, 414, 591, 611, 121, 524, 525, 526, 527, + 518, 531, 573, 691, 714, 717, 680, 720, 710, 672, + 678, 724, 726, 731, 733, 738, 740, 544, 744, 550, + 747, 0, 0, 628, 0, 0, 805, 808, 0, 270, + 275, 0, 274, 0, 0, 319, 317, 0, 0, 0, + 841, 839, 0, 0, 853, 82, 308, 311, 314, 845, + 843, 814, 823, 821, 811, 0, 125, 0, 0, 0, + 772, 771, 782, 0, 817, 0, 0, 781, 798, 790, + 818, 826, 788, 0, 782, 0, 794, 795, 802, 786, + 0, 255, 258, 31, 0, 220, 0, 0, 0, 0, + 0, 125, 61, 0, 66, 0, 122, 0, 0, 0, + 0, 565, 332, 333, 331, 330, 0, 0, 0, 0, + 0, 0, 0, 392, 0, 0, 482, 0, 470, 0, + 459, 0, 405, 0, 0, 457, 409, 536, 521, 518, + 519, 520, 523, 727, 734, 741, 253, 248, 631, 559, + 0, 0, 77, 271, 276, 0, 0, 318, 831, 834, + 837, 0, 0, 858, 0, 0, 0, 0, 796, 0, + 0, 0, 0, 505, 0, 0, 0, 0, 800, 0, + 0, 0, 0, 0, 793, 0, 0, 250, 0, 0, + 0, 395, 514, 398, 0, 60, 0, 75, 125, 390, + 0, 300, 565, 0, 0, 335, 337, 0, 324, 340, + 0, 513, 0, 511, 393, 508, 0, 0, 0, 507, + 406, 0, 522, 532, 521, 0, 0, 796, 796, 0, + 0, 0, 0, 0, 0, 0, 0, 309, 312, 315, + 0, 815, 796, 0, 467, 0, 339, 506, 856, 0, + 0, 801, 0, 774, 773, 856, 803, 856, 256, 248, + 259, 856, 856, 0, 0, 401, 62, 280, 0, 67, + 71, 72, 69, 70, 68, 0, 0, 0, 0, 0, + 0, 0, 325, 472, 478, 0, 512, 510, 509, 0, + 534, 528, 695, 0, 0, 0, 320, 796, 796, 0, + 858, 858, 854, 858, 0, 0, 468, 0, 0, 776, + 775, 0, 0, 0, 0, 0, 0, 856, 399, 0, + 0, 0, 286, 342, 391, 0, 0, 0, 0, 326, + 473, 479, 483, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 812, 0, 0, 0, 0, + 0, 0, 251, 864, 860, 0, 402, 287, 0, 0, + 0, 304, 484, 533, 0, 806, 809, 321, 0, 0, + 838, 842, 855, 846, 824, 857, 862, 778, 777, 863, + 865, 861, 0, 303, 302, 535, 832, 835, 301 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -1431, -1431, -1431, -1431, -1431, -1431, 535, 1151, -1431, -1431, - -1431, 1231, -1431, -1431, -1431, 691, 1189, -1431, 1101, -1431, - -1431, 1156, -1431, -1431, -1431, -198, -1431, -1431, -1431, -197, - -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, 1020, - -1431, -1431, -41, -45, -1431, -1431, -1431, 355, 450, -518, - -564, -785, -1431, -1431, -1431, -1430, -1431, -1431, -209, -365, - -1431, 304, -1431, -1343, -1431, -184, 277, -1431, -1431, -1431, - -1431, -412, -14, -1431, -1431, -1431, -1431, -1431, -192, -189, - -188, -1431, -186, -1431, -1431, -1431, 1255, -1431, 301, -1431, - -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, - -1431, -1431, -422, -150, 327, -93, -1431, -883, -436, -1431, - 749, -1431, -1431, -367, 626, -1431, -1431, -1431, -1373, -1431, - -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, 794, -1431, - -1431, -1431, -1431, -1431, -1431, -1431, -148, -115, -199, -116, - 20, -1431, -1431, -1431, -1431, -1431, 844, -1431, -575, -1431, - -1431, -578, -1431, -1431, -615, -195, -566, -1288, -1431, -349, - -1431, -1431, 1222, -1431, -1431, -1431, 716, 808, 69, -1431, - -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, - -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -608, - -222, -1431, 841, -1431, -1431, -1431, -1431, -1431, -1431, -1431, - -1431, -373, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, - -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, - -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -204, - -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, - -1431, -1431, -1431, -1431, -1431, 842, -708, 177, -647, -890, - -1431, -1431, -1431, -1135, -147, -1358, -1431, -1431, -1431, -1431, - -1431, -1431, -1431, -1431, -1431, 114, -479, -1431, -1431, -1431, - 598, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, - -1431, -1431, -1431, -629, -1431, -1380, -701, -1431 + -1434, -1434, -1434, -1434, -1434, -1434, 490, 1109, -1434, -1434, + -1434, 1192, -1434, -1434, -1434, 682, 1150, -1434, 1066, -1434, + -1434, 1118, -1434, -1434, -1434, -231, -1434, -1434, -1434, -229, + -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, 989, + -1434, -1434, -39, -63, -1434, -1434, -1434, 450, 421, -515, + -559, -784, -1434, -1434, -1434, -1420, -1434, -1434, -207, -365, + -1434, 276, -1434, -1325, -1434, -297, -337, -1434, -1434, -1434, + -1434, -404, -14, -1434, -1434, -1434, -1434, -1434, -220, -219, + -218, -1434, -217, -1434, -1434, -1434, 1213, -1434, 265, -1434, + -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, + -1434, -1434, -422, -192, 327, -132, -1434, -881, -436, -1434, + 709, -1434, -1434, -364, 949, -1434, -1434, -1434, -1433, -1434, + -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, 794, -1434, + -1434, -1434, -1434, -1434, -1434, -1434, -147, -153, -236, -152, + -19, -1434, -1434, -1434, -1434, -1434, 806, -1434, -572, -1434, + -1434, -578, -1434, -1434, -613, -233, -561, -1294, -1434, -358, + -1434, -1434, 1184, -1434, -1434, -1434, 681, 799, 53, -1434, + -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, + -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -571, + -222, -1434, 804, -1434, -1434, -1434, -1434, -1434, -1434, -1434, + -1434, -373, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, + -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, + -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -204, + -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, + -1434, -1434, -1434, -1434, -1434, 807, -706, 139, -647, -879, + -1434, -1434, -1434, -1143, -184, -1162, -1434, -1434, -1434, -1434, + -1434, -1434, -1434, -1434, -1434, 76, -476, -1434, -1434, -1434, + 559, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, + -1434, -1434, -1434, -638, -1434, -1225, -692, -1434 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - 0, 1, 16, 143, 52, 17, 164, 170, 696, 505, - 149, 506, 99, 19, 20, 45, 46, 47, 88, 21, - 39, 40, 507, 508, 1201, 1202, 509, 1347, 1438, 510, - 511, 951, 512, 626, 513, 514, 515, 516, 1132, 171, - 172, 35, 36, 37, 220, 66, 67, 68, 69, 22, - 285, 374, 210, 23, 111, 211, 112, 156, 674, 976, - 518, 375, 519, 821, 1502, 1082, 566, 930, 1428, 932, - 1429, 521, 522, 523, 628, 847, 1395, 524, 525, 526, - 527, 528, 529, 530, 531, 426, 532, 726, 1210, 960, - 533, 534, 883, 1406, 884, 1407, 886, 1408, 535, 850, - 1399, 536, 708, 1451, 537, 1216, 1217, 963, 676, 538, - 783, 952, 539, 641, 977, 541, 542, 543, 949, 544, - 1196, 1506, 1197, 1561, 545, 1050, 1378, 546, 709, 1361, - 1572, 1363, 1573, 1458, 1604, 548, 370, 1384, 1465, 1250, - 1252, 1059, 561, 792, 1531, 1576, 371, 372, 610, 816, - 419, 615, 818, 420, 1156, 620, 574, 390, 307, 308, - 217, 301, 78, 121, 25, 161, 376, 89, 90, 174, - 91, 26, 49, 115, 158, 27, 288, 558, 559, 1055, - 379, 215, 216, 76, 118, 381, 28, 159, 299, 621, - 549, 297, 353, 354, 808, 418, 355, 582, 1262, 801, - 416, 356, 575, 1255, 820, 580, 1260, 576, 1256, 577, - 1257, 579, 1259, 583, 1263, 584, 1385, 585, 1265, 586, - 1386, 587, 1267, 588, 1387, 589, 1270, 590, 1272, 611, - 29, 95, 177, 359, 612, 30, 96, 178, 360, 616, - 31, 94, 176, 358, 607, 550, 915, 957, 916, 917, - 929, 1178, 1172, 1167, 1330, 1100, 551, 843, 1392, 844, - 1393, 895, 1412, 892, 1410, 918, 698, 552, 893, 1411, - 919, 553, 1104, 1473, 1105, 1474, 1106, 1475, 854, 1403, - 890, 1409, 692, 699, 554, 1550, 938, 555 + 0, 1, 16, 141, 52, 17, 162, 168, 694, 503, + 147, 504, 97, 19, 20, 45, 46, 47, 87, 21, + 39, 40, 505, 506, 1199, 1200, 507, 1345, 1436, 508, + 509, 949, 510, 624, 511, 512, 513, 514, 1130, 169, + 170, 35, 36, 37, 218, 65, 66, 67, 68, 22, + 283, 372, 208, 23, 109, 209, 110, 154, 672, 974, + 516, 373, 517, 819, 1500, 1080, 564, 928, 1426, 930, + 1427, 519, 520, 521, 626, 845, 1393, 522, 523, 524, + 525, 526, 527, 528, 529, 424, 530, 724, 1208, 958, + 531, 532, 881, 1404, 882, 1405, 884, 1406, 533, 848, + 1397, 534, 706, 1449, 535, 1214, 1215, 961, 674, 536, + 781, 950, 537, 639, 975, 539, 540, 541, 947, 542, + 1194, 1504, 1195, 1559, 543, 1048, 1376, 544, 707, 1359, + 1570, 1361, 1571, 1456, 1602, 546, 368, 1382, 1463, 1248, + 1250, 1057, 559, 790, 1529, 1574, 369, 370, 608, 814, + 417, 613, 816, 418, 1154, 618, 572, 388, 305, 306, + 215, 299, 77, 119, 25, 159, 374, 88, 89, 172, + 90, 26, 49, 113, 156, 27, 286, 556, 557, 1053, + 377, 213, 214, 75, 116, 379, 28, 157, 297, 619, + 547, 295, 351, 352, 806, 416, 353, 580, 1260, 799, + 414, 354, 573, 1253, 818, 578, 1258, 574, 1254, 575, + 1255, 577, 1257, 581, 1261, 582, 1383, 583, 1263, 584, + 1384, 585, 1265, 586, 1385, 587, 1268, 588, 1270, 609, + 29, 94, 175, 357, 610, 30, 95, 176, 358, 614, + 31, 93, 174, 356, 605, 548, 913, 955, 914, 915, + 927, 1176, 1170, 1165, 1328, 1098, 549, 841, 1390, 842, + 1391, 893, 1410, 890, 1408, 916, 696, 550, 891, 1409, + 917, 551, 1102, 1471, 1103, 1472, 1104, 1473, 852, 1401, + 888, 1407, 690, 697, 552, 1548, 936, 553 }; /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If @@ -1703,1802 +1701,1791 @@ static const yytype_int16 yydefgoto[] = number is the opposite. If YYTABLE_NINF, syntax error. */ static const yytype_int16 yytable[] = { - 60, 70, 287, 691, 796, 352, 842, 943, 540, 944, - 517, 956, 817, 221, 815, 570, 878, 1145, 846, 727, - 810, 640, 812, 357, 814, 1073, 1163, 1075, 1320, 1077, - 633, 639, 1175, 562, 594, 677, 678, 1096, -120, 130, - 1152, 922, 908, 791, 604, 596, 1468, 1173, 84, 70, - 70, 70, 1483, 1179, 1186, 669, 32, 33, 151, 908, - 1382, 1190, 53, 1339, 728, 1446, 2, 50, 54, 837, - 122, 123, 3, 104, 105, 106, 837, 907, 517, 920, - 710, 924, 909, 85, 417, 218, 571, 48, 1064, 936, - 70, 70, 70, 70, 1283, 4, 572, 5, 940, 6, - 61, 1575, 517, 165, 166, 7, 750, 686, 688, 753, - 754, 1535, 1536, 51, 729, 8, 98, 1554, 92, 1555, - 1383, 9, 1212, 1557, 1558, 368, 1546, 634, 635, 62, - 218, 839, 1213, 1560, 417, 431, 432, 838, 839, 1284, - 840, 305, 219, 841, 150, 10, 1606, 71, 573, 958, - 427, 352, 718, 382, 1108, 442, 1520, 900, 1556, 306, - 139, 447, 797, 909, 828, 212, 352, 11, 12, 429, - 1162, 822, 1070, 302, 77, 1283, 213, 1130, 303, 1597, - 1420, 1580, 1581, 428, 1214, 138, 1071, 219, 1598, 1215, - 1139, 781, 782, 1142, 595, 352, 719, 352, 461, 462, - 305, 63, 38, 959, 838, 597, 34, 838, 58, 517, - 789, 730, 731, 351, 838, 855, 857, 124, 306, 636, - 838, 838, 125, 598, 126, 86, 856, 127, 838, 599, - 838, 80, 464, 465, 837, 59, 87, 643, 637, 58, - 891, 790, 1380, 894, 1155, 1205, 13, 753, 754, 286, - 167, 660, 1044, 1045, 1162, 168, 897, 169, 352, 352, - 127, 1307, 1251, 384, 837, 14, 59, 424, 128, 1315, - 64, 877, 58, 517, 1155, 1449, 15, 368, 837, 65, - 98, 1046, 218, 659, 1493, 837, 286, 1587, 1422, 480, - 481, 482, 964, 1047, 896, 1491, 839, 955, 1162, 59, - 730, 731, 79, 517, 837, 740, 741, 742, 743, 493, - 425, 81, 1162, 286, 1590, 750, 1162, 752, 753, 754, - 755, 1348, 503, 673, 627, 756, 839, 758, 759, 781, - 782, 1607, 1078, 1191, 1048, 1049, 405, 369, 618, 219, - 839, 501, 730, 731, 417, 1608, 1079, 839, 1065, 1612, - 1164, 1165, 1162, 352, 352, 352, 619, 352, 352, 351, - 1162, 352, 1053, 352, 560, 352, 839, 352, 80, 1162, - 556, 799, 800, 802, 351, 804, 805, 961, 1166, 809, - 82, 811, 557, 813, 1061, 1616, 776, 777, 778, 779, - 780, 97, 956, 1628, 225, 180, 742, 743, 107, 1218, - 781, 782, 1629, 351, 750, 351, 752, 753, 754, 755, - 41, 42, 43, 1080, 756, 1273, 845, 1206, 100, 101, - 102, 226, 352, 108, 1419, 351, 1099, 1081, 58, 1274, - 1092, 517, 1169, 1360, 1204, 1170, 1425, 945, 742, 743, - 881, 44, 946, 417, 1207, 352, 750, 1068, 1182, 753, - 754, 755, 858, 80, 1319, 59, 756, 107, 1187, 152, - 153, 154, 155, 1171, 98, 58, 351, 351, 858, 1351, - 1094, 1095, 1153, 1273, 945, 1161, 1277, 517, 383, 1244, - 947, 1107, 1247, 72, 73, 931, 74, 1333, 858, 781, - 782, 710, 59, 1351, 858, 1282, 1353, 858, 53, 710, - 1349, 1358, 1271, 1269, 54, 950, 730, 731, 968, 972, - 1133, 1134, 1314, 1136, 75, 1456, 1161, 1138, 1352, 1140, - 1141, 1462, 1143, 1414, 1489, 592, 1359, 1326, 1273, 289, - 644, 781, 782, 290, 1012, 286, 417, 1223, 1224, 1225, - 1069, 1518, 1334, 858, 593, -726, 1397, 291, 292, 645, - -726, 406, 293, 294, 295, 296, 103, 661, 1436, -733, - 1398, 351, 351, 351, -733, 351, 351, -740, -726, 351, - 785, 351, -740, 351, 664, 351, 662, 786, 407, 408, - 1198, 1308, -733, 605, -401, 613, 131, 1007, 1234, -401, - -740, 1199, 1200, 665, 1067, 606, 1239, 614, 352, 1008, - 1235, 417, 742, 743, 417, 1072, 352, -401, 1240, 352, - 750, 406, 752, 753, 754, 755, 1083, 849, 352, 87, - 756, 352, 352, 1317, 1086, 352, 1445, 1087, 352, 389, - 351, 406, 352, 1343, 109, 1318, 1091, 909, 407, 408, - 110, 409, 1442, 1097, 1058, 410, 1103, 148, 387, 1283, - 113, 388, 520, 351, 389, 1517, 114, 1327, 407, 408, - 1328, 352, 352, 1329, 352, 137, 1405, 1127, 352, 116, - 352, 352, 119, 352, 1280, 117, 1176, 1169, 120, 1177, - 141, 776, 777, 778, 779, 780, 142, 1248, 1417, 41, - 42, 43, 1424, 1249, 858, 781, 782, 948, 858, 1128, - 1427, 409, 133, 1423, 1478, 410, 858, 411, 352, 1430, - 352, 412, 1431, 1129, 413, 858, 1505, 104, 858, 106, - 520, 409, 858, 417, 571, 410, 1083, 1074, 1083, 414, - 1310, 1289, 1290, 1291, 572, 415, 417, 417, 417, 417, - 1076, 1281, 1288, 1526, 520, 417, 1183, 1519, 1184, 1574, - 389, 1325, 136, 730, 731, 1294, 140, 1332, 162, 163, - 933, 934, 162, 163, 1336, 503, 673, 411, 1338, 222, - 223, 412, 144, 1144, 413, 145, 70, 134, 135, 795, - 104, 105, 106, 146, 1440, 147, 573, 411, 157, 414, - 160, 412, 85, 179, 413, 415, 104, 675, 675, 675, - 222, 223, 224, 1492, 1366, 175, 351, 214, 228, 414, - 1232, 926, 927, 928, 351, 415, 1375, 351, 55, 56, - 57, 227, 540, 1342, 517, 229, 351, 230, 286, 351, - 351, 282, 283, 351, 284, 298, 351, 300, 1547, 361, - 351, 1583, 1584, 362, 1585, 352, 363, 716, 1543, 742, - 743, 520, 304, 364, 365, 366, 352, 750, 373, 752, - 753, 754, 755, 1258, 367, 378, 377, 756, 380, 351, - 351, 385, 351, 386, 716, 391, 351, 392, 351, 351, - 1522, 351, 352, 352, 352, 393, 394, 1416, 1577, 1578, - 395, 396, 397, 398, 1582, 404, 406, 399, 400, 1586, - 401, 402, 403, 417, 422, 421, 352, 423, 568, 569, - 563, 581, 623, 602, 624, 520, 351, 1432, 351, 632, - 650, 651, 631, 407, 408, 652, 648, 653, 654, 656, - 778, 779, 780, 1610, 1611, 655, 679, 406, 1591, 663, - 666, 680, 781, 782, 667, 520, 681, 682, 1499, 695, - 683, 1503, 700, 712, 1568, 1569, 684, 713, 715, 720, - 711, 721, 722, 723, 407, 408, 724, 822, 725, 716, - 15, 784, 406, 659, 352, 787, 794, 693, 806, 807, - 613, 823, 826, 827, 831, 829, 409, 832, 1452, 1344, - 410, 728, 406, 830, 833, 836, 851, 716, 876, 407, - 408, 1600, 835, 848, 858, 887, 852, 882, 406, 520, - 520, 520, 520, 520, 520, 520, 520, 853, 888, 407, - 408, 899, 520, 520, 937, 939, 941, 409, 520, 942, - 962, 410, 1057, 1003, 1060, 407, 408, 520, 520, 1066, - 406, 1084, 520, 520, 520, 1089, 520, 1090, 1154, 1161, - 1192, 352, 411, 351, 1542, 675, 412, 1168, 1278, 413, - 1545, 1181, 409, 1188, 351, 571, 410, 407, 408, 1388, - 1194, 1394, 1521, 520, 414, 572, 1209, 1242, 1219, 822, - 415, 1193, 409, 1208, 1221, 1195, 410, 640, 1220, 1246, - 351, 351, 351, 411, 1251, 406, 1261, 412, 409, 1279, - 413, 1222, 410, 1253, 1226, 1227, 1237, 1238, 1264, 1266, - 1276, 1268, 1286, 1293, 351, 414, 1295, 1368, 1309, 520, - 1296, 415, 407, 408, 1302, 716, 1305, 573, 411, 1321, - 409, 1324, 412, 1331, 410, 413, 1437, 1354, 1355, 352, - 857, 352, 1356, 1357, 1369, 1371, 1567, 1376, 411, 1389, - 414, 1450, 412, 1379, 1292, 413, 415, 1390, 1396, 1454, - 1413, 1439, 1421, 1426, 411, 1443, 1444, 1441, 412, 547, - 414, 413, 1448, 1464, 1469, 1470, 415, 1471, 1476, 567, - 1477, 1098, 351, 1482, 1484, 409, 414, 1507, 578, 410, - 1485, 1501, 415, 1534, 1537, 1539, 411, 1544, 591, 1540, - 412, 1549, 1298, 413, 1541, 1450, 1588, 1566, 601, 1589, - 1592, 1593, 1594, 1595, 1596, 1605, 1618, 617, 414, 1613, - 406, 1621, 1622, 352, 415, 716, 1614, 625, 1615, 1623, - 129, 935, 18, 83, 173, 675, 352, 642, 132, 1508, - 1056, 1511, 647, 1189, 649, 309, 1512, 407, 408, 1513, - 1514, 411, 1515, 658, 1527, 412, 24, 1299, 413, 351, - 1211, 670, 671, 672, 1488, 1447, 1466, 1532, 1467, 717, - 1381, 622, 1533, 414, 93, 788, 690, 1285, 1498, 415, - 629, 630, 0, 1323, 694, 0, 923, 690, 0, 0, - 701, 702, 703, 704, 705, 0, 0, 352, 0, 0, - 675, 675, 675, 714, 0, 716, 0, 716, 1565, 716, - 409, 716, 0, 716, 410, 716, 0, 716, 0, 716, - 0, 730, 731, 0, 716, 0, 716, 0, 0, 0, - 0, 0, 716, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 716, 0, 716, 351, 0, 351, - 0, 716, 0, 716, 0, 716, 0, 0, 716, 979, - 981, 983, 985, 987, 989, 991, 0, 0, 798, 0, - 0, 996, 998, 0, 0, 0, 411, 1004, 0, 0, - 412, 0, 1300, 413, 0, 0, 1016, 1018, 0, 716, - 0, 1023, 1025, 1027, 0, 1030, 825, 1627, 414, 0, - 0, 0, 0, 0, 415, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 740, 741, 742, 743, 744, - 716, 0, 747, 748, 749, 750, 0, 752, 753, 754, - 755, 351, 642, 0, 0, 756, 0, 758, 759, 690, - 879, 0, 880, 0, 351, 0, 0, 885, 0, 0, - 0, 0, 0, 889, 0, 0, 0, 0, 0, 0, - 0, 0, 898, 0, 0, 0, 520, 0, 0, 0, - 0, 0, 0, 901, 902, 903, 904, 905, 906, 0, - 914, 0, 914, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 948, 1346, 774, 775, 776, 777, 778, 779, - 780, 0, 730, 731, 0, 351, 0, 0, 0, 0, - 781, 782, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 978, 980, 982, 984, - 986, 988, 990, 992, 993, 994, 0, 0, 995, 997, - 999, 1000, 1001, 1002, 0, 1005, 1006, 948, 1009, 1010, - 1011, 1013, 1014, 1015, 1017, 1019, 1020, 1021, 1022, 1024, - 1026, 1028, 1029, 1031, 1033, 1034, 1035, 1036, 1037, 1038, - 1039, 1040, 1041, 1042, 1043, 0, 1051, 0, 0, 0, - 1054, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1062, 0, 0, 0, 0, 0, 740, 741, 742, 743, - 744, 0, 0, 747, 748, 749, 750, 0, 752, 753, - 754, 755, 0, 0, 0, 0, 756, 0, 758, 759, - 0, 0, 0, 0, 762, 763, 764, 0, 0, 1088, - 768, 0, 0, 0, 0, 0, 1093, 0, 0, 0, - 0, 0, 0, 1102, 0, 0, 0, 0, 0, 0, - 0, 0, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, - 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, - 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, - 779, 780, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 781, 782, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 701, 1158, 0, 0, 0, - 0, 0, 431, 432, 0, 0, 0, 0, 0, 1180, - 0, 690, 437, 438, 439, 440, 441, 0, 1185, 0, - 0, 690, 442, 0, 444, 0, 1109, 0, 447, 0, - 406, 0, 0, 0, 0, 1203, 449, 0, 0, 0, - 0, 0, 452, 0, 0, 453, 0, 0, 454, 0, - 908, 0, 457, 0, 0, 0, 0, 407, 408, 0, - 0, 0, 564, 0, 0, 461, 462, 0, 316, 317, - 318, 0, 320, 321, 322, 323, 324, 463, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, 0, - 338, 339, 340, 0, 0, 343, 344, 345, 346, 464, - 465, 466, 0, 0, 0, 0, 0, 0, 406, 0, - 0, 0, 0, 0, 468, 469, 0, 0, 0, 0, - 409, 0, 0, 0, 410, 0, 0, 0, 0, 1236, - 0, 0, 0, 1241, 0, 407, 408, 0, 0, 58, - 0, 0, 0, 0, 0, 0, 0, 473, 474, 475, - 476, 477, 0, 478, 909, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 910, 565, 491, 492, - 0, 0, 0, 0, 0, 0, 493, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 411, 0, 0, 0, - 412, 0, 0, 911, 497, 498, 0, 14, 409, 0, - 499, 500, 410, 0, 0, 0, 0, 0, 912, 0, - 913, 0, 503, 504, 415, 0, 1297, 0, 0, 0, + 59, 69, 285, 350, 689, 876, 840, 794, 515, 538, + 815, 954, 219, 568, 941, 813, 942, 1143, 1318, 638, + 725, 355, 560, 808, 1071, 810, 1073, 812, 1075, 1094, + -120, 594, 631, 675, 676, 1161, 518, 637, 149, 920, + 128, 1173, 602, 1150, 789, 1171, 592, 906, 69, 69, + 69, 120, 121, 844, 53, 1177, 906, 1444, 1184, 83, + 54, 667, 1466, 1188, 1337, 102, 103, 104, 32, 33, + 748, 1558, 366, 751, 752, 96, 515, 216, 708, 422, + 366, 726, 590, 1210, 284, 216, 2, 216, 69, 69, + 69, 69, 3, 1211, 84, 303, 716, 835, 1042, 1043, + 515, 591, 91, 956, 518, 684, 686, 751, 752, 1573, + 38, 1380, 905, 304, 918, 4, 922, 5, 657, 6, + 728, 729, 423, 826, 934, 7, 1596, 1044, 518, 632, + 633, 727, 367, 938, 217, 8, 148, 163, 164, 1045, + 717, 9, 217, 137, 217, 1212, 728, 729, 1518, 350, + 1213, 48, 380, 300, 1604, 779, 780, 957, 898, 837, + 907, 1106, 415, 60, 350, 10, 1378, 427, 795, 820, + 1418, 1381, 1281, 1167, 1554, 1160, 1168, 136, 301, 58, + 1046, 1047, 1447, 303, 1128, 1068, 1249, 11, 12, 779, + 780, 595, 61, 350, 78, 350, 836, 1137, 122, 1069, + 1140, 304, 787, 123, 1169, 124, 593, 515, 125, 596, + 836, 349, 836, 853, 855, 597, 740, 741, 34, 835, + 284, 634, 836, 70, 748, 836, 750, 751, 752, 753, + 836, 836, 854, 788, 754, 518, 85, 641, 889, 76, + 635, 892, 740, 741, 79, 1203, 1481, 86, 105, 126, + 748, 658, 750, 751, 752, 753, 350, 350, 50, 80, + 754, 1305, 895, 382, 62, 569, 13, 425, 79, 875, + 1552, 515, 1553, 106, 1491, 570, 1555, 1556, 1313, 81, + 836, 837, 96, 838, 165, 14, 839, 835, 404, 166, + 962, 167, 894, 381, 125, 953, 15, 1153, 58, 518, + 426, 515, 835, 96, 51, 1533, 1534, 284, 1160, 779, + 780, 642, 1153, 1160, 1160, 405, 406, 1160, 835, 616, + 1544, 1346, 101, 776, 777, 778, 907, 571, 1420, 518, + 643, 1076, 1595, 63, 403, 779, 780, 617, 1281, 1162, + 1163, 1585, 64, 501, 671, 1077, 1605, 1606, 835, 837, + 1610, 350, 350, 350, 86, 350, 350, 349, 1489, 350, + 1051, 350, 558, 350, 837, 350, 959, 1164, 1189, 797, + 798, 800, 349, 802, 803, 1578, 1579, 807, 407, 809, + 837, 811, 408, 1282, 1160, 53, 1160, 728, 729, 131, + 1059, 54, 954, 518, 518, 518, 518, 518, 518, 518, + 518, 349, 1216, 349, 1160, 835, 518, 518, 71, 72, + 837, 73, 518, 943, 79, 1588, 843, 1614, 944, 1626, + 350, 518, 518, 349, 1097, 223, 518, 518, 518, 515, + 518, 58, 1358, 1417, 404, 1202, 1090, 1627, 415, 74, + 879, 178, 1062, 350, 409, 1423, 1204, 856, 410, 1180, + 1142, 411, 224, 856, 1317, 1349, 945, 518, 129, 1185, + 856, 405, 406, 856, 349, 349, 412, 837, 1092, 1093, + 1151, 856, 413, 1205, 1242, 515, 1275, 105, 1078, 1105, + 1280, 943, 1351, 740, 741, 929, 783, 1454, 134, 708, + 1460, 748, 1079, 784, 751, 752, 753, 708, 1487, 58, + 1269, 754, 1245, 518, 1267, 948, 966, 970, 1131, 1132, + 1312, 1134, 98, 99, 100, 1136, 1271, 1138, 1139, 1159, + 1141, 1349, 1412, 1356, 407, 1324, 1159, 135, 408, 1271, + 1272, 1443, 1010, -725, 387, 1221, 1222, 1223, -725, 41, + 42, 43, -732, 1331, 1347, -739, 1350, -732, 1357, 138, + -739, 1516, 150, 151, 152, 153, -725, 1434, 142, 349, + 349, 349, 287, 349, 349, -732, 288, 349, -739, 349, + 44, 349, 659, 349, 662, 1271, 779, 780, 1395, 143, + 289, 290, 429, 430, 1306, 291, 292, 293, 294, 1332, + 409, 660, 1396, 663, 410, 210, 350, 411, -400, 1196, + 144, 554, 440, -400, 350, 603, 211, 350, 445, 145, + 1197, 1198, 412, 555, 1081, 847, 350, 604, 413, 350, + 350, -400, 1084, 350, 284, 1085, 350, 611, 349, 404, + 350, 1181, 856, 1182, 1089, 1005, 1341, 1232, 1237, 612, + 1315, 1095, 1440, 1056, 1101, 459, 460, 1006, 1065, 1233, + 1238, 349, 1316, 907, 1515, 1403, 405, 406, 415, 350, + 350, 1517, 350, 155, 387, 1281, 350, 1125, 350, 350, + 1325, 350, 1278, 1326, 146, 385, 1327, 107, 386, 462, + 463, 387, 111, 108, 114, 117, 139, 1246, 112, 158, + 115, 118, 140, 1247, 1415, 946, 1422, 84, 1425, 1428, + 856, 1429, 856, 1421, 856, 856, 350, 856, 350, 1503, + 415, 1476, 415, 415, 1063, 856, 1066, 1067, 102, 407, + 104, 415, 569, 408, 1081, 1070, 1081, 173, 1308, 1287, + 1288, 1289, 570, 160, 161, 415, 478, 479, 480, 1072, + 415, 415, 177, 415, 1074, 1279, 58, 1286, 415, 1323, + 415, 102, 1524, 1292, 1572, 1330, 491, 160, 161, 931, + 932, 212, 1334, 404, 220, 221, 1336, 132, 133, 1174, + 1167, 625, 1175, 225, 69, 280, 226, 793, 102, 103, + 104, 41, 42, 43, 571, 409, 227, 1438, 499, 410, + 405, 406, 411, 501, 671, 673, 673, 673, 228, 220, + 221, 222, 1364, 1490, 349, 281, 282, 412, 1230, 55, + 56, 57, 349, 413, 1373, 349, 924, 925, 926, 296, + 284, 1340, 515, 538, 349, 298, 302, 349, 349, 359, + 360, 349, 361, 362, 349, 363, 1545, 1541, 349, 364, + 384, 371, 376, 350, 365, 714, 375, 378, 1581, 1582, + 518, 1583, 383, 407, 350, 392, 569, 408, 389, 390, + 391, 1256, 395, 393, 415, 394, 570, 349, 349, 396, + 349, 397, 714, 398, 349, 402, 349, 349, 399, 349, + 350, 350, 350, 1520, 400, 1414, 1575, 1576, 401, 419, + 420, 421, 1580, 566, 404, 561, 567, 1584, 579, 600, + 621, 622, 629, 630, 350, 646, 648, 649, 650, 651, + 653, 654, 652, 661, 349, 1430, 349, 664, 571, 409, + 665, 405, 406, 410, 677, 678, 411, 693, 679, 698, + 680, 1608, 1609, 710, 681, 682, 711, 713, 1589, 718, + 719, 412, 720, 721, 709, 722, 723, 413, 782, 1497, + 15, 785, 1501, 792, 657, 805, 804, 1566, 1567, 691, + 611, 824, 821, 308, 825, 820, 827, 714, 828, 309, + 404, 829, 350, 830, 831, 310, 833, 834, 726, 846, + 874, 849, 856, 850, 407, 311, 1450, 880, 408, 1342, + 851, 885, 886, 312, 897, 714, 935, 405, 406, 937, + 939, 940, 960, 1001, 1598, 1055, 1058, 1064, 313, 1087, + 1088, 1159, 1166, 1179, 1082, 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, 1152, 350, + 409, 349, 1540, 673, 410, 1186, 1276, 411, 1543, 1191, + 407, 1190, 349, 1192, 408, 1193, 1207, 1386, 1206, 1218, + 1519, 1392, 412, 1217, 1240, 1219, 1220, 820, 413, 1224, + 1225, 1235, 1236, 1244, 1249, 638, 1251, 1259, 349, 349, + 349, 1262, 1274, 1264, 728, 729, 1266, 1284, 1291, 347, + 1293, 1352, 1294, 1300, 1303, 1353, 1307, 1319, 1354, 1355, + 1366, 1322, 349, 58, 1329, 1388, 1377, 1367, 1126, 1369, + 1374, 1387, 1411, 714, 1424, 1394, 409, 1419, 1437, 1439, + 410, 1441, 1127, 411, 1442, 1446, 1435, 350, 855, 350, + 1462, 1469, 1467, 1468, 1565, 1096, 1474, 1505, 412, 1535, + 1547, 1448, 1532, 1586, 413, 1475, 1480, 1452, 1482, 348, + 1590, 601, 1483, 1499, 1537, 1591, 1538, 545, 1539, 1593, + 1542, 1564, 1587, 1592, 1603, 1594, 1620, 565, 1611, 1612, + 349, 1613, 1616, 1619, 933, 1621, 576, 127, 738, 739, + 740, 741, 742, 18, 82, 745, 589, 171, 748, 130, + 750, 751, 752, 753, 1506, 1448, 599, 1509, 754, 1054, + 756, 757, 307, 1187, 24, 615, 1510, 1511, 1512, 1513, + 1486, 350, 1209, 714, 1445, 623, 1464, 715, 1530, 1379, + 1465, 620, 1531, 673, 350, 640, 92, 1283, 786, 1496, + 645, 627, 647, 1321, 628, 921, 0, 0, 0, 0, + 0, 656, 1525, 0, 0, 0, 0, 349, 0, 668, + 669, 670, 0, 0, 0, 0, 0, 772, 773, 774, + 775, 776, 777, 778, 688, 0, 0, 728, 729, 0, + 0, 0, 692, 779, 780, 688, 0, 0, 699, 700, + 701, 702, 703, 0, 0, 350, 0, 0, 673, 673, + 673, 712, 0, 714, 0, 714, 0, 714, 1563, 714, + 0, 714, 0, 714, 0, 714, 0, 714, 0, 728, + 729, 0, 714, 0, 714, 0, 0, 0, 0, 0, + 714, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 714, 0, 714, 349, 0, 349, 0, 714, + 0, 714, 0, 714, 0, 0, 714, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 796, 0, 0, 0, + 0, 0, 0, 740, 741, 0, 0, 0, 0, 0, + 0, 748, 0, 750, 751, 752, 753, 714, 0, 0, + 0, 754, 0, 0, 823, 0, 0, 1625, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 738, 739, 740, 741, 742, 714, 0, + 745, 746, 747, 748, 0, 750, 751, 752, 753, 349, + 640, 0, 0, 754, 0, 756, 757, 688, 877, 0, + 878, 0, 349, 0, 0, 883, 0, 0, 0, 0, + 0, 887, 774, 775, 776, 777, 778, 0, 0, 0, + 896, 0, 0, 0, 0, 0, 779, 780, 0, 0, + 0, 899, 900, 901, 902, 903, 904, 0, 912, 0, + 912, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 946, 1344, 772, 773, 774, 775, 776, 777, 778, 0, + 728, 729, 0, 349, 0, 0, 0, 0, 779, 780, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -68, 0, 0, 0, 0, 0, 0, 0, 1311, 1312, - 1313, 730, 731, 0, 1316, 0, 0, 0, 0, 0, - 0, 0, 1322, 914, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 411, 0, 0, 0, 412, 0, - 1301, 413, 0, 547, 0, 0, 0, 0, 1340, 1341, - 0, 0, 0, 0, 0, 1345, 414, 0, 730, 731, - 1109, 0, 415, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1362, 0, 1364, 0, 0, 0, - 0, 1367, 0, 0, 0, 0, 0, 1370, 0, 0, - 0, 1373, 0, 0, 0, 0, 0, 732, 733, 734, + 0, 0, 0, 0, 976, 978, 980, 982, 984, 986, + 988, 990, 991, 992, 0, 0, 993, 995, 997, 998, + 999, 1000, 0, 1003, 1004, 946, 1007, 1008, 1009, 1011, + 1012, 1013, 1015, 1017, 1018, 1019, 1020, 1022, 1024, 1026, + 1027, 1029, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, + 1039, 1040, 1041, 0, 1049, 0, 0, 0, 1052, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1060, 0, + 0, 0, 0, 0, 738, 739, 740, 741, 742, 0, + 0, 745, 746, 747, 748, 0, 750, 751, 752, 753, + 0, 0, 0, 0, 754, 0, 756, 757, 0, 0, + 0, 0, 760, 761, 762, 0, 0, 1086, 766, 0, + 0, 0, 0, 0, 1091, 0, 0, 0, 0, 0, + 0, 1100, 0, 0, 0, 0, 0, 0, 0, 0, + 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, + 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 768, 0, + 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, + 977, 979, 981, 983, 985, 987, 989, 0, 0, 779, + 780, 0, 994, 996, 0, 0, 0, 0, 1002, 0, + 0, 0, 0, 699, 1156, 0, 0, 1014, 1016, 0, + 429, 430, 1021, 1023, 1025, 0, 1028, 1178, 0, 688, + 435, 436, 437, 438, 439, 0, 1183, 0, 0, 688, + 440, 0, 442, 0, 1107, 0, 445, 0, 404, 0, + 0, 0, 0, 1201, 447, 0, 0, 0, 0, 0, + 450, 0, 0, 451, 0, 0, 452, 0, 906, 0, + 455, 0, 0, 0, 0, 405, 406, 0, 0, 0, + 562, 0, 0, 459, 460, 0, 314, 315, 316, 0, + 318, 319, 320, 321, 322, 461, 324, 325, 326, 327, + 328, 329, 330, 331, 332, 333, 334, 0, 336, 337, + 338, 0, 0, 341, 342, 343, 344, 462, 463, 464, + 0, 0, 0, 0, 0, 0, 404, 0, 0, 0, + 0, 0, 466, 467, 0, 0, 0, 0, 407, 0, + 0, 0, 408, 0, 0, 0, 0, 1234, 0, 0, + 0, 1239, 0, 405, 406, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 471, 472, 473, 474, 475, + 0, 476, 907, 477, 478, 479, 480, 481, 482, 483, + 484, 485, 486, 487, 908, 563, 489, 490, 0, 0, + 0, 0, 0, 0, 491, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 409, 0, 0, 0, 410, 0, + 0, 909, 495, 496, 0, 14, 407, 0, 497, 498, + 408, 0, 0, 0, 728, 729, 910, 0, 911, 0, + 501, 502, 413, 0, 1295, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, -68, 0, + 0, 0, 0, 0, 0, 0, 1309, 1310, 1311, 728, + 729, 0, 1314, 0, 0, 0, 0, 0, 0, 0, + 1320, 912, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 409, 0, 0, 0, 410, 0, 1277, 411, + 0, 545, 0, 0, 0, 0, 1338, 1339, 0, 0, + 0, 0, 0, 1343, 412, 0, 0, 0, 1107, 0, + 413, 0, 0, 0, 0, 0, 0, 0, 738, 739, + 740, 741, 1360, 0, 1362, 0, 0, 0, 748, 1365, + 750, 751, 752, 753, 0, 1368, 0, 0, 754, 1371, + 756, 757, 0, 0, 0, 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, 0, 0, 0, 0, 756, 757, 758, 759, 760, - 761, 1391, 0, 762, 763, 764, 765, 766, 767, 768, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 690, - 0, 0, 740, 741, 742, 743, 744, 0, 0, 747, - 0, 0, 750, 0, 752, 753, 754, 755, 0, 0, - 0, 0, 756, 0, 758, 759, 0, 0, 769, 770, - 0, 771, 772, 773, 774, 775, 776, 777, 778, 779, - 780, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 781, 782, 0, 0, 0, 503, 673, 0, 0, 0, - 730, 731, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1459, 0, 1460, 0, 0, 0, 0, - 1463, 774, 775, 776, 777, 778, 779, 780, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 781, 782, 0, - 0, 0, 1472, 0, 0, 0, 0, 0, 0, 0, - 1479, 1480, 1481, 0, 0, 0, 0, 1487, 0, 0, - 0, 1490, 0, 0, 0, 1494, 1495, 1496, 1497, 0, - 0, 690, 1500, 0, 690, 1504, 0, 0, 0, 0, - 0, 0, 1516, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1524, 740, 741, 742, 743, 744, 0, - 0, 747, 748, 749, 750, 0, 752, 753, 754, 755, - 0, 0, 0, 0, 756, 0, 758, 759, 0, 0, - 0, 690, 762, 763, 764, 0, 0, 0, 768, 0, - 0, 0, 0, 0, 0, 1551, 1552, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1559, - 0, 0, 0, 0, 1564, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 406, 1570, 1571, 770, 0, - 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, - 0, 1579, 0, 0, 0, 0, 0, 0, 0, 781, - 782, 0, 407, 408, 503, 673, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1599, 0, 0, - 0, 0, 1601, 1602, 430, 0, 0, 431, 432, 3, - 0, 433, 434, 435, 0, 436, 0, 437, 438, 439, - 440, 441, 1617, 0, 1619, 1620, 0, 442, 443, 444, - 445, 446, 0, 447, 1624, 0, 0, 0, 0, 0, - 448, 449, 0, 0, 450, 409, 451, 452, 0, 410, - 453, 0, 8, 454, 455, 0, 456, 457, 0, 0, - 458, 459, 0, 0, 0, 0, 0, 460, 0, 0, - 461, 462, 0, 316, 317, 318, 0, 320, 321, 322, - 323, 324, 463, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 0, 338, 339, 340, 0, 0, - 343, 344, 345, 346, 464, 465, 466, 467, 0, 0, - 0, 411, 0, 0, 0, 412, 0, 1303, 413, 468, - 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 414, 470, 471, 472, 0, 0, 415, - 0, 0, 0, 0, 58, 0, 0, 0, 0, 0, - 0, 0, 473, 474, 475, 476, 477, 0, 478, 0, - 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 59, 490, 491, 492, 0, 0, 0, 0, 0, - 0, 493, 494, 495, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 496, 497, - 498, 0, 14, 0, 0, 499, 500, 0, 0, 0, - 0, 0, 0, 501, 0, 502, 430, 503, 504, 431, - 432, 3, 0, 433, 434, 435, 0, 436, 0, 437, - 438, 439, 440, 441, 0, 0, 0, 0, 0, 442, - 443, 444, 445, 446, 0, 447, 0, 0, 0, 0, - 0, 0, 448, 449, 0, 0, 450, 0, 451, 452, - 0, 0, 453, 0, 8, 454, 455, 0, 456, 457, - 0, 0, 458, 459, 0, 0, 0, 0, 0, 460, - 0, 0, 461, 462, 0, 316, 317, 318, 0, 320, - 321, 322, 323, 324, 463, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, 0, 338, 339, 340, - 0, 0, 343, 344, 345, 346, 464, 465, 466, 467, + 745, 746, 747, 748, 749, 750, 751, 752, 753, 0, + 0, 0, 0, 754, 755, 756, 757, 758, 759, 1389, + 0, 760, 761, 762, 763, 764, 765, 766, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 688, 0, 774, + 775, 776, 777, 778, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 779, 780, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 767, 768, 0, 769, + 770, 771, 772, 773, 774, 775, 776, 777, 778, 179, + 0, 0, 0, 0, 0, 0, 0, 0, 779, 780, + 0, 0, 0, 501, 671, 0, 0, 0, 728, 729, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1457, 0, 1458, 0, 180, 0, 181, 1461, 182, + 183, 184, 185, 186, 0, 187, 188, 189, 190, 191, + 192, 193, 194, 195, 196, 197, 0, 198, 199, 200, + 1470, 0, 201, 202, 203, 204, 0, 0, 1477, 1478, + 1479, 0, 0, 0, 0, 1485, 0, 0, 0, 1488, + 0, 205, 206, 1492, 1493, 1494, 1495, 0, 0, 688, + 1498, 0, 688, 1502, 0, 0, 0, 0, 0, 0, + 1514, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1522, 738, 739, 740, 741, 742, 0, 0, 745, + 746, 747, 748, 0, 750, 751, 752, 753, 0, 0, + 0, 0, 754, 207, 756, 757, 0, 0, 0, 688, + 760, 761, 762, 0, 0, 0, 766, 0, 0, 0, + 0, 0, 0, 1549, 1550, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1557, 0, 0, + 0, 0, 1562, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 404, 1568, 1569, 768, 0, 769, 770, + 771, 772, 773, 774, 775, 776, 777, 778, 0, 1577, + 0, 0, 0, 0, 0, 0, 0, 779, 780, 0, + 405, 406, 501, 671, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1597, 0, 0, 0, 0, + 1599, 1600, 428, 0, 0, 429, 430, 3, 0, 431, + 432, 433, 0, 434, 0, 435, 436, 437, 438, 439, + 1615, 0, 1617, 1618, 0, 440, 441, 442, 443, 444, + 0, 445, 1622, 0, 0, 0, 0, 0, 446, 447, + 0, 0, 448, 407, 449, 450, 0, 408, 451, 0, + 8, 452, 453, 0, 454, 455, 0, 0, 456, 457, + 0, 0, 0, 0, 0, 458, 0, 0, 459, 460, + 0, 314, 315, 316, 0, 318, 319, 320, 321, 322, + 461, 324, 325, 326, 327, 328, 329, 330, 331, 332, + 333, 334, 0, 336, 337, 338, 0, 0, 341, 342, + 343, 344, 462, 463, 464, 465, 0, 0, 0, 409, + 0, 0, 0, 410, 0, 1290, 411, 466, 467, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 412, 468, 469, 470, 0, 0, 413, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 471, 472, 473, 474, 475, 0, 476, 0, 477, 478, + 479, 480, 481, 482, 483, 484, 485, 486, 487, 58, + 488, 489, 490, 0, 0, 0, 0, 0, 0, 491, + 492, 493, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 494, 495, 496, 0, + 14, 0, 0, 497, 498, 0, 0, 0, 0, 0, + 0, 499, 0, 500, 428, 501, 502, 429, 430, 3, + 0, 431, 432, 433, 0, 434, 0, 435, 436, 437, + 438, 439, 0, 0, 0, 0, 0, 440, 441, 442, + 443, 444, 0, 445, 0, 0, 0, 0, 0, 0, + 446, 447, 0, 0, 448, 0, 449, 450, 0, 0, + 451, 0, 8, 452, 453, 0, 454, 455, 0, 0, + 456, 457, 0, 0, 0, 0, 0, 458, 0, 0, + 459, 460, 0, 314, 315, 316, 0, 318, 319, 320, + 321, 322, 461, 324, 325, 326, 327, 328, 329, 330, + 331, 332, 333, 334, 0, 336, 337, 338, 0, 0, + 341, 342, 343, 344, 462, 463, 464, 465, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 466, + 467, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 468, 469, 470, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 471, 472, 473, 474, 475, 404, 476, 0, + 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, + 487, 58, 488, 489, 490, 0, 0, 0, 0, 0, + 0, 491, 1335, 493, 405, 406, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 494, 495, + 496, 0, 14, 0, 0, 497, 498, 0, 0, 429, + 430, 0, 0, 499, 0, 500, 0, 501, 502, 435, + 436, 437, 438, 439, 0, 0, 0, 0, 0, 440, + 0, 442, 0, 0, 0, 445, 0, 404, 0, 0, + 0, 0, 0, 447, 0, 0, 0, 407, 0, 450, + 0, 408, 451, 0, 0, 452, 0, 0, 0, 455, + 0, 0, 0, 0, 405, 406, 0, 0, 0, 562, + 0, 0, 459, 460, 0, 314, 315, 316, 0, 318, + 319, 320, 321, 322, 461, 324, 325, 326, 327, 328, + 329, 330, 331, 332, 333, 334, 0, 336, 337, 338, + 0, 0, 341, 342, 343, 344, 462, 463, 464, 0, + 0, 0, 0, 409, 0, 0, 0, 410, 0, 1296, + 411, 466, 467, 0, 0, 0, 0, 407, 0, 0, + 0, 408, 0, 0, 0, 412, 0, 0, 0, 0, + 0, 413, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 471, 472, 473, 474, 475, 404, + 476, 907, 477, 478, 479, 480, 481, 482, 483, 484, + 485, 486, 487, 908, 563, 489, 490, 0, 0, 0, + 0, 0, 0, 491, 0, 0, 405, 406, 0, 0, + 0, 0, 0, 409, 0, 0, 0, 410, 0, 0, + 909, 495, 496, 0, 14, 0, 0, 497, 498, 0, + 0, 0, 429, 430, 0, 910, 0, 919, 0, 501, + 502, 413, 435, 436, 437, 438, 439, 0, 0, 0, + 0, 0, 440, 0, 442, 0, 0, 0, 445, 0, + 594, 0, 0, 0, 0, 0, 447, 0, 0, 407, + 0, 0, 450, 408, 0, 451, 0, 0, 452, 0, + 0, 0, 455, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 562, 0, 0, 459, 460, 0, 314, 315, + 316, 0, 318, 319, 320, 321, 322, 461, 324, 325, + 326, 327, 328, 329, 330, 331, 332, 333, 334, 0, + 336, 337, 338, 0, 0, 341, 342, 343, 344, 462, + 463, 464, 0, 0, 0, 409, 0, 0, 0, 410, + 0, 1297, 411, 0, 466, 467, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 412, 0, 0, + 0, 0, 0, 413, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 471, 472, 473, + 474, 475, 404, 476, 0, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 58, 563, 489, 490, + 0, 0, 0, 0, 0, 0, 491, 0, 0, 405, + 406, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 595, 0, 0, 494, 495, 496, 0, 14, 0, 0, + 497, 498, 0, 0, 0, 429, 430, 0, 1155, 0, + 500, 0, 501, 502, 597, 435, 436, 437, 438, 439, + 0, 0, 0, 0, 0, 440, 0, 442, 0, 0, + 0, 445, 0, 0, 0, 0, 0, 0, 0, 447, + 0, 0, 407, 0, 0, 450, 408, 0, 451, 0, + 0, 452, 0, 0, 0, 455, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 562, 0, 0, 459, 460, + 0, 314, 315, 316, 0, 318, 319, 320, 321, 322, + 461, 324, 325, 326, 327, 328, 329, 330, 331, 332, + 333, 334, 0, 336, 337, 338, 0, 0, 341, 342, + 343, 344, 462, 463, 464, 0, 0, 0, 409, 0, + 0, 0, 410, 0, 1298, 411, 0, 466, 467, 0, + 0, 0, 0, 0, 0, 0, 636, 0, 0, 0, + 412, 0, 468, 469, 470, 0, 413, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 471, 472, 473, 474, 475, 404, 476, 0, 477, 478, + 479, 480, 481, 482, 483, 484, 485, 486, 487, 58, + 563, 489, 490, 0, 0, 0, 0, 0, 0, 491, + 0, 0, 405, 406, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 494, 495, 496, 0, + 14, 0, 0, 497, 498, 0, 0, 429, 430, 0, + 0, 499, 0, 500, 0, 501, 502, 435, 436, 437, + 438, 439, 0, 0, 0, 0, 0, 440, 0, 442, + 0, 0, 0, 445, 0, 0, 0, 0, 0, 0, + 0, 447, 0, 0, 0, 407, 0, 450, 0, 408, + 451, 0, 0, 452, 0, 0, 0, 455, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 562, 0, 0, + 459, 460, 0, 314, 315, 316, 0, 318, 319, 320, + 321, 322, 461, 324, 325, 326, 327, 328, 329, 330, + 331, 332, 333, 334, 0, 336, 337, 338, 0, 0, + 341, 342, 343, 344, 462, 463, 464, 0, 0, 0, + 0, 409, 0, 0, 0, 410, 0, 1299, 411, 466, + 467, 0, 0, 0, 0, 0, 0, 0, 666, 0, + 0, 0, 0, 412, 468, 469, 470, 0, 0, 413, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 471, 472, 473, 474, 475, 404, 476, 0, + 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, + 487, 58, 563, 489, 490, 0, 0, 0, 0, 0, + 0, 491, 0, 0, 405, 406, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 494, 495, + 496, 0, 14, 0, 0, 497, 498, 0, 0, 429, + 430, 0, 0, 499, 0, 500, 0, 501, 502, 435, + 436, 437, 438, 439, 0, 0, 0, 0, 0, 440, + 1507, 442, 443, 0, 0, 445, 0, 0, 0, 0, + 0, 0, 0, 447, 0, 0, 0, 407, 0, 450, + 0, 408, 451, 0, 0, 452, 453, 0, 0, 455, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 562, + 0, 0, 459, 460, 0, 314, 315, 316, 0, 318, + 319, 320, 321, 322, 461, 324, 325, 326, 327, 328, + 329, 330, 331, 332, 333, 334, 0, 336, 337, 338, + 0, 0, 341, 342, 343, 344, 462, 463, 464, 1508, + 0, 0, 0, 409, 0, 0, 0, 410, 0, 1301, + 411, 466, 467, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 412, 0, 0, 0, 0, + 0, 413, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 471, 472, 473, 474, 475, 404, + 476, 0, 477, 478, 479, 480, 481, 482, 483, 484, + 485, 486, 487, 58, 563, 489, 490, 0, 0, 0, + 0, 0, 0, 491, 0, 0, 405, 406, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 468, 469, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 470, 471, 472, 0, - 0, 0, 0, 0, 0, 0, 58, 0, 0, 0, - 0, 0, 0, 0, 473, 474, 475, 476, 477, 406, - 478, 0, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 488, 489, 59, 490, 491, 492, 0, 0, 0, - 0, 0, 0, 493, 1337, 495, 407, 408, 0, 0, + 494, 495, 496, 0, 14, 0, 0, 497, 498, 0, + 0, 429, 430, 0, 0, 499, 0, 500, 0, 501, + 502, 435, 436, 437, 438, 439, 0, 0, 0, 0, + 0, 440, 0, 442, 0, 0, 0, 445, 0, 0, + 0, 0, 0, 0, 0, 447, 0, 0, 0, 407, + 0, 450, 0, 408, 451, 0, 0, 452, 0, 0, + 0, 455, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 562, 0, 0, 459, 460, 0, 314, 315, 316, + 0, 318, 319, 320, 321, 322, 461, 324, 325, 326, + 327, 328, 329, 330, 331, 332, 333, 334, 0, 336, + 337, 338, 0, 0, 341, 342, 343, 344, 462, 463, + 464, 0, 0, 0, 0, 409, 0, 0, 0, 410, + 0, 1302, 411, 466, 467, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 412, 468, 469, + 470, 0, 0, 413, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 471, 472, 473, 474, + 475, 404, 476, 0, 477, 478, 479, 480, 481, 482, + 483, 484, 485, 486, 487, 58, 563, 489, 490, 0, + 0, 0, 0, 0, 0, 491, 0, 0, 405, 406, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 496, 497, 498, 0, 14, 0, 0, 499, 500, 0, - 0, 431, 432, 0, 0, 501, 0, 502, 0, 503, - 504, 437, 438, 439, 440, 441, 0, 0, 0, 0, - 0, 442, 0, 444, 0, 0, 0, 447, 0, 406, - 0, 0, 0, 0, 0, 449, 0, 0, 0, 409, - 0, 452, 0, 410, 453, 0, 0, 454, 0, 0, - 0, 457, 0, 0, 0, 0, 407, 408, 0, 0, - 0, 564, 0, 0, 461, 462, 0, 316, 317, 318, - 0, 320, 321, 322, 323, 324, 463, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 335, 336, 0, 338, - 339, 340, 0, 0, 343, 344, 345, 346, 464, 465, - 466, 0, 0, 0, 0, 411, 0, 0, 0, 412, - 0, 1304, 413, 468, 469, 0, 0, 0, 0, 409, - 0, 0, 0, 410, 0, 0, 0, 414, 0, 0, - 0, 0, 0, 415, 0, 0, 0, 0, 58, 0, - 0, 0, 0, 0, 0, 0, 473, 474, 475, 476, - 477, 406, 478, 909, 479, 480, 481, 482, 483, 484, - 485, 486, 487, 488, 489, 910, 565, 491, 492, 0, - 0, 0, 0, 0, 0, 493, 0, 0, 407, 408, - 0, 0, 0, 0, 0, 411, 0, 0, 0, 412, - 0, 0, 911, 497, 498, 0, 14, 0, 0, 499, - 500, 0, 0, 0, 431, 432, 0, 912, 0, 921, - 0, 503, 504, 415, 437, 438, 439, 440, 441, 0, - 0, 0, 0, 0, 442, 0, 444, 0, 0, 0, - 447, 0, 596, 0, 0, 0, 0, 0, 449, 0, - 0, 409, 0, 0, 452, 410, 0, 453, 0, 0, - 454, 0, 0, 0, 457, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 564, 0, 0, 461, 462, 0, - 316, 317, 318, 0, 320, 321, 322, 323, 324, 463, - 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, - 336, 0, 338, 339, 340, 0, 0, 343, 344, 345, - 346, 464, 465, 466, 0, 0, 0, 411, 0, 0, - 0, 412, 0, 1306, 413, 0, 468, 469, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 414, - 0, 0, 0, 0, 0, 415, 0, 0, 0, 0, - 0, 58, 0, 0, 0, 0, 0, 0, 0, 473, - 474, 475, 476, 477, 406, 478, 0, 479, 480, 481, - 482, 483, 484, 485, 486, 487, 488, 489, 59, 565, - 491, 492, 0, 0, 0, 0, 0, 0, 493, 0, - 0, 407, 408, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 597, 0, 0, 496, 497, 498, 0, 14, - 0, 0, 499, 500, 0, 0, 0, 431, 432, 0, - 1157, 0, 502, 0, 503, 504, 599, 437, 438, 439, - 440, 441, 0, 0, 0, 0, 0, 442, 0, 444, - 0, 0, 0, 447, 0, 0, 0, 0, 0, 0, - 0, 449, 0, 0, 409, 0, 0, 452, 410, 0, - 453, 0, 0, 454, 0, 0, 0, 457, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 564, 0, 0, - 461, 462, 0, 316, 317, 318, 0, 320, 321, 322, - 323, 324, 463, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 0, 338, 339, 340, 0, 0, - 343, 344, 345, 346, 464, 465, 466, 0, 0, 0, - 411, 0, 0, 0, 412, 0, 1400, 413, 0, 468, - 469, 0, 0, 0, 0, 0, 0, 0, 638, 0, - 0, 0, 414, 0, 470, 471, 472, 0, 415, 0, - 0, 0, 0, 0, 58, 0, 0, 0, 0, 0, - 0, 0, 473, 474, 475, 476, 477, 406, 478, 0, - 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 59, 565, 491, 492, 0, 0, 0, 0, 0, - 0, 493, 0, 0, 407, 408, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 496, 497, - 498, 0, 14, 0, 0, 499, 500, 0, 0, 431, - 432, 0, 0, 501, 0, 502, 0, 503, 504, 437, - 438, 439, 440, 441, 0, 0, 0, 0, 0, 442, - 0, 444, 0, 0, 0, 447, 0, 0, 0, 0, - 0, 0, 0, 449, 0, 0, 0, 409, 0, 452, - 0, 410, 453, 0, 0, 454, 0, 0, 0, 457, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 564, - 0, 0, 461, 462, 0, 316, 317, 318, 0, 320, - 321, 322, 323, 324, 463, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, 0, 338, 339, 340, - 0, 0, 343, 344, 345, 346, 464, 465, 466, 0, - 0, 0, 0, 411, 0, 0, 0, 412, 0, 1401, - 413, 468, 469, 0, 0, 0, 0, 0, 0, 0, - 668, 0, 0, 0, 0, 414, 470, 471, 472, 0, - 0, 415, 0, 0, 0, 0, 58, 0, 0, 0, - 0, 0, 0, 0, 473, 474, 475, 476, 477, 406, - 478, 0, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 488, 489, 59, 565, 491, 492, 0, 0, 0, - 0, 0, 0, 493, 0, 0, 407, 408, 0, 0, + 0, 0, 494, 495, 496, 0, 14, 0, 0, 497, + 498, 0, 0, 429, 430, 0, 0, 499, 0, 500, + 0, 501, 502, 435, 436, 437, 438, 439, 0, 0, + 0, 0, 0, 440, 0, 442, 0, 0, 404, 445, + 0, 0, 0, 0, 0, 0, 0, 447, 0, 0, + 0, 407, 0, 450, 0, 408, 451, 0, 0, 452, + 0, 0, 0, 455, 0, 405, 406, 0, 0, 0, + 0, 0, 0, 562, 0, 0, 459, 460, 0, 314, + 315, 316, 0, 318, 319, 320, 321, 322, 461, 324, + 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, + 0, 336, 337, 338, 0, 0, 341, 342, 343, 344, + 462, 463, 464, 0, 0, 0, 0, 409, 0, 0, + 0, 410, 0, 1304, 411, 466, 467, 0, 407, 0, + 0, 0, 408, 0, 0, 0, 0, 0, 0, 412, + 971, 972, 973, 0, 0, 413, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 471, 472, + 473, 474, 475, 0, 476, 404, 477, 478, 479, 480, + 481, 482, 483, 484, 485, 486, 487, 58, 563, 489, + 490, 0, 0, 0, 0, 0, 0, 491, 0, 0, + 0, 0, 405, 406, 409, 0, 0, 0, 410, 0, + 1398, 411, 0, 0, 494, 495, 496, 0, 14, 0, + 0, 497, 498, 0, 0, 0, 412, 429, 430, 499, + 0, 500, 413, 501, 502, 704, 0, 435, 436, 437, + 438, 439, 0, 0, 0, 0, 0, 440, 0, 442, + 0, 0, 404, 445, 0, 0, 0, 0, 0, 0, + 0, 447, 0, 0, 0, 407, 0, 450, 0, 408, + 451, 705, 0, 452, 0, 0, 0, 455, 0, 405, + 406, 0, 0, 0, 0, 0, 0, 562, 0, 0, + 459, 460, 0, 314, 315, 316, 0, 318, 319, 320, + 321, 322, 461, 324, 325, 326, 327, 328, 329, 330, + 331, 332, 333, 334, 0, 336, 337, 338, 0, 0, + 341, 342, 343, 344, 462, 463, 464, 0, 0, 0, + 0, 409, 0, 0, 0, 410, 0, 1399, 411, 466, + 467, 0, 407, 0, 0, 0, 408, 0, 0, 0, + 0, 0, 0, 412, 0, 0, 0, 0, 0, 413, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 496, 497, 498, 0, 14, 0, 0, 499, 500, 0, - 0, 431, 432, 0, 0, 501, 0, 502, 0, 503, - 504, 437, 438, 439, 440, 441, 0, 0, 0, 0, - 0, 442, 1509, 444, 445, 0, 0, 447, 0, 0, - 0, 0, 0, 0, 0, 449, 0, 0, 0, 409, - 0, 452, 0, 410, 453, 0, 0, 454, 455, 0, - 0, 457, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 564, 0, 0, 461, 462, 0, 316, 317, 318, - 0, 320, 321, 322, 323, 324, 463, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 335, 336, 0, 338, - 339, 340, 0, 0, 343, 344, 345, 346, 464, 465, - 466, 1510, 0, 0, 0, 411, 0, 0, 0, 412, - 0, 1402, 413, 468, 469, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 414, 0, 0, - 0, 0, 0, 415, 0, 0, 0, 0, 58, 0, - 0, 0, 0, 0, 0, 0, 473, 474, 475, 476, - 477, 406, 478, 0, 479, 480, 481, 482, 483, 484, - 485, 486, 487, 488, 489, 59, 565, 491, 492, 0, - 0, 0, 0, 0, 0, 493, 0, 0, 407, 408, + 0, 0, 471, 472, 473, 474, 475, 0, 476, 404, + 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, + 487, 58, 563, 489, 490, 0, 0, 0, 0, 0, + 0, 491, 0, 0, 0, 0, 405, 406, 409, 0, + 0, 0, 410, 0, 1400, 411, 0, 0, 494, 495, + 496, 0, 14, 0, 0, 497, 498, 0, 0, 0, + 412, 429, 430, 499, 598, 500, 413, 501, 502, 704, + 0, 435, 436, 437, 438, 439, 0, 0, 0, 0, + 0, 440, 0, 442, 0, 0, 404, 445, 0, 0, + 0, 0, 0, 0, 0, 447, 0, 0, 0, 407, + 0, 450, 0, 408, 451, 705, 0, 452, 0, 0, + 0, 455, 0, 405, 406, 0, 0, 0, 0, 0, + 0, 562, 0, 0, 459, 460, 0, 314, 315, 316, + 0, 318, 319, 320, 321, 322, 461, 324, 325, 326, + 327, 328, 329, 330, 331, 332, 333, 334, 0, 336, + 337, 338, 0, 0, 341, 342, 343, 344, 462, 463, + 464, 0, 0, 0, 0, 409, 0, 0, 0, 410, + 0, 1402, 411, 466, 467, 0, 407, 0, 0, 0, + 408, 0, 0, 0, 0, 0, 0, 412, 0, 0, + 0, 0, 0, 413, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 471, 472, 473, 474, + 475, 0, 476, 907, 477, 478, 479, 480, 481, 482, + 483, 484, 485, 486, 487, 908, 563, 489, 490, 0, + 0, 0, 0, 0, 0, 491, 0, 0, 0, 0, + 0, 0, 409, 0, 0, 0, 410, 0, 1433, 411, + 0, 0, 494, 495, 496, 0, 14, 0, 0, 497, + 498, 0, 0, 0, 412, 429, 430, 499, 0, 500, + 413, 501, 502, 704, 0, 435, 436, 437, 438, 439, + 0, 0, 0, 0, 0, 440, 0, 442, 0, 0, + 404, 445, 0, 0, 0, 0, 0, 0, 0, 447, + 0, 0, 0, 0, 0, 450, 0, 0, 451, 705, + 0, 452, 0, 0, 0, 455, 0, 405, 406, 0, + 0, 0, 0, 0, 0, 562, 0, 0, 459, 460, + 0, 314, 315, 316, 0, 318, 319, 320, 321, 322, + 461, 324, 325, 326, 327, 328, 329, 330, 331, 332, + 333, 334, 0, 336, 337, 338, 0, 0, 341, 342, + 343, 344, 462, 463, 464, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 466, 467, 0, + 407, 0, 0, 0, 408, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 496, 497, 498, 0, 14, 0, 0, 499, - 500, 0, 0, 431, 432, 0, 0, 501, 0, 502, - 0, 503, 504, 437, 438, 439, 440, 441, 0, 0, - 0, 0, 0, 442, 0, 444, 0, 0, 0, 447, - 0, 0, 0, 0, 0, 0, 0, 449, 0, 0, - 0, 409, 0, 452, 0, 410, 453, 0, 0, 454, - 0, 0, 0, 457, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 564, 0, 0, 461, 462, 0, 316, - 317, 318, 0, 320, 321, 322, 323, 324, 463, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, - 0, 338, 339, 340, 0, 0, 343, 344, 345, 346, - 464, 465, 466, 0, 0, 0, 0, 411, 0, 0, - 0, 412, 0, 1404, 413, 468, 469, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 414, - 470, 471, 472, 0, 0, 415, 0, 0, 0, 0, - 58, 0, 0, 0, 0, 0, 0, 0, 473, 474, - 475, 476, 477, 406, 478, 0, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 488, 489, 59, 565, 491, - 492, 0, 0, 0, 0, 0, 0, 493, 0, 0, - 407, 408, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 496, 497, 498, 0, 14, 0, - 0, 499, 500, 0, 0, 431, 432, 0, 0, 501, - 0, 502, 0, 503, 504, 437, 438, 439, 440, 441, - 0, 0, 0, 0, 0, 442, 0, 444, 0, 0, - 406, 447, 0, 0, 0, 0, 0, 0, 0, 449, - 0, 0, 0, 409, 0, 452, 0, 410, 453, 0, - 0, 454, 0, 0, 0, 457, 0, 407, 408, 0, - 0, 0, 0, 0, 0, 564, 0, 0, 461, 462, - 0, 316, 317, 318, 0, 320, 321, 322, 323, 324, - 463, 326, 327, 328, 329, 330, 331, 332, 333, 334, - 335, 336, 0, 338, 339, 340, 0, 0, 343, 344, - 345, 346, 464, 465, 466, 0, 0, 0, 0, 411, - 0, 0, 0, 412, 0, 1435, 413, 468, 469, 0, - 409, 0, 0, 0, 410, 0, 0, 0, 0, 0, - 0, 414, 973, 974, 975, 0, 0, 415, 0, 0, - 0, 0, 58, 0, 0, 0, 0, 0, 0, 0, - 473, 474, 475, 476, 477, 0, 478, 0, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 59, - 565, 491, 492, 0, 0, 0, 0, 0, 0, 493, - 0, 0, 0, 0, 0, 0, 411, 0, 0, 0, - 412, 0, 1525, 413, 0, 0, 496, 497, 498, 0, - 14, 0, 0, 499, 500, 0, 0, 0, 414, 431, - 432, 501, 0, 502, 415, 503, 504, 706, 0, 437, - 438, 439, 440, 441, 0, 0, 0, 0, 0, 442, - 0, 444, 0, 0, 0, 447, 0, 0, 0, 0, - 0, 0, 0, 449, 0, 0, 0, 0, 0, 452, - 0, 0, 453, 707, 0, 454, 0, 0, 0, 457, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 564, - 0, 0, 461, 462, 0, 316, 317, 318, 0, 320, - 321, 322, 323, 324, 463, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, 0, 338, 339, 340, - 0, 0, 343, 344, 345, 346, 464, 465, 466, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 468, 469, 0, 0, 0, 0, 0, 0, 0, + 471, 472, 473, 474, 475, 0, 476, 0, 477, 478, + 479, 480, 481, 482, 483, 484, 485, 486, 487, 58, + 563, 489, 490, 0, 0, 0, 0, 0, 0, 491, + 0, 0, 0, 0, 0, 0, 409, 0, 0, 0, + 410, 0, 1523, 411, 0, 0, 494, 495, 496, 0, + 14, 0, 0, 497, 498, 0, 0, 0, 412, 429, + 430, 499, 821, 500, 413, 501, 502, 704, 0, 435, + 436, 437, 438, 439, 0, 0, 0, 0, 0, 440, + 0, 442, 0, 0, 0, 445, 0, 0, 0, 0, + 0, 0, 0, 447, 0, 0, 0, 0, 0, 450, + 0, 0, 451, 705, 0, 452, 0, 0, 0, 455, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 562, + 0, 0, 459, 460, 0, 314, 315, 316, 0, 318, + 319, 320, 321, 322, 461, 324, 325, 326, 327, 328, + 329, 330, 331, 332, 333, 334, 0, 336, 337, 338, + 0, 0, 341, 342, 343, 344, 462, 463, 464, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 58, 0, 0, 0, - 0, 0, 0, 0, 473, 474, 475, 476, 477, 0, - 478, 0, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 488, 489, 59, 565, 491, 492, 0, 0, 0, - 0, 0, 0, 493, 0, 0, 0, 0, 0, 0, + 0, 466, 467, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 496, 497, 498, 0, 14, 0, 0, 499, 500, 0, - 0, 0, 0, 431, 432, 501, 600, 502, 0, 503, - 504, 706, 0, 437, 438, 439, 440, 441, 0, 0, - 0, 0, 0, 442, 0, 444, 0, 0, 0, 447, - 0, 0, 0, 0, 0, 0, 0, 449, 0, 0, - 0, 0, 0, 452, 0, 0, 453, 707, 0, 454, - 0, 0, 0, 457, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 564, 0, 0, 461, 462, 0, 316, - 317, 318, 0, 320, 321, 322, 323, 324, 463, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, - 0, 338, 339, 340, 0, 0, 343, 344, 345, 346, - 464, 465, 466, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 468, 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 471, 472, 473, 474, 475, 0, + 476, 0, 477, 478, 479, 480, 481, 482, 483, 484, + 485, 486, 487, 58, 563, 489, 490, 0, 0, 0, + 0, 0, 0, 491, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 58, 0, 0, 0, 0, 0, 0, 0, 473, 474, - 475, 476, 477, 0, 478, 909, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 488, 489, 910, 565, 491, - 492, 0, 0, 0, 0, 0, 0, 493, 0, 0, + 494, 495, 496, 0, 14, 0, 0, 497, 498, 0, + 0, 429, 430, 0, 0, 499, 0, 500, 0, 501, + 502, 435, 436, 437, 438, 439, 0, 0, 0, 0, + 0, 440, 0, 442, 0, 0, 0, 445, 0, 0, + 0, 0, 0, 0, 0, 447, 0, 0, 0, 0, + 0, 450, 0, 0, 451, 0, 0, 452, 0, 0, + 0, 455, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 562, 0, 0, 459, 460, 0, 314, 315, 316, + 0, 318, 319, 320, 321, 322, 461, 324, 325, 326, + 327, 328, 329, 330, 331, 332, 333, 334, 0, 336, + 337, 338, 0, 0, 341, 342, 343, 344, 462, 463, + 464, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 466, 467, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 496, 497, 498, 0, 14, 0, - 0, 499, 500, 0, 0, 0, 0, 431, 432, 501, - 0, 502, 0, 503, 504, 706, 0, 437, 438, 439, - 440, 441, 0, 0, 0, 0, 0, 442, 0, 444, - 0, 0, 0, 447, 0, 0, 0, 0, 0, 0, - 0, 449, 0, 0, 0, 0, 0, 452, 0, 0, - 453, 707, 0, 454, 0, 0, 0, 457, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 564, 0, 0, - 461, 462, 0, 316, 317, 318, 0, 320, 321, 322, - 323, 324, 463, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 0, 338, 339, 340, 0, 0, - 343, 344, 345, 346, 464, 465, 466, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 468, - 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 58, 0, 0, 0, 0, 0, - 0, 0, 473, 474, 475, 476, 477, 0, 478, 0, - 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 59, 565, 491, 492, 0, 0, 0, 0, 0, - 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 496, 497, - 498, 0, 14, 0, 0, 499, 500, 0, 0, 0, - 0, 431, 432, 501, 823, 502, 0, 503, 504, 706, - 0, 437, 438, 439, 440, 441, 0, 0, 0, 0, - 0, 442, 0, 444, 0, 0, 0, 447, 0, 0, - 0, 0, 0, 0, 0, 449, 0, 0, 0, 0, - 0, 452, 0, 0, 453, 707, 0, 454, 0, 0, - 0, 457, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 564, 0, 0, 461, 462, 0, 316, 317, 318, - 0, 320, 321, 322, 323, 324, 463, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 335, 336, 0, 338, - 339, 340, 0, 0, 343, 344, 345, 346, 464, 465, - 466, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 468, 469, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 471, 472, 473, 474, + 475, 0, 476, 907, 477, 478, 479, 480, 481, 482, + 483, 484, 485, 486, 487, 908, 563, 489, 490, 0, + 0, 0, 0, 0, 0, 491, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 58, 0, - 0, 0, 0, 0, 0, 0, 473, 474, 475, 476, - 477, 0, 478, 0, 479, 480, 481, 482, 483, 484, - 485, 486, 487, 488, 489, 59, 565, 491, 492, 0, - 0, 0, 0, 0, 0, 493, 0, 0, 0, 0, + 0, 0, 494, 495, 496, 0, 14, 0, 0, 497, + 498, 0, 0, 429, 430, 0, 0, 951, 0, 500, + 952, 501, 502, 435, 436, 437, 438, 439, 0, 0, + 0, 0, 0, 440, 0, 442, 0, 0, 0, 445, + 0, 0, 0, 0, 0, 0, 0, 447, 0, 0, + 0, 0, 0, 450, 0, 0, 451, 0, 0, 452, + 0, 0, 0, 455, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 562, 0, 0, 459, 460, 0, 314, + 315, 316, 0, 318, 319, 320, 321, 322, 461, 324, + 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, + 0, 336, 337, 338, 0, 0, 341, 342, 343, 344, + 462, 463, 464, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 466, 467, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 496, 497, 498, 0, 14, 0, 0, 499, - 500, 0, 0, 431, 432, 0, 0, 501, 0, 502, - 0, 503, 504, 437, 438, 439, 440, 441, 0, 0, - 0, 0, 0, 442, 0, 444, 0, 0, 0, 447, - 0, 0, 0, 0, 0, 0, 0, 449, 0, 0, - 0, 0, 0, 452, 0, 0, 453, 0, 0, 454, - 0, 0, 0, 457, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 564, 0, 0, 461, 462, 0, 316, - 317, 318, 0, 320, 321, 322, 323, 324, 463, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, - 0, 338, 339, 340, 0, 0, 343, 344, 345, 346, - 464, 465, 466, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 468, 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 471, 472, + 473, 474, 475, 0, 476, 0, 477, 478, 479, 480, + 481, 482, 483, 484, 485, 486, 487, 58, 563, 489, + 490, 0, 0, 0, 0, 0, 0, 491, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 58, 0, 0, 0, 0, 0, 0, 0, 473, 474, - 475, 476, 477, 0, 478, 909, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 488, 489, 910, 565, 491, - 492, 0, 0, 0, 0, 0, 0, 493, 0, 0, + 0, 0, 0, 0, 494, 495, 496, 0, 14, 0, + 0, 497, 498, 0, 0, 429, 430, 0, 0, 499, + 598, 500, 0, 501, 502, 435, 436, 437, 438, 439, + 0, 0, 0, 0, 0, 440, 0, 442, 0, 0, + 0, 445, 0, 0, 0, 0, 0, 0, 0, 447, + 0, 0, 0, 0, 0, 450, 0, 0, 451, 0, + 0, 452, 0, 0, 0, 455, 0, 0, 0, 0, + 0, 644, 0, 0, 0, 562, 0, 0, 459, 460, + 0, 314, 315, 316, 0, 318, 319, 320, 321, 322, + 461, 324, 325, 326, 327, 328, 329, 330, 331, 332, + 333, 334, 0, 336, 337, 338, 0, 0, 341, 342, + 343, 344, 462, 463, 464, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 466, 467, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 496, 497, 498, 0, 14, 0, - 0, 499, 500, 0, 0, 431, 432, 0, 0, 953, - 0, 502, 954, 503, 504, 437, 438, 439, 440, 441, - 0, 0, 0, 0, 0, 442, 0, 444, 0, 0, - 0, 447, 0, 0, 0, 0, 0, 0, 0, 449, - 0, 0, 0, 0, 0, 452, 0, 0, 453, 0, - 0, 454, 0, 0, 0, 457, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 564, 0, 0, 461, 462, - 0, 316, 317, 318, 0, 320, 321, 322, 323, 324, - 463, 326, 327, 328, 329, 330, 331, 332, 333, 334, - 335, 336, 0, 338, 339, 340, 0, 0, 343, 344, - 345, 346, 464, 465, 466, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 468, 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 58, 0, 0, 0, 0, 0, 0, 0, - 473, 474, 475, 476, 477, 0, 478, 0, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 59, - 565, 491, 492, 0, 0, 0, 0, 0, 0, 493, + 471, 472, 473, 474, 475, 0, 476, 0, 477, 478, + 479, 480, 481, 482, 483, 484, 485, 486, 487, 58, + 563, 489, 490, 0, 0, 0, 0, 0, 0, 491, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 496, 497, 498, 0, - 14, 0, 0, 499, 500, 0, 0, 431, 432, 0, - 0, 501, 600, 502, 0, 503, 504, 437, 438, 439, - 440, 441, 0, 0, 0, 0, 0, 442, 0, 444, - 0, 0, 0, 447, 0, 0, 0, 0, 0, 0, - 0, 449, 0, 0, 0, 0, 0, 452, 0, 0, - 453, 0, 0, 454, 0, 0, 0, 457, 0, 0, - 0, 0, 0, 646, 0, 0, 0, 564, 0, 0, - 461, 462, 0, 316, 317, 318, 0, 320, 321, 322, - 323, 324, 463, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 0, 338, 339, 340, 0, 0, - 343, 344, 345, 346, 464, 465, 466, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 468, - 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 494, 495, 496, 0, + 14, 0, 0, 497, 498, 0, 0, 429, 430, 0, + 0, 499, 0, 500, 0, 501, 502, 435, 436, 437, + 438, 439, 0, 0, 0, 0, 0, 440, 0, 442, + 0, 0, 0, 445, 0, 0, 0, 0, 0, 0, + 0, 447, 0, 0, 0, 0, 0, 450, 0, 0, + 451, 0, 0, 452, 0, 0, 0, 455, 0, 0, + 655, 0, 0, 0, 0, 0, 0, 562, 0, 0, + 459, 460, 0, 314, 315, 316, 0, 318, 319, 320, + 321, 322, 461, 324, 325, 326, 327, 328, 329, 330, + 331, 332, 333, 334, 0, 336, 337, 338, 0, 0, + 341, 342, 343, 344, 462, 463, 464, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 466, + 467, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 58, 0, 0, 0, 0, 0, - 0, 0, 473, 474, 475, 476, 477, 0, 478, 0, - 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 59, 565, 491, 492, 0, 0, 0, 0, 0, - 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 496, 497, - 498, 0, 14, 0, 0, 499, 500, 0, 0, 431, - 432, 0, 0, 501, 0, 502, 0, 503, 504, 437, - 438, 439, 440, 441, 0, 0, 0, 0, 0, 442, - 0, 444, 0, 0, 0, 447, 0, 0, 0, 0, - 0, 0, 0, 449, 0, 0, 0, 0, 0, 452, - 0, 0, 453, 0, 0, 454, 0, 0, 0, 457, - 0, 0, 657, 0, 0, 0, 0, 0, 0, 564, - 0, 0, 461, 462, 0, 316, 317, 318, 0, 320, - 321, 322, 323, 324, 463, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, 0, 338, 339, 340, - 0, 0, 343, 344, 345, 346, 464, 465, 466, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 468, 469, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 471, 472, 473, 474, 475, 0, 476, 0, + 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, + 487, 58, 563, 489, 490, 0, 0, 0, 0, 0, + 0, 491, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 494, 495, + 496, 0, 14, 0, 0, 497, 498, 0, 0, 0, + 0, 429, 430, 499, 0, 500, 0, 501, 502, 687, + 0, 435, 436, 437, 438, 439, 0, 0, 0, 0, + 0, 440, 0, 442, 0, 0, 0, 445, 0, 0, + 0, 0, 0, 0, 0, 447, 0, 0, 0, 0, + 0, 450, 0, 0, 451, 0, 0, 452, 0, 0, + 0, 455, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 562, 0, 0, 459, 460, 0, 314, 315, 316, + 0, 318, 319, 320, 321, 322, 461, 324, 325, 326, + 327, 328, 329, 330, 331, 332, 333, 334, 0, 336, + 337, 338, 0, 0, 341, 342, 343, 344, 462, 463, + 464, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 466, 467, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 58, 0, 0, 0, - 0, 0, 0, 0, 473, 474, 475, 476, 477, 0, - 478, 0, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 488, 489, 59, 565, 491, 492, 0, 0, 0, - 0, 0, 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 496, 497, 498, 0, 14, 0, 0, 499, 500, 0, - 0, 0, 0, 431, 432, 501, 0, 502, 0, 503, - 504, 689, 0, 437, 438, 439, 440, 441, 0, 0, - 0, 0, 0, 442, 0, 444, 0, 0, 0, 447, - 0, 0, 0, 0, 0, 0, 0, 449, 0, 0, - 0, 0, 0, 452, 0, 0, 453, 0, 0, 454, - 0, 0, 0, 457, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 564, 0, 0, 461, 462, 0, 316, - 317, 318, 0, 320, 321, 322, 323, 324, 463, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, - 0, 338, 339, 340, 0, 0, 343, 344, 345, 346, - 464, 465, 466, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 468, 469, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 471, 472, 473, 474, + 475, 0, 476, 0, 477, 478, 479, 480, 481, 482, + 483, 484, 485, 486, 487, 58, 563, 489, 490, 0, + 0, 0, 0, 0, 0, 491, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 494, 495, 496, 0, 14, 0, 0, 497, + 498, 0, 0, 429, 430, 0, 0, 499, 0, 500, + 0, 501, 502, 435, 436, 437, 438, 439, 0, 0, + 0, 0, 0, 440, 0, 442, 0, 0, 0, 445, + 0, 0, 0, 0, 0, 0, 0, 447, 0, 0, + 0, 0, 0, 450, 0, 0, 451, 0, 0, 452, + 0, 0, 0, 455, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 562, 0, 0, 459, 460, 0, 314, + 315, 316, 0, 318, 319, 320, 321, 322, 461, 324, + 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, + 0, 336, 337, 338, 0, 0, 341, 342, 343, 344, + 462, 463, 464, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 466, 467, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 58, 0, 0, 0, 0, 0, 0, 0, 473, 474, - 475, 476, 477, 0, 478, 0, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 488, 489, 59, 565, 491, - 492, 0, 0, 0, 0, 0, 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 496, 497, 498, 0, 14, 0, - 0, 499, 500, 0, 0, 431, 432, 0, 0, 501, - 0, 502, 0, 503, 504, 437, 438, 439, 440, 441, - 0, 0, 0, 0, 0, 442, 0, 444, 0, 0, - 0, 447, 0, 0, 0, 0, 0, 0, 0, 449, - 0, 0, 0, 0, 0, 452, 0, 0, 453, 0, - 0, 454, 0, 0, 0, 457, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 564, 0, 0, 461, 462, - 0, 316, 317, 318, 0, 320, 321, 322, 323, 324, - 463, 326, 327, 328, 329, 330, 331, 332, 333, 334, - 335, 336, 0, 338, 339, 340, 0, 0, 343, 344, - 345, 346, 464, 465, 466, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 468, 469, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 471, 472, + 473, 474, 475, 0, 476, 0, 477, 478, 479, 480, + 481, 482, 483, 484, 485, 486, 487, 58, 563, 489, + 490, 0, 0, 0, 0, 0, 0, 491, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 691, 0, 494, 495, 496, 0, 14, 0, + 0, 497, 498, 0, 0, 0, 0, 429, 430, 499, + 0, 500, 0, 501, 502, 695, 0, 435, 436, 437, + 438, 439, 0, 0, 0, 0, 0, 440, 0, 442, + 0, 0, 0, 445, 0, 0, 0, 0, 0, 0, + 0, 447, 0, 0, 0, 0, 0, 450, 0, 0, + 451, 0, 0, 452, 0, 0, 0, 455, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 562, 0, 0, + 459, 460, 0, 314, 315, 316, 0, 318, 319, 320, + 321, 322, 461, 324, 325, 326, 327, 328, 329, 330, + 331, 332, 333, 334, 0, 336, 337, 338, 0, 0, + 341, 342, 343, 344, 462, 463, 464, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 466, + 467, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 58, 0, 0, 0, 0, 0, 0, 0, - 473, 474, 475, 476, 477, 0, 478, 0, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 59, - 565, 491, 492, 0, 0, 0, 0, 0, 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 693, 0, 496, 497, 498, 0, - 14, 0, 0, 499, 500, 0, 0, 0, 0, 431, - 432, 501, 0, 502, 0, 503, 504, 697, 0, 437, - 438, 439, 440, 441, 0, 0, 0, 0, 0, 442, - 0, 444, 0, 0, 0, 447, 0, 0, 0, 0, - 0, 0, 0, 449, 0, 0, 0, 0, 0, 452, - 0, 0, 453, 0, 0, 454, 0, 0, 0, 457, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 564, - 0, 0, 461, 462, 0, 316, 317, 318, 0, 320, - 321, 322, 323, 324, 463, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, 0, 338, 339, 340, - 0, 0, 343, 344, 345, 346, 464, 465, 466, 0, + 0, 0, 471, 472, 473, 474, 475, 0, 476, 0, + 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, + 487, 58, 563, 489, 490, 0, 0, 0, 0, 0, + 0, 491, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 494, 495, + 496, 0, 14, 0, 0, 497, 498, 0, 0, 429, + 430, 0, 0, 499, 0, 500, 0, 501, 502, 435, + 436, 437, 438, 439, 0, 0, 1030, 0, 0, 440, + 0, 442, 0, 0, 0, 445, 0, 0, 0, 0, + 0, 0, 0, 447, 0, 0, 0, 0, 0, 450, + 0, 0, 451, 0, 0, 452, 0, 0, 0, 455, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 562, + 0, 0, 459, 460, 0, 314, 315, 316, 0, 318, + 319, 320, 321, 322, 461, 324, 325, 326, 327, 328, + 329, 330, 331, 332, 333, 334, 0, 336, 337, 338, + 0, 0, 341, 342, 343, 344, 462, 463, 464, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 468, 469, 0, 0, 0, 0, 0, 0, 0, + 0, 466, 467, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 58, 0, 0, 0, - 0, 0, 0, 0, 473, 474, 475, 476, 477, 0, - 478, 0, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 488, 489, 59, 565, 491, 492, 0, 0, 0, - 0, 0, 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 496, 497, 498, 0, 14, 0, 0, 499, 500, 0, - 0, 431, 432, 0, 0, 501, 0, 502, 0, 503, - 504, 437, 438, 439, 440, 441, 0, 0, 1032, 0, - 0, 442, 0, 444, 0, 0, 0, 447, 0, 0, - 0, 0, 0, 0, 0, 449, 0, 0, 0, 0, - 0, 452, 0, 0, 453, 0, 0, 454, 0, 0, - 0, 457, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 564, 0, 0, 461, 462, 0, 316, 317, 318, - 0, 320, 321, 322, 323, 324, 463, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 335, 336, 0, 338, - 339, 340, 0, 0, 343, 344, 345, 346, 464, 465, - 466, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 468, 469, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 471, 472, 473, 474, 475, 0, + 476, 0, 477, 478, 479, 480, 481, 482, 483, 484, + 485, 486, 487, 58, 563, 489, 490, 0, 0, 0, + 0, 0, 0, 491, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 58, 0, - 0, 0, 0, 0, 0, 0, 473, 474, 475, 476, - 477, 0, 478, 0, 479, 480, 481, 482, 483, 484, - 485, 486, 487, 488, 489, 59, 565, 491, 492, 0, - 0, 0, 0, 0, 0, 493, 0, 0, 0, 0, + 494, 495, 496, 0, 14, 0, 0, 497, 498, 0, + 0, 429, 430, 0, 0, 499, 0, 500, 0, 501, + 502, 435, 436, 437, 438, 439, 0, 0, 0, 0, + 0, 440, 0, 442, 0, 0, 0, 445, 0, 0, + 0, 0, 0, 0, 0, 447, 0, 0, 0, 0, + 0, 450, 0, 0, 451, 0, 0, 452, 0, 0, + 0, 455, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 562, 0, 0, 459, 460, 0, 314, 315, 316, + 0, 318, 319, 320, 321, 322, 461, 324, 325, 326, + 327, 328, 329, 330, 331, 332, 333, 334, 0, 336, + 337, 338, 0, 0, 341, 342, 343, 344, 462, 463, + 464, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 466, 467, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 496, 497, 498, 0, 14, 0, 0, 499, - 500, 0, 0, 431, 432, 0, 0, 501, 0, 502, - 0, 503, 504, 437, 438, 439, 440, 441, 0, 0, - 0, 0, 0, 442, 0, 444, 0, 0, 0, 447, - 0, 0, 0, 0, 0, 0, 0, 449, 0, 0, - 0, 0, 0, 452, 0, 0, 453, 0, 0, 454, - 0, 0, 0, 457, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 564, 0, 0, 461, 462, 0, 316, - 317, 318, 0, 320, 321, 322, 323, 324, 463, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, - 0, 338, 339, 340, 0, 0, 343, 344, 345, 346, - 464, 465, 466, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 468, 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 471, 472, 473, 474, + 475, 0, 476, 0, 477, 478, 479, 480, 481, 482, + 483, 484, 485, 486, 487, 58, 563, 489, 490, 0, + 0, 0, 0, 0, 0, 491, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 58, 0, 0, 0, 0, 0, 0, 0, 473, 474, - 475, 476, 477, 0, 478, 0, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 488, 489, 59, 565, 491, - 492, 0, 0, 0, 0, 0, 0, 493, 0, 0, + 0, 0, 494, 495, 496, 0, 14, 0, 0, 497, + 498, 0, 0, 429, 430, 0, 0, 499, 0, 500, + 1050, 501, 502, 435, 436, 437, 438, 439, 0, 0, + 0, 0, 0, 440, 0, 442, 0, 0, 0, 445, + 0, 0, 0, 0, 0, 0, 0, 447, 0, 0, + 0, 0, 0, 450, 0, 0, 451, 0, 0, 452, + 0, 0, 0, 455, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 562, 0, 0, 459, 460, 1096, 314, + 315, 316, 0, 318, 319, 320, 321, 322, 461, 324, + 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, + 0, 336, 337, 338, 0, 0, 341, 342, 343, 344, + 462, 463, 464, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 466, 467, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 496, 497, 498, 0, 14, 0, - 0, 499, 500, 0, 0, 431, 432, 0, 0, 501, - 0, 502, 1052, 503, 504, 437, 438, 439, 440, 441, - 0, 0, 0, 0, 0, 442, 0, 444, 0, 0, - 0, 447, 0, 0, 0, 0, 0, 0, 0, 449, - 0, 0, 0, 0, 0, 452, 0, 0, 453, 0, - 0, 454, 0, 0, 0, 457, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 564, 0, 0, 461, 462, - 1098, 316, 317, 318, 0, 320, 321, 322, 323, 324, - 463, 326, 327, 328, 329, 330, 331, 332, 333, 334, - 335, 336, 0, 338, 339, 340, 0, 0, 343, 344, - 345, 346, 464, 465, 466, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 468, 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 471, 472, + 473, 474, 475, 0, 476, 0, 477, 478, 479, 480, + 481, 482, 483, 484, 485, 486, 487, 58, 563, 489, + 490, 0, 0, 0, 0, 0, 0, 491, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 58, 0, 0, 0, 0, 0, 0, 0, - 473, 474, 475, 476, 477, 0, 478, 0, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 59, - 565, 491, 492, 0, 0, 0, 0, 0, 0, 493, + 0, 0, 0, 0, 494, 495, 496, 0, 14, 0, + 0, 497, 498, 0, 0, 429, 430, 0, 0, 499, + 0, 500, 0, 501, 502, 435, 436, 437, 438, 439, + 0, 0, 0, 0, 0, 440, 0, 442, 0, 0, + 0, 445, 0, 0, 0, 0, 0, 0, 0, 447, + 0, 0, 0, 0, 0, 450, 0, 0, 451, 0, + 0, 452, 0, 0, 0, 455, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 562, 0, 0, 459, 460, + 0, 314, 315, 316, 0, 318, 319, 320, 321, 322, + 461, 324, 325, 326, 327, 328, 329, 330, 331, 332, + 333, 334, 0, 336, 337, 338, 0, 0, 341, 342, + 343, 344, 462, 463, 464, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 466, 467, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 496, 497, 498, 0, - 14, 0, 0, 499, 500, 0, 0, 431, 432, 0, - 0, 501, 0, 502, 0, 503, 504, 437, 438, 439, - 440, 441, 0, 0, 0, 0, 0, 442, 0, 444, - 0, 0, 0, 447, 0, 0, 0, 0, 0, 0, - 0, 449, 0, 0, 0, 0, 0, 452, 0, 0, - 453, 0, 0, 454, 0, 0, 0, 457, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 564, 0, 0, - 461, 462, 0, 316, 317, 318, 0, 320, 321, 322, - 323, 324, 463, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 0, 338, 339, 340, 0, 0, - 343, 344, 345, 346, 464, 465, 466, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 468, - 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 58, 0, 0, 0, 0, 0, - 0, 0, 473, 474, 475, 476, 477, 0, 478, 0, - 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 59, 565, 491, 492, 0, 0, 0, 0, 0, - 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1101, 0, 496, 497, - 498, 0, 14, 0, 0, 499, 500, 0, 0, 431, - 432, 0, 0, 501, 0, 502, 0, 503, 504, 437, - 438, 439, 440, 441, 0, 0, 0, 0, 0, 442, - 0, 444, 0, 0, 0, 447, 0, 0, 0, 0, - 0, 0, 0, 449, 0, 0, 0, 0, 0, 452, - 0, 0, 453, 0, 0, 454, 0, 0, 0, 457, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 564, - 0, 0, 461, 462, 0, 316, 317, 318, 0, 320, - 321, 322, 323, 324, 463, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, 0, 338, 339, 340, - 0, 0, 343, 344, 345, 346, 464, 465, 466, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 468, 469, 0, 0, 0, 0, 0, 0, 0, + 471, 472, 473, 474, 475, 0, 476, 0, 477, 478, + 479, 480, 481, 482, 483, 484, 485, 486, 487, 58, + 563, 489, 490, 0, 0, 0, 0, 0, 0, 491, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 58, 0, 0, 0, - 0, 0, 0, 0, 473, 474, 475, 476, 477, 0, - 478, 0, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 488, 489, 59, 565, 491, 492, 0, 0, 0, - 0, 0, 0, 493, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1099, 0, 494, 495, 496, 0, + 14, 0, 0, 497, 498, 0, 0, 429, 430, 0, + 0, 499, 0, 500, 0, 501, 502, 435, 436, 437, + 438, 439, 0, 0, 0, 0, 0, 440, 0, 442, + 0, 0, 0, 445, 0, 0, 0, 0, 0, 0, + 0, 447, 0, 0, 0, 0, 0, 450, 0, 0, + 451, 0, 0, 452, 0, 0, 0, 455, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 562, 0, 0, + 459, 460, 0, 314, 315, 316, 0, 318, 319, 320, + 321, 322, 461, 324, 325, 326, 327, 328, 329, 330, + 331, 332, 333, 334, 0, 336, 337, 338, 0, 0, + 341, 342, 343, 344, 462, 463, 464, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 466, + 467, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 496, 497, 498, 0, 14, 0, 0, 499, 500, 0, - 0, 431, 432, 0, 0, 501, 0, 502, 1159, 503, - 504, 437, 438, 439, 440, 441, 0, 0, 0, 0, - 0, 442, 0, 444, 0, 0, 0, 447, 0, 0, - 0, 0, 0, 0, 0, 449, 0, 0, 0, 0, - 0, 452, 0, 0, 453, 0, 0, 454, 0, 0, - 0, 457, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 564, 0, 0, 461, 462, 0, 316, 317, 318, - 0, 320, 321, 322, 323, 324, 463, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 335, 336, 0, 338, - 339, 340, 0, 0, 343, 344, 345, 346, 464, 465, - 466, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 468, 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 58, 0, - 0, 0, 0, 0, 0, 0, 473, 474, 475, 476, - 477, 0, 478, 0, 479, 480, 481, 482, 483, 484, - 485, 486, 487, 488, 489, 59, 565, 491, 492, 0, - 0, 0, 0, 0, 0, 493, 0, 0, 0, 0, + 0, 0, 471, 472, 473, 474, 475, 0, 476, 0, + 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, + 487, 58, 563, 489, 490, 0, 0, 0, 0, 0, + 0, 491, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 494, 495, + 496, 0, 14, 0, 0, 497, 498, 0, 0, 429, + 430, 0, 0, 499, 0, 500, 1157, 501, 502, 435, + 436, 437, 438, 439, 0, 0, 0, 0, 0, 440, + 0, 442, 0, 0, 0, 445, 0, 0, 0, 0, + 0, 0, 0, 447, 0, 0, 0, 0, 0, 450, + 0, 0, 451, 0, 0, 452, 0, 0, 0, 455, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 562, + 0, 0, 459, 460, 0, 314, 315, 316, 0, 318, + 319, 320, 321, 322, 461, 324, 325, 326, 327, 328, + 329, 330, 331, 332, 333, 334, 0, 336, 337, 338, + 0, 0, 341, 342, 343, 344, 462, 463, 464, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 496, 497, 498, 0, 14, 0, 0, 499, - 500, 0, 0, 431, 432, 0, 0, 501, 0, 502, - 1174, 503, 504, 437, 438, 439, 440, 441, 0, 0, - 0, 0, 0, 442, 0, 444, 0, 0, 0, 447, - 0, 0, 0, 0, 0, 0, 0, 449, 0, 0, - 0, 0, 0, 452, 0, 0, 453, 0, 0, 454, - 0, 0, 0, 457, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 564, 0, 0, 461, 462, 0, 316, - 317, 318, 0, 320, 321, 322, 323, 324, 463, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, - 0, 338, 339, 340, 0, 0, 343, 344, 345, 346, - 464, 465, 466, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 468, 469, 0, 0, 0, + 0, 466, 467, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 58, 0, 0, 0, 0, 0, 0, 0, 473, 474, - 475, 476, 477, 0, 478, 0, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 488, 489, 59, 565, 491, - 492, 0, 0, 0, 0, 0, 0, 493, 0, 0, + 0, 0, 0, 0, 471, 472, 473, 474, 475, 0, + 476, 0, 477, 478, 479, 480, 481, 482, 483, 484, + 485, 486, 487, 58, 563, 489, 490, 0, 0, 0, + 0, 0, 0, 491, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 496, 497, 498, 0, 14, 0, - 0, 499, 500, 0, 0, 431, 432, 0, 0, 501, - 0, 502, 1365, 503, 504, 437, 438, 439, 440, 441, - 0, 0, 0, 0, 0, 442, 0, 444, 0, 0, - 0, 447, 0, 0, 0, 0, 0, 0, 0, 449, - 0, 0, 0, 0, 0, 452, 0, 0, 453, 0, - 0, 454, 0, 0, 0, 457, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 564, 0, 0, 461, 462, - 0, 316, 317, 318, 0, 320, 321, 322, 323, 324, - 463, 326, 327, 328, 329, 330, 331, 332, 333, 334, - 335, 336, 0, 338, 339, 340, 0, 0, 343, 344, - 345, 346, 464, 465, 466, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 468, 469, 0, + 494, 495, 496, 0, 14, 0, 0, 497, 498, 0, + 0, 429, 430, 0, 0, 499, 0, 500, 1172, 501, + 502, 435, 436, 437, 438, 439, 0, 0, 0, 0, + 0, 440, 0, 442, 0, 0, 0, 445, 0, 0, + 0, 0, 0, 0, 0, 447, 0, 0, 0, 0, + 0, 450, 0, 0, 451, 0, 0, 452, 0, 0, + 0, 455, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 562, 0, 0, 459, 460, 0, 314, 315, 316, + 0, 318, 319, 320, 321, 322, 461, 324, 325, 326, + 327, 328, 329, 330, 331, 332, 333, 334, 0, 336, + 337, 338, 0, 0, 341, 342, 343, 344, 462, 463, + 464, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 466, 467, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 58, 0, 0, 0, 0, 0, 0, 0, - 473, 474, 475, 476, 477, 0, 478, 0, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 59, - 565, 491, 492, 0, 0, 0, 0, 0, 0, 493, + 0, 0, 0, 0, 0, 0, 471, 472, 473, 474, + 475, 0, 476, 0, 477, 478, 479, 480, 481, 482, + 483, 484, 485, 486, 487, 58, 563, 489, 490, 0, + 0, 0, 0, 0, 0, 491, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 496, 497, 498, 0, - 14, 0, 0, 499, 500, 0, 0, 431, 432, 0, - 0, 501, 0, 502, 1374, 503, 504, 437, 438, 439, - 440, 441, 0, 0, 0, 0, 0, 442, 0, 444, - 0, 0, 0, 447, 0, 0, 0, 0, 0, 0, - 0, 449, 0, 0, 0, 0, 0, 452, 0, 0, - 453, 0, 0, 454, 0, 0, 0, 457, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 564, 0, 0, - 461, 462, 0, 316, 317, 318, 0, 320, 321, 322, - 323, 324, 463, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 0, 338, 339, 340, 0, 0, - 343, 344, 345, 346, 464, 465, 466, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 468, - 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 494, 495, 496, 0, 14, 0, 0, 497, + 498, 0, 0, 429, 430, 0, 0, 499, 0, 500, + 1363, 501, 502, 435, 436, 437, 438, 439, 0, 0, + 0, 0, 0, 440, 0, 442, 0, 0, 0, 445, + 0, 0, 0, 0, 0, 0, 0, 447, 0, 0, + 0, 0, 0, 450, 0, 0, 451, 0, 0, 452, + 0, 0, 0, 455, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 562, 0, 0, 459, 460, 0, 314, + 315, 316, 0, 318, 319, 320, 321, 322, 461, 324, + 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, + 0, 336, 337, 338, 0, 0, 341, 342, 343, 344, + 462, 463, 464, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 466, 467, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 58, 0, 0, 0, 0, 0, - 0, 0, 473, 474, 475, 476, 477, 0, 478, 0, - 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 59, 565, 491, 492, 0, 0, 0, 0, 0, - 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 496, 497, - 498, 0, 14, 0, 0, 499, 500, 0, 0, 431, - 432, 0, 0, 501, 0, 502, 1415, 503, 504, 437, - 438, 439, 440, 441, 0, 0, 0, 0, 0, 442, - 0, 444, 0, 0, 0, 447, 0, 0, 0, 0, - 0, 0, 0, 449, 0, 0, 0, 0, 0, 452, - 0, 0, 453, 0, 0, 454, 0, 0, 0, 457, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 564, - 0, 0, 461, 462, 0, 316, 317, 318, 0, 320, - 321, 322, 323, 324, 463, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, 0, 338, 339, 340, - 0, 0, 343, 344, 345, 346, 464, 465, 466, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 468, 469, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 471, 472, + 473, 474, 475, 0, 476, 0, 477, 478, 479, 480, + 481, 482, 483, 484, 485, 486, 487, 58, 563, 489, + 490, 0, 0, 0, 0, 0, 0, 491, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 58, 0, 0, 0, - 0, 0, 0, 0, 473, 474, 475, 476, 477, 0, - 478, 0, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 488, 489, 59, 565, 491, 492, 0, 0, 0, - 0, 0, 0, 493, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 494, 495, 496, 0, 14, 0, + 0, 497, 498, 0, 0, 429, 430, 0, 0, 499, + 0, 500, 1372, 501, 502, 435, 436, 437, 438, 439, + 0, 0, 0, 0, 0, 440, 0, 442, 0, 0, + 0, 445, 0, 0, 0, 0, 0, 0, 0, 447, + 0, 0, 0, 0, 0, 450, 0, 0, 451, 0, + 0, 452, 0, 0, 0, 455, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 562, 0, 0, 459, 460, + 0, 314, 315, 316, 0, 318, 319, 320, 321, 322, + 461, 324, 325, 326, 327, 328, 329, 330, 331, 332, + 333, 334, 0, 336, 337, 338, 0, 0, 341, 342, + 343, 344, 462, 463, 464, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 466, 467, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 496, 497, 498, 0, 14, 0, 0, 499, 500, 0, - 0, 431, 432, 0, 0, 501, 0, 502, 1486, 503, - 504, 437, 438, 439, 440, 441, 0, 0, 0, 0, - 0, 442, 0, 444, 0, 0, 0, 447, 0, 0, - 0, 0, 0, 0, 0, 449, 0, 0, 0, 0, - 0, 452, 0, 0, 453, 0, 0, 454, 0, 0, - 0, 457, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 564, 0, 0, 461, 462, 0, 316, 317, 318, - 0, 320, 321, 322, 323, 324, 463, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 335, 336, 0, 338, - 339, 340, 0, 0, 343, 344, 345, 346, 464, 465, - 466, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 468, 469, 0, 0, 0, 0, 0, - 0, 0, 1523, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 58, 0, - 0, 0, 0, 0, 0, 0, 473, 474, 475, 476, - 477, 0, 478, 0, 479, 480, 481, 482, 483, 484, - 485, 486, 487, 488, 489, 59, 565, 491, 492, 0, - 0, 0, 0, 0, 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 496, 497, 498, 0, 14, 0, 0, 499, - 500, 0, 0, 431, 432, 0, 0, 501, 0, 502, - 0, 503, 504, 437, 438, 439, 440, 441, 0, 0, - 0, 0, 0, 442, 0, 444, 0, 0, 0, 447, - 0, 0, 0, 0, 0, 0, 0, 449, 0, 0, - 0, 0, 0, 452, 0, 0, 453, 0, 0, 454, - 0, 0, 0, 457, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 564, 0, 0, 461, 462, 0, 316, - 317, 318, 0, 320, 321, 322, 323, 324, 463, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, - 0, 338, 339, 340, 0, 0, 343, 344, 345, 346, - 464, 465, 466, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 468, 469, 0, 0, 0, - 0, 0, 0, 0, 1562, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 58, 0, 0, 0, 0, 0, 0, 0, 473, 474, - 475, 476, 477, 0, 478, 0, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 488, 489, 59, 565, 491, - 492, 0, 0, 0, 0, 0, 0, 493, 0, 0, + 471, 472, 473, 474, 475, 0, 476, 0, 477, 478, + 479, 480, 481, 482, 483, 484, 485, 486, 487, 58, + 563, 489, 490, 0, 0, 0, 0, 0, 0, 491, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 496, 497, 498, 0, 14, 0, - 0, 499, 500, 0, 0, 431, 432, 0, 0, 501, - 0, 502, 0, 503, 504, 437, 438, 439, 440, 441, - 0, 0, 0, 0, 0, 442, 0, 444, 0, 0, - 0, 447, 0, 0, 0, 0, 0, 0, 0, 449, - 0, 0, 0, 0, 0, 452, 0, 0, 453, 0, - 0, 454, 0, 0, 0, 457, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 564, 0, 0, 461, 462, - 0, 316, 317, 318, 0, 320, 321, 322, 323, 324, - 463, 326, 327, 328, 329, 330, 331, 332, 333, 334, - 335, 336, 0, 338, 339, 340, 0, 0, 343, 344, - 345, 346, 464, 465, 466, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 468, 469, 0, - 0, 0, 0, 0, 0, 0, 1563, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 494, 495, 496, 0, + 14, 0, 0, 497, 498, 0, 0, 429, 430, 0, + 0, 499, 0, 500, 1413, 501, 502, 435, 436, 437, + 438, 439, 0, 0, 0, 0, 0, 440, 0, 442, + 0, 0, 0, 445, 0, 0, 0, 0, 0, 0, + 0, 447, 0, 0, 0, 0, 0, 450, 0, 0, + 451, 0, 0, 452, 0, 0, 0, 455, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 562, 0, 0, + 459, 460, 0, 314, 315, 316, 0, 318, 319, 320, + 321, 322, 461, 324, 325, 326, 327, 328, 329, 330, + 331, 332, 333, 334, 0, 336, 337, 338, 0, 0, + 341, 342, 343, 344, 462, 463, 464, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 466, + 467, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 58, 0, 0, 0, 0, 0, 0, 0, - 473, 474, 475, 476, 477, 0, 478, 0, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 59, - 565, 491, 492, 0, 0, 0, 0, 0, 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 496, 497, 498, 0, - 14, 0, 0, 499, 500, 0, 0, 431, 432, 0, - 0, 501, 0, 502, 0, 503, 504, 437, 438, 439, - 440, 441, 0, 0, 0, 0, 0, 442, 0, 444, - 0, 0, 0, 447, 0, 0, 0, 0, 0, 0, - 0, 449, 0, 0, 0, 0, 0, 452, 0, 0, - 453, 0, 0, 454, 0, 0, 0, 457, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 564, 0, 0, - 461, 462, 0, 316, 317, 318, 0, 320, 321, 322, - 323, 324, 463, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 0, 338, 339, 340, 0, 0, - 343, 344, 345, 346, 464, 465, 466, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 468, - 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 471, 472, 473, 474, 475, 0, 476, 0, + 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, + 487, 58, 563, 489, 490, 0, 0, 0, 0, 0, + 0, 491, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 494, 495, + 496, 0, 14, 0, 0, 497, 498, 0, 0, 429, + 430, 0, 0, 499, 0, 500, 1484, 501, 502, 435, + 436, 437, 438, 439, 0, 0, 0, 0, 0, 440, + 0, 442, 0, 0, 0, 445, 0, 0, 0, 0, + 0, 0, 0, 447, 0, 0, 0, 0, 0, 450, + 0, 0, 451, 0, 0, 452, 0, 0, 0, 455, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 562, + 0, 0, 459, 460, 0, 314, 315, 316, 0, 318, + 319, 320, 321, 322, 461, 324, 325, 326, 327, 328, + 329, 330, 331, 332, 333, 334, 0, 336, 337, 338, + 0, 0, 341, 342, 343, 344, 462, 463, 464, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 58, 0, 0, 0, 0, 0, - 0, 0, 473, 474, 475, 476, 477, 0, 478, 0, - 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 59, 565, 491, 492, 0, 0, 0, 0, 0, - 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 496, 497, - 498, 0, 14, 0, 0, 499, 500, 0, 0, 431, - 432, 0, 0, 501, 0, 502, 0, 503, 504, 437, - 438, 439, 440, 441, 0, 0, 0, 0, 0, 442, - 0, 444, 0, 0, 0, 447, 0, 0, 0, 0, - 0, 0, 0, 449, 0, 0, 0, 0, 0, 452, - 0, 0, 453, 0, 0, 454, 0, 0, 0, 457, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 564, - 0, 0, 461, 462, 0, 316, 317, 318, 0, 320, - 321, 322, 323, 324, 463, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, 0, 338, 339, 340, - 0, 0, 343, 344, 345, 346, 464, 465, 466, 0, + 0, 466, 467, 0, 0, 0, 0, 0, 0, 0, + 1521, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 468, 469, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 471, 472, 473, 474, 475, 0, + 476, 0, 477, 478, 479, 480, 481, 482, 483, 484, + 485, 486, 487, 58, 563, 489, 490, 0, 0, 0, + 0, 0, 0, 491, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 58, 0, 0, 0, - 0, 0, 0, 0, 473, 474, 475, 476, 477, 0, - 478, 0, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 488, 489, 59, 565, 491, 492, 0, 685, 0, - 0, 0, 0, 493, 310, 0, 0, 0, 0, 0, - 311, 0, 0, 0, 0, 0, 312, 0, 0, 0, - 496, 497, 498, 0, 14, 0, 313, 499, 500, 0, - 0, 0, 0, 0, 314, 1350, 0, 502, 0, 503, - 504, 0, 0, 0, 0, 0, 0, 0, 0, 315, - 0, 0, 0, 0, 0, 0, 316, 317, 318, 319, + 494, 495, 496, 0, 14, 0, 0, 497, 498, 0, + 0, 429, 430, 0, 0, 499, 0, 500, 0, 501, + 502, 435, 436, 437, 438, 439, 0, 0, 0, 0, + 0, 440, 0, 442, 0, 0, 0, 445, 0, 0, + 0, 0, 0, 0, 0, 447, 0, 0, 0, 0, + 0, 450, 0, 0, 451, 0, 0, 452, 0, 0, + 0, 455, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 562, 0, 0, 459, 460, 0, 314, 315, 316, + 0, 318, 319, 320, 321, 322, 461, 324, 325, 326, + 327, 328, 329, 330, 331, 332, 333, 334, 0, 336, + 337, 338, 0, 0, 341, 342, 343, 344, 462, 463, + 464, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 466, 467, 0, 0, 0, 0, 0, + 0, 0, 1560, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 471, 472, 473, 474, + 475, 0, 476, 0, 477, 478, 479, 480, 481, 482, + 483, 484, 485, 486, 487, 58, 563, 489, 490, 0, + 0, 0, 0, 0, 0, 491, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 494, 495, 496, 0, 14, 0, 0, 497, + 498, 0, 0, 429, 430, 0, 0, 499, 0, 500, + 0, 501, 502, 435, 436, 437, 438, 439, 0, 0, + 0, 0, 0, 440, 0, 442, 0, 0, 0, 445, + 0, 0, 0, 0, 0, 0, 0, 447, 0, 0, + 0, 0, 0, 450, 0, 0, 451, 0, 0, 452, + 0, 0, 0, 455, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 562, 0, 0, 459, 460, 0, 314, + 315, 316, 0, 318, 319, 320, 321, 322, 461, 324, + 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, + 0, 336, 337, 338, 0, 0, 341, 342, 343, 344, + 462, 463, 464, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 466, 467, 0, 0, 0, + 0, 0, 0, 0, 1561, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 471, 472, + 473, 474, 475, 0, 476, 0, 477, 478, 479, 480, + 481, 482, 483, 484, 485, 486, 487, 58, 563, 489, + 490, 0, 0, 0, 0, 0, 0, 491, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 494, 495, 496, 0, 14, 0, + 0, 497, 498, 0, 0, 429, 430, 0, 0, 499, + 0, 500, 0, 501, 502, 435, 436, 437, 438, 439, + 0, 0, 0, 0, 0, 440, 0, 442, 0, 0, + 0, 445, 0, 0, 0, 0, 0, 0, 0, 447, + 0, 0, 0, 0, 0, 450, 0, 0, 451, 0, + 0, 452, 0, 0, 0, 455, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 562, 0, 0, 459, 460, + 0, 314, 315, 316, 0, 318, 319, 320, 321, 322, + 461, 324, 325, 326, 327, 328, 329, 330, 331, 332, + 333, 334, 0, 336, 337, 338, 0, 0, 341, 342, + 343, 344, 462, 463, 464, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 466, 467, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 471, 472, 473, 474, 475, 0, 476, 0, 477, 478, + 479, 480, 481, 482, 483, 484, 485, 486, 487, 58, + 563, 489, 490, 0, 0, 0, 0, 0, 0, 491, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 494, 495, 496, 0, + 14, 0, 0, 497, 498, 0, 0, 429, 430, 0, + 0, 499, 0, 500, 0, 501, 502, 435, 436, 437, + 438, 439, 0, 0, 0, 0, 0, 440, 0, 442, + 0, 0, 0, 445, 0, 0, 0, 0, 0, 0, + 0, 447, 0, 0, 0, 0, 0, 450, 0, 0, + 451, 0, 0, 452, 0, 0, 0, 455, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 562, 0, 963, + 459, 460, 0, 314, 315, 316, 0, 318, 319, 320, + 321, 322, 461, 324, 325, 326, 327, 328, 329, 330, + 331, 332, 333, 334, 0, 336, 337, 338, 0, 0, + 341, 342, 343, 344, 462, 463, 464, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 466, + 467, 314, 315, 316, 0, 318, 319, 320, 321, 322, + 461, 324, 325, 326, 327, 328, 329, 330, 331, 332, + 333, 334, 0, 336, 337, 338, 0, 0, 341, 342, + 343, 344, 471, 472, 473, 474, 475, 0, 476, 0, + 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, + 487, 58, 563, 489, 490, 0, 683, 0, 0, 0, + 0, 491, 308, 0, 0, 0, 0, 0, 309, 0, + 0, 0, 0, 0, 310, 0, 0, 0, 494, 495, + 496, 0, 14, 0, 311, 497, 498, 964, 0, 0, + 0, 0, 312, 1348, 0, 500, 0, 501, 502, 965, + 0, 0, 0, 0, 0, 0, 0, 313, 0, 0, + 0, 0, 0, 0, 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, 0, - 0, 0, 0, 0, 0, 0, 0, 687, 0, 0, - 0, 0, 0, 310, 0, 0, 0, 0, 0, 311, - 0, 0, 0, 0, 0, 312, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 313, 0, 58, 0, 0, - 0, 0, 0, 314, 0, 0, 0, 0, 0, 0, - 349, 0, 0, 0, 0, 0, 0, 0, 315, 0, - 0, 0, 0, 0, 59, 316, 317, 318, 319, 320, + 340, 341, 342, 343, 344, 345, 346, 0, 0, 0, + 0, 0, 0, 0, 0, 685, 0, 0, 0, 0, + 0, 308, 0, 0, 0, 0, 0, 309, 0, 0, + 0, 0, 0, 310, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 311, 0, 0, 0, 0, 0, 0, + 0, 312, 0, 0, 0, 0, 0, 0, 347, 0, + 0, 0, 0, 0, 0, 0, 313, 0, 0, 0, + 0, 0, 58, 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, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 348, 0, + 308, 0, 0, 0, 0, 0, 309, 0, 0, 0, + 0, 0, 310, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 311, 0, 0, 0, 0, 0, 0, 0, + 312, 0, 0, 0, 0, 0, 0, 347, 0, 0, + 0, 0, 0, 0, 0, 313, 0, 0, 0, 0, + 0, 58, 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, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 348, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 308, 0, 0, 0, 0, 0, 309, 0, 0, + 0, 0, 0, 310, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 311, 0, 0, 347, 0, 0, 0, + 0, 312, 0, 0, 0, 0, 0, 0, 0, 0, + 606, 0, 0, 0, 0, 0, 313, 0, 0, 0, + 0, 0, 607, 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, 0, 0, + 341, 342, 343, 344, 345, 346, 348, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 350, 0, 310, 0, 0, 0, 0, 0, 311, 0, - 0, 0, 0, 0, 312, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 313, 0, 58, 0, 0, 0, - 0, 0, 314, 0, 0, 0, 0, 0, 0, 349, - 0, 0, 0, 0, 0, 0, 0, 315, 0, 0, - 0, 0, 0, 59, 316, 317, 318, 319, 320, 321, + 308, 0, 0, 0, 0, 0, 309, 0, 0, 0, + 0, 0, 310, 0, 0, 728, 729, 0, 0, 0, + 0, 0, 311, 0, 0, 0, 0, 0, 0, 0, + 312, 0, 0, 0, 0, 0, 0, 347, 0, 0, + 0, 0, 0, 0, 0, 313, 0, 0, 0, 0, + 0, 58, 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, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 350, - 0, 310, 0, 0, 0, 0, 0, 311, 0, 0, - 0, 0, 0, 312, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 313, 0, 58, 0, 0, 0, 0, - 0, 314, 0, 0, 0, 0, 0, 0, 349, 0, - 0, 0, 0, 0, 0, 0, 315, 0, 0, 0, - 0, 0, 59, 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, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 350, 0, - 603, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 342, 343, 344, 345, 346, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 348, 0, 0, + 0, 857, 858, 859, 860, 861, 862, 863, 864, 738, + 739, 740, 741, 742, 865, 866, 745, 746, 747, 748, + 867, 750, 751, 752, 753, -350, 728, 729, 0, 754, + 755, 756, 757, 868, 869, 0, 347, 760, 761, 762, + 870, 871, 872, 766, 0, 0, 0, 0, 0, 0, + 606, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 58, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 349, 0, 0, - 0, 0, 0, 0, 0, 0, 310, 0, 0, 0, - 0, 608, 311, 0, 0, 0, 0, 0, 312, 0, - 0, 0, 0, 609, 0, 0, 0, 0, 313, 0, - 0, 0, 0, 0, 0, 0, 314, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 315, 0, 0, 0, 0, 0, 350, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 310, 0, 0, 0, 0, - 0, 311, 0, 0, 0, 0, 0, 312, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 313, 0, 58, - 0, 0, 0, 0, 0, 314, 0, 0, 0, 0, - 0, 0, 349, 0, 0, 0, 0, 0, 0, 0, - 315, 0, 0, 0, 0, 0, 59, 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, - 730, 731, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 350, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 873, 768, 0, 769, 770, 771, 772, 773, + 774, 775, 776, 777, 778, 0, 348, 0, 0, 0, + 0, 0, 0, 0, 779, 780, 0, 0, 0, 501, + 671, 0, 857, 858, 859, 860, 861, 862, 863, 864, + 738, 739, 740, 741, 742, 865, 866, 745, 746, 747, + 748, 867, 750, 751, 752, 753, 728, 729, 0, 0, + 754, 755, 756, 757, 868, 869, 0, 0, 760, 761, + 762, 870, 871, 872, 766, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 58, 0, + 0, 728, 729, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1061, 0, 0, 0, + 0, 0, 0, 873, 768, 0, 769, 770, 771, 772, + 773, 774, 775, 776, 777, 778, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 779, 780, 0, 0, 0, + 501, 671, 857, 858, 859, 860, 861, 862, 863, 864, + 738, 739, 740, 741, 742, 865, 866, 745, 746, 747, + 748, 867, 750, 751, 752, 753, 0, 0, 0, 0, + 754, 755, 756, 757, 868, 869, 0, 0, 760, 761, + 762, 870, 871, 872, 766, 738, 739, 740, 741, 742, + 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, + 753, 728, 729, 0, 0, 754, 0, 756, 757, 0, + 0, 0, 0, 760, 761, 762, 1252, 0, 0, 766, + 0, 0, 0, 873, 768, 0, 769, 770, 771, 772, + 773, 774, 775, 776, 777, 778, 728, 729, 0, 0, + 0, 0, 0, 0, 0, 779, 780, 0, 0, 0, + 501, 671, 0, 0, 0, 0, 0, 0, 0, 768, + 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, + 778, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 779, 780, 0, 0, 791, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 738, 739, 740, 741, 742, + 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, + 753, 0, 0, 0, 0, 754, 0, 756, 757, 0, + 0, 0, 0, 760, 761, 762, 0, 0, 0, 766, + 738, 739, 740, 741, 742, 0, 0, 745, 746, 747, + 748, 0, 750, 751, 752, 753, 728, 729, 0, 0, + 754, 0, 756, 757, 0, 0, 0, 0, 760, 761, + 762, 0, 0, 0, 766, 0, 0, 0, 0, 768, + 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, + 778, 728, 729, 0, 0, 0, 0, 0, 0, 0, + 779, 780, 0, 0, 801, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 768, 0, 769, 770, 771, 772, + 773, 774, 775, 776, 777, 778, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 779, 780, 0, 0, 817, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 349, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 608, 0, 0, 0, 0, + 738, 739, 740, 741, 742, 0, 0, 745, 746, 747, + 748, 0, 750, 751, 752, 753, 0, 0, 0, 0, + 754, 0, 756, 757, 0, 0, 0, 0, 760, 761, + 762, 0, 0, 0, 766, 738, 739, 740, 741, 742, + 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, + 753, 728, 729, 0, 0, 754, 0, 756, 757, 0, + 0, 0, 0, 760, 761, 762, 0, 0, 0, 766, + 0, 0, 0, 0, 768, 0, 769, 770, 771, 772, + 773, 774, 775, 776, 777, 778, 728, 729, 0, 0, + 0, 0, 0, 0, 0, 779, 780, 0, 0, 832, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 768, + 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, + 778, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 779, 780, 0, 0, 1129, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 738, 739, 740, 741, 742, + 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, + 753, 0, 0, 0, 0, 754, 0, 756, 757, 0, + 0, 0, 0, 760, 761, 762, 0, 0, 0, 766, + 738, 739, 740, 741, 742, 0, 0, 745, 746, 747, + 748, 0, 750, 751, 752, 753, 728, 729, 0, 0, + 754, 0, 756, 757, 0, 0, 0, 0, 760, 761, + 762, 0, 0, 0, 766, 0, 0, 0, 0, 768, + 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, + 778, 728, 729, 0, 0, 0, 0, 0, 0, 0, + 779, 780, 0, 0, 1133, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 768, 0, 769, 770, 771, 772, + 773, 774, 775, 776, 777, 778, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 779, 780, 0, 0, 1135, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 859, 860, 861, 862, - 863, 864, 865, 866, 740, 741, 742, 743, 744, 867, - 868, 747, 748, 749, 750, 869, 752, 753, 754, 755, - -351, 350, 730, 731, 756, 757, 758, 759, 870, 871, - 0, 0, 762, 763, 764, 872, 873, 874, 768, 0, + 738, 739, 740, 741, 742, 0, 0, 745, 746, 747, + 748, 0, 750, 751, 752, 753, 0, 0, 0, 0, + 754, 0, 756, 757, 0, 0, 0, 0, 760, 761, + 762, 0, 0, 0, 766, 738, 739, 740, 741, 742, + 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, + 753, 728, 729, 0, 0, 754, 0, 756, 757, 0, + 0, 0, 0, 760, 761, 762, 0, 0, 0, 766, + 0, 0, 0, 0, 768, 0, 769, 770, 771, 772, + 773, 774, 775, 776, 777, 778, 728, 729, 0, 0, + 0, 0, 0, 0, 0, 779, 780, 0, 0, 1144, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 768, + 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, + 778, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 779, 780, 0, 0, 1145, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 738, 739, 740, 741, 742, + 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, + 753, 0, 0, 0, 0, 754, 0, 756, 757, 0, + 0, 0, 0, 760, 761, 762, 0, 0, 0, 766, + 738, 739, 740, 741, 742, 0, 0, 745, 746, 747, + 748, 0, 750, 751, 752, 753, 728, 729, 0, 0, + 754, 0, 756, 757, 0, 0, 0, 0, 760, 761, + 762, 0, 0, 0, 766, 0, 0, 0, 0, 768, + 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, + 778, 728, 729, 0, 0, 0, 0, 0, 0, 0, + 779, 780, 0, 0, 1146, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 768, 0, 769, 770, 771, 772, + 773, 774, 775, 776, 777, 778, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 779, 780, 0, 0, 1147, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 738, 739, 740, 741, 742, 0, 0, 745, 746, 747, + 748, 0, 750, 751, 752, 753, 0, 0, 0, 0, + 754, 0, 756, 757, 0, 0, 0, 0, 760, 761, + 762, 0, 0, 0, 766, 738, 739, 740, 741, 742, + 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, + 753, 728, 729, 0, 0, 754, 0, 756, 757, 0, + 0, 0, 0, 760, 761, 762, 0, 0, 0, 766, + 0, 0, 0, 0, 768, 0, 769, 770, 771, 772, + 773, 774, 775, 776, 777, 778, 728, 729, 0, 0, + 0, 0, 0, 0, 0, 779, 780, 0, 0, 1148, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 768, + 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, + 778, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 779, 780, 0, 0, 1149, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 738, 739, 740, 741, 742, + 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, + 753, 0, 0, 0, 0, 754, 0, 756, 757, 0, + 0, 0, 0, 760, 761, 762, 0, 0, 0, 766, + 738, 739, 740, 741, 742, 0, 0, 745, 746, 747, + 748, 0, 750, 751, 752, 753, 728, 729, 0, 0, + 754, 0, 756, 757, 0, 0, 0, 0, 760, 761, + 762, 0, 0, 0, 766, 0, 0, 0, 0, 768, + 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, + 778, 728, 729, 0, 0, 0, 0, 0, 0, 0, + 779, 780, 0, 0, 1273, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 768, 0, 769, 770, 771, 772, + 773, 774, 775, 776, 777, 778, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 779, 780, 0, 0, 1285, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 738, 739, 740, 741, 742, 0, 0, 745, 746, 747, + 748, 0, 750, 751, 752, 753, 0, 0, 0, 0, + 754, 0, 756, 757, 0, 0, 0, 0, 760, 761, + 762, 0, 0, 0, 766, 738, 739, 740, 741, 742, + 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, + 753, 728, 729, 0, 0, 754, 0, 756, 757, 0, + 0, 0, 0, 760, 761, 762, 0, 0, 0, 766, + 0, 0, 0, 0, 768, 0, 769, 770, 771, 772, + 773, 774, 775, 776, 777, 778, 728, 729, 0, 0, + 0, 0, 0, 0, 0, 779, 780, 0, 0, 1416, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 768, + 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, + 778, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 779, 780, 0, 0, 1431, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 738, 739, 740, 741, 742, + 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, + 753, 0, 0, 0, 0, 754, 0, 756, 757, 0, + 0, 0, 0, 760, 761, 762, 0, 0, 0, 766, + 738, 739, 740, 741, 742, 0, 0, 745, 746, 747, + 748, 0, 750, 751, 752, 753, 728, 729, 0, 0, + 754, 0, 756, 757, 0, 0, 0, 0, 760, 761, + 762, 0, 0, 0, 766, 0, 0, 0, 0, 768, + 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, + 778, 728, 729, 0, 0, 0, 0, 0, 0, 0, + 779, 780, 0, 0, 1432, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 768, 0, 769, 770, 771, 772, + 773, 774, 775, 776, 777, 778, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 779, 780, 0, 0, 1451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 875, 770, 0, - 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 781, - 782, 0, 0, 0, 503, 673, 0, 0, 859, 860, - 861, 862, 863, 864, 865, 866, 740, 741, 742, 743, - 744, 867, 868, 747, 748, 749, 750, 869, 752, 753, - 754, 755, 730, 731, 0, 0, 756, 757, 758, 759, - 870, 871, 0, 0, 762, 763, 764, 872, 873, 874, - 768, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 730, 731, 0, + 738, 739, 740, 741, 742, 0, 0, 745, 746, 747, + 748, 0, 750, 751, 752, 753, 0, 0, 0, 0, + 754, 0, 756, 757, 0, 0, 0, 0, 760, 761, + 762, 0, 0, 0, 766, 738, 739, 740, 741, 742, + 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, + 753, 728, 729, 0, 0, 754, 0, 756, 757, 0, + 0, 0, 0, 760, 761, 762, 0, 0, 0, 766, + 0, 0, 0, 0, 768, 0, 769, 770, 771, 772, + 773, 774, 775, 776, 777, 778, 728, 729, 0, 0, + 0, 0, 0, 0, 0, 779, 780, 0, 0, 1453, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 768, + 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, + 778, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 779, 780, 0, 0, 1455, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 738, 739, 740, 741, 742, + 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, + 753, 0, 0, 0, 0, 754, 0, 756, 757, 0, + 0, 0, 0, 760, 761, 762, 0, 0, 0, 766, + 738, 739, 740, 741, 742, 0, 0, 745, 746, 747, + 748, 0, 750, 751, 752, 753, 728, 729, 0, 0, + 754, 0, 756, 757, 0, 0, 0, 0, 760, 761, + 762, 0, 0, 0, 766, 0, 0, 0, 0, 768, + 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, + 778, 728, 729, 0, 0, 0, 0, 0, 0, 0, + 779, 780, 0, 0, 1459, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 768, 0, 769, 770, 771, 772, + 773, 774, 775, 776, 777, 778, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 779, 780, 0, 0, 1526, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1063, 0, 0, 0, 0, 0, 0, 875, - 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, - 779, 780, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 781, 782, 0, 0, 0, 503, 673, 859, 860, - 861, 862, 863, 864, 865, 866, 740, 741, 742, 743, - 744, 867, 868, 747, 748, 749, 750, 869, 752, 753, - 754, 755, 0, 0, 0, 0, 756, 757, 758, 759, - 870, 871, 0, 0, 762, 763, 764, 872, 873, 874, - 768, 740, 741, 742, 743, 744, 0, 0, 747, 748, - 749, 750, 0, 752, 753, 754, 755, 730, 731, 0, - 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, - 763, 764, 1254, 0, 0, 768, 0, 0, 0, 875, - 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, - 779, 780, 730, 731, 0, 0, 0, 0, 0, 0, - 0, 781, 782, 0, 0, 0, 503, 673, 0, 0, - 0, 0, 0, 0, 0, 770, 0, 771, 772, 773, - 774, 775, 776, 777, 778, 779, 780, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 781, 782, 0, 0, - 793, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 740, 741, 742, 743, 744, 0, 0, 747, 748, - 749, 750, 0, 752, 753, 754, 755, 0, 0, 0, - 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, - 763, 764, 0, 0, 0, 768, 740, 741, 742, 743, - 744, 0, 0, 747, 748, 749, 750, 0, 752, 753, - 754, 755, 730, 731, 0, 0, 756, 0, 758, 759, - 0, 0, 0, 0, 762, 763, 764, 0, 0, 0, - 768, 0, 0, 0, 0, 770, 0, 771, 772, 773, - 774, 775, 776, 777, 778, 779, 780, 730, 731, 0, - 0, 0, 0, 0, 0, 0, 781, 782, 0, 0, - 803, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, - 779, 780, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 781, 782, 0, 0, 819, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 740, 741, 742, 743, - 744, 0, 0, 747, 748, 749, 750, 0, 752, 753, - 754, 755, 0, 0, 0, 0, 756, 0, 758, 759, - 0, 0, 0, 0, 762, 763, 764, 0, 0, 0, - 768, 740, 741, 742, 743, 744, 0, 0, 747, 748, - 749, 750, 0, 752, 753, 754, 755, 730, 731, 0, - 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, - 763, 764, 0, 0, 0, 768, 0, 0, 0, 0, - 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, - 779, 780, 730, 731, 0, 0, 0, 0, 0, 0, - 0, 781, 782, 0, 0, 834, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 770, 0, 771, 772, 773, - 774, 775, 776, 777, 778, 779, 780, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 781, 782, 0, 0, - 1131, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 740, 741, 742, 743, 744, 0, 0, 747, 748, - 749, 750, 0, 752, 753, 754, 755, 0, 0, 0, - 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, - 763, 764, 0, 0, 0, 768, 740, 741, 742, 743, - 744, 0, 0, 747, 748, 749, 750, 0, 752, 753, - 754, 755, 730, 731, 0, 0, 756, 0, 758, 759, - 0, 0, 0, 0, 762, 763, 764, 0, 0, 0, - 768, 0, 0, 0, 0, 770, 0, 771, 772, 773, - 774, 775, 776, 777, 778, 779, 780, 730, 731, 0, - 0, 0, 0, 0, 0, 0, 781, 782, 0, 0, - 1135, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, - 779, 780, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 781, 782, 0, 0, 1137, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 740, 741, 742, 743, - 744, 0, 0, 747, 748, 749, 750, 0, 752, 753, - 754, 755, 0, 0, 0, 0, 756, 0, 758, 759, - 0, 0, 0, 0, 762, 763, 764, 0, 0, 0, - 768, 740, 741, 742, 743, 744, 0, 0, 747, 748, - 749, 750, 0, 752, 753, 754, 755, 730, 731, 0, - 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, - 763, 764, 0, 0, 0, 768, 0, 0, 0, 0, - 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, - 779, 780, 730, 731, 0, 0, 0, 0, 0, 0, - 0, 781, 782, 0, 0, 1146, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 770, 0, 771, 772, 773, - 774, 775, 776, 777, 778, 779, 780, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 781, 782, 0, 0, - 1147, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 740, 741, 742, 743, 744, 0, 0, 747, 748, - 749, 750, 0, 752, 753, 754, 755, 0, 0, 0, - 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, - 763, 764, 0, 0, 0, 768, 740, 741, 742, 743, - 744, 0, 0, 747, 748, 749, 750, 0, 752, 753, - 754, 755, 730, 731, 0, 0, 756, 0, 758, 759, - 0, 0, 0, 0, 762, 763, 764, 0, 0, 0, - 768, 0, 0, 0, 0, 770, 0, 771, 772, 773, - 774, 775, 776, 777, 778, 779, 780, 730, 731, 0, - 0, 0, 0, 0, 0, 0, 781, 782, 0, 0, - 1148, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, - 779, 780, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 781, 782, 0, 0, 1149, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 740, 741, 742, 743, - 744, 0, 0, 747, 748, 749, 750, 0, 752, 753, - 754, 755, 0, 0, 0, 0, 756, 0, 758, 759, - 0, 0, 0, 0, 762, 763, 764, 0, 0, 0, - 768, 740, 741, 742, 743, 744, 0, 0, 747, 748, - 749, 750, 0, 752, 753, 754, 755, 730, 731, 0, - 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, - 763, 764, 0, 0, 0, 768, 0, 0, 0, 0, - 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, - 779, 780, 730, 731, 0, 0, 0, 0, 0, 0, - 0, 781, 782, 0, 0, 1150, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 770, 0, 771, 772, 773, - 774, 775, 776, 777, 778, 779, 780, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 781, 782, 0, 0, - 1151, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 740, 741, 742, 743, 744, 0, 0, 747, 748, - 749, 750, 0, 752, 753, 754, 755, 0, 0, 0, - 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, - 763, 764, 0, 0, 0, 768, 740, 741, 742, 743, - 744, 0, 0, 747, 748, 749, 750, 0, 752, 753, - 754, 755, 730, 731, 0, 0, 756, 0, 758, 759, - 0, 0, 0, 0, 762, 763, 764, 0, 0, 0, - 768, 0, 0, 0, 0, 770, 0, 771, 772, 773, - 774, 775, 776, 777, 778, 779, 780, 730, 731, 0, - 0, 0, 0, 0, 0, 0, 781, 782, 0, 0, - 1275, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, - 779, 780, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 781, 782, 0, 0, 1287, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 740, 741, 742, 743, - 744, 0, 0, 747, 748, 749, 750, 0, 752, 753, - 754, 755, 0, 0, 0, 0, 756, 0, 758, 759, - 0, 0, 0, 0, 762, 763, 764, 0, 0, 0, - 768, 740, 741, 742, 743, 744, 0, 0, 747, 748, - 749, 750, 0, 752, 753, 754, 755, 730, 731, 0, - 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, - 763, 764, 0, 0, 0, 768, 0, 0, 0, 0, - 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, - 779, 780, 730, 731, 0, 0, 0, 0, 0, 0, - 0, 781, 782, 0, 0, 1418, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 770, 0, 771, 772, 773, - 774, 775, 776, 777, 778, 779, 780, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 781, 782, 0, 0, - 1433, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 740, 741, 742, 743, 744, 0, 0, 747, 748, - 749, 750, 0, 752, 753, 754, 755, 0, 0, 0, - 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, - 763, 764, 0, 0, 0, 768, 740, 741, 742, 743, - 744, 0, 0, 747, 748, 749, 750, 0, 752, 753, - 754, 755, 730, 731, 0, 0, 756, 0, 758, 759, - 0, 0, 0, 0, 762, 763, 764, 0, 0, 0, - 768, 0, 0, 0, 0, 770, 0, 771, 772, 773, - 774, 775, 776, 777, 778, 779, 780, 730, 731, 0, - 0, 0, 0, 0, 0, 0, 781, 782, 0, 0, - 1434, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, - 779, 780, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 781, 782, 0, 0, 1453, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 740, 741, 742, 743, - 744, 0, 0, 747, 748, 749, 750, 0, 752, 753, - 754, 755, 0, 0, 0, 0, 756, 0, 758, 759, - 0, 0, 0, 0, 762, 763, 764, 0, 0, 0, - 768, 740, 741, 742, 743, 744, 0, 0, 747, 748, - 749, 750, 0, 752, 753, 754, 755, 730, 731, 0, - 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, - 763, 764, 0, 0, 0, 768, 0, 0, 0, 0, - 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, - 779, 780, 730, 731, 0, 0, 0, 0, 0, 0, - 0, 781, 782, 0, 0, 1455, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 770, 0, 771, 772, 773, - 774, 775, 776, 777, 778, 779, 780, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 781, 782, 0, 0, - 1457, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 740, 741, 742, 743, 744, 0, 0, 747, 748, - 749, 750, 0, 752, 753, 754, 755, 0, 0, 0, - 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, - 763, 764, 0, 0, 0, 768, 740, 741, 742, 743, - 744, 0, 0, 747, 748, 749, 750, 0, 752, 753, - 754, 755, 730, 731, 0, 0, 756, 0, 758, 759, - 0, 0, 0, 0, 762, 763, 764, 0, 0, 0, - 768, 0, 0, 0, 0, 770, 0, 771, 772, 773, - 774, 775, 776, 777, 778, 779, 780, 730, 731, 0, - 0, 0, 0, 0, 0, 0, 781, 782, 0, 0, - 1461, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, - 779, 780, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 781, 782, 0, 0, 1528, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 740, 741, 742, 743, - 744, 0, 0, 747, 748, 749, 750, 0, 752, 753, - 754, 755, 0, 0, 0, 0, 756, 0, 758, 759, - 0, 0, 0, 0, 762, 763, 764, 0, 0, 0, - 768, 740, 741, 742, 743, 744, 0, 0, 747, 748, - 749, 750, 0, 752, 753, 754, 755, 730, 731, 0, - 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, - 763, 764, 0, 0, 0, 768, 0, 0, 0, 0, - 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, - 779, 780, 730, 731, 0, 0, 0, 0, 0, 0, - 0, 781, 782, 0, 0, 1529, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 770, 0, 771, 772, 773, - 774, 775, 776, 777, 778, 779, 780, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 781, 782, 0, 0, - 1530, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 740, 741, 742, 743, 744, 0, 0, 747, 748, - 749, 750, 0, 752, 753, 754, 755, 0, 0, 0, - 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, - 763, 764, 0, 0, 0, 768, 740, 741, 742, 743, - 744, 0, 0, 747, 748, 749, 750, 0, 752, 753, - 754, 755, 730, 731, 0, 0, 756, 0, 758, 759, - 0, 0, 0, 0, 762, 763, 764, 0, 0, 0, - 768, 0, 0, 0, 0, 770, 0, 771, 772, 773, - 774, 775, 776, 777, 778, 779, 780, 730, 731, 0, - 0, 0, 0, 0, 0, 0, 781, 782, 0, 0, - 1538, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, - 779, 780, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 781, 782, 0, 0, 1548, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 740, 741, 742, 743, - 744, 0, 0, 747, 748, 749, 750, 0, 752, 753, - 754, 755, 0, 0, 0, 0, 756, 0, 758, 759, - 0, 0, 0, 0, 762, 763, 764, 0, 0, 0, - 768, 740, 741, 742, 743, 744, 0, 0, 747, 748, - 749, 750, 0, 752, 753, 754, 755, 730, 731, 0, - 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, - 763, 764, 0, 0, 0, 768, 0, 0, 0, 0, - 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, - 779, 780, 730, 731, 0, 0, 0, 0, 0, 0, - 0, 781, 782, 0, 0, 1553, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 770, 0, 771, 772, 773, - 774, 775, 776, 777, 778, 779, 780, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 781, 782, 0, 0, - 1609, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 740, 741, 742, 743, 744, 0, 0, 747, 748, - 749, 750, 0, 752, 753, 754, 755, 0, 0, 0, - 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, - 763, 764, 0, 0, 0, 768, 740, 741, 742, 743, - 744, 730, 731, 747, 748, 749, 750, 0, 752, 753, - 754, 755, 0, 0, 0, 0, 756, 0, 758, 759, - 0, 0, 0, 0, 762, 763, 764, 0, 0, 0, - 768, 0, 0, 0, 0, 770, 0, 771, 772, 773, - 774, 775, 776, 777, 778, 779, 780, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 781, 782, 824, 0, + 738, 739, 740, 741, 742, 0, 0, 745, 746, 747, + 748, 0, 750, 751, 752, 753, 0, 0, 0, 0, + 754, 0, 756, 757, 0, 0, 0, 0, 760, 761, + 762, 0, 0, 0, 766, 738, 739, 740, 741, 742, + 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, + 753, 728, 729, 0, 0, 754, 0, 756, 757, 0, + 0, 0, 0, 760, 761, 762, 0, 0, 0, 766, + 0, 0, 0, 0, 768, 0, 769, 770, 771, 772, + 773, 774, 775, 776, 777, 778, 728, 729, 0, 0, + 0, 0, 0, 0, 0, 779, 780, 0, 0, 1527, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 768, + 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, + 778, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 779, 780, 0, 0, 1528, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 738, 739, 740, 741, 742, + 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, + 753, 0, 0, 0, 0, 754, 0, 756, 757, 0, + 0, 0, 0, 760, 761, 762, 0, 0, 0, 766, + 738, 739, 740, 741, 742, 0, 0, 745, 746, 747, + 748, 0, 750, 751, 752, 753, 728, 729, 0, 0, + 754, 0, 756, 757, 0, 0, 0, 0, 760, 761, + 762, 0, 0, 0, 766, 0, 0, 0, 0, 768, + 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, + 778, 728, 729, 0, 0, 0, 0, 0, 0, 0, + 779, 780, 0, 0, 1536, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 768, 0, 769, 770, 771, 772, + 773, 774, 775, 776, 777, 778, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 779, 780, 0, 0, 1546, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 738, 739, 740, 741, 742, 0, 0, 745, 746, 747, + 748, 0, 750, 751, 752, 753, 0, 0, 0, 0, + 754, 0, 756, 757, 0, 0, 0, 0, 760, 761, + 762, 0, 0, 0, 766, 738, 739, 740, 741, 742, + 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, + 753, 728, 729, 0, 0, 754, 0, 756, 757, 0, + 0, 0, 0, 760, 761, 762, 0, 0, 0, 766, + 0, 0, 0, 0, 768, 0, 769, 770, 771, 772, + 773, 774, 775, 776, 777, 778, 728, 729, 0, 0, + 0, 0, 0, 0, 0, 779, 780, 0, 0, 1551, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 768, + 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, + 778, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 779, 780, 0, 0, 1607, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 738, 739, 740, 741, 742, + 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, + 753, 0, 0, 0, 0, 754, 0, 756, 757, 0, + 0, 0, 0, 760, 761, 762, 0, 0, 0, 766, + 738, 739, 740, 741, 742, 728, 729, 745, 746, 747, + 748, 0, 750, 751, 752, 753, 0, 0, 0, 0, + 754, 0, 756, 757, 0, 0, 0, 0, 760, 761, + 762, 0, 0, 0, 766, 0, 0, 0, 0, 768, + 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, + 778, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 779, 780, 822, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 768, 0, 769, 770, 771, 772, + 773, 774, 775, 776, 777, 778, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 779, 780, 1083, 0, 738, + 739, 740, 741, 742, 728, 729, 745, 746, 747, 748, + 0, 750, 751, 752, 753, 0, 0, 0, 0, 754, + 0, 756, 757, 0, 0, 0, 0, 760, 761, 762, + 0, 0, 0, 766, 0, 0, 0, 0, 0, 728, + 729, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, - 779, 780, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 781, 782, 1085, 0, 740, 741, 742, 743, 744, - 730, 731, 747, 748, 749, 750, 0, 752, 753, 754, - 755, 0, 0, 0, 0, 756, 0, 758, 759, 0, - 0, 0, 0, 762, 763, 764, 0, 0, 0, 768, - 0, 0, 0, 0, 0, 730, 731, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 768, 0, 769, 770, 771, 772, 773, + 774, 775, 776, 777, 778, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 779, 780, 1226, 0, 738, 739, + 740, 741, 742, 0, 0, 745, 746, 747, 748, 0, + 750, 751, 752, 753, 0, 0, 0, 0, 754, 0, + 756, 757, 0, 0, 0, 0, 760, 761, 762, 0, + 0, 0, 766, 738, 739, 740, 741, 742, 728, 729, + 745, 746, 747, 748, 0, 750, 751, 752, 753, 0, + 0, 0, 0, 754, 0, 756, 757, 0, 0, 0, + 0, 760, 761, 762, 0, 0, 0, 766, 0, 0, + 0, 0, 768, 0, 769, 770, 771, 772, 773, 774, + 775, 776, 777, 778, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 779, 780, 1241, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 768, 0, 769, + 770, 771, 772, 773, 774, 775, 776, 777, 778, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 779, 780, + 1370, 0, 738, 739, 740, 741, 742, 0, 0, 745, + 746, 747, 748, 0, 750, 751, 752, 753, 229, 230, + 0, 0, 754, 0, 756, 757, 0, 0, 0, 0, + 760, 761, 762, 0, 0, 231, 766, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 770, - 0, 771, 772, 773, 774, 775, 776, 777, 778, 779, - 780, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 781, 782, 1228, 0, 740, 741, 742, 743, 744, 0, - 0, 747, 748, 749, 750, 0, 752, 753, 754, 755, - 0, 0, 0, 0, 756, 0, 758, 759, 0, 0, - 0, 0, 762, 763, 764, 0, 0, 0, 768, 740, - 741, 742, 743, 744, 730, 731, 747, 748, 749, 750, - 0, 752, 753, 754, 755, 0, 0, 0, 0, 756, - 0, 758, 759, 0, 0, 0, 0, 762, 763, 764, - 0, 0, 0, 768, 0, 0, 0, 0, 770, 0, - 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 781, - 782, 1243, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 770, 0, 771, 772, 773, 774, 775, - 776, 777, 778, 779, 780, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 781, 782, 1372, 0, 740, 741, - 742, 743, 744, 0, 0, 747, 748, 749, 750, 0, - 752, 753, 754, 755, 231, 232, 0, 0, 756, 0, - 758, 759, 0, 0, 0, 0, 762, 763, 764, 0, - 0, 233, 768, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 730, - 731, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 728, 729, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 770, 0, 771, 772, 773, 774, 775, 776, - 777, 778, 779, 780, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 781, 782, 1377, 0, 0, 0, 0, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 0, 0, - 252, 253, 254, 0, 0, 0, 0, 0, 0, 255, - 256, 257, 258, 259, 0, 0, 260, 261, 262, 263, - 264, 265, 266, 740, 741, 742, 743, 744, 730, 731, - 747, 748, 749, 750, 0, 752, 753, 754, 755, 0, - 0, 0, 0, 756, 0, 758, 759, 0, 0, 0, - 0, 762, 763, 764, 0, 0, 0, 768, 0, 0, - 0, 0, 267, 0, 268, 269, 270, 271, 272, 273, - 274, 275, 276, 277, 0, 0, 278, 279, 0, 0, - 0, 0, 0, 280, 281, 0, 0, 286, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 770, 0, 771, - 772, 773, 774, 775, 776, 777, 778, 779, 780, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 781, 782, - 0, 0, 740, 741, 742, 743, 744, 730, 731, 747, - 748, 749, 750, 0, 752, 753, 754, 755, 0, 0, - 0, 0, 756, 0, 758, 759, 0, 0, 925, 0, - 762, 763, 764, 0, 0, 0, 768, 0, 0, 0, - 0, 0, 730, 731, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 768, 0, 769, 770, + 771, 772, 773, 774, 775, 776, 777, 778, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 779, 780, 1375, + 0, 0, 0, 0, 232, 233, 234, 235, 236, 237, + 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, + 248, 249, 0, 0, 250, 251, 252, 0, 0, 0, + 0, 0, 0, 253, 254, 255, 256, 257, 0, 0, + 258, 259, 260, 261, 262, 263, 264, 738, 739, 740, + 741, 742, 728, 729, 745, 746, 747, 748, 0, 750, + 751, 752, 753, 0, 0, 0, 0, 754, 0, 756, + 757, 0, 0, 0, 0, 760, 761, 762, 0, 0, + 0, 766, 0, 0, 0, 0, 265, 0, 266, 267, + 268, 269, 270, 271, 272, 273, 274, 275, 0, 0, + 276, 277, 0, 0, 0, 0, 0, 278, 279, 0, + 0, 284, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 768, 0, 769, 770, 771, 772, 773, 774, 775, + 776, 777, 778, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 779, 780, 0, 0, 738, 739, 740, 741, + 742, 728, 729, 745, 746, 747, 748, 0, 750, 751, + 752, 753, 0, 0, 0, 0, 754, 0, 756, 757, + 0, 0, 923, 0, 760, 761, 762, 0, 0, 0, + 766, 0, 0, 0, 0, 0, 728, 729, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 770, 0, 771, 772, - 773, 774, 775, 776, 777, 778, 779, 780, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 781, 782, 0, - 0, 740, 741, 742, 743, 744, 0, 0, 747, 748, - 749, 750, 0, 752, 753, 754, 755, 0, 0, 0, - 0, 756, 0, 758, 759, 0, 0, 1160, 0, 762, - 763, 764, 730, 731, 0, 768, 740, 741, 742, 743, - 744, 0, 0, 747, 748, 749, 750, 0, 752, 753, - 754, 755, 0, 0, 0, 0, 756, 0, 758, 759, - 0, 0, 0, 0, 762, 763, 764, 730, 731, 0, - 768, 0, 0, 0, 0, 770, 0, 771, 772, 773, - 774, 775, 776, 777, 778, 779, 780, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 781, 782, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 770, 1233, 771, 772, 773, 774, 775, 776, 777, 778, - 779, 780, 0, 0, 0, 0, 740, 741, 742, 743, - 744, 781, 782, 747, 748, 749, 750, 0, 752, 753, - 754, 755, 0, 0, 0, 0, 756, 0, 758, 759, - 0, 0, 0, 0, 762, 763, 764, 730, 731, 0, - 768, 740, 741, 742, 743, 744, 0, 0, 747, 748, - 749, 750, 0, 752, 753, 754, 755, 0, 0, 0, - 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, - 763, 764, 1245, 0, 0, 768, 730, 731, 0, 0, - 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, + 768, 0, 769, 770, 771, 772, 773, 774, 775, 776, + 777, 778, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 779, 780, 0, 0, 738, 739, 740, 741, 742, + 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, + 753, 0, 0, 0, 0, 754, 0, 756, 757, 0, + 0, 1158, 0, 760, 761, 762, 728, 729, 0, 766, + 738, 739, 740, 741, 742, 0, 0, 745, 746, 747, + 748, 0, 750, 751, 752, 753, 0, 0, 0, 0, + 754, 0, 756, 757, 0, 0, 0, 0, 760, 761, + 762, 728, 729, 0, 766, 0, 0, 0, 0, 768, + 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, + 778, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 779, 780, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 768, 1231, 769, 770, 771, 772, + 773, 774, 775, 776, 777, 778, 0, 0, 0, 0, + 738, 739, 740, 741, 742, 779, 780, 745, 746, 747, + 748, 0, 750, 751, 752, 753, 0, 0, 0, 0, + 754, 0, 756, 757, 0, 0, 0, 0, 760, 761, + 762, 728, 729, 0, 766, 738, 739, 740, 741, 742, + 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, + 753, 0, 0, 0, 0, 754, 0, 756, 757, 0, + 0, 0, 0, 760, 761, 762, 1243, 0, 0, 766, + 728, 729, 0, 0, 768, 0, 769, 770, 771, 772, + 773, 774, 775, 776, 777, 778, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 779, 780, 1333, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 768, + 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, + 778, 0, 0, 0, 0, 738, 739, 740, 741, 742, + 779, 780, 745, 746, 747, 748, 0, 750, 751, 752, + 753, 0, 0, 0, 0, 754, 0, 756, 757, 0, + 0, 0, 0, 760, 761, 762, 0, 0, 0, 766, + 728, 729, 0, 0, 738, 739, 740, 741, 742, 0, + 0, 745, 746, 747, 748, 0, 750, 751, 752, 753, + 0, 0, 0, 0, 754, 0, 756, 757, 0, 0, + 0, 1547, 760, 761, 762, 728, 729, 0, 766, 768, + 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, + 778, 0, 0, 0, 0, 0, 0, 0, 0, 0, 779, 780, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 781, 782, 1335, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 770, 0, 771, 772, 773, - 774, 775, 776, 777, 778, 779, 780, 0, 0, 0, - 0, 740, 741, 742, 743, 744, 781, 782, 747, 748, - 749, 750, 0, 752, 753, 754, 755, 0, 0, 0, - 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, - 763, 764, 0, 0, 0, 768, 730, 731, 0, 0, - 740, 741, 742, 743, 744, 0, 0, 747, 748, 749, - 750, 0, 752, 753, 754, 755, 0, 0, 0, 0, - 756, 0, 758, 759, 0, 0, 0, 1549, 762, 763, - 764, 730, 731, 0, 768, 770, 0, 771, 772, 773, - 774, 775, 776, 777, 778, 779, 780, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 781, 782, 0, 0, - 0, 0, 0, 0, 0, 0, 1603, 0, 0, 0, - 0, 0, 0, 0, 770, 0, 771, 772, 773, 774, - 775, 776, 777, 778, 779, 780, 0, 0, 0, 0, - 740, 741, 742, 743, 744, 781, 782, 747, 748, 749, - 750, 0, 752, 753, 754, 755, 0, 0, 0, 0, - 756, 0, 758, 759, 0, 0, 0, 0, 762, 763, - 764, 730, 731, 0, 768, 740, 741, 742, 743, 744, - 0, 0, 747, 748, 749, 750, 0, 752, 753, 754, - 755, 0, 0, 0, 0, 756, 0, 758, 759, 0, - 0, 0, 0, 762, 763, 764, 1625, 0, 0, 768, - 730, 731, 0, 0, 770, 0, 771, 772, 773, 774, - 775, 776, 777, 778, 779, 780, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 781, 782, 0, 0, 0, - 0, 1626, 0, 0, 0, 0, 0, 0, 0, 770, - 0, 771, 772, 773, 774, 775, 776, 777, 778, 779, - 780, 0, 0, 0, 0, 740, 741, 742, 743, 744, - 781, 782, 747, 748, 749, 750, 0, 752, 753, 754, - 755, 0, 0, 0, 0, 756, 0, 758, 759, 0, - 0, 0, 0, 762, 763, 764, 0, 0, 0, 768, - 730, 731, 0, 0, 740, 741, 742, 743, 744, 0, - 0, 747, 748, 749, 750, 0, 752, 753, 754, 755, - 0, 0, 0, 0, 756, 0, 758, 759, 0, 0, - 0, 1630, 762, 763, 764, 730, 731, 0, 768, 770, - 0, 771, 772, 773, 774, 775, 776, 777, 778, 779, - 780, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 781, 782, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 770, 0, - 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, - 0, 0, 0, 0, 740, 741, 742, 743, 744, 781, - 782, 747, 748, 749, 750, 0, 752, 753, 754, 755, - 0, 0, 0, 0, 756, 0, 758, 759, 0, 0, - 0, 0, 762, 763, 764, 730, 731, 0, -741, 740, - 741, 742, 743, 744, 0, 0, 747, 748, 749, 750, - 0, 752, 753, 754, 755, 0, 0, 0, 0, 756, - 0, 758, 759, 0, 0, 0, 0, 762, 763, 764, - 730, 731, 0, 0, 0, 0, 0, 0, 770, 0, - 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 781, - 782, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 770, 0, 771, 772, 773, 774, 775, - 776, 777, 778, 779, 780, 0, 0, 0, 0, 740, - 741, 742, 743, 744, 781, 782, 747, 748, 749, 750, - 0, 752, 753, 754, 755, 0, 0, 0, 0, 756, - 0, 758, 759, 0, 0, 0, 0, 762, 0, 764, - 730, 731, 0, 0, 740, 741, 742, 743, 744, 0, - 0, 747, 748, 749, 750, 0, 752, 753, 754, 755, - 0, 0, 0, 0, 756, 0, 758, 759, 730, 731, - 0, 0, 762, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 771, 772, 773, 774, 775, - 776, 777, 778, 779, 780, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 781, 782, 0, 0, 0, 0, + 1601, 0, 0, 0, 0, 0, 0, 0, 768, 0, + 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, + 0, 0, 0, 0, 738, 739, 740, 741, 742, 779, + 780, 745, 746, 747, 748, 0, 750, 751, 752, 753, + 0, 0, 0, 0, 754, 0, 756, 757, 0, 0, + 0, 0, 760, 761, 762, 728, 729, 0, 766, 738, + 739, 740, 741, 742, 0, 0, 745, 746, 747, 748, + 0, 750, 751, 752, 753, 0, 0, 0, 0, 754, + 0, 756, 757, 0, 0, 0, 0, 760, 761, 762, + 1623, 0, 0, 766, 728, 729, 0, 0, 768, 0, + 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 779, + 780, 0, 0, 0, 0, 1624, 0, 0, 0, 0, + 0, 0, 0, 768, 0, 769, 770, 771, 772, 773, + 774, 775, 776, 777, 778, 0, 0, 0, 0, 738, + 739, 740, 741, 742, 779, 780, 745, 746, 747, 748, + 0, 750, 751, 752, 753, 0, 0, 0, 0, 754, + 0, 756, 757, 0, 0, 0, 0, 760, 761, 762, + 0, 0, 0, 766, 728, 729, 0, 0, 738, 739, + 740, 741, 742, 0, 0, 745, 746, 747, 748, 0, + 750, 751, 752, 753, 0, 0, 0, 0, 754, 0, + 756, 757, 0, 0, 0, 1628, 760, 761, 762, 728, + 729, 0, 766, 768, 0, 769, 770, 771, 772, 773, + 774, 775, 776, 777, 778, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 779, 780, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, - 0, 0, 0, 0, 740, 741, 742, 743, 744, 781, - 782, 747, 748, 749, 750, 0, 752, 753, 754, 755, - 0, 0, 0, 0, 756, 0, 758, 759, 730, 731, - 0, 0, 740, 741, 742, 743, 744, 0, 0, 747, - 748, 749, 750, 0, 752, 753, 754, 755, 0, 0, - 0, 0, 756, 0, 758, 759, 0, 0, 0, 0, + 0, 0, 768, 0, 769, 770, 771, 772, 773, 774, + 775, 776, 777, 778, 0, 0, 0, 0, 738, 739, + 740, 741, 742, 779, 780, 745, 746, 747, 748, 0, + 750, 751, 752, 753, 0, 0, 0, 0, 754, 0, + 756, 757, 0, 0, 0, 0, 760, 761, 762, 728, + 729, 0, -740, 738, 739, 740, 741, 742, 0, 0, + 745, 746, 747, 748, 0, 750, 751, 752, 753, 0, + 0, 0, 0, 754, 0, 756, 757, 0, 0, 0, + 0, 760, 761, 762, 728, 729, 0, 0, 0, 0, + 0, 0, 768, 0, 769, 770, 771, 772, 773, 774, + 775, 776, 777, 778, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 779, 780, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 768, 0, 769, + 770, 771, 772, 773, 774, 775, 776, 777, 778, 0, + 0, 0, 0, 738, 739, 740, 741, 742, 779, 780, + 745, 746, 747, 748, 0, 750, 751, 752, 753, 0, + 0, 0, 0, 754, 0, 756, 757, 0, 0, 0, + 0, 760, 0, 762, 728, 729, 0, 0, 738, 739, + 740, 741, 742, 0, 0, 745, 746, 747, 748, 0, + 750, 751, 752, 753, 0, 0, 0, 0, 754, 0, + 756, 757, 728, 729, 0, 0, 760, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 769, + 770, 771, 772, 773, 774, 775, 776, 777, 778, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 779, 780, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 769, 770, 771, 772, 773, 774, + 775, 776, 777, 778, 0, 0, 0, 0, 738, 739, + 740, 741, 742, 779, 780, 745, 746, 747, 748, 0, + 750, 751, 752, 753, 0, 0, 0, 0, 754, 0, + 756, 757, 728, 729, 0, 0, 738, 739, 740, 741, + 742, 0, 0, 745, 746, 747, 748, 0, 750, 751, + 752, 753, 0, 0, 0, 0, 754, 0, 756, 757, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, - 0, 0, 0, 0, 965, 0, 0, 0, 0, 781, - 782, 0, 0, 0, 0, 0, 0, 0, 0, 772, - 773, 774, 775, 776, 777, 778, 779, 780, 0, 0, - 0, 0, 740, 741, 742, 743, 744, 781, 782, 747, - 748, 749, 750, 0, 752, 753, 754, 755, 0, 0, - 0, 0, 756, 0, 758, 759, 316, 317, 318, 0, - 320, 321, 322, 323, 324, 463, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 0, 338, 339, - 340, 0, 0, 343, 344, 345, 346, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 969, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 773, 774, 775, 776, 777, 778, 779, 780, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 781, 782, 0, - 1229, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 966, 0, 0, 0, 0, 0, 0, 0, - 0, 316, 317, 318, 967, 320, 321, 322, 323, 324, - 463, 326, 327, 328, 329, 330, 331, 332, 333, 334, - 335, 336, 0, 338, 339, 340, 0, 0, 343, 344, - 345, 346, 316, 317, 318, 0, 320, 321, 322, 323, - 324, 463, 326, 327, 328, 329, 330, 331, 332, 333, - 334, 335, 336, 0, 338, 339, 340, 0, 0, 343, - 344, 345, 346, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 181, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 970, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 971, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 182, - 0, 183, 0, 184, 185, 186, 187, 188, 1230, 189, - 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 1231, 200, 201, 202, 0, 0, 203, 204, 205, 206, + 0, 0, 0, 0, 769, 770, 771, 772, 773, 774, + 775, 776, 777, 778, 0, 0, 0, 0, 967, 0, + 0, 0, 0, 779, 780, 0, 0, 0, 0, 0, + 0, 0, 0, 770, 771, 772, 773, 774, 775, 776, + 777, 778, 0, 0, 0, 0, 738, 739, 740, 741, + 742, 779, 780, 745, 746, 747, 748, 0, 750, 751, + 752, 753, 0, 0, 0, 0, 754, 0, 756, 757, + 314, 315, 316, 0, 318, 319, 320, 321, 322, 461, + 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, + 334, 0, 336, 337, 338, 0, 0, 341, 342, 343, + 344, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1227, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 771, 772, 773, 774, 775, 776, + 777, 778, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 779, 780, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 968, 0, 0, 0, + 0, 0, 0, 0, 0, 314, 315, 316, 969, 318, + 319, 320, 321, 322, 461, 324, 325, 326, 327, 328, + 329, 330, 331, 332, 333, 334, 0, 336, 337, 338, + 0, 0, 341, 342, 343, 344, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 207, 208, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 209 + 0, 1228, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1229 }; static const yytype_int16 yycheck[] = { - 14, 15, 211, 482, 570, 227, 621, 708, 375, 710, - 375, 719, 590, 161, 589, 388, 645, 900, 626, 537, - 584, 443, 586, 227, 588, 810, 916, 812, 1163, 814, - 4, 443, 922, 382, 32, 471, 472, 19, 7, 80, - 19, 688, 52, 561, 417, 32, 1389, 19, 21, 63, - 64, 65, 1410, 19, 19, 467, 18, 19, 103, 52, - 45, 19, 56, 19, 130, 1353, 0, 168, 62, 125, - 14, 15, 6, 142, 143, 144, 125, 685, 443, 687, - 502, 689, 156, 56, 190, 158, 125, 178, 194, 697, - 104, 105, 106, 107, 168, 29, 135, 31, 706, 33, - 33, 1531, 467, 14, 15, 39, 124, 480, 481, 127, - 128, 1469, 1470, 214, 180, 49, 141, 1497, 49, 1499, - 105, 55, 125, 1503, 1504, 153, 1484, 101, 102, 62, - 158, 187, 135, 1506, 190, 4, 5, 186, 187, 213, - 189, 150, 215, 192, 213, 79, 1576, 180, 187, 158, - 180, 373, 168, 301, 855, 24, 1444, 675, 1501, 168, - 91, 30, 574, 156, 189, 178, 388, 101, 102, 373, - 180, 593, 180, 218, 61, 168, 189, 878, 219, 1559, - 1315, 1539, 1540, 213, 187, 179, 194, 215, 1561, 192, - 891, 209, 210, 894, 192, 417, 212, 419, 67, 68, - 150, 134, 161, 212, 186, 192, 168, 186, 141, 574, - 179, 20, 21, 227, 186, 637, 638, 161, 168, 193, - 186, 186, 166, 210, 168, 198, 638, 171, 186, 216, - 186, 186, 101, 102, 125, 168, 209, 446, 212, 141, - 662, 210, 46, 665, 135, 953, 180, 127, 128, 178, - 161, 460, 127, 128, 180, 166, 668, 168, 480, 481, - 171, 1144, 66, 304, 125, 199, 168, 6, 212, 1159, - 203, 644, 141, 638, 135, 140, 210, 153, 125, 212, - 141, 156, 158, 212, 1419, 125, 178, 213, 135, 158, - 159, 160, 728, 168, 667, 135, 187, 719, 180, 168, - 20, 21, 187, 668, 125, 114, 115, 116, 117, 178, - 49, 189, 180, 178, 135, 124, 180, 126, 127, 128, - 129, 1204, 214, 215, 193, 134, 187, 136, 137, 209, - 210, 213, 180, 941, 209, 210, 350, 213, 150, 215, - 187, 210, 20, 21, 190, 213, 194, 187, 194, 213, - 183, 184, 180, 575, 576, 577, 168, 579, 580, 373, - 180, 583, 784, 585, 378, 587, 187, 589, 186, 180, - 168, 575, 576, 577, 388, 579, 580, 726, 211, 583, - 186, 585, 180, 587, 796, 213, 195, 196, 197, 198, - 199, 168, 1100, 213, 186, 213, 116, 117, 186, 963, - 209, 210, 213, 417, 124, 419, 126, 127, 128, 129, - 168, 169, 170, 180, 134, 180, 625, 186, 63, 64, - 65, 213, 644, 211, 1314, 439, 848, 194, 141, 194, - 842, 796, 180, 1218, 952, 183, 1326, 150, 116, 117, - 649, 199, 155, 190, 213, 667, 124, 194, 927, 127, - 128, 129, 186, 186, 1162, 168, 134, 186, 937, 104, - 105, 106, 107, 211, 141, 141, 480, 481, 186, 186, - 843, 844, 908, 180, 150, 186, 1091, 842, 211, 213, - 193, 854, 211, 4, 5, 694, 7, 194, 186, 209, - 210, 913, 168, 186, 186, 213, 213, 186, 56, 921, - 211, 186, 1080, 1078, 62, 714, 20, 21, 730, 731, - 883, 884, 1159, 886, 35, 213, 186, 890, 211, 892, - 893, 213, 895, 1308, 213, 193, 211, 1174, 180, 74, - 193, 209, 210, 78, 756, 178, 190, 973, 974, 975, - 194, 211, 194, 186, 212, 189, 180, 92, 93, 212, - 194, 32, 97, 98, 99, 100, 212, 193, 1343, 189, - 194, 575, 576, 577, 194, 579, 580, 189, 212, 583, - 180, 585, 194, 587, 193, 589, 212, 187, 59, 60, - 11, 1145, 212, 168, 189, 168, 161, 156, 156, 194, - 212, 22, 23, 212, 180, 180, 156, 180, 820, 168, - 168, 190, 116, 117, 190, 194, 828, 212, 168, 831, - 124, 32, 126, 127, 128, 129, 820, 631, 840, 209, - 134, 843, 844, 156, 828, 847, 189, 831, 850, 192, - 644, 32, 854, 1197, 56, 168, 840, 156, 59, 60, - 62, 122, 1350, 847, 792, 126, 850, 172, 186, 168, - 56, 189, 375, 667, 192, 1440, 62, 179, 59, 60, - 182, 883, 884, 185, 886, 180, 1295, 876, 890, 56, - 892, 893, 56, 895, 1096, 62, 179, 180, 62, 182, - 56, 195, 196, 197, 198, 199, 62, 56, 180, 168, - 169, 170, 180, 62, 186, 209, 210, 711, 186, 180, - 180, 122, 168, 1318, 1405, 126, 186, 188, 930, 180, - 932, 192, 180, 194, 195, 186, 180, 142, 186, 144, - 443, 122, 186, 190, 125, 126, 930, 194, 932, 210, - 1152, 1104, 1105, 1106, 135, 216, 190, 190, 190, 190, - 194, 194, 194, 194, 467, 190, 930, 189, 932, 194, - 192, 1173, 168, 20, 21, 1128, 180, 1179, 172, 173, - 174, 175, 172, 173, 1186, 214, 215, 188, 1190, 172, - 173, 192, 168, 194, 195, 168, 790, 86, 87, 180, - 142, 143, 144, 168, 1348, 168, 187, 188, 168, 210, - 178, 192, 56, 172, 195, 216, 142, 470, 471, 472, - 172, 173, 174, 1418, 1226, 180, 820, 105, 178, 210, - 1032, 179, 180, 181, 828, 216, 1238, 831, 10, 11, - 12, 187, 1189, 1196, 1189, 178, 840, 178, 178, 843, - 844, 34, 34, 847, 212, 168, 850, 179, 1485, 168, - 854, 1542, 1543, 168, 1545, 1067, 168, 520, 1477, 116, - 117, 574, 215, 211, 21, 168, 1078, 124, 189, 126, - 127, 128, 129, 1067, 211, 189, 178, 134, 178, 883, - 884, 212, 886, 42, 547, 193, 890, 193, 892, 893, - 1446, 895, 1104, 1105, 1106, 193, 212, 1309, 1535, 1536, - 193, 193, 212, 193, 1541, 212, 32, 193, 193, 1546, - 193, 193, 193, 190, 135, 168, 1128, 212, 168, 168, - 211, 168, 193, 210, 193, 638, 930, 1339, 932, 193, - 168, 193, 212, 59, 60, 193, 212, 212, 180, 161, - 197, 198, 199, 1580, 1581, 193, 212, 32, 1553, 193, - 193, 212, 209, 210, 193, 668, 212, 212, 1427, 193, - 212, 1430, 36, 180, 1520, 1521, 212, 180, 9, 180, - 215, 180, 180, 180, 59, 60, 180, 1389, 65, 642, - 210, 212, 32, 212, 1196, 179, 42, 193, 213, 168, - 168, 211, 180, 179, 189, 180, 122, 180, 1361, 1198, - 126, 130, 32, 179, 179, 42, 193, 670, 13, 59, - 60, 1567, 212, 212, 186, 189, 193, 187, 32, 732, - 733, 734, 735, 736, 737, 738, 739, 193, 161, 59, - 60, 215, 745, 746, 186, 178, 12, 122, 751, 186, - 158, 126, 7, 168, 168, 59, 60, 760, 761, 194, - 32, 213, 765, 766, 767, 168, 769, 168, 212, 186, - 211, 1273, 188, 1067, 1476, 728, 192, 186, 194, 195, - 1482, 179, 122, 179, 1078, 125, 126, 59, 60, 1273, - 212, 1280, 1445, 796, 210, 135, 168, 1, 193, 1501, - 216, 213, 122, 213, 193, 212, 126, 1509, 212, 179, - 1104, 1105, 1106, 188, 66, 32, 168, 192, 122, 194, - 195, 212, 126, 180, 212, 212, 212, 212, 194, 194, - 42, 194, 168, 213, 1128, 210, 212, 193, 212, 842, - 213, 216, 59, 60, 213, 798, 213, 187, 188, 211, - 122, 211, 192, 211, 126, 195, 1345, 168, 168, 1361, - 1562, 1363, 168, 168, 212, 212, 1519, 212, 188, 212, - 210, 1360, 192, 180, 194, 195, 216, 168, 213, 1363, - 212, 180, 212, 211, 188, 168, 211, 213, 192, 375, - 210, 195, 211, 32, 212, 212, 216, 168, 212, 385, - 212, 69, 1196, 212, 212, 122, 210, 194, 394, 126, - 212, 212, 216, 213, 194, 212, 188, 213, 404, 212, - 192, 180, 194, 195, 212, 1414, 52, 213, 414, 211, - 179, 179, 213, 179, 211, 180, 211, 423, 210, 213, - 32, 211, 179, 1445, 216, 898, 213, 433, 213, 211, - 79, 696, 1, 44, 133, 908, 1458, 443, 82, 1437, - 790, 1438, 448, 939, 450, 225, 1438, 59, 60, 1438, - 1438, 188, 1438, 459, 1458, 192, 1, 194, 195, 1273, - 959, 467, 468, 469, 1414, 1358, 1381, 1466, 1384, 520, - 1250, 427, 1467, 210, 52, 559, 482, 1100, 1425, 216, - 439, 439, -1, 1169, 490, -1, 688, 493, -1, -1, - 496, 497, 498, 499, 500, -1, -1, 1519, -1, -1, - 973, 974, 975, 509, -1, 978, -1, 980, 1517, 982, - 122, 984, -1, 986, 126, 988, -1, 990, -1, 992, - -1, 20, 21, -1, 997, -1, 999, -1, -1, -1, - -1, -1, 1005, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 1017, -1, 1019, 1361, -1, 1363, - -1, 1024, -1, 1026, -1, 1028, -1, -1, 1031, 733, - 734, 735, 736, 737, 738, 739, -1, -1, 574, -1, - -1, 745, 746, -1, -1, -1, 188, 751, -1, -1, - 192, -1, 194, 195, -1, -1, 760, 761, -1, 1062, - -1, 765, 766, 767, -1, 769, 602, 1606, 210, -1, - -1, -1, -1, -1, 216, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 114, 115, 116, 117, 118, - 1093, -1, 121, 122, 123, 124, -1, 126, 127, 128, - 129, 1445, 638, -1, -1, 134, -1, 136, 137, 645, - 646, -1, 648, -1, 1458, -1, -1, 653, -1, -1, - -1, -1, -1, 659, -1, -1, -1, -1, -1, -1, - -1, -1, 668, -1, -1, -1, 1189, -1, -1, -1, - -1, -1, -1, 679, 680, 681, 682, 683, 684, -1, - 686, -1, 688, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 1506, 11, 193, 194, 195, 196, 197, 198, - 199, -1, 20, 21, -1, 1519, -1, -1, -1, -1, - 209, 210, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 732, 733, 734, 735, - 736, 737, 738, 739, 740, 741, -1, -1, 744, 745, - 746, 747, 748, 749, -1, 751, 752, 1561, 754, 755, + 14, 15, 209, 225, 480, 643, 619, 568, 373, 373, + 588, 717, 159, 386, 706, 587, 708, 898, 1161, 441, + 535, 225, 380, 582, 808, 584, 810, 586, 812, 19, + 7, 32, 4, 469, 470, 914, 373, 441, 101, 686, + 79, 920, 415, 19, 559, 19, 32, 52, 62, 63, + 64, 14, 15, 624, 56, 19, 52, 1351, 19, 21, + 62, 465, 1387, 19, 19, 142, 143, 144, 18, 19, + 124, 1504, 153, 127, 128, 141, 441, 158, 500, 6, + 153, 130, 193, 125, 178, 158, 0, 158, 102, 103, + 104, 105, 6, 135, 56, 150, 168, 125, 127, 128, + 465, 212, 49, 158, 441, 478, 479, 127, 128, 1529, + 161, 45, 683, 168, 685, 29, 687, 31, 212, 33, + 20, 21, 49, 189, 695, 39, 1559, 156, 465, 101, + 102, 180, 213, 704, 215, 49, 213, 14, 15, 168, + 212, 55, 215, 90, 215, 187, 20, 21, 1442, 371, + 192, 178, 299, 216, 1574, 209, 210, 212, 673, 187, + 156, 853, 190, 33, 386, 79, 46, 371, 572, 591, + 1313, 105, 168, 180, 1499, 180, 183, 179, 217, 168, + 209, 210, 140, 150, 876, 180, 66, 101, 102, 209, + 210, 192, 62, 415, 187, 417, 186, 889, 161, 194, + 892, 168, 179, 166, 211, 168, 192, 572, 171, 210, + 186, 225, 186, 635, 636, 216, 116, 117, 168, 125, + 178, 193, 186, 180, 124, 186, 126, 127, 128, 129, + 186, 186, 636, 210, 134, 572, 198, 444, 660, 61, + 212, 663, 116, 117, 186, 951, 1408, 209, 186, 212, + 124, 458, 126, 127, 128, 129, 478, 479, 168, 189, + 134, 1142, 666, 302, 134, 125, 180, 180, 186, 642, + 1495, 636, 1497, 211, 1417, 135, 1501, 1502, 1157, 186, + 186, 187, 141, 189, 161, 199, 192, 125, 32, 166, + 726, 168, 665, 211, 171, 717, 210, 135, 168, 636, + 213, 666, 125, 141, 214, 1467, 1468, 178, 180, 209, + 210, 193, 135, 180, 180, 59, 60, 180, 125, 150, + 1482, 1202, 212, 197, 198, 199, 156, 187, 135, 666, + 212, 180, 1557, 203, 348, 209, 210, 168, 168, 183, + 184, 213, 212, 214, 215, 194, 213, 213, 125, 187, + 213, 573, 574, 575, 209, 577, 578, 371, 135, 581, + 782, 583, 376, 585, 187, 587, 724, 211, 939, 573, + 574, 575, 386, 577, 578, 1537, 1538, 581, 122, 583, + 187, 585, 126, 213, 180, 56, 180, 20, 21, 168, + 794, 62, 1098, 730, 731, 732, 733, 734, 735, 736, + 737, 415, 961, 417, 180, 125, 743, 744, 4, 5, + 187, 7, 749, 150, 186, 135, 623, 213, 155, 213, + 642, 758, 759, 437, 846, 186, 763, 764, 765, 794, + 767, 168, 1216, 1312, 32, 950, 840, 213, 190, 35, + 647, 213, 194, 665, 188, 1324, 186, 186, 192, 925, + 194, 195, 213, 186, 1160, 186, 193, 794, 161, 935, + 186, 59, 60, 186, 478, 479, 210, 187, 841, 842, + 906, 186, 216, 213, 213, 840, 1089, 186, 180, 852, + 213, 150, 213, 116, 117, 692, 180, 213, 168, 911, + 213, 124, 194, 187, 127, 128, 129, 919, 213, 168, + 1078, 134, 211, 840, 1076, 712, 728, 729, 881, 882, + 1157, 884, 62, 63, 64, 888, 180, 890, 891, 186, + 893, 186, 1306, 186, 122, 1172, 186, 180, 126, 180, + 194, 189, 754, 189, 192, 971, 972, 973, 194, 168, + 169, 170, 189, 194, 211, 189, 211, 194, 211, 180, + 194, 211, 102, 103, 104, 105, 212, 1341, 168, 573, + 574, 575, 74, 577, 578, 212, 78, 581, 212, 583, + 199, 585, 193, 587, 193, 180, 209, 210, 180, 168, + 92, 93, 4, 5, 1143, 97, 98, 99, 100, 194, + 188, 212, 194, 212, 192, 178, 818, 195, 189, 11, + 168, 168, 24, 194, 826, 168, 189, 829, 30, 168, + 22, 23, 210, 180, 818, 629, 838, 180, 216, 841, + 842, 212, 826, 845, 178, 829, 848, 168, 642, 32, + 852, 928, 186, 930, 838, 156, 1195, 156, 156, 180, + 156, 845, 1348, 790, 848, 67, 68, 168, 180, 168, + 168, 665, 168, 156, 1438, 1293, 59, 60, 190, 881, + 882, 189, 884, 168, 192, 168, 888, 874, 890, 891, + 179, 893, 1094, 182, 172, 186, 185, 56, 189, 101, + 102, 192, 56, 62, 56, 56, 56, 56, 62, 178, + 62, 62, 62, 62, 180, 709, 180, 56, 180, 180, + 186, 180, 186, 1316, 186, 186, 928, 186, 930, 180, + 190, 1403, 190, 190, 194, 186, 194, 194, 142, 122, + 144, 190, 125, 126, 928, 194, 930, 180, 1150, 1102, + 1103, 1104, 135, 172, 173, 190, 158, 159, 160, 194, + 190, 190, 172, 190, 194, 194, 168, 194, 190, 1171, + 190, 142, 194, 1126, 194, 1177, 178, 172, 173, 174, + 175, 105, 1184, 32, 172, 173, 1188, 85, 86, 179, + 180, 193, 182, 187, 788, 34, 178, 180, 142, 143, + 144, 168, 169, 170, 187, 188, 178, 1346, 210, 192, + 59, 60, 195, 214, 215, 468, 469, 470, 178, 172, + 173, 174, 1224, 1416, 818, 34, 212, 210, 1030, 10, + 11, 12, 826, 216, 1236, 829, 179, 180, 181, 168, + 178, 1194, 1187, 1187, 838, 179, 215, 841, 842, 168, + 168, 845, 168, 211, 848, 21, 1483, 1475, 852, 168, + 42, 189, 189, 1065, 211, 518, 178, 178, 1540, 1541, + 1187, 1543, 212, 122, 1076, 212, 125, 126, 193, 193, + 193, 1065, 212, 193, 190, 193, 135, 881, 882, 193, + 884, 193, 545, 193, 888, 212, 890, 891, 193, 893, + 1102, 1103, 1104, 1444, 193, 1307, 1533, 1534, 193, 168, + 135, 212, 1539, 168, 32, 211, 168, 1544, 168, 210, + 193, 193, 212, 193, 1126, 212, 168, 193, 193, 212, + 193, 161, 180, 193, 928, 1337, 930, 193, 187, 188, + 193, 59, 60, 192, 212, 212, 195, 193, 212, 36, + 212, 1578, 1579, 180, 212, 212, 180, 9, 1551, 180, + 180, 210, 180, 180, 215, 180, 65, 216, 212, 1425, + 210, 179, 1428, 42, 212, 168, 213, 1518, 1519, 193, + 168, 180, 211, 18, 179, 1387, 180, 640, 179, 24, + 32, 189, 1194, 180, 179, 30, 212, 42, 130, 212, + 13, 193, 186, 193, 122, 40, 1359, 187, 126, 1196, + 193, 189, 161, 48, 215, 668, 186, 59, 60, 178, + 12, 186, 158, 168, 1565, 7, 168, 194, 63, 168, + 168, 186, 186, 179, 213, 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, 212, 1271, + 188, 1065, 1474, 726, 192, 179, 194, 195, 1480, 213, + 122, 211, 1076, 212, 126, 212, 168, 1271, 213, 212, + 1443, 1278, 210, 193, 1, 193, 212, 1499, 216, 212, + 212, 212, 212, 179, 66, 1507, 180, 168, 1102, 1103, + 1104, 194, 42, 194, 20, 21, 194, 168, 213, 154, + 212, 168, 213, 213, 213, 168, 212, 211, 168, 168, + 193, 211, 1126, 168, 211, 168, 180, 212, 180, 212, + 212, 212, 212, 796, 211, 213, 188, 212, 180, 213, + 192, 168, 194, 195, 211, 211, 1343, 1359, 1560, 1361, + 32, 168, 212, 212, 1517, 69, 212, 194, 210, 194, + 180, 1358, 213, 52, 216, 212, 212, 1361, 212, 214, + 179, 216, 212, 212, 212, 179, 212, 373, 212, 179, + 213, 213, 211, 213, 180, 211, 179, 383, 213, 213, + 1194, 213, 211, 211, 694, 211, 392, 78, 114, 115, + 116, 117, 118, 1, 44, 121, 402, 131, 124, 81, + 126, 127, 128, 129, 1435, 1412, 412, 1436, 134, 788, + 136, 137, 223, 937, 1, 421, 1436, 1436, 1436, 1436, + 1412, 1443, 957, 896, 1356, 431, 1379, 518, 1464, 1248, + 1382, 425, 1465, 906, 1456, 441, 52, 1098, 557, 1423, + 446, 437, 448, 1167, 437, 686, -1, -1, -1, -1, + -1, 457, 1456, -1, -1, -1, -1, 1271, -1, 465, + 466, 467, -1, -1, -1, -1, -1, 193, 194, 195, + 196, 197, 198, 199, 480, -1, -1, 20, 21, -1, + -1, -1, 488, 209, 210, 491, -1, -1, 494, 495, + 496, 497, 498, -1, -1, 1517, -1, -1, 971, 972, + 973, 507, -1, 976, -1, 978, -1, 980, 1515, 982, + -1, 984, -1, 986, -1, 988, -1, 990, -1, 20, + 21, -1, 995, -1, 997, -1, -1, -1, -1, -1, + 1003, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 1015, -1, 1017, 1359, -1, 1361, -1, 1022, + -1, 1024, -1, 1026, -1, -1, 1029, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 572, -1, -1, -1, + -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, + -1, 124, -1, 126, 127, 128, 129, 1060, -1, -1, + -1, 134, -1, -1, 600, -1, -1, 1604, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 114, 115, 116, 117, 118, 1091, -1, + 121, 122, 123, 124, -1, 126, 127, 128, 129, 1443, + 636, -1, -1, 134, -1, 136, 137, 643, 644, -1, + 646, -1, 1456, -1, -1, 651, -1, -1, -1, -1, + -1, 657, 195, 196, 197, 198, 199, -1, -1, -1, + 666, -1, -1, -1, -1, -1, 209, 210, -1, -1, + -1, 677, 678, 679, 680, 681, 682, -1, 684, -1, + 686, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 1504, 11, 193, 194, 195, 196, 197, 198, 199, -1, + 20, 21, -1, 1517, -1, -1, -1, -1, 209, 210, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 730, 731, 732, 733, 734, 735, + 736, 737, 738, 739, -1, -1, 742, 743, 744, 745, + 746, 747, -1, 749, 750, 1559, 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, -1, 782, -1, -1, -1, - 786, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 796, -1, -1, -1, -1, -1, 114, 115, 116, 117, - 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, - 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, - -1, -1, -1, -1, 142, 143, 144, -1, -1, 835, - 148, -1, -1, -1, -1, -1, 842, -1, -1, -1, - -1, -1, -1, 849, -1, -1, -1, -1, -1, -1, - -1, -1, 858, 859, 860, 861, 862, 863, 864, 865, - 866, 867, 868, 869, 870, 871, 872, 873, 874, 875, - 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 209, 210, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 911, 912, -1, -1, -1, - -1, -1, 4, 5, -1, -1, -1, -1, -1, 925, - -1, 927, 14, 15, 16, 17, 18, -1, 934, -1, - -1, 937, 24, -1, 26, -1, 942, -1, 30, -1, - 32, -1, -1, -1, -1, 951, 38, -1, -1, -1, - -1, -1, 44, -1, -1, 47, -1, -1, 50, -1, - 52, -1, 54, -1, -1, -1, -1, 59, 60, -1, - -1, -1, 64, -1, -1, 67, 68, -1, 70, 71, - 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, - 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, - 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, - 102, 103, -1, -1, -1, -1, -1, -1, 32, -1, - -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, - 122, -1, -1, -1, 126, -1, -1, -1, -1, 1045, - -1, -1, -1, 1049, -1, 59, 60, -1, -1, 141, - -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, - 152, 153, -1, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, - -1, -1, -1, -1, -1, -1, 178, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 188, -1, -1, -1, - 192, -1, -1, 195, 196, 197, -1, 199, 122, -1, - 202, 203, 126, -1, -1, -1, -1, -1, 210, -1, - 212, -1, 214, 215, 216, -1, 1132, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 9, -1, -1, -1, -1, -1, -1, -1, 1154, 1155, - 1156, 20, 21, -1, 1160, -1, -1, -1, -1, -1, - -1, -1, 1168, 1169, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 188, -1, -1, -1, 192, -1, - 194, 195, -1, 1189, -1, -1, -1, -1, 1194, 1195, - -1, -1, -1, -1, -1, 1201, 210, -1, 20, 21, - 1206, -1, 216, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 1220, -1, 1222, -1, -1, -1, - -1, 1227, -1, -1, -1, -1, -1, 1233, -1, -1, - -1, 1237, -1, -1, -1, -1, -1, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, -1, -1, -1, -1, 134, 135, 136, 137, 138, - 139, 1277, -1, 142, 143, 144, 145, 146, 147, 148, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 1295, - -1, -1, 114, 115, 116, 117, 118, -1, -1, 121, - -1, -1, 124, -1, 126, 127, 128, 129, -1, -1, - -1, -1, 134, -1, 136, 137, -1, -1, 187, 188, - -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 209, 210, -1, -1, -1, 214, 215, -1, -1, -1, - 20, 21, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 1369, -1, 1371, -1, -1, -1, -1, - 1376, 193, 194, 195, 196, 197, 198, 199, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 209, 210, -1, - -1, -1, 1398, -1, -1, -1, -1, -1, -1, -1, - 1406, 1407, 1408, -1, -1, -1, -1, 1413, -1, -1, - -1, 1417, -1, -1, -1, 1421, 1422, 1423, 1424, -1, - -1, 1427, 1428, -1, 1430, 1431, -1, -1, -1, -1, - -1, -1, 1438, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 1449, 114, 115, 116, 117, 118, -1, + 776, 777, 778, -1, 780, -1, -1, -1, 784, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 794, -1, + -1, -1, -1, -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, -1, -1, - -1, 1477, 142, 143, 144, -1, -1, -1, 148, -1, - -1, -1, -1, -1, -1, 1491, 1492, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 1505, - -1, -1, -1, -1, 1510, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 32, 1522, 1523, 188, -1, + -1, -1, 142, 143, 144, -1, -1, 833, 148, -1, + -1, -1, -1, -1, 840, -1, -1, -1, -1, -1, + -1, 847, -1, -1, -1, -1, -1, -1, -1, -1, + 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, + 866, 867, 868, 869, 870, 871, 872, 873, 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - -1, 1537, -1, -1, -1, -1, -1, -1, -1, 209, - 210, -1, 59, 60, 214, 215, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 1563, -1, -1, - -1, -1, 1568, 1569, 1, -1, -1, 4, 5, 6, + 731, 732, 733, 734, 735, 736, 737, -1, -1, 209, + 210, -1, 743, 744, -1, -1, -1, -1, 749, -1, + -1, -1, -1, 909, 910, -1, -1, 758, 759, -1, + 4, 5, 763, 764, 765, -1, 767, 923, -1, 925, + 14, 15, 16, 17, 18, -1, 932, -1, -1, 935, + 24, -1, 26, -1, 940, -1, 30, -1, 32, -1, + -1, -1, -1, 949, 38, -1, -1, -1, -1, -1, + 44, -1, -1, 47, -1, -1, 50, -1, 52, -1, + 54, -1, -1, -1, -1, 59, 60, -1, -1, -1, + 64, -1, -1, 67, 68, -1, 70, 71, 72, -1, + 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, + 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, + 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, + -1, -1, -1, -1, -1, -1, 32, -1, -1, -1, + -1, -1, 116, 117, -1, -1, -1, -1, 122, -1, + -1, -1, 126, -1, -1, -1, -1, 1043, -1, -1, + -1, 1047, -1, 59, 60, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, + -1, 155, 156, 157, 158, 159, 160, 161, 162, 163, + 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, + -1, -1, -1, -1, 178, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 188, -1, -1, -1, 192, -1, + -1, 195, 196, 197, -1, 199, 122, -1, 202, 203, + 126, -1, -1, -1, 20, 21, 210, -1, 212, -1, + 214, 215, 216, -1, 1130, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 9, -1, + -1, -1, -1, -1, -1, -1, 1152, 1153, 1154, 20, + 21, -1, 1158, -1, -1, -1, -1, -1, -1, -1, + 1166, 1167, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 188, -1, -1, -1, 192, -1, 194, 195, + -1, 1187, -1, -1, -1, -1, 1192, 1193, -1, -1, + -1, -1, -1, 1199, 210, -1, -1, -1, 1204, -1, + 216, -1, -1, -1, -1, -1, -1, -1, 114, 115, + 116, 117, 1218, -1, 1220, -1, -1, -1, 124, 1225, + 126, 127, 128, 129, -1, 1231, -1, -1, 134, 1235, + 136, 137, -1, -1, -1, 106, 107, 108, 109, 110, + 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, 128, 129, -1, + -1, -1, -1, 134, 135, 136, 137, 138, 139, 1275, + -1, 142, 143, 144, 145, 146, 147, 148, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 1293, -1, 195, + 196, 197, 198, 199, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 209, 210, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 187, 188, -1, 190, + 191, 192, 193, 194, 195, 196, 197, 198, 199, 34, + -1, -1, -1, -1, -1, -1, -1, -1, 209, 210, + -1, -1, -1, 214, 215, -1, -1, -1, 20, 21, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 1367, -1, 1369, -1, 70, -1, 72, 1374, 74, + 75, 76, 77, 78, -1, 80, 81, 82, 83, 84, + 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, + 1396, -1, 97, 98, 99, 100, -1, -1, 1404, 1405, + 1406, -1, -1, -1, -1, 1411, -1, -1, -1, 1415, + -1, 116, 117, 1419, 1420, 1421, 1422, -1, -1, 1425, + 1426, -1, 1428, 1429, -1, -1, -1, -1, -1, -1, + 1436, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 1447, 114, 115, 116, 117, 118, -1, -1, 121, + 122, 123, 124, -1, 126, 127, 128, 129, -1, -1, + -1, -1, 134, 168, 136, 137, -1, -1, -1, 1475, + 142, 143, 144, -1, -1, -1, 148, -1, -1, -1, + -1, -1, -1, 1489, 1490, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 1503, -1, -1, + -1, -1, 1508, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 32, 1520, 1521, 188, -1, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, -1, 1535, + -1, -1, -1, -1, -1, -1, -1, 209, 210, -1, + 59, 60, 214, 215, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 1561, -1, -1, -1, -1, + 1566, 1567, 1, -1, -1, 4, 5, 6, -1, 8, + 9, 10, -1, 12, -1, 14, 15, 16, 17, 18, + 1586, -1, 1588, 1589, -1, 24, 25, 26, 27, 28, + -1, 30, 1598, -1, -1, -1, -1, -1, 37, 38, + -1, -1, 41, 122, 43, 44, -1, 126, 47, -1, + 49, 50, 51, -1, 53, 54, -1, -1, 57, 58, + -1, -1, -1, -1, -1, 64, -1, -1, 67, 68, + -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, + 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, + 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, + 99, 100, 101, 102, 103, 104, -1, -1, -1, 188, + -1, -1, -1, 192, -1, 194, 195, 116, 117, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 210, 131, 132, 133, -1, -1, 216, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, + 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, + 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, + 179, 180, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 195, 196, 197, -1, + 199, -1, -1, 202, 203, -1, -1, -1, -1, -1, + -1, 210, -1, 212, 1, 214, 215, 4, 5, 6, -1, 8, 9, 10, -1, 12, -1, 14, 15, 16, - 17, 18, 1588, -1, 1590, 1591, -1, 24, 25, 26, - 27, 28, -1, 30, 1600, -1, -1, -1, -1, -1, - 37, 38, -1, -1, 41, 122, 43, 44, -1, 126, + 17, 18, -1, -1, -1, -1, -1, 24, 25, 26, + 27, 28, -1, 30, -1, -1, -1, -1, -1, -1, + 37, 38, -1, -1, 41, -1, 43, 44, -1, -1, 47, -1, 49, 50, 51, -1, 53, 54, -1, -1, 57, 58, -1, -1, -1, -1, -1, 64, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, 104, -1, -1, - -1, 188, -1, -1, -1, 192, -1, 194, 195, 116, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 210, 131, 132, 133, -1, -1, 216, - -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, - -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, + -1, -1, -1, -1, 131, 132, 133, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 149, 150, 151, 152, 153, 32, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, - -1, 178, 179, 180, -1, -1, -1, -1, -1, -1, + -1, 178, 179, 180, 59, 60, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 195, 196, - 197, -1, 199, -1, -1, 202, 203, -1, -1, -1, - -1, -1, -1, 210, -1, 212, 1, 214, 215, 4, - 5, 6, -1, 8, 9, 10, -1, 12, -1, 14, + 197, -1, 199, -1, -1, 202, 203, -1, -1, 4, + 5, -1, -1, 210, -1, 212, -1, 214, 215, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, - 25, 26, 27, 28, -1, 30, -1, -1, -1, -1, - -1, -1, 37, 38, -1, -1, 41, -1, 43, 44, - -1, -1, 47, -1, 49, 50, 51, -1, 53, 54, - -1, -1, 57, 58, -1, -1, -1, -1, -1, 64, + -1, 26, -1, -1, -1, 30, -1, 32, -1, -1, + -1, -1, -1, 38, -1, -1, -1, 122, -1, 44, + -1, 126, 47, -1, -1, 50, -1, -1, -1, 54, + -1, -1, -1, -1, 59, 60, -1, -1, -1, 64, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, - -1, -1, 97, 98, 99, 100, 101, 102, 103, 104, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 131, 132, 133, -1, - -1, -1, -1, -1, -1, -1, 141, -1, -1, -1, + -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, + -1, -1, -1, 188, -1, -1, -1, 192, -1, 194, + 195, 116, 117, -1, -1, -1, -1, 122, -1, -1, + -1, 126, -1, -1, -1, 210, -1, -1, -1, -1, + -1, 216, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, 32, - 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, + 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, - -1, -1, -1, 178, 179, 180, 59, 60, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 178, -1, -1, 59, 60, -1, -1, + -1, -1, -1, 188, -1, -1, -1, 192, -1, -1, 195, 196, 197, -1, 199, -1, -1, 202, 203, -1, - -1, 4, 5, -1, -1, 210, -1, 212, -1, 214, - 215, 14, 15, 16, 17, 18, -1, -1, -1, -1, - -1, 24, -1, 26, -1, -1, -1, 30, -1, 32, - -1, -1, -1, -1, -1, 38, -1, -1, -1, 122, - -1, 44, -1, 126, 47, -1, -1, 50, -1, -1, - -1, 54, -1, -1, -1, -1, 59, 60, -1, -1, - -1, 64, -1, -1, 67, 68, -1, 70, 71, 72, - -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, - 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, - 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, - 103, -1, -1, -1, -1, 188, -1, -1, -1, 192, - -1, 194, 195, 116, 117, -1, -1, -1, -1, 122, - -1, -1, -1, 126, -1, -1, -1, 210, -1, -1, - -1, -1, -1, 216, -1, -1, -1, -1, 141, -1, - -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, - 153, 32, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, - -1, -1, -1, -1, -1, 178, -1, -1, 59, 60, - -1, -1, -1, -1, -1, 188, -1, -1, -1, 192, - -1, -1, 195, 196, 197, -1, 199, -1, -1, 202, - 203, -1, -1, -1, 4, 5, -1, 210, -1, 212, - -1, 214, 215, 216, 14, 15, 16, 17, 18, -1, - -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, - 30, -1, 32, -1, -1, -1, -1, -1, 38, -1, - -1, 122, -1, -1, 44, 126, -1, 47, -1, -1, - 50, -1, -1, -1, 54, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 64, -1, -1, 67, 68, -1, - 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, - 100, 101, 102, 103, -1, -1, -1, 188, -1, -1, - -1, 192, -1, 194, 195, -1, 116, 117, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 210, - -1, -1, -1, -1, -1, 216, -1, -1, -1, -1, - -1, 141, -1, -1, -1, -1, -1, -1, -1, 149, - 150, 151, 152, 153, 32, 155, -1, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, - 170, 171, -1, -1, -1, -1, -1, -1, 178, -1, - -1, 59, 60, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 192, -1, -1, 195, 196, 197, -1, 199, - -1, -1, 202, 203, -1, -1, -1, 4, 5, -1, - 210, -1, 212, -1, 214, 215, 216, 14, 15, 16, + -1, -1, 4, 5, -1, 210, -1, 212, -1, 214, + 215, 216, 14, 15, 16, 17, 18, -1, -1, -1, + -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, + 32, -1, -1, -1, -1, -1, 38, -1, -1, 122, + -1, -1, 44, 126, -1, 47, -1, -1, 50, -1, + -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 64, -1, -1, 67, 68, -1, 70, 71, + 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, + 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, + 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, + 102, 103, -1, -1, -1, 188, -1, -1, -1, 192, + -1, 194, 195, -1, 116, 117, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 210, -1, -1, + -1, -1, -1, 216, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, + 152, 153, 32, 155, -1, 157, 158, 159, 160, 161, + 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, + -1, -1, -1, -1, -1, -1, 178, -1, -1, 59, + 60, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 192, -1, -1, 195, 196, 197, -1, 199, -1, -1, + 202, 203, -1, -1, -1, 4, 5, -1, 210, -1, + 212, -1, 214, 215, 216, 14, 15, 16, 17, 18, + -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, + -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, + -1, -1, 122, -1, -1, 44, 126, -1, 47, -1, + -1, 50, -1, -1, -1, 54, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 64, -1, -1, 67, 68, + -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, + 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, + 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, + 99, 100, 101, 102, 103, -1, -1, -1, 188, -1, + -1, -1, 192, -1, 194, 195, -1, 116, 117, -1, + -1, -1, -1, -1, -1, -1, 125, -1, -1, -1, + 210, -1, 131, 132, 133, -1, 216, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 149, 150, 151, 152, 153, 32, 155, -1, 157, 158, + 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, + 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, + -1, -1, 59, 60, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 195, 196, 197, -1, + 199, -1, -1, 202, 203, -1, -1, 4, 5, -1, + -1, 210, -1, 212, -1, 214, 215, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, - -1, 38, -1, -1, 122, -1, -1, 44, 126, -1, + -1, 38, -1, -1, -1, 122, -1, 44, -1, 126, 47, -1, -1, 50, -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, 64, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, - 188, -1, -1, -1, 192, -1, 194, 195, -1, 116, + -1, 188, -1, -1, -1, 192, -1, 194, 195, 116, 117, -1, -1, -1, -1, -1, -1, -1, 125, -1, - -1, -1, 210, -1, 131, 132, 133, -1, 216, -1, - -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, + -1, -1, -1, 210, 131, 132, 133, -1, -1, 216, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, 32, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, @@ -3507,18 +3494,18 @@ static const yytype_int16 yycheck[] = 197, -1, 199, -1, -1, 202, 203, -1, -1, 4, 5, -1, -1, 210, -1, 212, -1, 214, 215, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, - -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, + 25, 26, 27, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, 122, -1, 44, - -1, 126, 47, -1, -1, 50, -1, -1, -1, 54, + -1, 126, 47, -1, -1, 50, 51, -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, 64, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, - -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, + -1, -1, 97, 98, 99, 100, 101, 102, 103, 104, -1, -1, -1, 188, -1, -1, -1, 192, -1, 194, 195, 116, 117, -1, -1, -1, -1, -1, -1, -1, - 125, -1, -1, -1, -1, 210, 131, 132, 133, -1, - -1, 216, -1, -1, -1, -1, 141, -1, -1, -1, + -1, -1, -1, -1, -1, 210, -1, -1, -1, -1, + -1, 216, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, 32, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, @@ -3527,18 +3514,18 @@ static const yytype_int16 yycheck[] = 195, 196, 197, -1, 199, -1, -1, 202, 203, -1, -1, 4, 5, -1, -1, 210, -1, 212, -1, 214, 215, 14, 15, 16, 17, 18, -1, -1, -1, -1, - -1, 24, 25, 26, 27, -1, -1, 30, -1, -1, + -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, 122, - -1, 44, -1, 126, 47, -1, -1, 50, 51, -1, + -1, 44, -1, 126, 47, -1, -1, 50, -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, 64, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, - 103, 104, -1, -1, -1, 188, -1, -1, -1, 192, + 103, -1, -1, -1, -1, 188, -1, -1, -1, 192, -1, 194, 195, 116, 117, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 210, -1, -1, - -1, -1, -1, 216, -1, -1, -1, -1, 141, -1, + -1, -1, -1, -1, -1, -1, -1, 210, 131, 132, + 133, -1, -1, 216, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, 32, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, @@ -3547,46 +3534,87 @@ static const yytype_int16 yycheck[] = -1, -1, 195, 196, 197, -1, 199, -1, -1, 202, 203, -1, -1, 4, 5, -1, -1, 210, -1, 212, -1, 214, 215, 14, 15, 16, 17, 18, -1, -1, - -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, + -1, -1, -1, 24, -1, 26, -1, -1, 32, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, 122, -1, 44, -1, 126, 47, -1, -1, 50, - -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 54, -1, 59, 60, -1, -1, -1, -1, -1, -1, 64, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, 188, -1, -1, - -1, 192, -1, 194, 195, 116, 117, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 210, + -1, 192, -1, 194, 195, 116, 117, -1, 122, -1, + -1, -1, 126, -1, -1, -1, -1, -1, -1, 210, 131, 132, 133, -1, -1, 216, -1, -1, -1, -1, - 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, - 151, 152, 153, 32, 155, -1, 157, 158, 159, 160, + -1, -1, -1, -1, -1, -1, -1, -1, 149, 150, + 151, 152, 153, -1, 155, 32, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, -1, -1, - 59, 60, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 195, 196, 197, -1, 199, -1, - -1, 202, 203, -1, -1, 4, 5, -1, -1, 210, - -1, 212, -1, 214, 215, 14, 15, 16, 17, 18, + -1, -1, 59, 60, 188, -1, -1, -1, 192, -1, + 194, 195, -1, -1, 195, 196, 197, -1, 199, -1, + -1, 202, 203, -1, -1, -1, 210, 4, 5, 210, + -1, 212, 216, 214, 215, 12, -1, 14, 15, 16, + 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, + -1, -1, 32, 30, -1, -1, -1, -1, -1, -1, + -1, 38, -1, -1, -1, 122, -1, 44, -1, 126, + 47, 48, -1, 50, -1, -1, -1, 54, -1, 59, + 60, -1, -1, -1, -1, -1, -1, 64, -1, -1, + 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, + 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, + 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, + 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, + -1, 188, -1, -1, -1, 192, -1, 194, 195, 116, + 117, -1, 122, -1, -1, -1, 126, -1, -1, -1, + -1, -1, -1, 210, -1, -1, -1, -1, -1, 216, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 149, 150, 151, 152, 153, -1, 155, 32, + 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, + 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, + -1, 178, -1, -1, -1, -1, 59, 60, 188, -1, + -1, -1, 192, -1, 194, 195, -1, -1, 195, 196, + 197, -1, 199, -1, -1, 202, 203, -1, -1, -1, + 210, 4, 5, 210, 211, 212, 216, 214, 215, 12, + -1, 14, 15, 16, 17, 18, -1, -1, -1, -1, + -1, 24, -1, 26, -1, -1, 32, 30, -1, -1, + -1, -1, -1, -1, -1, 38, -1, -1, -1, 122, + -1, 44, -1, 126, 47, 48, -1, 50, -1, -1, + -1, 54, -1, 59, 60, -1, -1, -1, -1, -1, + -1, 64, -1, -1, 67, 68, -1, 70, 71, 72, + -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, + 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, + 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, + 103, -1, -1, -1, -1, 188, -1, -1, -1, 192, + -1, 194, 195, 116, 117, -1, 122, -1, -1, -1, + 126, -1, -1, -1, -1, -1, -1, 210, -1, -1, + -1, -1, -1, 216, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, + 153, -1, 155, 156, 157, 158, 159, 160, 161, 162, + 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, + -1, -1, -1, -1, -1, 178, -1, -1, -1, -1, + -1, -1, 188, -1, -1, -1, 192, -1, 194, 195, + -1, -1, 195, 196, 197, -1, 199, -1, -1, 202, + 203, -1, -1, -1, 210, 4, 5, 210, -1, 212, + 216, 214, 215, 12, -1, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, 32, 30, -1, -1, -1, -1, -1, -1, -1, 38, - -1, -1, -1, 122, -1, 44, -1, 126, 47, -1, + -1, -1, -1, -1, -1, 44, -1, -1, 47, 48, -1, 50, -1, -1, -1, 54, -1, 59, 60, -1, -1, -1, -1, -1, -1, 64, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, - 99, 100, 101, 102, 103, -1, -1, -1, -1, 188, - -1, -1, -1, 192, -1, 194, 195, 116, 117, -1, + 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, 122, -1, -1, -1, 126, -1, -1, -1, -1, -1, - -1, 210, 131, 132, 133, -1, -1, 216, -1, -1, - -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, -1, -1, -1, -1, -1, -1, 188, -1, -1, -1, 192, -1, 194, 195, -1, -1, 195, 196, 197, -1, 199, -1, -1, 202, 203, -1, -1, -1, 210, 4, - 5, 210, -1, 212, 216, 214, 215, 12, -1, 14, + 5, 210, 211, 212, 216, 214, 215, 12, -1, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, @@ -3599,59 +3627,18 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 141, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 195, 196, 197, -1, 199, -1, -1, 202, 203, -1, - -1, -1, -1, 4, 5, 210, 211, 212, -1, 214, - 215, 12, -1, 14, 15, 16, 17, 18, -1, -1, - -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, - -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, - -1, -1, -1, 44, -1, -1, 47, 48, -1, 50, - -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 64, -1, -1, 67, 68, -1, 70, - 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, - 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, - 151, 152, 153, -1, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, - 171, -1, -1, -1, -1, -1, -1, 178, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 195, 196, 197, -1, 199, -1, - -1, 202, 203, -1, -1, -1, -1, 4, 5, 210, - -1, 212, -1, 214, 215, 12, -1, 14, 15, 16, - 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, - -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, - -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, - 47, 48, -1, 50, -1, -1, -1, 54, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 64, -1, -1, - 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, - 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, - 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, - -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, - 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, - -1, 178, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 195, 196, - 197, -1, 199, -1, -1, 202, 203, -1, -1, -1, - -1, 4, 5, 210, 211, 212, -1, 214, 215, 12, - -1, 14, 15, 16, 17, 18, -1, -1, -1, -1, + -1, 4, 5, -1, -1, 210, -1, 212, -1, 214, + 215, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, - -1, 44, -1, -1, 47, 48, -1, 50, -1, -1, + -1, 44, -1, -1, 47, -1, -1, 50, -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, 64, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, @@ -3660,15 +3647,15 @@ static const yytype_int16 yycheck[] = 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 141, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, - 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, + 153, -1, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 195, 196, 197, -1, 199, -1, -1, 202, 203, -1, -1, 4, 5, -1, -1, 210, -1, 212, - -1, 214, 215, 14, 15, 16, 17, 18, -1, -1, + 213, 214, 215, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, -1, -1, 50, @@ -3681,19 +3668,19 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, - 151, 152, 153, -1, 155, 156, 157, 158, 159, 160, + -1, -1, -1, -1, -1, -1, -1, -1, 149, 150, + 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 195, 196, 197, -1, 199, -1, -1, 202, 203, -1, -1, 4, 5, -1, -1, 210, - -1, 212, 213, 214, 215, 14, 15, 16, 17, 18, + 211, 212, -1, 214, 215, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, -1, -1, 50, -1, -1, -1, 54, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 64, -1, -1, 67, 68, + -1, 60, -1, -1, -1, 64, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, @@ -3701,19 +3688,19 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 195, 196, 197, -1, 199, -1, -1, 202, 203, -1, -1, 4, 5, -1, - -1, 210, 211, 212, -1, 214, 215, 14, 15, 16, + -1, 210, -1, 212, -1, 214, 215, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, -1, -1, 50, -1, -1, -1, 54, -1, -1, - -1, -1, -1, 60, -1, -1, -1, 64, -1, -1, + 57, -1, -1, -1, -1, -1, -1, 64, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, @@ -3721,35 +3708,35 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 195, 196, - 197, -1, 199, -1, -1, 202, 203, -1, -1, 4, - 5, -1, -1, 210, -1, 212, -1, 214, 215, 14, - 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, - -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, - -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, - -1, -1, 47, -1, -1, 50, -1, -1, -1, 54, - -1, -1, 57, -1, -1, -1, -1, -1, -1, 64, - -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, - -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, + 197, -1, 199, -1, -1, 202, 203, -1, -1, -1, + -1, 4, 5, 210, -1, 212, -1, 214, 215, 12, + -1, 14, 15, 16, 17, 18, -1, -1, -1, -1, + -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, + -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, + -1, 44, -1, -1, 47, -1, -1, 50, -1, -1, + -1, 54, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 64, -1, -1, 67, 68, -1, 70, 71, 72, + -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, + 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, + 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, + 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 141, -1, -1, -1, - -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, - 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, - -1, -1, -1, 178, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, + 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, + 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, + -1, -1, -1, -1, -1, 178, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 195, 196, 197, -1, 199, -1, -1, 202, 203, -1, - -1, -1, -1, 4, 5, 210, -1, 212, -1, 214, - 215, 12, -1, 14, 15, 16, 17, 18, -1, -1, + -1, -1, 195, 196, 197, -1, 199, -1, -1, 202, + 203, -1, -1, 4, 5, -1, -1, 210, -1, 212, + -1, 214, 215, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, -1, -1, 50, @@ -3762,35 +3749,35 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, + -1, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 195, 196, 197, -1, 199, -1, - -1, 202, 203, -1, -1, 4, 5, -1, -1, 210, - -1, 212, -1, 214, 215, 14, 15, 16, 17, 18, - -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, - -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, - -1, -1, -1, -1, -1, 44, -1, -1, 47, -1, - -1, 50, -1, -1, -1, 54, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 64, -1, -1, 67, 68, - -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, - 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, - 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 193, -1, 195, 196, 197, -1, 199, -1, + -1, 202, 203, -1, -1, -1, -1, 4, 5, 210, + -1, 212, -1, 214, 215, 12, -1, 14, 15, 16, + 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, + -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, + -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, + 47, -1, -1, 50, -1, -1, -1, 54, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 64, -1, -1, + 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, + 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, + 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, + 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, + 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, - 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, - 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 193, -1, 195, 196, 197, -1, - 199, -1, -1, 202, 203, -1, -1, -1, -1, 4, - 5, 210, -1, 212, -1, 214, 215, 12, -1, 14, - 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, + -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, + 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, + 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, + -1, 178, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 195, 196, + 197, -1, 199, -1, -1, 202, 203, -1, -1, 4, + 5, -1, -1, 210, -1, 212, -1, 214, 215, 14, + 15, 16, 17, 18, -1, -1, 21, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, -1, -1, 50, -1, -1, -1, 54, @@ -3802,7 +3789,7 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 141, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, @@ -3810,7 +3797,7 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 195, 196, 197, -1, 199, -1, -1, 202, 203, -1, -1, 4, 5, -1, -1, 210, -1, 212, -1, 214, - 215, 14, 15, 16, 17, 18, -1, -1, 21, -1, + 215, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, -1, -1, 50, -1, -1, @@ -3822,7 +3809,7 @@ static const yytype_int16 yycheck[] = 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 141, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, @@ -3830,12 +3817,12 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 195, 196, 197, -1, 199, -1, -1, 202, 203, -1, -1, 4, 5, -1, -1, 210, -1, 212, - -1, 214, 215, 14, 15, 16, 17, 18, -1, -1, + 213, 214, 215, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, -1, -1, 50, -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 64, -1, -1, 67, 68, -1, 70, + -1, -1, -1, 64, -1, -1, 67, 68, 69, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, @@ -3843,32 +3830,32 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, + -1, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 195, 196, 197, -1, 199, -1, -1, 202, 203, -1, -1, 4, 5, -1, -1, 210, - -1, 212, 213, 214, 215, 14, 15, 16, 17, 18, + -1, 212, -1, 214, 215, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, -1, -1, 50, -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, 64, -1, -1, 67, 68, - 69, 70, 71, 72, -1, 74, 75, 76, 77, 78, + -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 195, 196, 197, -1, + -1, -1, -1, -1, 193, -1, 195, 196, 197, -1, 199, -1, -1, 202, 203, -1, -1, 4, 5, -1, -1, 210, -1, 212, -1, 214, 215, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, @@ -3883,14 +3870,14 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 193, -1, 195, 196, + -1, -1, -1, -1, -1, -1, -1, -1, 195, 196, 197, -1, 199, -1, -1, 202, 203, -1, -1, 4, - 5, -1, -1, 210, -1, 212, -1, 214, 215, 14, + 5, -1, -1, 210, -1, 212, 213, 214, 215, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, @@ -3903,7 +3890,7 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 141, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, @@ -3923,7 +3910,7 @@ static const yytype_int16 yycheck[] = 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 141, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, @@ -3944,7 +3931,7 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, + -1, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, -1, -1, @@ -3964,7 +3951,7 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, @@ -3984,7 +3971,7 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, @@ -4003,15 +3990,15 @@ static const yytype_int16 yycheck[] = -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, + 125, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 195, 196, 197, -1, 199, -1, -1, 202, 203, -1, - -1, 4, 5, -1, -1, 210, -1, 212, 213, 214, + -1, 4, 5, -1, -1, 210, -1, 212, -1, 214, 215, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, @@ -4024,7 +4011,7 @@ static const yytype_int16 yycheck[] = 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, 125, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 141, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, @@ -4045,7 +4032,7 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, 125, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, + -1, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, -1, -1, @@ -4063,9 +4050,9 @@ static const yytype_int16 yycheck[] = 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, - -1, -1, -1, -1, -1, -1, 125, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, @@ -4077,71 +4064,31 @@ static const yytype_int16 yycheck[] = -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, -1, -1, 50, -1, -1, -1, 54, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 64, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 64, -1, 18, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, - 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, - -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, + 117, 70, 71, 72, -1, 74, 75, 76, 77, 78, + 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, + 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, + 99, 100, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, - -1, 178, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 195, 196, - 197, -1, 199, -1, -1, 202, 203, -1, -1, 4, - 5, -1, -1, 210, -1, 212, -1, 214, 215, 14, - 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, - -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, - -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, - -1, -1, 47, -1, -1, 50, -1, -1, -1, 54, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 64, - -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, - -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 141, -1, -1, -1, - -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, - 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, -1, 12, -1, - -1, -1, -1, 178, 18, -1, -1, -1, -1, -1, - 24, -1, -1, -1, -1, -1, 30, -1, -1, -1, - 195, 196, 197, -1, 199, -1, 40, 202, 203, -1, - -1, -1, -1, -1, 48, 210, -1, 212, -1, 214, - 215, -1, -1, -1, -1, -1, -1, -1, -1, 63, - -1, -1, -1, -1, -1, -1, 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, -1, - -1, -1, -1, -1, -1, -1, -1, 12, -1, -1, - -1, -1, -1, 18, -1, -1, -1, -1, -1, 24, - -1, -1, -1, -1, -1, 30, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 40, -1, 141, -1, -1, - -1, -1, -1, 48, -1, -1, -1, -1, -1, -1, - 154, -1, -1, -1, -1, -1, -1, -1, 63, -1, - -1, -1, -1, -1, 168, 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, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 214, -1, 18, -1, -1, -1, -1, -1, 24, -1, - -1, -1, -1, -1, 30, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 40, -1, 141, -1, -1, -1, - -1, -1, 48, -1, -1, -1, -1, -1, -1, 154, + 167, 168, 169, 170, 171, -1, 12, -1, -1, -1, + -1, 178, 18, -1, -1, -1, -1, -1, 24, -1, + -1, -1, -1, -1, 30, -1, -1, -1, 195, 196, + 197, -1, 199, -1, 40, 202, 203, 156, -1, -1, + -1, -1, 48, 210, -1, 212, -1, 214, 215, 168, -1, -1, -1, -1, -1, -1, -1, 63, -1, -1, - -1, -1, -1, 168, 70, 71, 72, 73, 74, 75, + -1, -1, -1, -1, 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, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 214, + -1, -1, -1, -1, -1, 12, -1, -1, -1, -1, -1, 18, -1, -1, -1, -1, -1, 24, -1, -1, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 40, -1, 141, -1, -1, -1, -1, + -1, -1, -1, 40, -1, -1, -1, -1, -1, -1, -1, 48, -1, -1, -1, -1, -1, -1, 154, -1, -1, -1, -1, -1, -1, -1, 63, -1, -1, -1, -1, -1, 168, 70, 71, 72, 73, 74, 75, 76, @@ -4149,386 +4096,360 @@ static const yytype_int16 yycheck[] = 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 214, -1, - 216, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 18, -1, -1, -1, -1, -1, 24, -1, -1, -1, + -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 40, -1, -1, -1, -1, -1, -1, -1, + 48, -1, -1, -1, -1, -1, -1, 154, -1, -1, + -1, -1, -1, -1, -1, 63, -1, -1, -1, -1, + -1, 168, 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, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 214, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 154, -1, -1, - -1, -1, -1, -1, -1, -1, 18, -1, -1, -1, - -1, 168, 24, -1, -1, -1, -1, -1, 30, -1, - -1, -1, -1, 180, -1, -1, -1, -1, 40, -1, - -1, -1, -1, -1, -1, -1, 48, -1, -1, -1, + -1, 18, -1, -1, -1, -1, -1, 24, -1, -1, + -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 40, -1, -1, 154, -1, -1, -1, + -1, 48, -1, -1, -1, -1, -1, -1, -1, -1, + 168, -1, -1, -1, -1, -1, 63, -1, -1, -1, + -1, -1, 180, 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, 214, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 63, -1, -1, -1, -1, -1, 214, 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, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 18, -1, -1, -1, -1, - -1, 24, -1, -1, -1, -1, -1, 30, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 40, -1, 141, - -1, -1, -1, -1, -1, 48, -1, -1, -1, -1, - -1, -1, 154, -1, -1, -1, -1, -1, -1, -1, - 63, -1, -1, -1, -1, -1, 168, 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, - 20, 21, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 214, -1, -1, -1, -1, -1, -1, -1, + 18, -1, -1, -1, -1, -1, 24, -1, -1, -1, + -1, -1, 30, -1, -1, 20, 21, -1, -1, -1, + -1, -1, 40, -1, -1, -1, -1, -1, -1, -1, + 48, -1, -1, -1, -1, -1, -1, 154, -1, -1, + -1, -1, -1, -1, -1, 63, -1, -1, -1, -1, + -1, 168, 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, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 214, -1, -1, + -1, 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, 20, 21, -1, 134, + 135, 136, 137, 138, 139, -1, 154, 142, 143, 144, + 145, 146, 147, 148, -1, -1, -1, -1, -1, -1, + 168, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 154, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 168, -1, -1, -1, -1, + -1, -1, 187, 188, -1, 190, 191, 192, 193, 194, + 195, 196, 197, 198, 199, -1, 214, -1, -1, -1, + -1, -1, -1, -1, 209, 210, -1, -1, -1, 214, + 215, -1, 106, 107, 108, 109, 110, 111, 112, 113, + 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, 128, 129, 20, 21, -1, -1, + 134, 135, 136, 137, 138, 139, -1, -1, 142, 143, + 144, 145, 146, 147, 148, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 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, 214, 20, 21, 134, 135, 136, 137, 138, 139, - -1, -1, 142, 143, 144, 145, 146, 147, 148, -1, + -1, 20, 21, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 180, -1, -1, -1, + -1, -1, -1, 187, 188, -1, 190, 191, 192, 193, + 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 209, 210, -1, -1, -1, + 214, 215, 106, 107, 108, 109, 110, 111, 112, 113, + 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, 128, 129, -1, -1, -1, -1, + 134, 135, 136, 137, 138, 139, -1, -1, 142, 143, + 144, 145, 146, 147, 148, 114, 115, 116, 117, 118, + -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, + 129, 20, 21, -1, -1, 134, -1, 136, 137, -1, + -1, -1, -1, 142, 143, 144, 180, -1, -1, 148, + -1, -1, -1, 187, 188, -1, 190, 191, 192, 193, + 194, 195, 196, 197, 198, 199, 20, 21, -1, -1, + -1, -1, -1, -1, -1, 209, 210, -1, -1, -1, + 214, 215, -1, -1, -1, -1, -1, -1, -1, 188, + -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, + 199, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 114, 115, 116, 117, 118, + -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, + 129, -1, -1, -1, -1, 134, -1, 136, 137, -1, + -1, -1, -1, 142, 143, 144, -1, -1, -1, 148, + 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, + 124, -1, 126, 127, 128, 129, 20, 21, -1, -1, + 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, + 144, -1, -1, -1, 148, -1, -1, -1, -1, 188, + -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, + 199, 20, 21, -1, -1, -1, -1, -1, -1, -1, + 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, + 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, + 124, -1, 126, 127, 128, 129, -1, -1, -1, -1, + 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, + 144, -1, -1, -1, 148, 114, 115, 116, 117, 118, + -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, + 129, 20, 21, -1, -1, 134, -1, 136, 137, -1, + -1, -1, -1, 142, 143, 144, -1, -1, -1, 148, + -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, + 194, 195, 196, 197, 198, 199, 20, 21, -1, -1, + -1, -1, -1, -1, -1, 209, 210, -1, -1, 213, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 188, + -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, + 199, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 114, 115, 116, 117, 118, + -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, + 129, -1, -1, -1, -1, 134, -1, 136, 137, -1, + -1, -1, -1, 142, 143, 144, -1, -1, -1, 148, + 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, + 124, -1, 126, 127, 128, 129, 20, 21, -1, -1, + 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, + 144, -1, -1, -1, 148, -1, -1, -1, -1, 188, + -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, + 199, 20, 21, -1, -1, -1, -1, -1, -1, -1, + 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, + 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, + 124, -1, 126, 127, 128, 129, -1, -1, -1, -1, + 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, + 144, -1, -1, -1, 148, 114, 115, 116, 117, 118, + -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, + 129, 20, 21, -1, -1, 134, -1, 136, 137, -1, + -1, -1, -1, 142, 143, 144, -1, -1, -1, 148, + -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, + 194, 195, 196, 197, 198, 199, 20, 21, -1, -1, + -1, -1, -1, -1, -1, 209, 210, -1, -1, 213, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 188, + -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, + 199, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 114, 115, 116, 117, 118, + -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, + 129, -1, -1, -1, -1, 134, -1, 136, 137, -1, + -1, -1, -1, 142, 143, 144, -1, -1, -1, 148, + 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, + 124, -1, 126, 127, 128, 129, 20, 21, -1, -1, + 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, + 144, -1, -1, -1, 148, -1, -1, -1, -1, 188, + -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, + 199, 20, 21, -1, -1, -1, -1, -1, -1, -1, + 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, + 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 187, 188, -1, - 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 209, - 210, -1, -1, -1, 214, 215, -1, -1, 106, 107, - 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, - 128, 129, 20, 21, -1, -1, 134, 135, 136, 137, - 138, 139, -1, -1, 142, 143, 144, 145, 146, 147, - 148, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 20, 21, -1, + 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, + 124, -1, 126, 127, 128, 129, -1, -1, -1, -1, + 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, + 144, -1, -1, -1, 148, 114, 115, 116, 117, 118, + -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, + 129, 20, 21, -1, -1, 134, -1, 136, 137, -1, + -1, -1, -1, 142, 143, 144, -1, -1, -1, 148, + -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, + 194, 195, 196, 197, 198, 199, 20, 21, -1, -1, + -1, -1, -1, -1, -1, 209, 210, -1, -1, 213, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 188, + -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, + 199, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 114, 115, 116, 117, 118, + -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, + 129, -1, -1, -1, -1, 134, -1, 136, 137, -1, + -1, -1, -1, 142, 143, 144, -1, -1, -1, 148, + 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, + 124, -1, 126, 127, 128, 129, 20, 21, -1, -1, + 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, + 144, -1, -1, -1, 148, -1, -1, -1, -1, 188, + -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, + 199, 20, 21, -1, -1, -1, -1, -1, -1, -1, + 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, + 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 180, -1, -1, -1, -1, -1, -1, 187, - 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 209, 210, -1, -1, -1, 214, 215, 106, 107, - 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, - 128, 129, -1, -1, -1, -1, 134, 135, 136, 137, - 138, 139, -1, -1, 142, 143, 144, 145, 146, 147, - 148, 114, 115, 116, 117, 118, -1, -1, 121, 122, - 123, 124, -1, 126, 127, 128, 129, 20, 21, -1, - -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, - 143, 144, 180, -1, -1, 148, -1, -1, -1, 187, - 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 20, 21, -1, -1, -1, -1, -1, -1, - -1, 209, 210, -1, -1, -1, 214, 215, -1, -1, - -1, -1, -1, -1, -1, 188, -1, 190, 191, 192, - 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, - 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, - 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, - -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, - 143, 144, -1, -1, -1, 148, 114, 115, 116, 117, - 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, - 128, 129, 20, 21, -1, -1, 134, -1, 136, 137, - -1, -1, -1, -1, 142, 143, 144, -1, -1, -1, - 148, -1, -1, -1, -1, 188, -1, 190, 191, 192, - 193, 194, 195, 196, 197, 198, 199, 20, 21, -1, - -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, - 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 114, 115, 116, 117, - 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, - 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, - -1, -1, -1, -1, 142, 143, 144, -1, -1, -1, - 148, 114, 115, 116, 117, 118, -1, -1, 121, 122, - 123, 124, -1, 126, 127, 128, 129, 20, 21, -1, - -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, - 143, 144, -1, -1, -1, 148, -1, -1, -1, -1, - 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 20, 21, -1, -1, -1, -1, -1, -1, - -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 188, -1, 190, 191, 192, - 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, - 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, - 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, - -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, - 143, 144, -1, -1, -1, 148, 114, 115, 116, 117, - 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, - 128, 129, 20, 21, -1, -1, 134, -1, 136, 137, - -1, -1, -1, -1, 142, 143, 144, -1, -1, -1, - 148, -1, -1, -1, -1, 188, -1, 190, 191, 192, - 193, 194, 195, 196, 197, 198, 199, 20, 21, -1, - -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, - 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 114, 115, 116, 117, - 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, - 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, - -1, -1, -1, -1, 142, 143, 144, -1, -1, -1, - 148, 114, 115, 116, 117, 118, -1, -1, 121, 122, - 123, 124, -1, 126, 127, 128, 129, 20, 21, -1, - -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, - 143, 144, -1, -1, -1, 148, -1, -1, -1, -1, - 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 20, 21, -1, -1, -1, -1, -1, -1, - -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 188, -1, 190, 191, 192, - 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, - 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, - 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, - -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, - 143, 144, -1, -1, -1, 148, 114, 115, 116, 117, - 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, - 128, 129, 20, 21, -1, -1, 134, -1, 136, 137, - -1, -1, -1, -1, 142, 143, 144, -1, -1, -1, - 148, -1, -1, -1, -1, 188, -1, 190, 191, 192, - 193, 194, 195, 196, 197, 198, 199, 20, 21, -1, - -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, - 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 114, 115, 116, 117, - 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, - 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, - -1, -1, -1, -1, 142, 143, 144, -1, -1, -1, - 148, 114, 115, 116, 117, 118, -1, -1, 121, 122, - 123, 124, -1, 126, 127, 128, 129, 20, 21, -1, - -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, - 143, 144, -1, -1, -1, 148, -1, -1, -1, -1, - 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 20, 21, -1, -1, -1, -1, -1, -1, - -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 188, -1, 190, 191, 192, - 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, - 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, - 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, - -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, - 143, 144, -1, -1, -1, 148, 114, 115, 116, 117, - 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, - 128, 129, 20, 21, -1, -1, 134, -1, 136, 137, - -1, -1, -1, -1, 142, 143, 144, -1, -1, -1, - 148, -1, -1, -1, -1, 188, -1, 190, 191, 192, - 193, 194, 195, 196, 197, 198, 199, 20, 21, -1, - -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, - 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 114, 115, 116, 117, - 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, - 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, - -1, -1, -1, -1, 142, 143, 144, -1, -1, -1, - 148, 114, 115, 116, 117, 118, -1, -1, 121, 122, - 123, 124, -1, 126, 127, 128, 129, 20, 21, -1, - -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, - 143, 144, -1, -1, -1, 148, -1, -1, -1, -1, - 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 20, 21, -1, -1, -1, -1, -1, -1, - -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 188, -1, 190, 191, 192, - 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, - 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, - 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, - -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, - 143, 144, -1, -1, -1, 148, 114, 115, 116, 117, - 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, - 128, 129, 20, 21, -1, -1, 134, -1, 136, 137, - -1, -1, -1, -1, 142, 143, 144, -1, -1, -1, - 148, -1, -1, -1, -1, 188, -1, 190, 191, 192, - 193, 194, 195, 196, 197, 198, 199, 20, 21, -1, - -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, - 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 114, 115, 116, 117, - 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, - 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, - -1, -1, -1, -1, 142, 143, 144, -1, -1, -1, - 148, 114, 115, 116, 117, 118, -1, -1, 121, 122, - 123, 124, -1, 126, 127, 128, 129, 20, 21, -1, - -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, - 143, 144, -1, -1, -1, 148, -1, -1, -1, -1, - 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 20, 21, -1, -1, -1, -1, -1, -1, - -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 188, -1, 190, 191, 192, - 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, - 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, - 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, - -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, - 143, 144, -1, -1, -1, 148, 114, 115, 116, 117, - 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, - 128, 129, 20, 21, -1, -1, 134, -1, 136, 137, - -1, -1, -1, -1, 142, 143, 144, -1, -1, -1, - 148, -1, -1, -1, -1, 188, -1, 190, 191, 192, - 193, 194, 195, 196, 197, 198, 199, 20, 21, -1, - -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, - 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 114, 115, 116, 117, - 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, - 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, - -1, -1, -1, -1, 142, 143, 144, -1, -1, -1, - 148, 114, 115, 116, 117, 118, -1, -1, 121, 122, - 123, 124, -1, 126, 127, 128, 129, 20, 21, -1, - -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, - 143, 144, -1, -1, -1, 148, -1, -1, -1, -1, - 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 20, 21, -1, -1, -1, -1, -1, -1, - -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 188, -1, 190, 191, 192, - 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, - 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, - 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, - -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, - 143, 144, -1, -1, -1, 148, 114, 115, 116, 117, - 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, - 128, 129, 20, 21, -1, -1, 134, -1, 136, 137, - -1, -1, -1, -1, 142, 143, 144, -1, -1, -1, - 148, -1, -1, -1, -1, 188, -1, 190, 191, 192, - 193, 194, 195, 196, 197, 198, 199, 20, 21, -1, - -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, - 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 114, 115, 116, 117, - 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, - 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, - -1, -1, -1, -1, 142, 143, 144, -1, -1, -1, - 148, 114, 115, 116, 117, 118, -1, -1, 121, 122, - 123, 124, -1, 126, 127, 128, 129, 20, 21, -1, - -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, - 143, 144, -1, -1, -1, 148, -1, -1, -1, -1, - 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 20, 21, -1, -1, -1, -1, -1, -1, - -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 188, -1, 190, 191, 192, - 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, - 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, - 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, - -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, - 143, 144, -1, -1, -1, 148, 114, 115, 116, 117, - 118, 20, 21, 121, 122, 123, 124, -1, 126, 127, - 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, - -1, -1, -1, -1, 142, 143, 144, -1, -1, -1, - 148, -1, -1, -1, -1, 188, -1, 190, 191, 192, - 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 209, 210, 211, -1, + 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, + 124, -1, 126, 127, 128, 129, -1, -1, -1, -1, + 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, + 144, -1, -1, -1, 148, 114, 115, 116, 117, 118, + -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, + 129, 20, 21, -1, -1, 134, -1, 136, 137, -1, + -1, -1, -1, 142, 143, 144, -1, -1, -1, 148, + -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, + 194, 195, 196, 197, 198, 199, 20, 21, -1, -1, + -1, -1, -1, -1, -1, 209, 210, -1, -1, 213, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 188, + -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, + 199, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 114, 115, 116, 117, 118, + -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, + 129, -1, -1, -1, -1, 134, -1, 136, 137, -1, + -1, -1, -1, 142, 143, 144, -1, -1, -1, 148, + 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, + 124, -1, 126, 127, 128, 129, 20, 21, -1, -1, + 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, + 144, -1, -1, -1, 148, -1, -1, -1, -1, 188, + -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, + 199, 20, 21, -1, -1, -1, -1, -1, -1, -1, + 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, + 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 209, 210, 211, -1, 114, 115, 116, 117, 118, - 20, 21, 121, 122, 123, 124, -1, 126, 127, 128, + 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, + 124, -1, 126, 127, 128, 129, -1, -1, -1, -1, + 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, + 144, -1, -1, -1, 148, 114, 115, 116, 117, 118, + -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, + 129, 20, 21, -1, -1, 134, -1, 136, 137, -1, + -1, -1, -1, 142, 143, 144, -1, -1, -1, 148, + -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, + 194, 195, 196, 197, 198, 199, 20, 21, -1, -1, + -1, -1, -1, -1, -1, 209, 210, -1, -1, 213, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 188, + -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, + 199, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 114, 115, 116, 117, 118, + -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, 144, -1, -1, -1, 148, - -1, -1, -1, -1, -1, 20, 21, -1, -1, -1, + 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, + 124, -1, 126, 127, 128, 129, 20, 21, -1, -1, + 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, + 144, -1, -1, -1, 148, -1, -1, -1, -1, 188, + -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, + 199, 20, 21, -1, -1, -1, -1, -1, -1, -1, + 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, + 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, + 124, -1, 126, 127, 128, 129, -1, -1, -1, -1, + 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, + 144, -1, -1, -1, 148, 114, 115, 116, 117, 118, + -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, + 129, 20, 21, -1, -1, 134, -1, 136, 137, -1, + -1, -1, -1, 142, 143, 144, -1, -1, -1, 148, + -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, + 194, 195, 196, 197, 198, 199, 20, 21, -1, -1, + -1, -1, -1, -1, -1, 209, 210, -1, -1, 213, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 188, + -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, + 199, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 114, 115, 116, 117, 118, + -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, + 129, -1, -1, -1, -1, 134, -1, 136, 137, -1, + -1, -1, -1, 142, 143, 144, -1, -1, -1, 148, + 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, + 124, -1, 126, 127, 128, 129, 20, 21, -1, -1, + 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, + 144, -1, -1, -1, 148, -1, -1, -1, -1, 188, + -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, + 199, 20, 21, -1, -1, -1, -1, -1, -1, -1, + 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, + 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, + 124, -1, 126, 127, 128, 129, -1, -1, -1, -1, + 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, + 144, -1, -1, -1, 148, 114, 115, 116, 117, 118, + -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, + 129, 20, 21, -1, -1, 134, -1, 136, 137, -1, + -1, -1, -1, 142, 143, 144, -1, -1, -1, 148, + -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, + 194, 195, 196, 197, 198, 199, 20, 21, -1, -1, + -1, -1, -1, -1, -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 209, 210, 211, -1, 114, 115, 116, 117, 118, -1, - -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, - -1, -1, -1, -1, 134, -1, 136, 137, -1, -1, - -1, -1, 142, 143, 144, -1, -1, -1, 148, 114, + 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 114, 115, 116, 117, 118, + -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, + 129, -1, -1, -1, -1, 134, -1, 136, 137, -1, + -1, -1, -1, 142, 143, 144, -1, -1, -1, 148, + 114, 115, 116, 117, 118, 20, 21, 121, 122, 123, + 124, -1, 126, 127, 128, 129, -1, -1, -1, -1, + 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, + 144, -1, -1, -1, 148, -1, -1, -1, -1, 188, + -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, + 199, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 209, 210, 211, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, + 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 209, 210, 211, -1, 114, 115, 116, 117, 118, 20, 21, 121, 122, 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, 144, - -1, -1, -1, 148, -1, -1, -1, -1, 188, -1, - 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 209, - 210, 211, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 148, -1, -1, -1, -1, -1, 20, + 21, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, -1, 209, 210, 211, -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, - 126, 127, 128, 129, 20, 21, -1, -1, 134, -1, + 126, 127, 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, 144, -1, - -1, 37, 148, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 20, - 21, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 188, -1, 190, 191, 192, 193, 194, 195, - 196, 197, 198, 199, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 209, 210, 211, -1, -1, -1, -1, - 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, -1, -1, - 126, 127, 128, -1, -1, -1, -1, -1, -1, 135, - 136, 137, 138, 139, -1, -1, 142, 143, 144, 145, - 146, 147, 148, 114, 115, 116, 117, 118, 20, 21, + -1, -1, 148, 114, 115, 116, 117, 118, 20, 21, 121, 122, 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, 144, -1, -1, -1, 148, -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, 194, 195, - 196, 197, 198, 199, -1, -1, 202, 203, -1, -1, - -1, -1, -1, 209, 210, -1, -1, 178, -1, -1, + 196, 197, 198, 199, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 209, 210, 211, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, -1, 209, 210, - -1, -1, 114, 115, 116, 117, 118, 20, 21, 121, - 122, 123, 124, -1, 126, 127, 128, 129, -1, -1, - -1, -1, 134, -1, 136, 137, -1, -1, 140, -1, - 142, 143, 144, -1, -1, -1, 148, -1, -1, -1, - -1, -1, 20, 21, -1, -1, -1, -1, -1, -1, + 211, -1, 114, 115, 116, 117, 118, -1, -1, 121, + 122, 123, 124, -1, 126, 127, 128, 129, 20, 21, + -1, -1, 134, -1, 136, 137, -1, -1, -1, -1, + 142, 143, 144, -1, -1, 37, 148, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 20, 21, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 209, 210, -1, - -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, - 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, - -1, 134, -1, 136, 137, -1, -1, 140, -1, 142, - 143, 144, 20, 21, -1, 148, 114, 115, 116, 117, - 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, + -1, -1, -1, -1, -1, -1, -1, 209, 210, 211, + -1, -1, -1, -1, 106, 107, 108, 109, 110, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, -1, -1, 126, 127, 128, -1, -1, -1, + -1, -1, -1, 135, 136, 137, 138, 139, -1, -1, + 142, 143, 144, 145, 146, 147, 148, 114, 115, 116, + 117, 118, 20, 21, 121, 122, 123, 124, -1, 126, + 127, 128, 129, -1, -1, -1, -1, 134, -1, 136, + 137, -1, -1, -1, -1, 142, 143, 144, -1, -1, + -1, 148, -1, -1, -1, -1, 188, -1, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, -1, -1, + 202, 203, -1, -1, -1, -1, -1, 209, 210, -1, + -1, 178, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 188, -1, 190, 191, 192, 193, 194, 195, 196, + 197, 198, 199, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 209, 210, -1, -1, 114, 115, 116, 117, + 118, 20, 21, 121, 122, 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, - -1, -1, -1, -1, 142, 143, 144, 20, 21, -1, - 148, -1, -1, -1, -1, 188, -1, 190, 191, 192, - 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, + -1, -1, 140, -1, 142, 143, 144, -1, -1, -1, + 148, -1, -1, -1, -1, -1, 20, 21, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, -1, -1, -1, -1, 114, 115, 116, 117, - 118, 209, 210, 121, 122, 123, 124, -1, 126, 127, - 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, - -1, -1, -1, -1, 142, 143, 144, 20, 21, -1, - 148, 114, 115, 116, 117, 118, -1, -1, 121, 122, - 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, - -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, - 143, 144, 180, -1, -1, 148, 20, 21, -1, -1, 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 209, 210, 176, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 188, -1, 190, 191, 192, - 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, - -1, 114, 115, 116, 117, 118, 209, 210, 121, 122, - 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, - -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, - 143, 144, -1, -1, -1, 148, 20, 21, -1, -1, + -1, 209, 210, -1, -1, 114, 115, 116, 117, 118, + -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, + 129, -1, -1, -1, -1, 134, -1, 136, 137, -1, + -1, 140, -1, 142, 143, 144, 20, 21, -1, 148, 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, -1, - 134, -1, 136, 137, -1, -1, -1, 180, 142, 143, - 144, 20, 21, -1, 148, 188, -1, 190, 191, 192, - 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, - -1, -1, -1, -1, -1, -1, 180, -1, -1, -1, - -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, + 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, + 144, 20, 21, -1, 148, -1, -1, -1, -1, 188, + -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, + 199, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 209, 210, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, 114, 115, 116, 117, 118, 209, 210, 121, 122, 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, -1, @@ -4539,8 +4460,8 @@ static const yytype_int16 yycheck[] = -1, -1, -1, 142, 143, 144, 180, -1, -1, 148, 20, 21, -1, -1, 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 209, 210, -1, -1, -1, - -1, 180, -1, -1, -1, -1, -1, -1, -1, 188, + -1, -1, -1, -1, -1, 209, 210, 176, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, 114, 115, 116, 117, 118, 209, 210, 121, 122, 123, 124, -1, 126, 127, 128, @@ -4553,7 +4474,7 @@ static const yytype_int16 yycheck[] = -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 188, -1, + 180, -1, -1, -1, -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, 114, 115, 116, 117, 118, 209, 210, 121, 122, 123, 124, -1, 126, 127, 128, 129, @@ -4562,69 +4483,84 @@ static const yytype_int16 yycheck[] = 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, 144, - 20, 21, -1, -1, -1, -1, -1, -1, 188, -1, + 180, -1, -1, 148, 20, 21, -1, -1, 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, -1, 209, - 210, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 210, -1, -1, -1, -1, 180, -1, -1, -1, -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, 114, 115, 116, 117, 118, 209, 210, 121, 122, 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, -1, 134, - -1, 136, 137, -1, -1, -1, -1, 142, -1, 144, - 20, 21, -1, -1, 114, 115, 116, 117, 118, -1, - -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, - -1, -1, -1, -1, 134, -1, 136, 137, 20, 21, - -1, -1, 142, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 190, 191, 192, 193, 194, + -1, 136, 137, -1, -1, -1, -1, 142, 143, 144, + -1, -1, -1, 148, 20, 21, -1, -1, 114, 115, + 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, + 126, 127, 128, 129, -1, -1, -1, -1, 134, -1, + 136, 137, -1, -1, -1, 180, 142, 143, 144, 20, + 21, -1, 148, 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - -1, -1, -1, -1, 114, 115, 116, 117, 118, 209, - 210, 121, 122, 123, 124, -1, 126, 127, 128, 129, - -1, -1, -1, -1, 134, -1, 136, 137, 20, 21, - -1, -1, 114, 115, 116, 117, 118, -1, -1, 121, - 122, 123, 124, -1, 126, 127, 128, 129, -1, -1, - -1, -1, 134, -1, 136, 137, -1, -1, -1, -1, + -1, -1, 188, -1, 190, 191, 192, 193, 194, 195, + 196, 197, 198, 199, -1, -1, -1, -1, 114, 115, + 116, 117, 118, 209, 210, 121, 122, 123, 124, -1, + 126, 127, 128, 129, -1, -1, -1, -1, 134, -1, + 136, 137, -1, -1, -1, -1, 142, 143, 144, 20, + 21, -1, 148, 114, 115, 116, 117, 118, -1, -1, + 121, 122, 123, 124, -1, 126, 127, 128, 129, -1, + -1, -1, -1, 134, -1, 136, 137, -1, -1, -1, + -1, 142, 143, 144, 20, 21, -1, -1, -1, -1, + -1, -1, 188, -1, 190, 191, 192, 193, 194, 195, + 196, 197, 198, 199, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 209, 210, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 188, -1, 190, + 191, 192, 193, 194, 195, 196, 197, 198, 199, -1, + -1, -1, -1, 114, 115, 116, 117, 118, 209, 210, + 121, 122, 123, 124, -1, 126, 127, 128, 129, -1, + -1, -1, -1, 134, -1, 136, 137, -1, -1, -1, + -1, 142, -1, 144, 20, 21, -1, -1, 114, 115, + 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, + 126, 127, 128, 129, -1, -1, -1, -1, 134, -1, + 136, 137, 20, 21, -1, -1, 142, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 190, + 191, 192, 193, 194, 195, 196, 197, 198, 199, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 190, 191, 192, 193, 194, 195, + 196, 197, 198, 199, -1, -1, -1, -1, 114, 115, + 116, 117, 118, 209, 210, 121, 122, 123, 124, -1, + 126, 127, 128, 129, -1, -1, -1, -1, 134, -1, + 136, 137, 20, 21, -1, -1, 114, 115, 116, 117, + 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, + 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - -1, -1, -1, -1, 18, -1, -1, -1, -1, 209, - 210, -1, -1, -1, -1, -1, -1, -1, -1, 191, - 192, 193, 194, 195, 196, 197, 198, 199, -1, -1, - -1, -1, 114, 115, 116, 117, 118, 209, 210, 121, - 122, 123, 124, -1, 126, 127, 128, 129, -1, -1, - -1, -1, 134, -1, 136, 137, 70, 71, 72, -1, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, - 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, - 94, -1, -1, 97, 98, 99, 100, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 18, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 192, 193, 194, 195, 196, 197, 198, 199, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 209, 210, -1, - 18, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 156, -1, -1, -1, -1, -1, -1, -1, - -1, 70, 71, 72, 168, 74, 75, 76, 77, 78, - 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, - 99, 100, 70, 71, 72, -1, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, - 98, 99, 100, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 34, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 156, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 168, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 70, - -1, 72, -1, 74, 75, 76, 77, 78, 156, 80, - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 168, 92, 93, 94, -1, -1, 97, 98, 99, 100, + -1, -1, -1, -1, 190, 191, 192, 193, 194, 195, + 196, 197, 198, 199, -1, -1, -1, -1, 18, -1, + -1, -1, -1, 209, 210, -1, -1, -1, -1, -1, + -1, -1, -1, 191, 192, 193, 194, 195, 196, 197, + 198, 199, -1, -1, -1, -1, 114, 115, 116, 117, + 118, 209, 210, 121, 122, 123, 124, -1, 126, 127, + 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, + 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, + 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, + 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, + 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 18, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 192, 193, 194, 195, 196, 197, + 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 209, 210, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 156, -1, -1, -1, + -1, -1, -1, -1, -1, 70, 71, 72, 168, 74, + 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, + 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, + -1, -1, 97, 98, 99, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 168 + -1, 156, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 168 }; /* YYSTOS[STATE-NUM] -- The symbol kind of the accessing symbol of @@ -4636,165 +4572,164 @@ static const yytype_int16 yystos[] = 231, 236, 266, 270, 303, 381, 388, 392, 403, 447, 452, 457, 18, 19, 168, 258, 259, 260, 161, 237, 238, 168, 169, 170, 199, 232, 233, 234, 178, 389, - 168, 214, 221, 56, 62, 384, 384, 384, 141, 168, - 289, 33, 62, 134, 203, 212, 262, 263, 264, 265, - 289, 180, 4, 5, 7, 35, 400, 61, 379, 187, - 186, 189, 186, 233, 21, 56, 198, 209, 235, 384, - 385, 387, 385, 379, 458, 448, 453, 168, 141, 229, - 264, 264, 264, 212, 142, 143, 144, 186, 211, 56, - 62, 271, 273, 56, 62, 390, 56, 62, 401, 56, - 62, 380, 14, 15, 161, 166, 168, 171, 212, 224, - 259, 161, 238, 168, 232, 232, 168, 180, 179, 385, - 180, 56, 62, 220, 168, 168, 168, 168, 172, 227, - 213, 260, 264, 264, 264, 264, 274, 168, 391, 404, - 178, 382, 172, 173, 223, 14, 15, 161, 166, 168, - 224, 256, 257, 235, 386, 180, 459, 449, 454, 172, - 213, 34, 70, 72, 74, 75, 76, 77, 78, 80, - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 92, 93, 94, 97, 98, 99, 100, 116, 117, 168, - 269, 272, 178, 189, 105, 398, 399, 377, 158, 215, - 261, 353, 172, 173, 174, 186, 213, 187, 178, 178, - 178, 20, 21, 37, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 126, 127, 128, 135, 136, 137, 138, 139, - 142, 143, 144, 145, 146, 147, 148, 188, 190, 191, - 192, 193, 194, 195, 196, 197, 198, 199, 202, 203, - 209, 210, 34, 34, 212, 267, 178, 275, 393, 74, - 78, 92, 93, 97, 98, 99, 100, 408, 168, 405, - 179, 378, 260, 259, 215, 150, 168, 375, 376, 256, - 18, 24, 30, 40, 48, 63, 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, 154, - 214, 289, 407, 409, 410, 413, 418, 446, 460, 450, - 455, 168, 168, 168, 211, 21, 168, 211, 153, 213, - 353, 363, 364, 189, 268, 278, 383, 178, 189, 397, - 178, 402, 353, 211, 259, 212, 42, 186, 189, 192, - 374, 193, 193, 193, 212, 193, 193, 212, 193, 193, - 193, 193, 193, 193, 212, 289, 32, 59, 60, 122, - 126, 188, 192, 195, 210, 216, 417, 190, 412, 367, - 370, 168, 135, 212, 6, 49, 302, 180, 213, 446, - 1, 4, 5, 8, 9, 10, 12, 14, 15, 16, - 17, 18, 24, 25, 26, 27, 28, 30, 37, 38, - 41, 43, 44, 47, 50, 51, 53, 54, 57, 58, - 64, 67, 68, 79, 101, 102, 103, 104, 116, 117, - 131, 132, 133, 149, 150, 151, 152, 153, 155, 157, - 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, - 169, 170, 171, 178, 179, 180, 195, 196, 197, 202, - 203, 210, 212, 214, 215, 226, 228, 239, 240, 243, - 246, 247, 249, 251, 252, 253, 254, 276, 277, 279, - 283, 288, 289, 290, 294, 295, 296, 297, 298, 299, - 300, 301, 303, 307, 308, 315, 318, 321, 326, 329, - 330, 332, 333, 334, 336, 341, 344, 345, 352, 407, - 462, 473, 484, 488, 501, 504, 168, 180, 394, 395, - 289, 359, 376, 211, 64, 169, 283, 345, 168, 168, - 418, 125, 135, 187, 373, 419, 424, 426, 345, 428, - 422, 168, 414, 430, 432, 434, 436, 438, 440, 442, - 444, 345, 193, 212, 32, 192, 32, 192, 210, 216, - 211, 345, 210, 216, 418, 168, 180, 461, 168, 180, - 365, 446, 451, 168, 180, 368, 456, 345, 150, 168, - 372, 406, 363, 193, 193, 345, 250, 193, 291, 409, - 462, 212, 193, 4, 101, 102, 193, 212, 125, 288, - 319, 330, 345, 275, 193, 212, 60, 345, 212, 345, - 168, 193, 193, 212, 180, 193, 161, 57, 345, 212, - 275, 193, 212, 193, 193, 212, 193, 193, 125, 288, - 345, 345, 345, 215, 275, 321, 325, 325, 325, 212, - 212, 212, 212, 212, 212, 12, 418, 12, 418, 12, - 345, 483, 499, 193, 345, 193, 225, 12, 483, 500, - 36, 345, 345, 345, 345, 345, 12, 48, 319, 345, - 319, 215, 180, 180, 345, 9, 321, 327, 168, 212, - 180, 180, 180, 180, 180, 65, 304, 266, 130, 180, - 20, 21, 106, 107, 108, 109, 110, 111, 112, 113, + 168, 214, 221, 56, 62, 384, 384, 384, 168, 289, + 33, 62, 134, 203, 212, 262, 263, 264, 265, 289, + 180, 4, 5, 7, 35, 400, 61, 379, 187, 186, + 189, 186, 233, 21, 56, 198, 209, 235, 384, 385, + 387, 385, 379, 458, 448, 453, 141, 229, 264, 264, + 264, 212, 142, 143, 144, 186, 211, 56, 62, 271, + 273, 56, 62, 390, 56, 62, 401, 56, 62, 380, + 14, 15, 161, 166, 168, 171, 212, 224, 259, 161, + 238, 168, 232, 232, 168, 180, 179, 385, 180, 56, + 62, 220, 168, 168, 168, 168, 172, 227, 213, 260, + 264, 264, 264, 264, 274, 168, 391, 404, 178, 382, + 172, 173, 223, 14, 15, 161, 166, 168, 224, 256, + 257, 235, 386, 180, 459, 449, 454, 172, 213, 34, + 70, 72, 74, 75, 76, 77, 78, 80, 81, 82, + 83, 84, 85, 86, 87, 88, 89, 90, 92, 93, + 94, 97, 98, 99, 100, 116, 117, 168, 269, 272, + 178, 189, 105, 398, 399, 377, 158, 215, 261, 353, + 172, 173, 174, 186, 213, 187, 178, 178, 178, 20, + 21, 37, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128, 129, 134, 135, 136, 137, - 138, 139, 142, 143, 144, 145, 146, 147, 148, 187, - 188, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 209, 210, 327, 212, 180, 187, 179, 383, 179, - 210, 266, 360, 213, 42, 180, 373, 288, 345, 446, - 446, 416, 446, 213, 446, 446, 213, 168, 411, 446, - 267, 446, 267, 446, 267, 365, 366, 368, 369, 213, - 421, 280, 319, 211, 211, 345, 180, 179, 189, 180, - 179, 189, 180, 179, 213, 212, 42, 125, 186, 187, - 189, 192, 371, 474, 476, 275, 406, 292, 212, 289, - 316, 193, 193, 193, 495, 319, 288, 319, 186, 106, - 107, 108, 109, 110, 111, 112, 113, 119, 120, 125, - 138, 139, 145, 146, 147, 187, 13, 418, 500, 345, - 345, 275, 187, 309, 311, 345, 313, 189, 161, 345, - 497, 319, 480, 485, 319, 478, 418, 288, 345, 215, - 266, 345, 345, 345, 345, 345, 345, 406, 52, 156, - 168, 195, 210, 212, 345, 463, 465, 466, 482, 487, - 406, 212, 465, 487, 406, 140, 179, 180, 181, 467, - 284, 275, 286, 174, 175, 223, 406, 186, 503, 178, - 406, 12, 186, 503, 503, 150, 155, 193, 289, 335, - 275, 248, 328, 210, 213, 319, 463, 464, 158, 212, - 306, 376, 158, 324, 325, 18, 156, 168, 407, 18, - 156, 168, 407, 131, 132, 133, 276, 331, 345, 331, + 126, 127, 128, 135, 136, 137, 138, 139, 142, 143, + 144, 145, 146, 147, 148, 188, 190, 191, 192, 193, + 194, 195, 196, 197, 198, 199, 202, 203, 209, 210, + 34, 34, 212, 267, 178, 275, 393, 74, 78, 92, + 93, 97, 98, 99, 100, 408, 168, 405, 179, 378, + 260, 259, 215, 150, 168, 375, 376, 256, 18, 24, + 30, 40, 48, 63, 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, 154, 214, 289, + 407, 409, 410, 413, 418, 446, 460, 450, 455, 168, + 168, 168, 211, 21, 168, 211, 153, 213, 353, 363, + 364, 189, 268, 278, 383, 178, 189, 397, 178, 402, + 353, 211, 259, 212, 42, 186, 189, 192, 374, 193, + 193, 193, 212, 193, 193, 212, 193, 193, 193, 193, + 193, 193, 212, 289, 32, 59, 60, 122, 126, 188, + 192, 195, 210, 216, 417, 190, 412, 367, 370, 168, + 135, 212, 6, 49, 302, 180, 213, 446, 1, 4, + 5, 8, 9, 10, 12, 14, 15, 16, 17, 18, + 24, 25, 26, 27, 28, 30, 37, 38, 41, 43, + 44, 47, 50, 51, 53, 54, 57, 58, 64, 67, + 68, 79, 101, 102, 103, 104, 116, 117, 131, 132, + 133, 149, 150, 151, 152, 153, 155, 157, 158, 159, + 160, 161, 162, 163, 164, 165, 166, 167, 169, 170, + 171, 178, 179, 180, 195, 196, 197, 202, 203, 210, + 212, 214, 215, 226, 228, 239, 240, 243, 246, 247, + 249, 251, 252, 253, 254, 276, 277, 279, 283, 288, + 289, 290, 294, 295, 296, 297, 298, 299, 300, 301, + 303, 307, 308, 315, 318, 321, 326, 329, 330, 332, + 333, 334, 336, 341, 344, 345, 352, 407, 462, 473, + 484, 488, 501, 504, 168, 180, 394, 395, 289, 359, + 376, 211, 64, 169, 283, 345, 168, 168, 418, 125, + 135, 187, 373, 419, 424, 426, 345, 428, 422, 168, + 414, 430, 432, 434, 436, 438, 440, 442, 444, 345, + 193, 212, 32, 192, 32, 192, 210, 216, 211, 345, + 210, 216, 418, 168, 180, 461, 168, 180, 365, 446, + 451, 168, 180, 368, 456, 345, 150, 168, 372, 406, + 363, 193, 193, 345, 250, 193, 291, 409, 462, 212, + 193, 4, 101, 102, 193, 212, 125, 288, 319, 330, + 345, 275, 193, 212, 60, 345, 212, 345, 168, 193, + 193, 212, 180, 193, 161, 57, 345, 212, 275, 193, + 212, 193, 193, 212, 193, 193, 125, 288, 345, 345, + 345, 215, 275, 321, 325, 325, 325, 212, 212, 212, + 212, 212, 212, 12, 418, 12, 418, 12, 345, 483, + 499, 193, 345, 193, 225, 12, 483, 500, 36, 345, + 345, 345, 345, 345, 12, 48, 319, 345, 319, 215, + 180, 180, 345, 9, 321, 327, 168, 212, 180, 180, + 180, 180, 180, 65, 304, 266, 130, 180, 20, 21, + 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, + 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, + 126, 127, 128, 129, 134, 135, 136, 137, 138, 139, + 142, 143, 144, 145, 146, 147, 148, 187, 188, 190, + 191, 192, 193, 194, 195, 196, 197, 198, 199, 209, + 210, 327, 212, 180, 187, 179, 383, 179, 210, 266, + 360, 213, 42, 180, 373, 288, 345, 446, 446, 416, + 446, 213, 446, 446, 213, 168, 411, 446, 267, 446, + 267, 446, 267, 365, 366, 368, 369, 213, 421, 280, + 319, 211, 211, 345, 180, 179, 189, 180, 179, 189, + 180, 179, 213, 212, 42, 125, 186, 187, 189, 192, + 371, 474, 476, 275, 406, 292, 212, 289, 316, 193, + 193, 193, 495, 319, 288, 319, 186, 106, 107, 108, + 109, 110, 111, 112, 113, 119, 120, 125, 138, 139, + 145, 146, 147, 187, 13, 418, 500, 345, 345, 275, + 187, 309, 311, 345, 313, 189, 161, 345, 497, 319, + 480, 485, 319, 478, 418, 288, 345, 215, 266, 345, + 345, 345, 345, 345, 345, 406, 52, 156, 168, 195, + 210, 212, 345, 463, 465, 466, 482, 487, 406, 212, + 465, 487, 406, 140, 179, 180, 181, 467, 284, 275, + 286, 174, 175, 223, 406, 186, 503, 178, 406, 12, + 186, 503, 503, 150, 155, 193, 289, 335, 275, 248, + 328, 210, 213, 319, 463, 464, 158, 212, 306, 376, + 158, 324, 325, 18, 156, 168, 407, 18, 156, 168, + 407, 131, 132, 133, 276, 331, 345, 331, 345, 331, 345, 331, 345, 331, 345, 331, 345, 331, 345, 331, - 345, 331, 345, 345, 345, 345, 331, 345, 331, 345, - 345, 345, 345, 168, 331, 345, 345, 156, 168, 345, - 345, 345, 407, 345, 345, 345, 331, 345, 331, 345, - 345, 345, 345, 331, 345, 331, 345, 331, 345, 345, - 331, 345, 21, 345, 345, 345, 345, 345, 345, 345, - 345, 345, 345, 345, 127, 128, 156, 168, 209, 210, - 342, 345, 213, 319, 345, 396, 265, 7, 353, 358, - 168, 288, 345, 180, 194, 194, 194, 180, 194, 194, - 180, 194, 194, 268, 194, 268, 194, 268, 180, 194, - 180, 194, 282, 446, 213, 211, 446, 446, 345, 168, - 168, 446, 288, 345, 418, 418, 19, 446, 69, 319, - 472, 193, 345, 446, 489, 491, 493, 418, 503, 345, + 345, 345, 345, 345, 331, 345, 331, 345, 345, 345, + 345, 168, 331, 345, 345, 156, 168, 345, 345, 345, + 407, 345, 345, 345, 331, 345, 331, 345, 345, 345, + 345, 331, 345, 331, 345, 331, 345, 345, 331, 345, + 21, 345, 345, 345, 345, 345, 345, 345, 345, 345, + 345, 345, 127, 128, 156, 168, 209, 210, 342, 345, + 213, 319, 345, 396, 265, 7, 353, 358, 168, 288, + 345, 180, 194, 194, 194, 180, 194, 194, 180, 194, + 194, 268, 194, 268, 194, 268, 180, 194, 180, 194, + 282, 446, 213, 211, 446, 446, 345, 168, 168, 446, + 288, 345, 418, 418, 19, 446, 69, 319, 472, 193, + 345, 446, 489, 491, 493, 418, 503, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, - 345, 345, 345, 345, 345, 345, 345, 275, 180, 194, - 503, 213, 255, 418, 418, 213, 418, 213, 418, 503, - 418, 418, 503, 418, 194, 324, 213, 213, 213, 213, - 213, 213, 19, 325, 212, 135, 371, 210, 345, 213, - 140, 186, 180, 466, 183, 184, 211, 470, 186, 180, - 183, 211, 469, 19, 213, 466, 179, 182, 468, 19, - 345, 179, 483, 282, 282, 345, 19, 483, 179, 278, - 19, 406, 211, 213, 212, 212, 337, 339, 11, 22, - 23, 241, 242, 345, 266, 463, 186, 213, 213, 168, - 305, 305, 125, 135, 187, 192, 322, 323, 267, 193, - 212, 193, 212, 325, 325, 325, 212, 212, 211, 18, - 156, 168, 407, 189, 156, 168, 345, 212, 212, 156, - 168, 345, 1, 211, 213, 180, 179, 211, 56, 62, - 356, 66, 357, 180, 180, 420, 425, 427, 446, 429, - 423, 168, 415, 431, 194, 435, 194, 439, 194, 365, - 443, 368, 445, 180, 194, 213, 42, 371, 194, 194, - 319, 194, 213, 168, 213, 464, 168, 213, 194, 418, - 418, 418, 194, 213, 418, 212, 213, 345, 194, 194, - 194, 194, 213, 194, 194, 213, 194, 324, 267, 212, - 319, 345, 345, 345, 465, 466, 345, 156, 168, 463, - 470, 211, 345, 482, 211, 319, 465, 179, 182, 185, - 471, 211, 319, 194, 194, 176, 319, 179, 319, 19, - 345, 345, 418, 267, 275, 345, 11, 244, 324, 211, - 210, 186, 211, 213, 168, 168, 168, 168, 186, 211, - 268, 346, 345, 348, 345, 213, 319, 345, 193, 212, - 345, 212, 211, 345, 213, 319, 212, 211, 343, 180, - 46, 357, 45, 105, 354, 433, 437, 441, 446, 212, - 168, 345, 475, 477, 275, 293, 213, 180, 194, 317, - 194, 194, 194, 496, 194, 500, 310, 312, 314, 498, - 481, 486, 479, 212, 268, 213, 319, 180, 213, 466, - 470, 212, 135, 371, 180, 466, 211, 180, 285, 287, - 180, 180, 319, 213, 213, 194, 268, 275, 245, 180, - 267, 213, 463, 168, 211, 189, 374, 322, 211, 140, - 275, 320, 418, 213, 446, 213, 213, 213, 350, 345, - 345, 213, 213, 345, 32, 355, 354, 356, 280, 212, - 212, 168, 345, 490, 492, 494, 212, 212, 503, 345, - 345, 345, 212, 472, 212, 212, 213, 345, 320, 213, - 345, 135, 371, 470, 345, 345, 345, 345, 471, 483, - 345, 212, 281, 483, 345, 180, 338, 194, 242, 25, - 104, 246, 295, 296, 297, 299, 345, 268, 211, 189, - 374, 418, 373, 125, 345, 194, 194, 446, 213, 213, - 213, 361, 355, 372, 213, 472, 472, 194, 213, 212, - 212, 212, 319, 500, 213, 319, 472, 465, 213, 180, - 502, 345, 345, 213, 502, 502, 280, 502, 502, 345, - 335, 340, 125, 125, 345, 275, 213, 418, 373, 373, - 345, 345, 347, 349, 194, 272, 362, 465, 465, 345, - 472, 472, 465, 503, 503, 503, 465, 213, 52, 211, - 135, 371, 179, 179, 213, 179, 211, 502, 335, 345, - 373, 345, 345, 180, 351, 180, 272, 213, 213, 213, - 465, 465, 213, 213, 213, 213, 213, 345, 211, 345, - 345, 211, 179, 211, 345, 180, 180, 275, 213, 213, - 180 + 345, 345, 345, 345, 345, 275, 180, 194, 503, 213, + 255, 418, 418, 213, 418, 213, 418, 503, 418, 418, + 503, 418, 194, 324, 213, 213, 213, 213, 213, 213, + 19, 325, 212, 135, 371, 210, 345, 213, 140, 186, + 180, 466, 183, 184, 211, 470, 186, 180, 183, 211, + 469, 19, 213, 466, 179, 182, 468, 19, 345, 179, + 483, 282, 282, 345, 19, 483, 179, 278, 19, 406, + 211, 213, 212, 212, 337, 339, 11, 22, 23, 241, + 242, 345, 266, 463, 186, 213, 213, 168, 305, 305, + 125, 135, 187, 192, 322, 323, 267, 193, 212, 193, + 212, 325, 325, 325, 212, 212, 211, 18, 156, 168, + 407, 189, 156, 168, 345, 212, 212, 156, 168, 345, + 1, 211, 213, 180, 179, 211, 56, 62, 356, 66, + 357, 180, 180, 420, 425, 427, 446, 429, 423, 168, + 415, 431, 194, 435, 194, 439, 194, 365, 443, 368, + 445, 180, 194, 213, 42, 371, 194, 194, 319, 194, + 213, 168, 213, 464, 168, 213, 194, 418, 418, 418, + 194, 213, 418, 212, 213, 345, 194, 194, 194, 194, + 213, 194, 194, 213, 194, 324, 267, 212, 319, 345, + 345, 345, 465, 466, 345, 156, 168, 463, 470, 211, + 345, 482, 211, 319, 465, 179, 182, 185, 471, 211, + 319, 194, 194, 176, 319, 179, 319, 19, 345, 345, + 418, 267, 275, 345, 11, 244, 324, 211, 210, 186, + 211, 213, 168, 168, 168, 168, 186, 211, 268, 346, + 345, 348, 345, 213, 319, 345, 193, 212, 345, 212, + 211, 345, 213, 319, 212, 211, 343, 180, 46, 357, + 45, 105, 354, 433, 437, 441, 446, 212, 168, 345, + 475, 477, 275, 293, 213, 180, 194, 317, 194, 194, + 194, 496, 194, 500, 310, 312, 314, 498, 481, 486, + 479, 212, 268, 213, 319, 180, 213, 466, 470, 212, + 135, 371, 180, 466, 211, 180, 285, 287, 180, 180, + 319, 213, 213, 194, 268, 275, 245, 180, 267, 213, + 463, 168, 211, 189, 374, 322, 211, 140, 275, 320, + 418, 213, 446, 213, 213, 213, 350, 345, 345, 213, + 213, 345, 32, 355, 354, 356, 280, 212, 212, 168, + 345, 490, 492, 494, 212, 212, 503, 345, 345, 345, + 212, 472, 212, 212, 213, 345, 320, 213, 345, 135, + 371, 470, 345, 345, 345, 345, 471, 483, 345, 212, + 281, 483, 345, 180, 338, 194, 242, 25, 104, 246, + 295, 296, 297, 299, 345, 268, 211, 189, 374, 418, + 373, 125, 345, 194, 194, 446, 213, 213, 213, 361, + 355, 372, 213, 472, 472, 194, 213, 212, 212, 212, + 319, 500, 213, 319, 472, 465, 213, 180, 502, 345, + 345, 213, 502, 502, 280, 502, 502, 345, 335, 340, + 125, 125, 345, 275, 213, 418, 373, 373, 345, 345, + 347, 349, 194, 272, 362, 465, 465, 345, 472, 472, + 465, 503, 503, 503, 465, 213, 52, 211, 135, 371, + 179, 179, 213, 179, 211, 502, 335, 345, 373, 345, + 345, 180, 351, 180, 272, 213, 213, 213, 465, 465, + 213, 213, 213, 213, 213, 345, 211, 345, 345, 211, + 179, 211, 345, 180, 180, 275, 213, 213, 180 }; /* YYR1[RULE-NUM] -- Symbol kind of the left-hand side of rule RULE-NUM. */ @@ -4826,67 +4761,67 @@ static const yytype_int16 yyr1[] = 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 278, 278, 278, 279, 280, 280, 281, 281, 282, 282, 284, 285, 283, 286, 287, 283, - 288, 288, 288, 288, 288, 289, 289, 289, 290, 290, - 292, 293, 291, 291, 294, 294, 294, 294, 294, 295, - 296, 297, 297, 297, 298, 298, 298, 299, 299, 300, - 300, 300, 301, 302, 302, 302, 303, 303, 304, 304, - 305, 305, 306, 306, 306, 306, 307, 307, 309, 310, - 308, 311, 312, 308, 313, 314, 308, 316, 317, 315, - 318, 318, 318, 319, 319, 320, 320, 320, 321, 321, - 321, 322, 322, 322, 322, 323, 323, 324, 324, 325, - 325, 326, 328, 327, 329, 329, 329, 329, 329, 329, - 329, 330, 330, 330, 330, 330, 330, 330, 330, 330, + 288, 288, 288, 288, 288, 289, 289, 290, 290, 292, + 293, 291, 291, 294, 294, 294, 294, 294, 295, 296, + 297, 297, 297, 298, 298, 298, 299, 299, 300, 300, + 300, 301, 302, 302, 302, 303, 303, 304, 304, 305, + 305, 306, 306, 306, 306, 307, 307, 309, 310, 308, + 311, 312, 308, 313, 314, 308, 316, 317, 315, 318, + 318, 318, 319, 319, 320, 320, 320, 321, 321, 321, + 322, 322, 322, 322, 323, 323, 324, 324, 325, 325, + 326, 328, 327, 329, 329, 329, 329, 329, 329, 329, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, - 331, 331, 331, 331, 332, 332, 332, 332, 332, 332, + 330, 330, 330, 330, 330, 330, 330, 330, 330, 331, + 331, 331, 331, 332, 332, 332, 332, 332, 332, 332, 332, 332, 332, 332, 332, 332, 332, 332, 332, 332, - 332, 333, 333, 334, 334, 335, 335, 336, 337, 338, - 336, 339, 340, 336, 341, 341, 341, 341, 342, 343, - 341, 344, 344, 344, 344, 344, 345, 345, 345, 345, + 333, 333, 334, 334, 335, 335, 336, 337, 338, 336, + 339, 340, 336, 341, 341, 341, 341, 342, 343, 341, + 344, 344, 344, 344, 344, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, - 345, 345, 346, 347, 345, 345, 345, 345, 348, 349, - 345, 345, 345, 350, 351, 345, 345, 345, 345, 345, - 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, + 345, 346, 347, 345, 345, 345, 345, 348, 349, 345, + 345, 345, 350, 351, 345, 345, 345, 345, 345, 345, + 345, 345, 345, 345, 345, 345, 345, 345, 345, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, - 352, 352, 352, 352, 352, 352, 353, 353, 353, 354, - 354, 354, 355, 355, 356, 356, 356, 357, 357, 358, - 359, 360, 359, 361, 359, 362, 359, 359, 363, 363, - 364, 364, 365, 365, 366, 366, 367, 367, 367, 368, - 369, 369, 370, 370, 370, 371, 371, 372, 372, 372, - 372, 372, 372, 373, 373, 373, 374, 374, 375, 375, - 375, 375, 375, 376, 376, 376, 376, 376, 377, 378, - 377, 379, 379, 380, 380, 380, 381, 382, 381, 383, - 383, 383, 383, 384, 384, 384, 386, 385, 387, 387, - 388, 389, 388, 390, 390, 390, 391, 393, 394, 392, - 395, 396, 392, 397, 397, 398, 398, 399, 400, 400, - 401, 401, 401, 402, 402, 404, 405, 403, 406, 406, - 406, 406, 406, 407, 407, 407, 407, 407, 407, 407, - 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, + 352, 352, 352, 352, 352, 353, 353, 353, 354, 354, + 354, 355, 355, 356, 356, 356, 357, 357, 358, 359, + 360, 359, 361, 359, 362, 359, 359, 363, 363, 364, + 364, 365, 365, 366, 366, 367, 367, 367, 368, 369, + 369, 370, 370, 370, 371, 371, 372, 372, 372, 372, + 372, 372, 373, 373, 373, 374, 374, 375, 375, 375, + 375, 375, 376, 376, 376, 376, 376, 377, 378, 377, + 379, 379, 380, 380, 380, 381, 382, 381, 383, 383, + 383, 383, 384, 384, 384, 386, 385, 387, 387, 388, + 389, 388, 390, 390, 390, 391, 393, 394, 392, 395, + 396, 392, 397, 397, 398, 398, 399, 400, 400, 401, + 401, 401, 402, 402, 404, 405, 403, 406, 406, 406, + 406, 406, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, - 408, 408, 408, 408, 408, 408, 408, 408, 409, 410, - 410, 410, 411, 411, 412, 412, 412, 414, 415, 413, - 416, 416, 417, 417, 418, 418, 418, 418, 418, 418, - 419, 420, 418, 418, 418, 421, 418, 418, 418, 418, - 418, 418, 418, 418, 418, 418, 418, 418, 418, 422, - 423, 418, 418, 424, 425, 418, 426, 427, 418, 428, - 429, 418, 418, 430, 431, 418, 432, 433, 418, 418, - 434, 435, 418, 436, 437, 418, 418, 438, 439, 418, - 440, 441, 418, 442, 443, 418, 444, 445, 418, 446, - 446, 446, 448, 449, 450, 451, 447, 453, 454, 455, - 456, 452, 458, 459, 460, 461, 457, 462, 462, 462, - 462, 462, 463, 463, 463, 463, 463, 463, 463, 463, - 464, 465, 465, 466, 466, 467, 467, 468, 468, 469, - 469, 470, 470, 470, 471, 471, 471, 472, 472, 473, - 473, 473, 473, 473, 473, 474, 475, 473, 476, 477, - 473, 478, 479, 473, 480, 481, 473, 482, 482, 482, - 483, 483, 484, 485, 486, 484, 487, 487, 488, 488, - 488, 489, 490, 488, 491, 492, 488, 493, 494, 488, - 488, 495, 496, 488, 488, 497, 498, 488, 499, 499, - 500, 500, 501, 501, 501, 501, 501, 502, 502, 503, - 503, 504, 504, 504, 504, 504, 504 + 407, 407, 407, 407, 407, 407, 407, 407, 407, 408, + 408, 408, 408, 408, 408, 408, 408, 409, 410, 410, + 410, 411, 411, 412, 412, 412, 414, 415, 413, 416, + 416, 417, 417, 418, 418, 418, 418, 418, 418, 419, + 420, 418, 418, 418, 421, 418, 418, 418, 418, 418, + 418, 418, 418, 418, 418, 418, 418, 418, 422, 423, + 418, 418, 424, 425, 418, 426, 427, 418, 428, 429, + 418, 418, 430, 431, 418, 432, 433, 418, 418, 434, + 435, 418, 436, 437, 418, 418, 438, 439, 418, 440, + 441, 418, 442, 443, 418, 444, 445, 418, 446, 446, + 446, 448, 449, 450, 451, 447, 453, 454, 455, 456, + 452, 458, 459, 460, 461, 457, 462, 462, 462, 462, + 462, 463, 463, 463, 463, 463, 463, 463, 463, 464, + 465, 465, 466, 466, 467, 467, 468, 468, 469, 469, + 470, 470, 470, 471, 471, 471, 472, 472, 473, 473, + 473, 473, 473, 473, 474, 475, 473, 476, 477, 473, + 478, 479, 473, 480, 481, 473, 482, 482, 482, 483, + 483, 484, 485, 486, 484, 487, 487, 488, 488, 488, + 489, 490, 488, 491, 492, 488, 493, 494, 488, 488, + 495, 496, 488, 488, 497, 498, 488, 499, 499, 500, + 500, 501, 501, 501, 501, 501, 502, 502, 503, 503, + 504, 504, 504, 504, 504, 504 }; /* YYR2[RULE-NUM] -- Number of symbols on the right-hand side of rule RULE-NUM. */ @@ -4918,67 +4853,67 @@ static const yytype_int8 yyr2[] = 1, 1, 1, 1, 1, 2, 2, 1, 1, 1, 1, 2, 2, 2, 0, 2, 2, 3, 0, 1, 0, 3, 1, 3, 0, 0, 7, 0, 0, 7, - 3, 2, 2, 2, 1, 1, 3, 2, 2, 3, - 0, 0, 5, 1, 2, 5, 5, 6, 2, 1, - 1, 1, 2, 3, 2, 2, 3, 2, 3, 2, - 2, 3, 4, 1, 1, 0, 1, 1, 1, 0, - 1, 3, 9, 8, 8, 7, 3, 3, 0, 0, - 7, 0, 0, 7, 0, 0, 7, 0, 0, 6, - 5, 8, 10, 1, 3, 1, 2, 3, 1, 1, - 2, 2, 2, 2, 2, 1, 3, 0, 4, 1, - 6, 6, 0, 7, 1, 1, 1, 1, 1, 1, - 1, 1, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 2, 2, 2, 1, 1, 3, 2, 3, 0, + 0, 5, 1, 2, 5, 5, 6, 2, 1, 1, + 1, 2, 3, 2, 2, 3, 2, 3, 2, 2, + 3, 4, 1, 1, 0, 1, 1, 1, 0, 1, + 3, 9, 8, 8, 7, 3, 3, 0, 0, 7, + 0, 0, 7, 0, 0, 7, 0, 0, 6, 5, + 8, 10, 1, 3, 1, 2, 3, 1, 1, 2, + 2, 2, 2, 2, 1, 3, 0, 4, 1, 6, + 6, 0, 7, 1, 1, 1, 1, 1, 1, 1, + 1, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, + 2, 2, 1, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 2, 2, 2, 1, 3, 3, 3, 3, 3, 3, + 6, 8, 5, 6, 1, 4, 3, 0, 0, 8, + 0, 0, 9, 3, 4, 5, 6, 0, 0, 5, + 3, 4, 4, 3, 4, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 6, 8, 5, 6, 1, 4, 3, 0, 0, - 8, 0, 0, 9, 3, 4, 5, 6, 0, 0, - 5, 3, 4, 4, 3, 4, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 2, 2, 2, 2, 4, 4, 5, 4, - 5, 3, 4, 1, 1, 2, 4, 4, 7, 8, - 3, 5, 0, 0, 8, 3, 3, 3, 0, 0, - 8, 3, 4, 0, 0, 9, 4, 1, 1, 1, - 1, 1, 1, 1, 3, 3, 3, 2, 4, 1, - 4, 4, 4, 4, 4, 1, 6, 7, 6, 6, - 7, 7, 6, 7, 6, 6, 0, 4, 1, 0, - 1, 1, 0, 1, 0, 1, 1, 0, 1, 5, - 0, 0, 4, 0, 9, 0, 10, 5, 3, 4, - 1, 3, 1, 3, 1, 3, 0, 2, 3, 3, - 1, 3, 0, 2, 3, 1, 1, 1, 2, 3, - 5, 3, 3, 1, 1, 1, 0, 1, 1, 4, - 3, 3, 5, 4, 6, 5, 5, 4, 0, 0, - 4, 0, 1, 0, 1, 1, 6, 0, 6, 0, - 2, 3, 5, 0, 1, 1, 0, 5, 2, 3, - 4, 0, 4, 0, 1, 1, 1, 0, 0, 9, - 0, 0, 11, 0, 2, 0, 1, 3, 1, 1, - 0, 1, 1, 0, 3, 0, 0, 7, 1, 4, - 3, 3, 5, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 3, 2, 2, 2, 2, 4, 4, 5, 4, 5, + 3, 4, 1, 1, 2, 4, 4, 7, 8, 3, + 5, 0, 0, 8, 3, 3, 3, 0, 0, 8, + 3, 4, 0, 0, 9, 4, 1, 1, 1, 1, + 1, 1, 1, 3, 3, 3, 2, 4, 1, 4, + 4, 4, 4, 4, 1, 6, 7, 6, 6, 7, + 7, 6, 7, 6, 6, 0, 4, 1, 0, 1, + 1, 0, 1, 0, 1, 1, 0, 1, 5, 0, + 0, 4, 0, 9, 0, 10, 5, 3, 4, 1, + 3, 1, 3, 1, 3, 0, 2, 3, 3, 1, + 3, 0, 2, 3, 1, 1, 1, 2, 3, 5, + 3, 3, 1, 1, 1, 0, 1, 1, 4, 3, + 3, 5, 4, 6, 5, 5, 4, 0, 0, 4, + 0, 1, 0, 1, 1, 6, 0, 6, 0, 2, + 3, 5, 0, 1, 1, 0, 5, 2, 3, 4, + 0, 4, 0, 1, 1, 1, 0, 0, 9, 0, + 0, 11, 0, 2, 0, 1, 3, 1, 1, 0, + 1, 1, 0, 3, 0, 0, 7, 1, 4, 3, + 3, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 4, 4, 1, 3, 0, 2, 3, 0, 0, 6, - 1, 3, 3, 4, 1, 1, 1, 1, 2, 3, - 0, 0, 6, 4, 5, 0, 9, 4, 2, 2, - 3, 2, 3, 2, 2, 3, 3, 3, 2, 0, - 0, 6, 2, 0, 0, 6, 0, 0, 6, 0, - 0, 6, 1, 0, 0, 6, 0, 0, 7, 1, - 0, 0, 6, 0, 0, 7, 1, 0, 0, 6, - 0, 0, 7, 0, 0, 6, 0, 0, 6, 1, - 3, 3, 0, 0, 0, 0, 10, 0, 0, 0, - 0, 10, 0, 0, 0, 0, 10, 1, 1, 1, - 1, 1, 3, 3, 5, 5, 6, 6, 8, 8, - 1, 1, 3, 0, 2, 2, 1, 2, 1, 2, - 1, 2, 1, 1, 2, 1, 1, 0, 1, 5, - 4, 6, 7, 5, 7, 0, 0, 10, 0, 0, - 10, 0, 0, 9, 0, 0, 7, 1, 3, 3, - 3, 1, 5, 0, 0, 10, 1, 3, 4, 4, - 4, 0, 0, 11, 0, 0, 11, 0, 0, 10, - 5, 0, 0, 10, 5, 0, 0, 10, 1, 3, - 1, 3, 4, 3, 5, 8, 10, 0, 3, 0, - 1, 9, 10, 10, 10, 9, 10 + 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, + 4, 1, 3, 0, 2, 3, 0, 0, 6, 1, + 3, 3, 4, 1, 1, 1, 1, 2, 3, 0, + 0, 6, 4, 5, 0, 9, 4, 2, 2, 3, + 2, 3, 2, 2, 3, 3, 3, 2, 0, 0, + 6, 2, 0, 0, 6, 0, 0, 6, 0, 0, + 6, 1, 0, 0, 6, 0, 0, 7, 1, 0, + 0, 6, 0, 0, 7, 1, 0, 0, 6, 0, + 0, 7, 0, 0, 6, 0, 0, 6, 1, 3, + 3, 0, 0, 0, 0, 10, 0, 0, 0, 0, + 10, 0, 0, 0, 0, 10, 1, 1, 1, 1, + 1, 3, 3, 5, 5, 6, 6, 8, 8, 1, + 1, 3, 0, 2, 2, 1, 2, 1, 2, 1, + 2, 1, 1, 2, 1, 1, 0, 1, 5, 4, + 6, 7, 5, 7, 0, 0, 10, 0, 0, 10, + 0, 0, 9, 0, 0, 7, 1, 3, 3, 3, + 1, 5, 0, 0, 10, 1, 3, 4, 4, 4, + 0, 0, 11, 0, 0, 11, 0, 0, 10, 5, + 0, 0, 10, 5, 0, 0, 10, 1, 3, 1, + 3, 4, 3, 5, 8, 10, 0, 3, 0, 1, + 9, 10, 10, 10, 9, 10 }; @@ -7803,17 +7738,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 267: /* name_in_namespace: "::" "name" */ - { *(yyvsp[0].s) = "::" + *(yyvsp[0].s); (yyval.s) = (yyvsp[0].s); } - break; - - case 268: /* expression_delete: "delete" expr */ + case 267: /* expression_delete: "delete" expr */ { (yyval.pExpression) = new ExprDelete(tokAt(scanner,(yylsp[-1])), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 269: /* expression_delete: "delete" "explicit" expr */ + case 268: /* expression_delete: "delete" "explicit" expr */ { auto delExpr = new ExprDelete(tokAt(scanner,(yylsp[-2])), ExpressionPtr((yyvsp[0].pExpression))); delExpr->native = true; @@ -7821,47 +7752,47 @@ YYLTYPE yylloc = yyloc_default; } break; - case 270: /* $@11: %empty */ + case 269: /* $@11: %empty */ { yyextra->das_arrow_depth ++; } break; - case 271: /* $@12: %empty */ + case 270: /* $@12: %empty */ { yyextra->das_arrow_depth --; } break; - case 272: /* new_type_declaration: '<' $@11 type_declaration '>' $@12 */ + case 271: /* new_type_declaration: '<' $@11 type_declaration '>' $@12 */ { (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); } break; - case 273: /* new_type_declaration: structure_type_declaration */ + case 272: /* new_type_declaration: structure_type_declaration */ { (yyval.pTypeDecl) = (yyvsp[0].pTypeDecl); } break; - case 274: /* expr_new: "new" new_type_declaration */ + case 273: /* expr_new: "new" new_type_declaration */ { (yyval.pExpression) = new ExprNew(tokAt(scanner,(yylsp[-1])),TypeDeclPtr((yyvsp[0].pTypeDecl)),false); } break; - case 275: /* expr_new: "new" new_type_declaration '(' use_initializer ')' */ + case 274: /* expr_new: "new" new_type_declaration '(' use_initializer ')' */ { (yyval.pExpression) = new ExprNew(tokAt(scanner,(yylsp[-4])),TypeDeclPtr((yyvsp[-3].pTypeDecl)),true); ((ExprNew *)(yyval.pExpression))->initializer = (yyvsp[-1].b); } break; - case 276: /* expr_new: "new" new_type_declaration '(' expr_list ')' */ + case 275: /* expr_new: "new" new_type_declaration '(' expr_list ')' */ { auto pNew = new ExprNew(tokAt(scanner,(yylsp[-4])),TypeDeclPtr((yyvsp[-3].pTypeDecl)),true); (yyval.pExpression) = parseFunctionArguments(pNew,(yyvsp[-1].pExpression)); } break; - case 277: /* expr_new: "new" new_type_declaration '(' use_initializer make_struct_single ')' */ + case 276: /* expr_new: "new" new_type_declaration '(' use_initializer make_struct_single ')' */ { ((ExprMakeStruct *)(yyvsp[-1].pExpression))->at = tokAt(scanner,(yylsp[-4])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = (yyvsp[-4].pTypeDecl); @@ -7871,33 +7802,33 @@ YYLTYPE yylloc = yyloc_default; } break; - case 278: /* expr_new: "new" make_decl */ + case 277: /* expr_new: "new" make_decl */ { (yyval.pExpression) = new ExprAscend(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 279: /* expression_break: "break" */ + case 278: /* expression_break: "break" */ { (yyval.pExpression) = new ExprBreak(tokAt(scanner,(yylsp[0]))); } break; - case 280: /* expression_continue: "continue" */ + case 279: /* expression_continue: "continue" */ { (yyval.pExpression) = new ExprContinue(tokAt(scanner,(yylsp[0]))); } break; - case 281: /* expression_return_no_pipe: "return" */ + case 280: /* expression_return_no_pipe: "return" */ { (yyval.pExpression) = new ExprReturn(tokAt(scanner,(yylsp[0])),nullptr); } break; - case 282: /* expression_return_no_pipe: "return" expr_list */ + case 281: /* expression_return_no_pipe: "return" expr_list */ { (yyval.pExpression) = new ExprReturn(tokAt(scanner,(yylsp[-1])),sequenceToTuple((yyvsp[0].pExpression))); } break; - case 283: /* expression_return_no_pipe: "return" "<-" expr_list */ + case 282: /* expression_return_no_pipe: "return" "<-" expr_list */ { auto pRet = new ExprReturn(tokAt(scanner,(yylsp[-2])),sequenceToTuple((yyvsp[0].pExpression))); pRet->moveSemantics = true; @@ -7905,19 +7836,19 @@ YYLTYPE yylloc = yyloc_default; } break; - case 284: /* expression_return: expression_return_no_pipe "end of expression" */ + case 283: /* expression_return: expression_return_no_pipe "end of expression" */ { (yyval.pExpression) = (yyvsp[-1].pExpression); } break; - case 285: /* expression_return: "return" expr_pipe */ + case 284: /* expression_return: "return" expr_pipe */ { (yyval.pExpression) = new ExprReturn(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 286: /* expression_return: "return" "<-" expr_pipe */ + case 285: /* expression_return: "return" "<-" expr_pipe */ { auto pRet = new ExprReturn(tokAt(scanner,(yylsp[-2])),ExpressionPtr((yyvsp[0].pExpression))); pRet->moveSemantics = true; @@ -7925,13 +7856,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 287: /* expression_yield_no_pipe: "yield" expr */ + case 286: /* expression_yield_no_pipe: "yield" expr */ { (yyval.pExpression) = new ExprYield(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 288: /* expression_yield_no_pipe: "yield" "<-" expr */ + case 287: /* expression_yield_no_pipe: "yield" "<-" expr */ { auto pRet = new ExprYield(tokAt(scanner,(yylsp[-2])),ExpressionPtr((yyvsp[0].pExpression))); pRet->moveSemantics = true; @@ -7939,19 +7870,19 @@ YYLTYPE yylloc = yyloc_default; } break; - case 289: /* expression_yield: expression_yield_no_pipe "end of expression" */ + case 288: /* expression_yield: expression_yield_no_pipe "end of expression" */ { (yyval.pExpression) = (yyvsp[-1].pExpression); } break; - case 290: /* expression_yield: "yield" expr_pipe */ + case 289: /* expression_yield: "yield" expr_pipe */ { (yyval.pExpression) = new ExprYield(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 291: /* expression_yield: "yield" "<-" expr_pipe */ + case 290: /* expression_yield: "yield" "<-" expr_pipe */ { auto pRet = new ExprYield(tokAt(scanner,(yylsp[-2])),ExpressionPtr((yyvsp[0].pExpression))); pRet->moveSemantics = true; @@ -7959,41 +7890,41 @@ YYLTYPE yylloc = yyloc_default; } break; - case 292: /* expression_try_catch: "try" expression_block "recover" expression_block */ + case 291: /* expression_try_catch: "try" expression_block "recover" expression_block */ { (yyval.pExpression) = new ExprTryCatch(tokAt(scanner,(yylsp[-3])),ExpressionPtr((yyvsp[-2].pExpression)),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 293: /* kwd_let_var_or_nothing: "let" */ + case 292: /* kwd_let_var_or_nothing: "let" */ { (yyval.b) = true; } break; - case 294: /* kwd_let_var_or_nothing: "var" */ + case 293: /* kwd_let_var_or_nothing: "var" */ { (yyval.b) = false; } break; - case 295: /* kwd_let_var_or_nothing: %empty */ + case 294: /* kwd_let_var_or_nothing: %empty */ { (yyval.b) = true; } break; - case 296: /* kwd_let: "let" */ + case 295: /* kwd_let: "let" */ { (yyval.b) = true; } break; - case 297: /* kwd_let: "var" */ + case 296: /* kwd_let: "var" */ { (yyval.b) = false; } break; - case 298: /* optional_in_scope: "inscope" */ + case 297: /* optional_in_scope: "inscope" */ { (yyval.b) = true; } break; - case 299: /* optional_in_scope: %empty */ + case 298: /* optional_in_scope: %empty */ { (yyval.b) = false; } break; - case 300: /* tuple_expansion: "name" */ + case 299: /* tuple_expansion: "name" */ { (yyval.pNameList) = new vector(); (yyval.pNameList)->push_back(*(yyvsp[0].s)); @@ -8001,7 +7932,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 301: /* tuple_expansion: tuple_expansion ',' "name" */ + case 300: /* tuple_expansion: tuple_expansion ',' "name" */ { (yyvsp[-2].pNameList)->push_back(*(yyvsp[0].s)); delete (yyvsp[0].s); @@ -8009,7 +7940,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 302: /* tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" */ + case 301: /* tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" */ { (yyval.pVarDecl) = new VariableDeclaration((yyvsp[-7].pNameList),tokAt(scanner,(yylsp[-7])),(yyvsp[-3].pTypeDecl),(yyvsp[-1].pExpression)); (yyval.pVarDecl)->init_via_move = ((yyvsp[-2].i) & CorM_MOVE) !=0; @@ -8018,7 +7949,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 303: /* tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" */ + case 302: /* tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" */ { (yyval.pVarDecl) = new VariableDeclaration((yyvsp[-6].pNameList),tokAt(scanner,(yylsp[-6])),(yyvsp[-3].pTypeDecl),(yyvsp[-1].pExpression)); (yyval.pVarDecl)->init_via_move = ((yyvsp[-2].i) & CorM_MOVE) !=0; @@ -8027,7 +7958,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 304: /* tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' optional_ref copy_or_move_or_clone expr "end of expression" */ + case 303: /* tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' optional_ref copy_or_move_or_clone expr "end of expression" */ { auto typeDecl = new TypeDecl(Type::autoinfer); typeDecl->at = tokAt(scanner,(yylsp[-6])); @@ -8039,7 +7970,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 305: /* tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" */ + case 304: /* tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" */ { auto typeDecl = new TypeDecl(Type::autoinfer); typeDecl->at = tokAt(scanner,(yylsp[-5])); @@ -8051,41 +7982,41 @@ YYLTYPE yylloc = yyloc_default; } break; - case 306: /* expression_let: kwd_let optional_in_scope let_variable_declaration */ + case 305: /* expression_let: kwd_let optional_in_scope let_variable_declaration */ { (yyval.pExpression) = ast_Let(scanner,(yyvsp[-2].b),(yyvsp[-1].b),(yyvsp[0].pVarDecl),tokAt(scanner,(yylsp[-2])),tokAt(scanner,(yylsp[0]))); } break; - case 307: /* expression_let: kwd_let optional_in_scope tuple_expansion_variable_declaration */ + case 306: /* expression_let: kwd_let optional_in_scope tuple_expansion_variable_declaration */ { (yyval.pExpression) = ast_Let(scanner,(yyvsp[-2].b),(yyvsp[-1].b),(yyvsp[0].pVarDecl),tokAt(scanner,(yylsp[-2])),tokAt(scanner,(yylsp[0]))); } break; - case 308: /* $@13: %empty */ + case 307: /* $@13: %empty */ { yyextra->das_arrow_depth ++; } break; - case 309: /* $@14: %empty */ + case 308: /* $@14: %empty */ { yyextra->das_arrow_depth --; } break; - case 310: /* expr_cast: "cast" '<' $@13 type_declaration_no_options '>' $@14 expr */ + case 309: /* expr_cast: "cast" '<' $@13 type_declaration_no_options '>' $@14 expr */ { (yyval.pExpression) = new ExprCast(tokAt(scanner,(yylsp[-6])),ExpressionPtr((yyvsp[0].pExpression)),TypeDeclPtr((yyvsp[-3].pTypeDecl))); } break; - case 311: /* $@15: %empty */ + case 310: /* $@15: %empty */ { yyextra->das_arrow_depth ++; } break; - case 312: /* $@16: %empty */ + case 311: /* $@16: %empty */ { yyextra->das_arrow_depth --; } break; - case 313: /* expr_cast: "upcast" '<' $@15 type_declaration_no_options '>' $@16 expr */ + case 312: /* expr_cast: "upcast" '<' $@15 type_declaration_no_options '>' $@16 expr */ { auto pCast = new ExprCast(tokAt(scanner,(yylsp[-6])),ExpressionPtr((yyvsp[0].pExpression)),TypeDeclPtr((yyvsp[-3].pTypeDecl))); pCast->upcast = true; @@ -8093,15 +8024,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 314: /* $@17: %empty */ + case 313: /* $@17: %empty */ { yyextra->das_arrow_depth ++; } break; - case 315: /* $@18: %empty */ + case 314: /* $@18: %empty */ { yyextra->das_arrow_depth --; } break; - case 316: /* expr_cast: "reinterpret" '<' $@17 type_declaration_no_options '>' $@18 expr */ + case 315: /* expr_cast: "reinterpret" '<' $@17 type_declaration_no_options '>' $@18 expr */ { auto pCast = new ExprCast(tokAt(scanner,(yylsp[-6])),ExpressionPtr((yyvsp[0].pExpression)),TypeDeclPtr((yyvsp[-3].pTypeDecl))); pCast->reinterpret = true; @@ -8109,21 +8040,21 @@ YYLTYPE yylloc = yyloc_default; } break; - case 317: /* $@19: %empty */ + case 316: /* $@19: %empty */ { yyextra->das_arrow_depth ++; } break; - case 318: /* $@20: %empty */ + case 317: /* $@20: %empty */ { yyextra->das_arrow_depth --; } break; - case 319: /* expr_type_decl: "type" '<' $@19 type_declaration '>' $@20 */ + case 318: /* expr_type_decl: "type" '<' $@19 type_declaration '>' $@20 */ { (yyval.pExpression) = new ExprTypeDecl(tokAt(scanner,(yylsp[-5])),TypeDeclPtr((yyvsp[-2].pTypeDecl))); } break; - case 320: /* expr_type_info: "typeinfo" '(' name_in_namespace expr ')' */ + case 319: /* expr_type_info: "typeinfo" '(' name_in_namespace expr ')' */ { if ( (yyvsp[-1].pExpression)->rtti_isTypeDecl() ) { auto ptd = (ExprTypeDecl *)(yyvsp[-1].pExpression); @@ -8136,7 +8067,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 321: /* expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' expr ')' */ + case 320: /* expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' expr ')' */ { if ( (yyvsp[-1].pExpression)->rtti_isTypeDecl() ) { auto ptd = (ExprTypeDecl *)(yyvsp[-1].pExpression); @@ -8150,7 +8081,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 322: /* expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' */ + case 321: /* expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' */ { if ( (yyvsp[-1].pExpression)->rtti_isTypeDecl() ) { auto ptd = (ExprTypeDecl *)(yyvsp[-1].pExpression); @@ -8165,23 +8096,23 @@ YYLTYPE yylloc = yyloc_default; } break; - case 323: /* expr_list: expr */ + case 322: /* expr_list: expr */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 324: /* expr_list: expr_list ',' expr */ + case 323: /* expr_list: expr_list ',' expr */ { (yyval.pExpression) = new ExprSequence(tokAt(scanner,(yylsp[-2])),ExpressionPtr((yyvsp[-2].pExpression)),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 325: /* block_or_simple_block: expression_block */ + case 324: /* block_or_simple_block: expression_block */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 326: /* block_or_simple_block: "=>" expr */ + case 325: /* block_or_simple_block: "=>" expr */ { auto retE = make_smart(tokAt(scanner,(yylsp[-1])), ExpressionPtr((yyvsp[0].pExpression))); auto blkE = new ExprBlock(); @@ -8191,7 +8122,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 327: /* block_or_simple_block: "=>" "<-" expr */ + case 326: /* block_or_simple_block: "=>" "<-" expr */ { auto retE = make_smart(tokAt(scanner,(yylsp[-2])), ExpressionPtr((yyvsp[0].pExpression))); retE->moveSemantics = true; @@ -8202,35 +8133,35 @@ YYLTYPE yylloc = yyloc_default; } break; - case 328: /* block_or_lambda: '$' */ + case 327: /* block_or_lambda: '$' */ { (yyval.i) = 0; /* block */ } break; - case 329: /* block_or_lambda: '@' */ + case 328: /* block_or_lambda: '@' */ { (yyval.i) = 1; /* lambda */ } break; - case 330: /* block_or_lambda: '@' '@' */ + case 329: /* block_or_lambda: '@' '@' */ { (yyval.i) = 2; /* local function */ } break; - case 331: /* capture_entry: '&' "name" */ + case 330: /* capture_entry: '&' "name" */ { (yyval.pCapt) = new CaptureEntry(*(yyvsp[0].s),CaptureMode::capture_by_reference); delete (yyvsp[0].s); } break; - case 332: /* capture_entry: '=' "name" */ + case 331: /* capture_entry: '=' "name" */ { (yyval.pCapt) = new CaptureEntry(*(yyvsp[0].s),CaptureMode::capture_by_copy); delete (yyvsp[0].s); } break; - case 333: /* capture_entry: "<-" "name" */ + case 332: /* capture_entry: "<-" "name" */ { (yyval.pCapt) = new CaptureEntry(*(yyvsp[0].s),CaptureMode::capture_by_move); delete (yyvsp[0].s); } break; - case 334: /* capture_entry: ":=" "name" */ + case 333: /* capture_entry: ":=" "name" */ { (yyval.pCapt) = new CaptureEntry(*(yyvsp[0].s),CaptureMode::capture_by_clone); delete (yyvsp[0].s); } break; - case 335: /* capture_list: capture_entry */ + case 334: /* capture_list: capture_entry */ { (yyval.pCaptList) = new vector(); (yyval.pCaptList)->push_back(*(yyvsp[0].pCapt)); @@ -8238,7 +8169,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 336: /* capture_list: capture_list ',' capture_entry */ + case 335: /* capture_list: capture_list ',' capture_entry */ { (yyvsp[-2].pCaptList)->push_back(*(yyvsp[0].pCapt)); delete (yyvsp[0].pCapt); @@ -8246,15 +8177,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 337: /* optional_capture_list: %empty */ + case 336: /* optional_capture_list: %empty */ { (yyval.pCaptList) = nullptr; } break; - case 338: /* optional_capture_list: "[[" capture_list ']' ']' */ + case 337: /* optional_capture_list: "[[" capture_list ']' ']' */ { (yyval.pCaptList) = (yyvsp[-2].pCaptList); } break; - case 339: /* expr_block: expression_block */ + case 338: /* expr_block: expression_block */ { ExprBlock * closure = (ExprBlock *) (yyvsp[0].pExpression); (yyval.pExpression) = new ExprMakeBlock(tokAt(scanner,(yylsp[0])),ExpressionPtr((yyvsp[0].pExpression))); @@ -8262,217 +8193,217 @@ YYLTYPE yylloc = yyloc_default; } break; - case 340: /* expr_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block */ + case 339: /* expr_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block */ { (yyval.pExpression) = ast_makeBlock(scanner,(yyvsp[-5].i),(yyvsp[-4].faList),(yyvsp[-3].pCaptList),(yyvsp[-2].pVarDeclList),(yyvsp[-1].pTypeDecl),(yyvsp[0].pExpression),tokAt(scanner,(yylsp[0])),tokAt(scanner,(yylsp[-4]))); } break; - case 341: /* expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block */ + case 340: /* expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block */ { (yyval.pExpression) = ast_makeBlock(scanner,(yyvsp[-5].i),(yyvsp[-4].faList),(yyvsp[-3].pCaptList),(yyvsp[-2].pVarDeclList),(yyvsp[-1].pTypeDecl),(yyvsp[0].pExpression),tokAt(scanner,(yylsp[0])),tokAt(scanner,(yylsp[-4]))); } break; - case 342: /* $@21: %empty */ + case 341: /* $@21: %empty */ { yyextra->das_need_oxford_comma = false; } break; - case 343: /* expr_full_block_assumed_piped: block_or_lambda $@21 optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block */ + case 342: /* expr_full_block_assumed_piped: block_or_lambda $@21 optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block */ { (yyval.pExpression) = ast_makeBlock(scanner,(yyvsp[-6].i),(yyvsp[-4].faList),(yyvsp[-3].pCaptList),(yyvsp[-2].pVarDeclList),(yyvsp[-1].pTypeDecl),(yyvsp[0].pExpression),tokAt(scanner,(yylsp[0])),tokAt(scanner,(yylsp[-4]))); } break; - case 344: /* expr_numeric_const: "integer constant" */ + case 343: /* expr_numeric_const: "integer constant" */ { (yyval.pExpression) = new ExprConstInt(tokAt(scanner,(yylsp[0])),(int32_t)(yyvsp[0].i)); } break; - case 345: /* expr_numeric_const: "unsigned integer constant" */ + case 344: /* expr_numeric_const: "unsigned integer constant" */ { (yyval.pExpression) = new ExprConstUInt(tokAt(scanner,(yylsp[0])),(uint32_t)(yyvsp[0].ui)); } break; - case 346: /* expr_numeric_const: "long integer constant" */ + case 345: /* expr_numeric_const: "long integer constant" */ { (yyval.pExpression) = new ExprConstInt64(tokAt(scanner,(yylsp[0])),(int64_t)(yyvsp[0].i64)); } break; - case 347: /* expr_numeric_const: "unsigned long integer constant" */ + case 346: /* expr_numeric_const: "unsigned long integer constant" */ { (yyval.pExpression) = new ExprConstUInt64(tokAt(scanner,(yylsp[0])),(uint64_t)(yyvsp[0].ui64)); } break; - case 348: /* expr_numeric_const: "unsigned int8 constant" */ + case 347: /* expr_numeric_const: "unsigned int8 constant" */ { (yyval.pExpression) = new ExprConstUInt8(tokAt(scanner,(yylsp[0])),(uint8_t)(yyvsp[0].ui)); } break; - case 349: /* expr_numeric_const: "floating point constant" */ + case 348: /* expr_numeric_const: "floating point constant" */ { (yyval.pExpression) = new ExprConstFloat(tokAt(scanner,(yylsp[0])),(float)(yyvsp[0].fd)); } break; - case 350: /* expr_numeric_const: "double constant" */ + case 349: /* expr_numeric_const: "double constant" */ { (yyval.pExpression) = new ExprConstDouble(tokAt(scanner,(yylsp[0])),(double)(yyvsp[0].d)); } break; - case 351: /* expr_assign: expr */ + case 350: /* expr_assign: expr */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 352: /* expr_assign: expr '=' expr */ + case 351: /* expr_assign: expr '=' expr */ { (yyval.pExpression) = new ExprCopy(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 353: /* expr_assign: expr "<-" expr */ + case 352: /* expr_assign: expr "<-" expr */ { (yyval.pExpression) = new ExprMove(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 354: /* expr_assign: expr ":=" expr */ + case 353: /* expr_assign: expr ":=" expr */ { (yyval.pExpression) = new ExprClone(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 355: /* expr_assign: expr "&=" expr */ + case 354: /* expr_assign: expr "&=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"&=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 356: /* expr_assign: expr "|=" expr */ + case 355: /* expr_assign: expr "|=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"|=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 357: /* expr_assign: expr "^=" expr */ + case 356: /* expr_assign: expr "^=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"^=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 358: /* expr_assign: expr "&&=" expr */ + case 357: /* expr_assign: expr "&&=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"&&=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 359: /* expr_assign: expr "||=" expr */ + case 358: /* expr_assign: expr "||=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"||=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 360: /* expr_assign: expr "^^=" expr */ + case 359: /* expr_assign: expr "^^=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"^^=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 361: /* expr_assign: expr "+=" expr */ + case 360: /* expr_assign: expr "+=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"+=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 362: /* expr_assign: expr "-=" expr */ + case 361: /* expr_assign: expr "-=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"-=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 363: /* expr_assign: expr "*=" expr */ + case 362: /* expr_assign: expr "*=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"*=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 364: /* expr_assign: expr "/=" expr */ + case 363: /* expr_assign: expr "/=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"/=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 365: /* expr_assign: expr "%=" expr */ + case 364: /* expr_assign: expr "%=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"%=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 366: /* expr_assign: expr "<<=" expr */ + case 365: /* expr_assign: expr "<<=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"<<=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 367: /* expr_assign: expr ">>=" expr */ + case 366: /* expr_assign: expr ">>=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),">>=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 368: /* expr_assign: expr "<<<=" expr */ + case 367: /* expr_assign: expr "<<<=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"<<<=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 369: /* expr_assign: expr ">>>=" expr */ + case 368: /* expr_assign: expr ">>>=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),">>>=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 370: /* expr_assign_pipe_right: "@ <|" expr_block */ + case 369: /* expr_assign_pipe_right: "@ <|" expr_block */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 371: /* expr_assign_pipe_right: "@@ <|" expr_block */ + case 370: /* expr_assign_pipe_right: "@@ <|" expr_block */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 372: /* expr_assign_pipe_right: "$ <|" expr_block */ + case 371: /* expr_assign_pipe_right: "$ <|" expr_block */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 373: /* expr_assign_pipe_right: expr_call_pipe */ + case 372: /* expr_assign_pipe_right: expr_call_pipe */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 374: /* expr_assign_pipe: expr '=' expr_assign_pipe_right */ + case 373: /* expr_assign_pipe: expr '=' expr_assign_pipe_right */ { (yyval.pExpression) = new ExprCopy(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 375: /* expr_assign_pipe: expr "<-" expr_assign_pipe_right */ + case 374: /* expr_assign_pipe: expr "<-" expr_assign_pipe_right */ { (yyval.pExpression) = new ExprMove(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 376: /* expr_assign_pipe: expr "&=" expr_assign_pipe_right */ + case 375: /* expr_assign_pipe: expr "&=" expr_assign_pipe_right */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"&=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 377: /* expr_assign_pipe: expr "|=" expr_assign_pipe_right */ + case 376: /* expr_assign_pipe: expr "|=" expr_assign_pipe_right */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"|=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 378: /* expr_assign_pipe: expr "^=" expr_assign_pipe_right */ + case 377: /* expr_assign_pipe: expr "^=" expr_assign_pipe_right */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"^=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 379: /* expr_assign_pipe: expr "&&=" expr_assign_pipe_right */ + case 378: /* expr_assign_pipe: expr "&&=" expr_assign_pipe_right */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"&&=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 380: /* expr_assign_pipe: expr "||=" expr_assign_pipe_right */ + case 379: /* expr_assign_pipe: expr "||=" expr_assign_pipe_right */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"||=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 381: /* expr_assign_pipe: expr "^^=" expr_assign_pipe_right */ + case 380: /* expr_assign_pipe: expr "^^=" expr_assign_pipe_right */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"^^=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 382: /* expr_assign_pipe: expr "+=" expr_assign_pipe_right */ + case 381: /* expr_assign_pipe: expr "+=" expr_assign_pipe_right */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"+=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 383: /* expr_assign_pipe: expr "-=" expr_assign_pipe_right */ + case 382: /* expr_assign_pipe: expr "-=" expr_assign_pipe_right */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"-=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 384: /* expr_assign_pipe: expr "*=" expr_assign_pipe_right */ + case 383: /* expr_assign_pipe: expr "*=" expr_assign_pipe_right */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"*=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 385: /* expr_assign_pipe: expr "/=" expr_assign_pipe_right */ + case 384: /* expr_assign_pipe: expr "/=" expr_assign_pipe_right */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"/=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 386: /* expr_assign_pipe: expr "%=" expr_assign_pipe_right */ + case 385: /* expr_assign_pipe: expr "%=" expr_assign_pipe_right */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"%=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 387: /* expr_assign_pipe: expr "<<=" expr_assign_pipe_right */ + case 386: /* expr_assign_pipe: expr "<<=" expr_assign_pipe_right */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"<<=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 388: /* expr_assign_pipe: expr ">>=" expr_assign_pipe_right */ + case 387: /* expr_assign_pipe: expr ">>=" expr_assign_pipe_right */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),">>=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 389: /* expr_assign_pipe: expr "<<<=" expr_assign_pipe_right */ + case 388: /* expr_assign_pipe: expr "<<<=" expr_assign_pipe_right */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"<<<=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 390: /* expr_assign_pipe: expr ">>>=" expr_assign_pipe_right */ + case 389: /* expr_assign_pipe: expr ">>>=" expr_assign_pipe_right */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),">>>=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 391: /* expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' ')' */ + case 390: /* expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' ')' */ { auto nc = new ExprNamedCall(tokAt(scanner,(yylsp[-5])),*(yyvsp[-5].s)); nc->arguments = *(yyvsp[-2].pMakeStruct); @@ -8482,7 +8413,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 392: /* expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' ')' */ + case 391: /* expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' ')' */ { auto nc = new ExprNamedCall(tokAt(scanner,(yylsp[-7])),*(yyvsp[-7].s)); nc->nonNamedArguments = sequenceToList((yyvsp[-5].pExpression)); @@ -8493,7 +8424,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 393: /* expr_method_call: expr "->" "name" '(' ')' */ + case 392: /* expr_method_call: expr "->" "name" '(' ')' */ { auto pInvoke = makeInvokeMethod(tokAt(scanner,(yylsp[-3])), (yyvsp[-4].pExpression), *(yyvsp[-2].s)); delete (yyvsp[-2].s); @@ -8501,7 +8432,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 394: /* expr_method_call: expr "->" "name" '(' expr_list ')' */ + case 393: /* expr_method_call: expr "->" "name" '(' expr_list ')' */ { auto pInvoke = makeInvokeMethod(tokAt(scanner,(yylsp[-4])), (yyvsp[-5].pExpression), *(yyvsp[-3].s)); auto callArgs = sequenceToList((yyvsp[-1].pExpression)); @@ -8511,35 +8442,35 @@ YYLTYPE yylloc = yyloc_default; } break; - case 395: /* func_addr_name: name_in_namespace */ + case 394: /* func_addr_name: name_in_namespace */ { (yyval.pExpression) = new ExprAddr(tokAt(scanner,(yylsp[0])),*(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 396: /* func_addr_name: "$i" '(' expr ')' */ + case 395: /* func_addr_name: "$i" '(' expr ')' */ { auto expr = new ExprAddr(tokAt(scanner,(yylsp[-3])),"``MACRO``TAG``ADDR``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression), expr, "i"); } break; - case 397: /* func_addr_expr: '@' '@' func_addr_name */ + case 396: /* func_addr_expr: '@' '@' func_addr_name */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 398: /* $@22: %empty */ + case 397: /* $@22: %empty */ { yyextra->das_arrow_depth ++; } break; - case 399: /* $@23: %empty */ + case 398: /* $@23: %empty */ { yyextra->das_arrow_depth --; } break; - case 400: /* func_addr_expr: '@' '@' '<' $@22 type_declaration_no_options '>' $@23 func_addr_name */ + case 399: /* func_addr_expr: '@' '@' '<' $@22 type_declaration_no_options '>' $@23 func_addr_name */ { auto expr = (ExprAddr *) ((yyvsp[0].pExpression)->rtti_isAddr() ? (yyvsp[0].pExpression) : (((ExprTag *) (yyvsp[0].pExpression))->value.get())); expr->funcType = TypeDeclPtr((yyvsp[-3].pTypeDecl)); @@ -8547,15 +8478,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 401: /* $@24: %empty */ + case 400: /* $@24: %empty */ { yyextra->das_arrow_depth ++; } break; - case 402: /* $@25: %empty */ + case 401: /* $@25: %empty */ { yyextra->das_arrow_depth --; } break; - case 403: /* func_addr_expr: '@' '@' '<' $@24 optional_function_argument_list optional_function_type '>' $@25 func_addr_name */ + case 402: /* func_addr_expr: '@' '@' '<' $@24 optional_function_argument_list optional_function_type '>' $@25 func_addr_name */ { auto expr = (ExprAddr *) ((yyvsp[0].pExpression)->rtti_isAddr() ? (yyvsp[0].pExpression) : (((ExprTag *) (yyvsp[0].pExpression))->value.get())); expr->funcType = make_smart(Type::tFunction); @@ -8568,21 +8499,21 @@ YYLTYPE yylloc = yyloc_default; } break; - case 404: /* expr_field: expr '.' "name" */ + case 403: /* expr_field: expr '.' "name" */ { (yyval.pExpression) = new ExprField(tokAt(scanner,(yylsp[-1])), tokAt(scanner,(yylsp[0])), ExpressionPtr((yyvsp[-2].pExpression)), *(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 405: /* expr_field: expr '.' '.' "name" */ + case 404: /* expr_field: expr '.' '.' "name" */ { (yyval.pExpression) = new ExprField(tokAt(scanner,(yylsp[-1])), tokAt(scanner,(yylsp[0])), ExpressionPtr((yyvsp[-3].pExpression)), *(yyvsp[0].s), true); delete (yyvsp[0].s); } break; - case 406: /* expr_field: expr '.' "name" '(' ')' */ + case 405: /* expr_field: expr '.' "name" '(' ')' */ { auto pInvoke = makeInvokeMethod(tokAt(scanner,(yylsp[-3])), (yyvsp[-4].pExpression), *(yyvsp[-2].s)); delete (yyvsp[-2].s); @@ -8590,7 +8521,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 407: /* expr_field: expr '.' "name" '(' expr_list ')' */ + case 406: /* expr_field: expr '.' "name" '(' expr_list ')' */ { auto pInvoke = makeInvokeMethod(tokAt(scanner,(yylsp[-4])), (yyvsp[-5].pExpression), *(yyvsp[-3].s)); auto callArgs = sequenceToList((yyvsp[-1].pExpression)); @@ -8600,29 +8531,29 @@ YYLTYPE yylloc = yyloc_default; } break; - case 408: /* $@26: %empty */ + case 407: /* $@26: %empty */ { yyextra->das_suppress_errors=true; } break; - case 409: /* $@27: %empty */ + case 408: /* $@27: %empty */ { yyextra->das_suppress_errors=false; } break; - case 410: /* expr_field: expr '.' $@26 error $@27 */ + case 409: /* expr_field: expr '.' $@26 error $@27 */ { (yyval.pExpression) = new ExprField(tokAt(scanner,(yylsp[-3])), tokAt(scanner,(yylsp[-3])), ExpressionPtr((yyvsp[-4].pExpression)), ""); yyerrok; } break; - case 411: /* expr_call: name_in_namespace '(' ')' */ + case 410: /* expr_call: name_in_namespace '(' ')' */ { (yyval.pExpression) = yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-2])),tokAt(scanner,(yylsp[0])),*(yyvsp[-2].s)); delete (yyvsp[-2].s); } break; - case 412: /* expr_call: name_in_namespace '(' make_struct_single ')' */ + case 411: /* expr_call: name_in_namespace '(' make_struct_single ')' */ { ((ExprMakeStruct *)(yyvsp[-1].pExpression))->at = tokAt(scanner,(yylsp[-3])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = new TypeDecl(Type::alias); @@ -8634,166 +8565,166 @@ YYLTYPE yylloc = yyloc_default; } break; - case 413: /* expr_call: name_in_namespace '(' expr_list ')' */ + case 412: /* expr_call: name_in_namespace '(' expr_list ')' */ { (yyval.pExpression) = parseFunctionArguments(yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-3])),tokAt(scanner,(yylsp[0])),*(yyvsp[-3].s)),(yyvsp[-1].pExpression)); delete (yyvsp[-3].s); } break; - case 414: /* expr_call: basic_type_declaration '(' ')' */ + case 413: /* expr_call: basic_type_declaration '(' ')' */ { (yyval.pExpression) = yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-2])),tokAt(scanner,(yylsp[0])),das_to_string((yyvsp[-2].type))); } break; - case 415: /* expr_call: basic_type_declaration '(' expr_list ')' */ + case 414: /* expr_call: basic_type_declaration '(' expr_list ')' */ { (yyval.pExpression) = parseFunctionArguments(yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-3])),tokAt(scanner,(yylsp[0])),das_to_string((yyvsp[-3].type))),(yyvsp[-1].pExpression)); } break; - case 416: /* expr: "null" */ + case 415: /* expr: "null" */ { (yyval.pExpression) = new ExprConstPtr(tokAt(scanner,(yylsp[0])),nullptr); } break; - case 417: /* expr: name_in_namespace */ + case 416: /* expr: name_in_namespace */ { (yyval.pExpression) = new ExprVar(tokAt(scanner,(yylsp[0])),*(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 418: /* expr: expr_numeric_const */ + case 417: /* expr: expr_numeric_const */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 419: /* expr: expr_reader */ + case 418: /* expr: expr_reader */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 420: /* expr: string_builder */ + case 419: /* expr: string_builder */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 421: /* expr: make_decl */ + case 420: /* expr: make_decl */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 422: /* expr: "true" */ + case 421: /* expr: "true" */ { (yyval.pExpression) = new ExprConstBool(tokAt(scanner,(yylsp[0])),true); } break; - case 423: /* expr: "false" */ + case 422: /* expr: "false" */ { (yyval.pExpression) = new ExprConstBool(tokAt(scanner,(yylsp[0])),false); } break; - case 424: /* expr: expr_field */ + case 423: /* expr: expr_field */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 425: /* expr: expr_mtag */ + case 424: /* expr: expr_mtag */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 426: /* expr: '!' expr */ + case 425: /* expr: '!' expr */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[-1])),"!",ExpressionPtr((yyvsp[0].pExpression))); } break; - case 427: /* expr: '~' expr */ + case 426: /* expr: '~' expr */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[-1])),"~",ExpressionPtr((yyvsp[0].pExpression))); } break; - case 428: /* expr: '+' expr */ + case 427: /* expr: '+' expr */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[-1])),"+",ExpressionPtr((yyvsp[0].pExpression))); } break; - case 429: /* expr: '-' expr */ + case 428: /* expr: '-' expr */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[-1])),"-",ExpressionPtr((yyvsp[0].pExpression))); } break; - case 430: /* expr: expr "<<" expr */ + case 429: /* expr: expr "<<" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"<<", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 431: /* expr: expr ">>" expr */ + case 430: /* expr: expr ">>" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),">>", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 432: /* expr: expr "<<<" expr */ + case 431: /* expr: expr "<<<" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"<<<", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 433: /* expr: expr ">>>" expr */ + case 432: /* expr: expr ">>>" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),">>>", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 434: /* expr: expr '+' expr */ + case 433: /* expr: expr '+' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"+", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 435: /* expr: expr '-' expr */ + case 434: /* expr: expr '-' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"-", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 436: /* expr: expr '*' expr */ + case 435: /* expr: expr '*' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"*", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 437: /* expr: expr '/' expr */ + case 436: /* expr: expr '/' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"/", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 438: /* expr: expr '%' expr */ + case 437: /* expr: expr '%' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"%", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 439: /* expr: expr '<' expr */ + case 438: /* expr: expr '<' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"<", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 440: /* expr: expr '>' expr */ + case 439: /* expr: expr '>' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),">", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 441: /* expr: expr "==" expr */ + case 440: /* expr: expr "==" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"==", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 442: /* expr: expr "!=" expr */ + case 441: /* expr: expr "!=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"!=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 443: /* expr: expr "<=" expr */ + case 442: /* expr: expr "<=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"<=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 444: /* expr: expr ">=" expr */ + case 443: /* expr: expr ">=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),">=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 445: /* expr: expr '&' expr */ + case 444: /* expr: expr '&' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"&", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 446: /* expr: expr '|' expr */ + case 445: /* expr: expr '|' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"|", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 447: /* expr: expr '^' expr */ + case 446: /* expr: expr '^' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"^", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 448: /* expr: expr "&&" expr */ + case 447: /* expr: expr "&&" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"&&", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 449: /* expr: expr "||" expr */ + case 448: /* expr: expr "||" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"||", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 450: /* expr: expr "^^" expr */ + case 449: /* expr: expr "^^" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"^^", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 451: /* expr: expr ".." expr */ + case 450: /* expr: expr ".." expr */ { auto itv = yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-1])),"interval"); itv->arguments.push_back(ExpressionPtr((yyvsp[-2].pExpression))); @@ -8802,23 +8733,23 @@ YYLTYPE yylloc = yyloc_default; } break; - case 452: /* expr: "++" expr */ + case 451: /* expr: "++" expr */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[-1])),"++", ExpressionPtr((yyvsp[0].pExpression))); } break; - case 453: /* expr: "--" expr */ + case 452: /* expr: "--" expr */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[-1])),"--", ExpressionPtr((yyvsp[0].pExpression))); } break; - case 454: /* expr: expr "++" */ + case 453: /* expr: expr "++" */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[0])),"+++", ExpressionPtr((yyvsp[-1].pExpression))); } break; - case 455: /* expr: expr "--" */ + case 454: /* expr: expr "--" */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[0])),"---", ExpressionPtr((yyvsp[-1].pExpression))); } break; - case 456: /* expr: '(' expr_list optional_comma ')' */ + case 455: /* expr: '(' expr_list optional_comma ')' */ { if ( (yyvsp[-2].pExpression)->rtti_isSequence() ) { auto mkt = new ExprMakeTuple(tokAt(scanner,(yylsp[-2]))); @@ -8834,87 +8765,87 @@ YYLTYPE yylloc = yyloc_default; } break; - case 457: /* expr: expr '[' expr ']' */ + case 456: /* expr: expr '[' expr ']' */ { (yyval.pExpression) = new ExprAt(tokAt(scanner,(yylsp[-2])), ExpressionPtr((yyvsp[-3].pExpression)), ExpressionPtr((yyvsp[-1].pExpression))); } break; - case 458: /* expr: expr '.' '[' expr ']' */ + case 457: /* expr: expr '.' '[' expr ']' */ { (yyval.pExpression) = new ExprAt(tokAt(scanner,(yylsp[-2])), ExpressionPtr((yyvsp[-4].pExpression)), ExpressionPtr((yyvsp[-1].pExpression)), true); } break; - case 459: /* expr: expr "?[" expr ']' */ + case 458: /* expr: expr "?[" expr ']' */ { (yyval.pExpression) = new ExprSafeAt(tokAt(scanner,(yylsp[-2])), ExpressionPtr((yyvsp[-3].pExpression)), ExpressionPtr((yyvsp[-1].pExpression))); } break; - case 460: /* expr: expr '.' "?[" expr ']' */ + case 459: /* expr: expr '.' "?[" expr ']' */ { (yyval.pExpression) = new ExprSafeAt(tokAt(scanner,(yylsp[-2])), ExpressionPtr((yyvsp[-4].pExpression)), ExpressionPtr((yyvsp[-1].pExpression)), true); } break; - case 461: /* expr: expr "?." "name" */ + case 460: /* expr: expr "?." "name" */ { (yyval.pExpression) = new ExprSafeField(tokAt(scanner,(yylsp[-1])), tokAt(scanner,(yylsp[0])), ExpressionPtr((yyvsp[-2].pExpression)), *(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 462: /* expr: expr '.' "?." "name" */ + case 461: /* expr: expr '.' "?." "name" */ { (yyval.pExpression) = new ExprSafeField(tokAt(scanner,(yylsp[-1])), tokAt(scanner,(yylsp[0])), ExpressionPtr((yyvsp[-3].pExpression)), *(yyvsp[0].s), true); delete (yyvsp[0].s); } break; - case 463: /* expr: func_addr_expr */ + case 462: /* expr: func_addr_expr */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 464: /* expr: expr_call */ + case 463: /* expr: expr_call */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 465: /* expr: '*' expr */ + case 464: /* expr: '*' expr */ { (yyval.pExpression) = new ExprPtr2Ref(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 466: /* expr: "deref" '(' expr ')' */ + case 465: /* expr: "deref" '(' expr ')' */ { (yyval.pExpression) = new ExprPtr2Ref(tokAt(scanner,(yylsp[-3])),ExpressionPtr((yyvsp[-1].pExpression))); } break; - case 467: /* expr: "addr" '(' expr ')' */ + case 466: /* expr: "addr" '(' expr ')' */ { (yyval.pExpression) = new ExprRef2Ptr(tokAt(scanner,(yylsp[-3])),ExpressionPtr((yyvsp[-1].pExpression))); } break; - case 468: /* expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' ')' */ + case 467: /* expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' ')' */ { (yyval.pExpression) = ast_makeGenerator(scanner,(yyvsp[-4].pTypeDecl),(yyvsp[-2].pCaptList),nullptr,tokAt(scanner,(yylsp[-6]))); } break; - case 469: /* expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' */ + case 468: /* expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' */ { (yyval.pExpression) = ast_makeGenerator(scanner,(yyvsp[-5].pTypeDecl),(yyvsp[-3].pCaptList),(yyvsp[-1].pExpression),tokAt(scanner,(yylsp[-7]))); } break; - case 470: /* expr: expr "??" expr */ + case 469: /* expr: expr "??" expr */ { (yyval.pExpression) = new ExprNullCoalescing(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 471: /* expr: expr '?' expr ':' expr */ + case 470: /* expr: expr '?' expr ':' expr */ { (yyval.pExpression) = new ExprOp3(tokAt(scanner,(yylsp[-3])),"?",ExpressionPtr((yyvsp[-4].pExpression)),ExpressionPtr((yyvsp[-2].pExpression)),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 472: /* $@28: %empty */ + case 471: /* $@28: %empty */ { yyextra->das_arrow_depth ++; } break; - case 473: /* $@29: %empty */ + case 472: /* $@29: %empty */ { yyextra->das_arrow_depth --; } break; - case 474: /* expr: expr "is" "type" '<' $@28 type_declaration_no_options '>' $@29 */ + case 473: /* expr: expr "is" "type" '<' $@28 type_declaration_no_options '>' $@29 */ { (yyval.pExpression) = new ExprIs(tokAt(scanner,(yylsp[-6])),ExpressionPtr((yyvsp[-7].pExpression)),TypeDeclPtr((yyvsp[-2].pTypeDecl))); } break; - case 475: /* expr: expr "is" basic_type_declaration */ + case 474: /* expr: expr "is" basic_type_declaration */ { auto vdecl = new TypeDecl((yyvsp[0].type)); vdecl->at = tokAt(scanner,(yylsp[0])); @@ -8922,29 +8853,29 @@ YYLTYPE yylloc = yyloc_default; } break; - case 476: /* expr: expr "is" "name" */ + case 475: /* expr: expr "is" "name" */ { (yyval.pExpression) = new ExprIsVariant(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)),*(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 477: /* expr: expr "as" "name" */ + case 476: /* expr: expr "as" "name" */ { (yyval.pExpression) = new ExprAsVariant(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)),*(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 478: /* $@30: %empty */ + case 477: /* $@30: %empty */ { yyextra->das_arrow_depth ++; } break; - case 479: /* $@31: %empty */ + case 478: /* $@31: %empty */ { yyextra->das_arrow_depth --; } break; - case 480: /* expr: expr "as" "type" '<' $@30 type_declaration '>' $@31 */ + case 479: /* expr: expr "as" "type" '<' $@30 type_declaration '>' $@31 */ { auto vname = (yyvsp[-2].pTypeDecl)->describe(); (yyval.pExpression) = new ExprAsVariant(tokAt(scanner,(yylsp[-6])),ExpressionPtr((yyvsp[-7].pExpression)),vname); @@ -8952,28 +8883,28 @@ YYLTYPE yylloc = yyloc_default; } break; - case 481: /* expr: expr "as" basic_type_declaration */ + case 480: /* expr: expr "as" basic_type_declaration */ { (yyval.pExpression) = new ExprAsVariant(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)),das_to_string((yyvsp[0].type))); } break; - case 482: /* expr: expr '?' "as" "name" */ + case 481: /* expr: expr '?' "as" "name" */ { (yyval.pExpression) = new ExprSafeAsVariant(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-3].pExpression)),*(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 483: /* $@32: %empty */ + case 482: /* $@32: %empty */ { yyextra->das_arrow_depth ++; } break; - case 484: /* $@33: %empty */ + case 483: /* $@33: %empty */ { yyextra->das_arrow_depth --; } break; - case 485: /* expr: expr '?' "as" "type" '<' $@32 type_declaration '>' $@33 */ + case 484: /* expr: expr '?' "as" "type" '<' $@32 type_declaration '>' $@33 */ { auto vname = (yyvsp[-2].pTypeDecl)->describe(); (yyval.pExpression) = new ExprSafeAsVariant(tokAt(scanner,(yylsp[-6])),ExpressionPtr((yyvsp[-8].pExpression)),vname); @@ -8981,60 +8912,60 @@ YYLTYPE yylloc = yyloc_default; } break; - case 486: /* expr: expr '?' "as" basic_type_declaration */ + case 485: /* expr: expr '?' "as" basic_type_declaration */ { (yyval.pExpression) = new ExprSafeAsVariant(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-3].pExpression)),das_to_string((yyvsp[0].type))); } break; - case 487: /* expr: expr_type_info */ + case 486: /* expr: expr_type_info */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 488: /* expr: expr_type_decl */ + case 487: /* expr: expr_type_decl */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 489: /* expr: expr_cast */ + case 488: /* expr: expr_cast */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 490: /* expr: expr_new */ + case 489: /* expr: expr_new */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 491: /* expr: expr_method_call */ + case 490: /* expr: expr_method_call */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 492: /* expr: expr_named_call */ + case 491: /* expr: expr_named_call */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 493: /* expr: expr_full_block */ + case 492: /* expr: expr_full_block */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 494: /* expr: expr "<|" expr */ + case 493: /* expr: expr "<|" expr */ { (yyval.pExpression) = ast_lpipe(scanner,(yyvsp[-2].pExpression),(yyvsp[0].pExpression),tokAt(scanner,(yylsp[-1]))); } break; - case 495: /* expr: expr "|>" expr */ + case 494: /* expr: expr "|>" expr */ { (yyval.pExpression) = ast_rpipe(scanner,(yyvsp[-2].pExpression),(yyvsp[0].pExpression),tokAt(scanner,(yylsp[-1]))); } break; - case 496: /* expr: expr "|>" basic_type_declaration */ + case 495: /* expr: expr "|>" basic_type_declaration */ { auto fncall = yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[0])),tokAt(scanner,(yylsp[0])),das_to_string((yyvsp[0].type))); (yyval.pExpression) = ast_rpipe(scanner,(yyvsp[-2].pExpression),fncall,tokAt(scanner,(yylsp[-1]))); } break; - case 497: /* expr: name_in_namespace "name" */ + case 496: /* expr: name_in_namespace "name" */ { (yyval.pExpression) = ast_NameName(scanner,(yyvsp[-1].s),(yyvsp[0].s),tokAt(scanner,(yylsp[-1])),tokAt(scanner,(yylsp[0]))); } break; - case 498: /* expr: "unsafe" '(' expr ')' */ + case 497: /* expr: "unsafe" '(' expr ')' */ { (yyvsp[-1].pExpression)->alwaysSafe = true; (yyvsp[-1].pExpression)->userSaidItsSafe = true; @@ -9042,157 +8973,157 @@ YYLTYPE yylloc = yyloc_default; } break; - case 499: /* expr: expression_keyword */ + case 498: /* expr: expression_keyword */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 500: /* expr_mtag: "$$" '(' expr ')' */ + case 499: /* expr_mtag: "$$" '(' expr ')' */ { (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),"e"); } break; - case 501: /* expr_mtag: "$i" '(' expr ')' */ + case 500: /* expr_mtag: "$i" '(' expr ')' */ { (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),"i"); } break; - case 502: /* expr_mtag: "$v" '(' expr ')' */ + case 501: /* expr_mtag: "$v" '(' expr ')' */ { (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),"v"); } break; - case 503: /* expr_mtag: "$b" '(' expr ')' */ + case 502: /* expr_mtag: "$b" '(' expr ')' */ { (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),"b"); } break; - case 504: /* expr_mtag: "$a" '(' expr ')' */ + case 503: /* expr_mtag: "$a" '(' expr ')' */ { (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),"a"); } break; - case 505: /* expr_mtag: "..." */ + case 504: /* expr_mtag: "..." */ { (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[0])),nullptr,"..."); } break; - case 506: /* expr_mtag: "$c" '(' expr ')' '(' ')' */ + case 505: /* expr_mtag: "$c" '(' expr ')' '(' ')' */ { auto ccall = yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-5])),tokAt(scanner,(yylsp[0])),"``MACRO``TAG``CALL``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-5])),(yyvsp[-3].pExpression),ccall,"c"); } break; - case 507: /* expr_mtag: "$c" '(' expr ')' '(' expr_list ')' */ + case 506: /* expr_mtag: "$c" '(' expr ')' '(' expr_list ')' */ { auto ccall = parseFunctionArguments(yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-6])),tokAt(scanner,(yylsp[0])),"``MACRO``TAG``CALL``"),(yyvsp[-1].pExpression)); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-6])),(yyvsp[-4].pExpression),ccall,"c"); } break; - case 508: /* expr_mtag: expr '.' "$f" '(' expr ')' */ + case 507: /* expr_mtag: expr '.' "$f" '(' expr ')' */ { auto cfield = new ExprField(tokAt(scanner,(yylsp[-4])), tokAt(scanner,(yylsp[-1])), ExpressionPtr((yyvsp[-5].pExpression)), "``MACRO``TAG``FIELD``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 509: /* expr_mtag: expr "?." "$f" '(' expr ')' */ + case 508: /* expr_mtag: expr "?." "$f" '(' expr ')' */ { auto cfield = new ExprSafeField(tokAt(scanner,(yylsp[-4])), tokAt(scanner,(yylsp[-1])), ExpressionPtr((yyvsp[-5].pExpression)), "``MACRO``TAG``FIELD``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 510: /* expr_mtag: expr '.' '.' "$f" '(' expr ')' */ + case 509: /* expr_mtag: expr '.' '.' "$f" '(' expr ')' */ { auto cfield = new ExprField(tokAt(scanner,(yylsp[-4])), tokAt(scanner,(yylsp[-1])), ExpressionPtr((yyvsp[-6].pExpression)), "``MACRO``TAG``FIELD``", true); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 511: /* expr_mtag: expr '.' "?." "$f" '(' expr ')' */ + case 510: /* expr_mtag: expr '.' "?." "$f" '(' expr ')' */ { auto cfield = new ExprSafeField(tokAt(scanner,(yylsp[-4])), tokAt(scanner,(yylsp[-1])), ExpressionPtr((yyvsp[-6].pExpression)), "``MACRO``TAG``FIELD``", true); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 512: /* expr_mtag: expr "as" "$f" '(' expr ')' */ + case 511: /* expr_mtag: expr "as" "$f" '(' expr ')' */ { auto cfield = new ExprAsVariant(tokAt(scanner,(yylsp[-4])),ExpressionPtr((yyvsp[-5].pExpression)),"``MACRO``TAG``FIELD``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 513: /* expr_mtag: expr '?' "as" "$f" '(' expr ')' */ + case 512: /* expr_mtag: expr '?' "as" "$f" '(' expr ')' */ { auto cfield = new ExprSafeAsVariant(tokAt(scanner,(yylsp[-4])),ExpressionPtr((yyvsp[-6].pExpression)),"``MACRO``TAG``FIELD``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 514: /* expr_mtag: expr "is" "$f" '(' expr ')' */ + case 513: /* expr_mtag: expr "is" "$f" '(' expr ')' */ { auto cfield = new ExprIsVariant(tokAt(scanner,(yylsp[-4])),ExpressionPtr((yyvsp[-5].pExpression)),"``MACRO``TAG``FIELD``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 515: /* expr_mtag: '@' '@' "$c" '(' expr ')' */ + case 514: /* expr_mtag: '@' '@' "$c" '(' expr ')' */ { auto ccall = new ExprAddr(tokAt(scanner,(yylsp[-4])),"``MACRO``TAG``ADDR``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-3])),(yyvsp[-1].pExpression),ccall,"c"); } break; - case 516: /* optional_field_annotation: %empty */ + case 515: /* optional_field_annotation: %empty */ { (yyval.aaList) = nullptr; } break; - case 517: /* optional_field_annotation: "[[" annotation_argument_list ']' ']' */ + case 516: /* optional_field_annotation: "[[" annotation_argument_list ']' ']' */ { (yyval.aaList) = (yyvsp[-2].aaList); /*this one is gone when BRABRA is disabled*/ } break; - case 518: /* optional_field_annotation: metadata_argument_list */ + case 517: /* optional_field_annotation: metadata_argument_list */ { (yyval.aaList) = (yyvsp[0].aaList); } break; - case 519: /* optional_override: %empty */ + case 518: /* optional_override: %empty */ { (yyval.i) = OVERRIDE_NONE; } break; - case 520: /* optional_override: "override" */ + case 519: /* optional_override: "override" */ { (yyval.i) = OVERRIDE_OVERRIDE; } break; - case 521: /* optional_override: "sealed" */ + case 520: /* optional_override: "sealed" */ { (yyval.i) = OVERRIDE_SEALED; } break; - case 522: /* optional_constant: %empty */ + case 521: /* optional_constant: %empty */ { (yyval.b) = false; } break; - case 523: /* optional_constant: "const" */ + case 522: /* optional_constant: "const" */ { (yyval.b) = true; } break; - case 524: /* optional_public_or_private_member_variable: %empty */ + case 523: /* optional_public_or_private_member_variable: %empty */ { (yyval.b) = false; } break; - case 525: /* optional_public_or_private_member_variable: "public" */ + case 524: /* optional_public_or_private_member_variable: "public" */ { (yyval.b) = false; } break; - case 526: /* optional_public_or_private_member_variable: "private" */ + case 525: /* optional_public_or_private_member_variable: "private" */ { (yyval.b) = true; } break; - case 527: /* optional_static_member_variable: %empty */ + case 526: /* optional_static_member_variable: %empty */ { (yyval.b) = false; } break; - case 528: /* optional_static_member_variable: "static" */ + case 527: /* optional_static_member_variable: "static" */ { (yyval.b) = true; } break; - case 529: /* structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration */ + case 528: /* structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration */ { (yyvsp[0].pVarDecl)->override = (yyvsp[-2].i) == OVERRIDE_OVERRIDE; (yyvsp[0].pVarDecl)->sealed = (yyvsp[-2].i) == OVERRIDE_SEALED; @@ -9203,13 +9134,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 530: /* struct_variable_declaration_list: %empty */ + case 529: /* struct_variable_declaration_list: %empty */ { (yyval.pVarDeclList) = new vector(); } break; - case 531: /* $@34: %empty */ + case 530: /* $@34: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -9218,7 +9149,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 532: /* struct_variable_declaration_list: struct_variable_declaration_list $@34 structure_variable_declaration "end of expression" */ + case 531: /* struct_variable_declaration_list: struct_variable_declaration_list $@34 structure_variable_declaration "end of expression" */ { (yyval.pVarDeclList) = (yyvsp[-3].pVarDeclList); if ( (yyvsp[-1].pVarDecl) ) (yyvsp[-3].pVarDeclList)->push_back((yyvsp[-1].pVarDecl)); @@ -9234,7 +9165,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 533: /* $@35: %empty */ + case 532: /* $@35: %empty */ { yyextra->das_force_oxford_comma=true; if ( !yyextra->g_CommentReaders.empty() ) { @@ -9244,7 +9175,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 534: /* struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@35 function_declaration_header "end of expression" */ + case 533: /* struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@35 function_declaration_header "end of expression" */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[-1])); @@ -9254,7 +9185,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 535: /* $@36: %empty */ + case 534: /* $@36: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -9263,7 +9194,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 536: /* struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@36 function_declaration_header expression_block */ + case 535: /* struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@36 function_declaration_header expression_block */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -9273,7 +9204,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 537: /* struct_variable_declaration_list: struct_variable_declaration_list '[' annotation_list ']' "end of expression" */ + case 536: /* struct_variable_declaration_list: struct_variable_declaration_list '[' annotation_list ']' "end of expression" */ { das_yyerror(scanner,"structure field or class method annotation expected to remain on the same line with the field or the class", tokAt(scanner,(yylsp[-2])), CompilationError::syntax_error); @@ -9282,7 +9213,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 538: /* function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing variable_declaration */ + case 537: /* function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing variable_declaration */ { (yyval.pVarDecl) = (yyvsp[0].pVarDecl); if ( (yyvsp[-1].b) ) { @@ -9294,7 +9225,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 539: /* function_argument_declaration: "$a" '(' expr ')' */ + case 538: /* function_argument_declaration: "$a" '(' expr ')' */ { auto na = new vector(); na->push_back(VariableNameAndPosition{"``MACRO``TAG``","",tokAt(scanner,(yylsp[-1]))}); @@ -9304,21 +9235,21 @@ YYLTYPE yylloc = yyloc_default; } break; - case 540: /* function_argument_list: function_argument_declaration */ + case 539: /* function_argument_list: function_argument_declaration */ { (yyval.pVarDeclList) = new vector(); (yyval.pVarDeclList)->push_back((yyvsp[0].pVarDecl)); } break; - case 541: /* function_argument_list: function_argument_list "end of expression" function_argument_declaration */ + case 540: /* function_argument_list: function_argument_list "end of expression" function_argument_declaration */ { (yyval.pVarDeclList) = (yyvsp[-2].pVarDeclList); (yyvsp[-2].pVarDeclList)->push_back((yyvsp[0].pVarDecl)); } break; - case 542: /* tuple_type: type_declaration */ + case 541: /* tuple_type: type_declaration */ { (yyval.pVarDecl) = new VariableDeclaration(nullptr,(yyvsp[0].pTypeDecl),nullptr); } break; - case 543: /* tuple_type: "name" ':' type_declaration */ + case 542: /* tuple_type: "name" ':' type_declaration */ { auto na = new vector(); na->push_back(VariableNameAndPosition{*(yyvsp[-2].s),"",tokAt(scanner,(yylsp[-2]))}); @@ -9327,27 +9258,27 @@ YYLTYPE yylloc = yyloc_default; } break; - case 544: /* tuple_type_list: tuple_type */ + case 543: /* tuple_type_list: tuple_type */ { (yyval.pVarDeclList) = new vector(); (yyval.pVarDeclList)->push_back((yyvsp[0].pVarDecl)); } break; - case 545: /* tuple_type_list: tuple_type_list "end of expression" tuple_type */ + case 544: /* tuple_type_list: tuple_type_list "end of expression" tuple_type */ { (yyval.pVarDeclList) = (yyvsp[-2].pVarDeclList); (yyvsp[-2].pVarDeclList)->push_back((yyvsp[0].pVarDecl)); } break; - case 546: /* tuple_alias_type_list: %empty */ + case 545: /* tuple_alias_type_list: %empty */ { (yyval.pVarDeclList) = new vector(); } break; - case 547: /* tuple_alias_type_list: tuple_alias_type_list "end of expression" */ + case 546: /* tuple_alias_type_list: tuple_alias_type_list "end of expression" */ { (yyval.pVarDeclList) = (yyvsp[-1].pVarDeclList); } break; - case 548: /* tuple_alias_type_list: tuple_alias_type_list tuple_type "end of expression" */ + case 547: /* tuple_alias_type_list: tuple_alias_type_list tuple_type "end of expression" */ { (yyval.pVarDeclList) = (yyvsp[-2].pVarDeclList); (yyvsp[-2].pVarDeclList)->push_back((yyvsp[-1].pVarDecl)); /* @@ -9363,7 +9294,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 549: /* variant_type: "name" ':' type_declaration */ + case 548: /* variant_type: "name" ':' type_declaration */ { auto na = new vector(); na->push_back(VariableNameAndPosition{*(yyvsp[-2].s),"",tokAt(scanner,(yylsp[-2]))}); @@ -9372,27 +9303,27 @@ YYLTYPE yylloc = yyloc_default; } break; - case 550: /* variant_type_list: variant_type */ + case 549: /* variant_type_list: variant_type */ { (yyval.pVarDeclList) = new vector(); (yyval.pVarDeclList)->push_back((yyvsp[0].pVarDecl)); } break; - case 551: /* variant_type_list: variant_type_list "end of expression" variant_type */ + case 550: /* variant_type_list: variant_type_list "end of expression" variant_type */ { (yyval.pVarDeclList) = (yyvsp[-2].pVarDeclList); (yyvsp[-2].pVarDeclList)->push_back((yyvsp[0].pVarDecl)); } break; - case 552: /* variant_alias_type_list: %empty */ + case 551: /* variant_alias_type_list: %empty */ { (yyval.pVarDeclList) = new vector(); } break; - case 553: /* variant_alias_type_list: variant_alias_type_list "end of expression" */ + case 552: /* variant_alias_type_list: variant_alias_type_list "end of expression" */ { (yyval.pVarDeclList) = (yyvsp[-1].pVarDeclList); } break; - case 554: /* variant_alias_type_list: variant_alias_type_list variant_type "end of expression" */ + case 553: /* variant_alias_type_list: variant_alias_type_list variant_type "end of expression" */ { (yyval.pVarDeclList) = (yyvsp[-2].pVarDeclList); (yyvsp[-2].pVarDeclList)->push_back((yyvsp[-1].pVarDecl)); if ( !yyextra->g_CommentReaders.empty() ) { @@ -9406,15 +9337,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 555: /* copy_or_move: '=' */ + case 554: /* copy_or_move: '=' */ { (yyval.b) = false; } break; - case 556: /* copy_or_move: "<-" */ + case 555: /* copy_or_move: "<-" */ { (yyval.b) = true; } break; - case 557: /* variable_declaration: variable_name_with_pos_list */ + case 556: /* variable_declaration: variable_name_with_pos_list */ { auto autoT = new TypeDecl(Type::autoinfer); autoT->at = tokAt(scanner,(yylsp[0])); @@ -9423,7 +9354,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 558: /* variable_declaration: variable_name_with_pos_list '&' */ + case 557: /* variable_declaration: variable_name_with_pos_list '&' */ { auto autoT = new TypeDecl(Type::autoinfer); autoT->at = tokAt(scanner,(yylsp[-1])); @@ -9432,20 +9363,20 @@ YYLTYPE yylloc = yyloc_default; } break; - case 559: /* variable_declaration: variable_name_with_pos_list ':' type_declaration */ + case 558: /* variable_declaration: variable_name_with_pos_list ':' type_declaration */ { (yyval.pVarDecl) = new VariableDeclaration((yyvsp[-2].pNameWithPosList),(yyvsp[0].pTypeDecl),nullptr); } break; - case 560: /* variable_declaration: variable_name_with_pos_list ':' type_declaration copy_or_move expr */ + case 559: /* variable_declaration: variable_name_with_pos_list ':' type_declaration copy_or_move expr */ { (yyval.pVarDecl) = new VariableDeclaration((yyvsp[-4].pNameWithPosList),(yyvsp[-2].pTypeDecl),(yyvsp[0].pExpression)); (yyval.pVarDecl)->init_via_move = (yyvsp[-1].b); } break; - case 561: /* variable_declaration: variable_name_with_pos_list copy_or_move expr */ + case 560: /* variable_declaration: variable_name_with_pos_list copy_or_move expr */ { auto typeDecl = new TypeDecl(Type::autoinfer); typeDecl->at = tokAt(scanner,(yylsp[-2])); @@ -9454,7 +9385,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 562: /* variable_declaration: variable_name_with_pos_list copy_or_move expr_pipe */ + case 561: /* variable_declaration: variable_name_with_pos_list copy_or_move expr_pipe */ { auto typeDecl = new TypeDecl(Type::autoinfer); typeDecl->at = tokAt(scanner,(yylsp[-2])); @@ -9463,27 +9394,27 @@ YYLTYPE yylloc = yyloc_default; } break; - case 563: /* copy_or_move_or_clone: '=' */ + case 562: /* copy_or_move_or_clone: '=' */ { (yyval.i) = CorM_COPY; } break; - case 564: /* copy_or_move_or_clone: "<-" */ + case 563: /* copy_or_move_or_clone: "<-" */ { (yyval.i) = CorM_MOVE; } break; - case 565: /* copy_or_move_or_clone: ":=" */ + case 564: /* copy_or_move_or_clone: ":=" */ { (yyval.i) = CorM_CLONE; } break; - case 566: /* optional_ref: %empty */ + case 565: /* optional_ref: %empty */ { (yyval.b) = false; } break; - case 567: /* optional_ref: '&' */ + case 566: /* optional_ref: '&' */ { (yyval.b) = true; } break; - case 568: /* let_variable_name_with_pos_list: "name" */ + case 567: /* let_variable_name_with_pos_list: "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); auto pSL = new vector(); @@ -9493,7 +9424,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 569: /* let_variable_name_with_pos_list: "$i" '(' expr ')' */ + case 568: /* let_variable_name_with_pos_list: "$i" '(' expr ')' */ { auto pSL = new vector(); pSL->push_back(VariableNameAndPosition{"``MACRO``TAG``","",tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-1].pExpression))}); @@ -9501,7 +9432,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 570: /* let_variable_name_with_pos_list: "name" "aka" "name" */ + case 569: /* let_variable_name_with_pos_list: "name" "aka" "name" */ { das_checkName(scanner,*(yyvsp[-2].s),tokAt(scanner,(yylsp[-2]))); das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); @@ -9513,7 +9444,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 571: /* let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" */ + case 570: /* let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); (yyvsp[-2].pNameWithPosList)->push_back(VariableNameAndPosition{*(yyvsp[0].s),"",tokAt(scanner,(yylsp[0]))}); @@ -9522,7 +9453,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 572: /* let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" "aka" "name" */ + case 571: /* let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" "aka" "name" */ { das_checkName(scanner,*(yyvsp[-2].s),tokAt(scanner,(yylsp[-2]))); das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); @@ -9533,13 +9464,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 573: /* let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" */ + case 572: /* let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" */ { (yyval.pVarDecl) = new VariableDeclaration((yyvsp[-3].pNameWithPosList),(yyvsp[-1].pTypeDecl),nullptr); } break; - case 574: /* let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" */ + case 573: /* let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" */ { (yyval.pVarDecl) = new VariableDeclaration((yyvsp[-5].pNameWithPosList),(yyvsp[-3].pTypeDecl),(yyvsp[-1].pExpression)); (yyval.pVarDecl)->init_via_move = ((yyvsp[-2].i) & CorM_MOVE) !=0; @@ -9547,7 +9478,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 575: /* let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr_pipe */ + case 574: /* let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr_pipe */ { (yyval.pVarDecl) = new VariableDeclaration((yyvsp[-4].pNameWithPosList),(yyvsp[-2].pTypeDecl),(yyvsp[0].pExpression)); (yyval.pVarDecl)->init_via_move = ((yyvsp[-1].i) & CorM_MOVE) !=0; @@ -9555,7 +9486,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 576: /* let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr "end of expression" */ + case 575: /* let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr "end of expression" */ { auto typeDecl = new TypeDecl(Type::autoinfer); typeDecl->at = tokAt(scanner,(yylsp[-4])); @@ -9566,7 +9497,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 577: /* let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr_pipe */ + case 576: /* let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr_pipe */ { auto typeDecl = new TypeDecl(Type::autoinfer); typeDecl->at = tokAt(scanner,(yylsp[-3])); @@ -9577,13 +9508,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 578: /* global_variable_declaration_list: %empty */ + case 577: /* global_variable_declaration_list: %empty */ { (yyval.pVarDeclList) = new vector(); } break; - case 579: /* $@37: %empty */ + case 578: /* $@37: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -9592,7 +9523,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 580: /* global_variable_declaration_list: global_variable_declaration_list $@37 optional_field_annotation let_variable_declaration */ + case 579: /* global_variable_declaration_list: global_variable_declaration_list $@37 optional_field_annotation let_variable_declaration */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -9607,33 +9538,33 @@ YYLTYPE yylloc = yyloc_default; } break; - case 581: /* optional_shared: %empty */ + case 580: /* optional_shared: %empty */ { (yyval.b) = false; } break; - case 582: /* optional_shared: "shared" */ + case 581: /* optional_shared: "shared" */ { (yyval.b) = true; } break; - case 583: /* optional_public_or_private_variable: %empty */ + case 582: /* optional_public_or_private_variable: %empty */ { (yyval.b) = yyextra->g_Program->thisModule->isPublic; } break; - case 584: /* optional_public_or_private_variable: "private" */ + case 583: /* optional_public_or_private_variable: "private" */ { (yyval.b) = false; } break; - case 585: /* optional_public_or_private_variable: "public" */ + case 584: /* optional_public_or_private_variable: "public" */ { (yyval.b) = true; } break; - case 586: /* global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" */ + case 585: /* global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" */ { ast_globalLetList(scanner,(yyvsp[-5].b),(yyvsp[-4].b),(yyvsp[-3].b),(yyvsp[-1].pVarDeclList)); } break; - case 587: /* $@38: %empty */ + case 586: /* $@38: %empty */ { yyextra->das_force_oxford_comma=true; if ( !yyextra->g_CommentReaders.empty() ) { @@ -9643,7 +9574,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 588: /* global_let: kwd_let optional_shared optional_public_or_private_variable $@38 optional_field_annotation let_variable_declaration */ + case 587: /* global_let: kwd_let optional_shared optional_public_or_private_variable $@38 optional_field_annotation let_variable_declaration */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -9656,19 +9587,19 @@ YYLTYPE yylloc = yyloc_default; } break; - case 589: /* enum_list: %empty */ + case 588: /* enum_list: %empty */ { (yyval.pEnum) = new Enumeration(); } break; - case 590: /* enum_list: enum_list "end of expression" */ + case 589: /* enum_list: enum_list "end of expression" */ { (yyval.pEnum) = (yyvsp[-1].pEnum); } break; - case 591: /* enum_list: enum_list "name" "end of expression" */ + case 590: /* enum_list: enum_list "name" "end of expression" */ { das_checkName(scanner,*(yyvsp[-1].s),tokAt(scanner,(yylsp[-1]))); if ( !(yyvsp[-2].pEnum)->add(*(yyvsp[-1].s),nullptr,tokAt(scanner,(yylsp[-1]))) ) { @@ -9686,7 +9617,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 592: /* enum_list: enum_list "name" '=' expr "end of expression" */ + case 591: /* enum_list: enum_list "name" '=' expr "end of expression" */ { das_checkName(scanner,*(yyvsp[-3].s),tokAt(scanner,(yylsp[-3]))); if ( !(yyvsp[-4].pEnum)->add(*(yyvsp[-3].s),ExpressionPtr((yyvsp[-1].pExpression)),tokAt(scanner,(yylsp[-3]))) ) { @@ -9704,19 +9635,19 @@ YYLTYPE yylloc = yyloc_default; } break; - case 593: /* optional_public_or_private_alias: %empty */ + case 592: /* optional_public_or_private_alias: %empty */ { (yyval.b) = yyextra->g_Program->thisModule->isPublic; } break; - case 594: /* optional_public_or_private_alias: "private" */ + case 593: /* optional_public_or_private_alias: "private" */ { (yyval.b) = false; } break; - case 595: /* optional_public_or_private_alias: "public" */ + case 594: /* optional_public_or_private_alias: "public" */ { (yyval.b) = true; } break; - case 596: /* $@39: %empty */ + case 595: /* $@39: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto pubename = tokAt(scanner,(yylsp[0])); @@ -9725,7 +9656,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 597: /* single_alias: optional_public_or_private_alias "name" $@39 '=' type_declaration */ + case 596: /* single_alias: optional_public_or_private_alias "name" $@39 '=' type_declaration */ { das_checkName(scanner,*(yyvsp[-3].s),tokAt(scanner,(yylsp[-3]))); (yyvsp[0].pTypeDecl)->isPrivateAlias = !(yyvsp[-4].b); @@ -9746,23 +9677,23 @@ YYLTYPE yylloc = yyloc_default; } break; - case 601: /* $@40: %empty */ + case 600: /* $@40: %empty */ { yyextra->das_force_oxford_comma=true;} break; - case 603: /* optional_public_or_private_enum: %empty */ + case 602: /* optional_public_or_private_enum: %empty */ { (yyval.b) = yyextra->g_Program->thisModule->isPublic; } break; - case 604: /* optional_public_or_private_enum: "private" */ + case 603: /* optional_public_or_private_enum: "private" */ { (yyval.b) = false; } break; - case 605: /* optional_public_or_private_enum: "public" */ + case 604: /* optional_public_or_private_enum: "public" */ { (yyval.b) = true; } break; - case 606: /* enum_name: "name" */ + case 605: /* enum_name: "name" */ { if ( !yyextra->g_CommentReaders.empty() ) { auto pubename = tokAt(scanner,(yylsp[0])); @@ -9772,7 +9703,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 607: /* $@41: %empty */ + case 606: /* $@41: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[-1])); @@ -9781,7 +9712,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 608: /* $@42: %empty */ + case 607: /* $@42: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -9790,7 +9721,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 609: /* enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name "begin of code block" $@41 enum_list $@42 "end of code block" */ + case 608: /* enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name "begin of code block" $@41 enum_list $@42 "end of code block" */ { if ( !yyextra->g_CommentReaders.empty() ) { auto pubename = tokAt(scanner,(yylsp[-2])); @@ -9800,7 +9731,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 610: /* $@43: %empty */ + case 609: /* $@43: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[-3])); @@ -9809,7 +9740,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 611: /* $@44: %empty */ + case 610: /* $@44: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -9818,7 +9749,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 612: /* enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 "end of code block" */ + case 611: /* enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 "end of code block" */ { if ( !yyextra->g_CommentReaders.empty() ) { auto pubename = tokAt(scanner,(yylsp[-2])); @@ -9828,61 +9759,61 @@ YYLTYPE yylloc = yyloc_default; } break; - case 613: /* optional_structure_parent: %empty */ + case 612: /* optional_structure_parent: %empty */ { (yyval.s) = nullptr; } break; - case 614: /* optional_structure_parent: ':' name_in_namespace */ + case 613: /* optional_structure_parent: ':' name_in_namespace */ { (yyval.s) = (yyvsp[0].s); } break; - case 615: /* optional_sealed: %empty */ + case 614: /* optional_sealed: %empty */ { (yyval.b) = false; } break; - case 616: /* optional_sealed: "sealed" */ + case 615: /* optional_sealed: "sealed" */ { (yyval.b) = true; } break; - case 617: /* structure_name: optional_sealed "name" optional_structure_parent */ + case 616: /* structure_name: optional_sealed "name" optional_structure_parent */ { (yyval.pStructure) = ast_structureName(scanner,(yyvsp[-2].b),(yyvsp[-1].s),tokAt(scanner,(yylsp[-1])),(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); } break; - case 618: /* class_or_struct: "class" */ + case 617: /* class_or_struct: "class" */ { (yyval.b) = true; } break; - case 619: /* class_or_struct: "struct" */ + case 618: /* class_or_struct: "struct" */ { (yyval.b) = false; } break; - case 620: /* optional_public_or_private_structure: %empty */ + case 619: /* optional_public_or_private_structure: %empty */ { (yyval.b) = yyextra->g_Program->thisModule->isPublic; } break; - case 621: /* optional_public_or_private_structure: "private" */ + case 620: /* optional_public_or_private_structure: "private" */ { (yyval.b) = false; } break; - case 622: /* optional_public_or_private_structure: "public" */ + case 621: /* optional_public_or_private_structure: "public" */ { (yyval.b) = true; } break; - case 623: /* optional_struct_variable_declaration_list: %empty */ + case 622: /* optional_struct_variable_declaration_list: %empty */ { (yyval.pVarDeclList) = new vector(); } break; - case 624: /* optional_struct_variable_declaration_list: "begin of code block" struct_variable_declaration_list "end of code block" */ + case 623: /* optional_struct_variable_declaration_list: "begin of code block" struct_variable_declaration_list "end of code block" */ { (yyval.pVarDeclList) = (yyvsp[-1].pVarDeclList); } break; - case 625: /* $@45: %empty */ + case 624: /* $@45: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[-1])); @@ -9891,11 +9822,11 @@ YYLTYPE yylloc = yyloc_default; } break; - case 626: /* $@46: %empty */ + case 625: /* $@46: %empty */ { if ( (yyvsp[0].pStructure) ) { (yyvsp[0].pStructure)->isClass = (yyvsp[-3].b); (yyvsp[0].pStructure)->privateStructure = !(yyvsp[-2].b); } } break; - case 627: /* structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@45 structure_name $@46 optional_struct_variable_declaration_list */ + case 626: /* structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@45 structure_name $@46 optional_struct_variable_declaration_list */ { if ( (yyvsp[-2].pStructure) ) { ast_structureDeclaration ( scanner, (yyvsp[-6].faList), tokAt(scanner,(yylsp[-5])), (yyvsp[-2].pStructure), tokAt(scanner,(yylsp[-2])), (yyvsp[0].pVarDeclList) ); @@ -9909,7 +9840,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 628: /* variable_name_with_pos_list: "name" */ + case 627: /* variable_name_with_pos_list: "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); auto pSL = new vector(); @@ -9919,7 +9850,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 629: /* variable_name_with_pos_list: "$i" '(' expr ')' */ + case 628: /* variable_name_with_pos_list: "$i" '(' expr ')' */ { auto pSL = new vector(); pSL->push_back(VariableNameAndPosition{"``MACRO``TAG``","",tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression)}); @@ -9927,7 +9858,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 630: /* variable_name_with_pos_list: "name" "aka" "name" */ + case 629: /* variable_name_with_pos_list: "name" "aka" "name" */ { das_checkName(scanner,*(yyvsp[-2].s),tokAt(scanner,(yylsp[-2]))); das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); @@ -9939,7 +9870,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 631: /* variable_name_with_pos_list: variable_name_with_pos_list ',' "name" */ + case 630: /* variable_name_with_pos_list: variable_name_with_pos_list ',' "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); (yyvsp[-2].pNameWithPosList)->push_back(VariableNameAndPosition{*(yyvsp[0].s),"",tokAt(scanner,(yylsp[0]))}); @@ -9948,7 +9879,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 632: /* variable_name_with_pos_list: variable_name_with_pos_list ',' "name" "aka" "name" */ + case 631: /* variable_name_with_pos_list: variable_name_with_pos_list ',' "name" "aka" "name" */ { das_checkName(scanner,*(yyvsp[-2].s),tokAt(scanner,(yylsp[-2]))); das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); @@ -9959,147 +9890,147 @@ YYLTYPE yylloc = yyloc_default; } break; - case 633: /* basic_type_declaration: "bool" */ + case 632: /* basic_type_declaration: "bool" */ { (yyval.type) = Type::tBool; } break; - case 634: /* basic_type_declaration: "string" */ + case 633: /* basic_type_declaration: "string" */ { (yyval.type) = Type::tString; } break; - case 635: /* basic_type_declaration: "int" */ + case 634: /* basic_type_declaration: "int" */ { (yyval.type) = Type::tInt; } break; - case 636: /* basic_type_declaration: "int8" */ + case 635: /* basic_type_declaration: "int8" */ { (yyval.type) = Type::tInt8; } break; - case 637: /* basic_type_declaration: "int16" */ + case 636: /* basic_type_declaration: "int16" */ { (yyval.type) = Type::tInt16; } break; - case 638: /* basic_type_declaration: "int64" */ + case 637: /* basic_type_declaration: "int64" */ { (yyval.type) = Type::tInt64; } break; - case 639: /* basic_type_declaration: "int2" */ + case 638: /* basic_type_declaration: "int2" */ { (yyval.type) = Type::tInt2; } break; - case 640: /* basic_type_declaration: "int3" */ + case 639: /* basic_type_declaration: "int3" */ { (yyval.type) = Type::tInt3; } break; - case 641: /* basic_type_declaration: "int4" */ + case 640: /* basic_type_declaration: "int4" */ { (yyval.type) = Type::tInt4; } break; - case 642: /* basic_type_declaration: "uint" */ + case 641: /* basic_type_declaration: "uint" */ { (yyval.type) = Type::tUInt; } break; - case 643: /* basic_type_declaration: "uint8" */ + case 642: /* basic_type_declaration: "uint8" */ { (yyval.type) = Type::tUInt8; } break; - case 644: /* basic_type_declaration: "uint16" */ + case 643: /* basic_type_declaration: "uint16" */ { (yyval.type) = Type::tUInt16; } break; - case 645: /* basic_type_declaration: "uint64" */ + case 644: /* basic_type_declaration: "uint64" */ { (yyval.type) = Type::tUInt64; } break; - case 646: /* basic_type_declaration: "uint2" */ + case 645: /* basic_type_declaration: "uint2" */ { (yyval.type) = Type::tUInt2; } break; - case 647: /* basic_type_declaration: "uint3" */ + case 646: /* basic_type_declaration: "uint3" */ { (yyval.type) = Type::tUInt3; } break; - case 648: /* basic_type_declaration: "uint4" */ + case 647: /* basic_type_declaration: "uint4" */ { (yyval.type) = Type::tUInt4; } break; - case 649: /* basic_type_declaration: "float" */ + case 648: /* basic_type_declaration: "float" */ { (yyval.type) = Type::tFloat; } break; - case 650: /* basic_type_declaration: "float2" */ + case 649: /* basic_type_declaration: "float2" */ { (yyval.type) = Type::tFloat2; } break; - case 651: /* basic_type_declaration: "float3" */ + case 650: /* basic_type_declaration: "float3" */ { (yyval.type) = Type::tFloat3; } break; - case 652: /* basic_type_declaration: "float4" */ + case 651: /* basic_type_declaration: "float4" */ { (yyval.type) = Type::tFloat4; } break; - case 653: /* basic_type_declaration: "void" */ + case 652: /* basic_type_declaration: "void" */ { (yyval.type) = Type::tVoid; } break; - case 654: /* basic_type_declaration: "range" */ + case 653: /* basic_type_declaration: "range" */ { (yyval.type) = Type::tRange; } break; - case 655: /* basic_type_declaration: "urange" */ + case 654: /* basic_type_declaration: "urange" */ { (yyval.type) = Type::tURange; } break; - case 656: /* basic_type_declaration: "range64" */ + case 655: /* basic_type_declaration: "range64" */ { (yyval.type) = Type::tRange64; } break; - case 657: /* basic_type_declaration: "urange64" */ + case 656: /* basic_type_declaration: "urange64" */ { (yyval.type) = Type::tURange64; } break; - case 658: /* basic_type_declaration: "double" */ + case 657: /* basic_type_declaration: "double" */ { (yyval.type) = Type::tDouble; } break; - case 659: /* basic_type_declaration: "bitfield" */ + case 658: /* basic_type_declaration: "bitfield" */ { (yyval.type) = Type::tBitfield; } break; - case 660: /* enum_basic_type_declaration: "int" */ + case 659: /* enum_basic_type_declaration: "int" */ { (yyval.type) = Type::tInt; } break; - case 661: /* enum_basic_type_declaration: "int8" */ + case 660: /* enum_basic_type_declaration: "int8" */ { (yyval.type) = Type::tInt8; } break; - case 662: /* enum_basic_type_declaration: "int16" */ + case 661: /* enum_basic_type_declaration: "int16" */ { (yyval.type) = Type::tInt16; } break; - case 663: /* enum_basic_type_declaration: "uint" */ + case 662: /* enum_basic_type_declaration: "uint" */ { (yyval.type) = Type::tUInt; } break; - case 664: /* enum_basic_type_declaration: "uint8" */ + case 663: /* enum_basic_type_declaration: "uint8" */ { (yyval.type) = Type::tUInt8; } break; - case 665: /* enum_basic_type_declaration: "uint16" */ + case 664: /* enum_basic_type_declaration: "uint16" */ { (yyval.type) = Type::tUInt16; } break; - case 666: /* enum_basic_type_declaration: "int64" */ + case 665: /* enum_basic_type_declaration: "int64" */ { (yyval.type) = Type::tInt64; } break; - case 667: /* enum_basic_type_declaration: "uint64" */ + case 666: /* enum_basic_type_declaration: "uint64" */ { (yyval.type) = Type::tUInt64; } break; - case 668: /* structure_type_declaration: name_in_namespace */ + case 667: /* structure_type_declaration: name_in_namespace */ { (yyval.pTypeDecl) = yyextra->g_Program->makeTypeDeclaration(tokAt(scanner,(yylsp[0])),*(yyvsp[0].s)); if ( !(yyval.pTypeDecl) ) { @@ -10110,14 +10041,14 @@ YYLTYPE yylloc = yyloc_default; } break; - case 669: /* auto_type_declaration: "auto" */ + case 668: /* auto_type_declaration: "auto" */ { (yyval.pTypeDecl) = new TypeDecl(Type::autoinfer); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[0])); } break; - case 670: /* auto_type_declaration: "auto" '(' "name" ')' */ + case 669: /* auto_type_declaration: "auto" '(' "name" ')' */ { das_checkName(scanner,*(yyvsp[-1].s),tokAt(scanner,(yylsp[-1]))); (yyval.pTypeDecl) = new TypeDecl(Type::autoinfer); @@ -10127,7 +10058,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 671: /* auto_type_declaration: "$t" '(' expr ')' */ + case 670: /* auto_type_declaration: "$t" '(' expr ')' */ { (yyval.pTypeDecl) = new TypeDecl(Type::alias); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-3])); @@ -10139,7 +10070,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 672: /* bitfield_bits: "name" */ + case 671: /* bitfield_bits: "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); auto pSL = new vector(); @@ -10149,7 +10080,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 673: /* bitfield_bits: bitfield_bits "end of expression" "name" */ + case 672: /* bitfield_bits: bitfield_bits "end of expression" "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); (yyvsp[-2].pNameList)->push_back(*(yyvsp[0].s)); @@ -10158,7 +10089,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 674: /* bitfield_alias_bits: %empty */ + case 673: /* bitfield_alias_bits: %empty */ { auto pSL = new vector(); (yyval.pNameList) = pSL; @@ -10166,13 +10097,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 675: /* bitfield_alias_bits: bitfield_alias_bits "end of expression" */ + case 674: /* bitfield_alias_bits: bitfield_alias_bits "end of expression" */ { (yyval.pNameList) = (yyvsp[-1].pNameList); } break; - case 676: /* bitfield_alias_bits: bitfield_alias_bits "name" "end of expression" */ + case 675: /* bitfield_alias_bits: bitfield_alias_bits "name" "end of expression" */ { das_checkName(scanner,*(yyvsp[-1].s),tokAt(scanner,(yylsp[-1]))); (yyvsp[-2].pNameList)->push_back(*(yyvsp[-1].s)); @@ -10185,15 +10116,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 677: /* $@47: %empty */ + case 676: /* $@47: %empty */ { yyextra->das_arrow_depth ++; } break; - case 678: /* $@48: %empty */ + case 677: /* $@48: %empty */ { yyextra->das_arrow_depth --; } break; - case 679: /* bitfield_type_declaration: "bitfield" '<' $@47 bitfield_bits '>' $@48 */ + case 678: /* bitfield_type_declaration: "bitfield" '<' $@47 bitfield_bits '>' $@48 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tBitfield); (yyval.pTypeDecl)->argNames = *(yyvsp[-2].pNameList); @@ -10206,51 +10137,51 @@ YYLTYPE yylloc = yyloc_default; } break; - case 680: /* table_type_pair: type_declaration */ + case 679: /* table_type_pair: type_declaration */ { (yyval.aTypePair).firstType = (yyvsp[0].pTypeDecl); (yyval.aTypePair).secondType = new TypeDecl(Type::tVoid); } break; - case 681: /* table_type_pair: type_declaration "end of expression" type_declaration */ + case 680: /* table_type_pair: type_declaration "end of expression" type_declaration */ { (yyval.aTypePair).firstType = (yyvsp[-2].pTypeDecl); (yyval.aTypePair).secondType = (yyvsp[0].pTypeDecl); } break; - case 682: /* dim_list: '[' expr ']' */ + case 681: /* dim_list: '[' expr ']' */ { (yyval.pTypeDecl) = new TypeDecl(Type::autoinfer); appendDimExpr((yyval.pTypeDecl), (yyvsp[-1].pExpression)); } break; - case 683: /* dim_list: dim_list '[' expr ']' */ + case 682: /* dim_list: dim_list '[' expr ']' */ { (yyval.pTypeDecl) = (yyvsp[-3].pTypeDecl); appendDimExpr((yyval.pTypeDecl), (yyvsp[-1].pExpression)); } break; - case 684: /* type_declaration_no_options: basic_type_declaration */ + case 683: /* type_declaration_no_options: basic_type_declaration */ { (yyval.pTypeDecl) = new TypeDecl((yyvsp[0].type)); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[0])); } break; - case 685: /* type_declaration_no_options: auto_type_declaration */ + case 684: /* type_declaration_no_options: auto_type_declaration */ { (yyval.pTypeDecl) = (yyvsp[0].pTypeDecl); } break; - case 686: /* type_declaration_no_options: bitfield_type_declaration */ + case 685: /* type_declaration_no_options: bitfield_type_declaration */ { (yyval.pTypeDecl) = (yyvsp[0].pTypeDecl); } break; - case 687: /* type_declaration_no_options: structure_type_declaration */ + case 686: /* type_declaration_no_options: structure_type_declaration */ { (yyval.pTypeDecl) = (yyvsp[0].pTypeDecl); } break; - case 688: /* type_declaration_no_options: type_declaration_no_options dim_list */ + case 687: /* type_declaration_no_options: type_declaration_no_options dim_list */ { if ( (yyvsp[-1].pTypeDecl)->baseType==Type::typeDecl ) { das_yyerror(scanner,"type declaration can`t be used as array base type",tokAt(scanner,(yylsp[-1])), @@ -10268,7 +10199,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 689: /* type_declaration_no_options: type_declaration_no_options '[' ']' */ + case 688: /* type_declaration_no_options: type_declaration_no_options '[' ']' */ { (yyvsp[-2].pTypeDecl)->dim.push_back(TypeDecl::dimAuto); (yyvsp[-2].pTypeDecl)->dimExpr.push_back(nullptr); @@ -10277,22 +10208,22 @@ YYLTYPE yylloc = yyloc_default; } break; - case 690: /* $@49: %empty */ + case 689: /* $@49: %empty */ { yyextra->das_arrow_depth ++; } break; - case 691: /* $@50: %empty */ + case 690: /* $@50: %empty */ { yyextra->das_arrow_depth --; } break; - case 692: /* type_declaration_no_options: "type" '<' $@49 type_declaration '>' $@50 */ + case 691: /* type_declaration_no_options: "type" '<' $@49 type_declaration '>' $@50 */ { (yyvsp[-2].pTypeDecl)->autoToAlias = true; (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); } break; - case 693: /* type_declaration_no_options: "typedecl" '(' expr ')' */ + case 692: /* type_declaration_no_options: "typedecl" '(' expr ')' */ { (yyval.pTypeDecl) = new TypeDecl(Type::typeDecl); (yyval.pTypeDecl)->at = tokRangeAt(scanner,(yylsp[-3]),(yylsp[-1])); @@ -10300,7 +10231,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 694: /* type_declaration_no_options: '$' name_in_namespace '(' optional_expr_list ')' */ + case 693: /* type_declaration_no_options: '$' name_in_namespace '(' optional_expr_list ')' */ { (yyval.pTypeDecl) = new TypeDecl(Type::typeMacro); (yyval.pTypeDecl)->at = tokRangeAt(scanner,(yylsp[-3]), (yylsp[-1])); @@ -10310,11 +10241,11 @@ YYLTYPE yylloc = yyloc_default; } break; - case 695: /* $@51: %empty */ + case 694: /* $@51: %empty */ { yyextra->das_arrow_depth ++; } break; - case 696: /* type_declaration_no_options: '$' name_in_namespace '<' $@51 type_declaration_no_options_list '>' '(' optional_expr_list ')' */ + case 695: /* type_declaration_no_options: '$' name_in_namespace '<' $@51 type_declaration_no_options_list '>' '(' optional_expr_list ')' */ { (yyval.pTypeDecl) = new TypeDecl(Type::typeMacro); (yyval.pTypeDecl)->at = tokRangeAt(scanner,(yylsp[-7]), (yylsp[-1])); @@ -10324,21 +10255,21 @@ YYLTYPE yylloc = yyloc_default; } break; - case 697: /* type_declaration_no_options: type_declaration_no_options '-' '[' ']' */ + case 696: /* type_declaration_no_options: type_declaration_no_options '-' '[' ']' */ { (yyvsp[-3].pTypeDecl)->removeDim = true; (yyval.pTypeDecl) = (yyvsp[-3].pTypeDecl); } break; - case 698: /* type_declaration_no_options: type_declaration_no_options "explicit" */ + case 697: /* type_declaration_no_options: type_declaration_no_options "explicit" */ { (yyvsp[-1].pTypeDecl)->isExplicit = true; (yyval.pTypeDecl) = (yyvsp[-1].pTypeDecl); } break; - case 699: /* type_declaration_no_options: type_declaration_no_options "const" */ + case 698: /* type_declaration_no_options: type_declaration_no_options "const" */ { (yyvsp[-1].pTypeDecl)->constant = true; (yyvsp[-1].pTypeDecl)->removeConstant = false; @@ -10346,7 +10277,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 700: /* type_declaration_no_options: type_declaration_no_options '-' "const" */ + case 699: /* type_declaration_no_options: type_declaration_no_options '-' "const" */ { (yyvsp[-2].pTypeDecl)->constant = false; (yyvsp[-2].pTypeDecl)->removeConstant = true; @@ -10354,7 +10285,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 701: /* type_declaration_no_options: type_declaration_no_options '&' */ + case 700: /* type_declaration_no_options: type_declaration_no_options '&' */ { (yyvsp[-1].pTypeDecl)->ref = true; (yyvsp[-1].pTypeDecl)->removeRef = false; @@ -10362,7 +10293,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 702: /* type_declaration_no_options: type_declaration_no_options '-' '&' */ + case 701: /* type_declaration_no_options: type_declaration_no_options '-' '&' */ { (yyvsp[-2].pTypeDecl)->ref = false; (yyvsp[-2].pTypeDecl)->removeRef = true; @@ -10370,21 +10301,21 @@ YYLTYPE yylloc = yyloc_default; } break; - case 703: /* type_declaration_no_options: type_declaration_no_options '#' */ + case 702: /* type_declaration_no_options: type_declaration_no_options '#' */ { (yyval.pTypeDecl) = (yyvsp[-1].pTypeDecl); (yyval.pTypeDecl)->temporary = true; } break; - case 704: /* type_declaration_no_options: type_declaration_no_options "implicit" */ + case 703: /* type_declaration_no_options: type_declaration_no_options "implicit" */ { (yyval.pTypeDecl) = (yyvsp[-1].pTypeDecl); (yyval.pTypeDecl)->implicit = true; } break; - case 705: /* type_declaration_no_options: type_declaration_no_options '-' '#' */ + case 704: /* type_declaration_no_options: type_declaration_no_options '-' '#' */ { (yyvsp[-2].pTypeDecl)->temporary = false; (yyvsp[-2].pTypeDecl)->removeTemporary = true; @@ -10392,21 +10323,21 @@ YYLTYPE yylloc = yyloc_default; } break; - case 706: /* type_declaration_no_options: type_declaration_no_options "==" "const" */ + case 705: /* type_declaration_no_options: type_declaration_no_options "==" "const" */ { (yyvsp[-2].pTypeDecl)->explicitConst = true; (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); } break; - case 707: /* type_declaration_no_options: type_declaration_no_options "==" '&' */ + case 706: /* type_declaration_no_options: type_declaration_no_options "==" '&' */ { (yyvsp[-2].pTypeDecl)->explicitRef = true; (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); } break; - case 708: /* type_declaration_no_options: type_declaration_no_options '?' */ + case 707: /* type_declaration_no_options: type_declaration_no_options '?' */ { (yyval.pTypeDecl) = new TypeDecl(Type::tPointer); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-1])); @@ -10414,15 +10345,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 709: /* $@52: %empty */ + case 708: /* $@52: %empty */ { yyextra->das_arrow_depth ++; } break; - case 710: /* $@53: %empty */ + case 709: /* $@53: %empty */ { yyextra->das_arrow_depth --; } break; - case 711: /* type_declaration_no_options: "smart_ptr" '<' $@52 type_declaration '>' $@53 */ + case 710: /* type_declaration_no_options: "smart_ptr" '<' $@52 type_declaration '>' $@53 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tPointer); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -10431,7 +10362,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 712: /* type_declaration_no_options: type_declaration_no_options "??" */ + case 711: /* type_declaration_no_options: type_declaration_no_options "??" */ { (yyval.pTypeDecl) = new TypeDecl(Type::tPointer); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-1])); @@ -10441,15 +10372,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 713: /* $@54: %empty */ + case 712: /* $@54: %empty */ { yyextra->das_arrow_depth ++; } break; - case 714: /* $@55: %empty */ + case 713: /* $@55: %empty */ { yyextra->das_arrow_depth --; } break; - case 715: /* type_declaration_no_options: "array" '<' $@54 type_declaration '>' $@55 */ + case 714: /* type_declaration_no_options: "array" '<' $@54 type_declaration '>' $@55 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tArray); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -10457,15 +10388,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 716: /* $@56: %empty */ + case 715: /* $@56: %empty */ { yyextra->das_arrow_depth ++; } break; - case 717: /* $@57: %empty */ + case 716: /* $@57: %empty */ { yyextra->das_arrow_depth --; } break; - case 718: /* type_declaration_no_options: "table" '<' $@56 table_type_pair '>' $@57 */ + case 717: /* type_declaration_no_options: "table" '<' $@56 table_type_pair '>' $@57 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tTable); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -10474,15 +10405,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 719: /* $@58: %empty */ + case 718: /* $@58: %empty */ { yyextra->das_arrow_depth ++; } break; - case 720: /* $@59: %empty */ + case 719: /* $@59: %empty */ { yyextra->das_arrow_depth --; } break; - case 721: /* type_declaration_no_options: "iterator" '<' $@58 type_declaration '>' $@59 */ + case 720: /* type_declaration_no_options: "iterator" '<' $@58 type_declaration '>' $@59 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tIterator); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -10490,22 +10421,22 @@ YYLTYPE yylloc = yyloc_default; } break; - case 722: /* type_declaration_no_options: "block" */ + case 721: /* type_declaration_no_options: "block" */ { (yyval.pTypeDecl) = new TypeDecl(Type::tBlock); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[0])); } break; - case 723: /* $@60: %empty */ + case 722: /* $@60: %empty */ { yyextra->das_arrow_depth ++; } break; - case 724: /* $@61: %empty */ + case 723: /* $@61: %empty */ { yyextra->das_arrow_depth --; } break; - case 725: /* type_declaration_no_options: "block" '<' $@60 type_declaration '>' $@61 */ + case 724: /* type_declaration_no_options: "block" '<' $@60 type_declaration '>' $@61 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tBlock); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -10513,15 +10444,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 726: /* $@62: %empty */ + case 725: /* $@62: %empty */ { yyextra->das_arrow_depth ++; } break; - case 727: /* $@63: %empty */ + case 726: /* $@63: %empty */ { yyextra->das_arrow_depth --; } break; - case 728: /* type_declaration_no_options: "block" '<' $@62 optional_function_argument_list optional_function_type '>' $@63 */ + case 727: /* type_declaration_no_options: "block" '<' $@62 optional_function_argument_list optional_function_type '>' $@63 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tBlock); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-6])); @@ -10533,22 +10464,22 @@ YYLTYPE yylloc = yyloc_default; } break; - case 729: /* type_declaration_no_options: "function" */ + case 728: /* type_declaration_no_options: "function" */ { (yyval.pTypeDecl) = new TypeDecl(Type::tFunction); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[0])); } break; - case 730: /* $@64: %empty */ + case 729: /* $@64: %empty */ { yyextra->das_arrow_depth ++; } break; - case 731: /* $@65: %empty */ + case 730: /* $@65: %empty */ { yyextra->das_arrow_depth --; } break; - case 732: /* type_declaration_no_options: "function" '<' $@64 type_declaration '>' $@65 */ + case 731: /* type_declaration_no_options: "function" '<' $@64 type_declaration '>' $@65 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tFunction); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -10556,15 +10487,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 733: /* $@66: %empty */ + case 732: /* $@66: %empty */ { yyextra->das_arrow_depth ++; } break; - case 734: /* $@67: %empty */ + case 733: /* $@67: %empty */ { yyextra->das_arrow_depth --; } break; - case 735: /* type_declaration_no_options: "function" '<' $@66 optional_function_argument_list optional_function_type '>' $@67 */ + case 734: /* type_declaration_no_options: "function" '<' $@66 optional_function_argument_list optional_function_type '>' $@67 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tFunction); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-6])); @@ -10576,22 +10507,22 @@ YYLTYPE yylloc = yyloc_default; } break; - case 736: /* type_declaration_no_options: "lambda" */ + case 735: /* type_declaration_no_options: "lambda" */ { (yyval.pTypeDecl) = new TypeDecl(Type::tLambda); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[0])); } break; - case 737: /* $@68: %empty */ + case 736: /* $@68: %empty */ { yyextra->das_arrow_depth ++; } break; - case 738: /* $@69: %empty */ + case 737: /* $@69: %empty */ { yyextra->das_arrow_depth --; } break; - case 739: /* type_declaration_no_options: "lambda" '<' $@68 type_declaration '>' $@69 */ + case 738: /* type_declaration_no_options: "lambda" '<' $@68 type_declaration '>' $@69 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tLambda); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -10599,15 +10530,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 740: /* $@70: %empty */ + case 739: /* $@70: %empty */ { yyextra->das_arrow_depth ++; } break; - case 741: /* $@71: %empty */ + case 740: /* $@71: %empty */ { yyextra->das_arrow_depth --; } break; - case 742: /* type_declaration_no_options: "lambda" '<' $@70 optional_function_argument_list optional_function_type '>' $@71 */ + case 741: /* type_declaration_no_options: "lambda" '<' $@70 optional_function_argument_list optional_function_type '>' $@71 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tLambda); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-6])); @@ -10619,15 +10550,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 743: /* $@72: %empty */ + case 742: /* $@72: %empty */ { yyextra->das_arrow_depth ++; } break; - case 744: /* $@73: %empty */ + case 743: /* $@73: %empty */ { yyextra->das_arrow_depth --; } break; - case 745: /* type_declaration_no_options: "tuple" '<' $@72 tuple_type_list '>' $@73 */ + case 744: /* type_declaration_no_options: "tuple" '<' $@72 tuple_type_list '>' $@73 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tTuple); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -10636,15 +10567,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 746: /* $@74: %empty */ + case 745: /* $@74: %empty */ { yyextra->das_arrow_depth ++; } break; - case 747: /* $@75: %empty */ + case 746: /* $@75: %empty */ { yyextra->das_arrow_depth --; } break; - case 748: /* type_declaration_no_options: "variant" '<' $@74 variant_type_list '>' $@75 */ + case 747: /* type_declaration_no_options: "variant" '<' $@74 variant_type_list '>' $@75 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tVariant); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -10653,13 +10584,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 749: /* type_declaration: type_declaration_no_options */ + case 748: /* type_declaration: type_declaration_no_options */ { (yyval.pTypeDecl) = (yyvsp[0].pTypeDecl); } break; - case 750: /* type_declaration: type_declaration '|' type_declaration_no_options */ + case 749: /* type_declaration: type_declaration '|' type_declaration_no_options */ { if ( (yyvsp[-2].pTypeDecl)->baseType==Type::option ) { (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); @@ -10673,7 +10604,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 751: /* type_declaration: type_declaration '|' '#' */ + case 750: /* type_declaration: type_declaration '|' '#' */ { if ( (yyvsp[-2].pTypeDecl)->baseType==Type::option ) { (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); @@ -10689,11 +10620,11 @@ YYLTYPE yylloc = yyloc_default; } break; - case 752: /* $@76: %empty */ + case 751: /* $@76: %empty */ { yyextra->das_need_oxford_comma=false; } break; - case 753: /* $@77: %empty */ + case 752: /* $@77: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[0])); @@ -10702,7 +10633,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 754: /* $@78: %empty */ + case 753: /* $@78: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[-2])); @@ -10711,7 +10642,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 755: /* $@79: %empty */ + case 754: /* $@79: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[-4])); @@ -10720,7 +10651,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 756: /* tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" $@77 "begin of code block" $@78 tuple_alias_type_list $@79 "end of code block" */ + case 755: /* tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" $@77 "begin of code block" $@78 tuple_alias_type_list $@79 "end of code block" */ { auto vtype = make_smart(Type::tTuple); vtype->alias = *(yyvsp[-6].s); @@ -10740,11 +10671,11 @@ YYLTYPE yylloc = yyloc_default; } break; - case 757: /* $@80: %empty */ + case 756: /* $@80: %empty */ { yyextra->das_need_oxford_comma=false; } break; - case 758: /* $@81: %empty */ + case 757: /* $@81: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[0])); @@ -10753,7 +10684,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 759: /* $@82: %empty */ + case 758: /* $@82: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[-2])); @@ -10763,7 +10694,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 760: /* $@83: %empty */ + case 759: /* $@83: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[-4])); @@ -10772,7 +10703,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 761: /* variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" $@81 "begin of code block" $@82 variant_alias_type_list $@83 "end of code block" */ + case 760: /* variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" $@81 "begin of code block" $@82 variant_alias_type_list $@83 "end of code block" */ { auto vtype = make_smart(Type::tVariant); vtype->alias = *(yyvsp[-6].s); @@ -10792,11 +10723,11 @@ YYLTYPE yylloc = yyloc_default; } break; - case 762: /* $@84: %empty */ + case 761: /* $@84: %empty */ { yyextra->das_need_oxford_comma=false; } break; - case 763: /* $@85: %empty */ + case 762: /* $@85: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[0])); @@ -10805,7 +10736,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 764: /* $@86: %empty */ + case 763: /* $@86: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[-2])); @@ -10814,7 +10745,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 765: /* $@87: %empty */ + case 764: /* $@87: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[-4])); @@ -10823,7 +10754,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 766: /* bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" $@85 "begin of code block" $@86 bitfield_alias_bits $@87 "end of code block" */ + case 765: /* bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" $@85 "begin of code block" $@86 bitfield_alias_bits $@87 "end of code block" */ { auto btype = make_smart(Type::tBitfield); btype->alias = *(yyvsp[-6].s); @@ -10847,27 +10778,27 @@ YYLTYPE yylloc = yyloc_default; } break; - case 767: /* make_decl: make_struct_decl */ + case 766: /* make_decl: make_struct_decl */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 768: /* make_decl: make_dim_decl */ + case 767: /* make_decl: make_dim_decl */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 769: /* make_decl: make_table_decl */ + case 768: /* make_decl: make_table_decl */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 770: /* make_decl: array_comprehension */ + case 769: /* make_decl: array_comprehension */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 771: /* make_decl: make_tuple_call */ + case 770: /* make_decl: make_tuple_call */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 772: /* make_struct_fields: "name" copy_or_move expr */ + case 771: /* make_struct_fields: "name" copy_or_move expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-2])),*(yyvsp[-2].s),ExpressionPtr((yyvsp[0].pExpression)),(yyvsp[-1].b),false); delete (yyvsp[-2].s); @@ -10877,7 +10808,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 773: /* make_struct_fields: "name" ":=" expr */ + case 772: /* make_struct_fields: "name" ":=" expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-2])),*(yyvsp[-2].s),ExpressionPtr((yyvsp[0].pExpression)),false,true); delete (yyvsp[-2].s); @@ -10887,7 +10818,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 774: /* make_struct_fields: make_struct_fields ',' "name" copy_or_move expr */ + case 773: /* make_struct_fields: make_struct_fields ',' "name" copy_or_move expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-2])),*(yyvsp[-2].s),ExpressionPtr((yyvsp[0].pExpression)),(yyvsp[-1].b),false); delete (yyvsp[-2].s); @@ -10896,7 +10827,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 775: /* make_struct_fields: make_struct_fields ',' "name" ":=" expr */ + case 774: /* make_struct_fields: make_struct_fields ',' "name" ":=" expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-2])),*(yyvsp[-2].s),ExpressionPtr((yyvsp[0].pExpression)),false,true); delete (yyvsp[-2].s); @@ -10905,7 +10836,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 776: /* make_struct_fields: "$f" '(' expr ')' copy_or_move expr */ + case 775: /* make_struct_fields: "$f" '(' expr ')' copy_or_move expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-3])),"``MACRO``TAG``FIELD``",ExpressionPtr((yyvsp[0].pExpression)),(yyvsp[-1].b),false); mfd->tag = ExpressionPtr((yyvsp[-3].pExpression)); @@ -10915,7 +10846,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 777: /* make_struct_fields: "$f" '(' expr ')' ":=" expr */ + case 776: /* make_struct_fields: "$f" '(' expr ')' ":=" expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-3])),"``MACRO``TAG``FIELD``",ExpressionPtr((yyvsp[0].pExpression)),false,true); mfd->tag = ExpressionPtr((yyvsp[-3].pExpression)); @@ -10925,7 +10856,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 778: /* make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' copy_or_move expr */ + case 777: /* make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' copy_or_move expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-3])),"``MACRO``TAG``FIELD``",ExpressionPtr((yyvsp[0].pExpression)),(yyvsp[-1].b),false); mfd->tag = ExpressionPtr((yyvsp[-3].pExpression)); @@ -10934,7 +10865,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 779: /* make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' ":=" expr */ + case 778: /* make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' ":=" expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-3])),"``MACRO``TAG``FIELD``",ExpressionPtr((yyvsp[0].pExpression)),false,true); mfd->tag = ExpressionPtr((yyvsp[-3].pExpression)); @@ -10943,7 +10874,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 780: /* make_struct_single: make_struct_fields */ + case 779: /* make_struct_single: make_struct_fields */ { auto msd = new ExprMakeStruct(); msd->structs.push_back(MakeStructPtr((yyvsp[0].pMakeStruct))); @@ -10951,7 +10882,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 781: /* make_struct_dim: make_struct_fields */ + case 780: /* make_struct_dim: make_struct_fields */ { auto msd = new ExprMakeStruct(); msd->structs.push_back(MakeStructPtr((yyvsp[0].pMakeStruct))); @@ -10959,30 +10890,30 @@ YYLTYPE yylloc = yyloc_default; } break; - case 782: /* make_struct_dim: make_struct_dim "end of expression" make_struct_fields */ + case 781: /* make_struct_dim: make_struct_dim "end of expression" make_struct_fields */ { ((ExprMakeStruct *) (yyvsp[-2].pExpression))->structs.push_back(MakeStructPtr((yyvsp[0].pMakeStruct))); (yyval.pExpression) = (yyvsp[-2].pExpression); } break; - case 783: /* optional_block: %empty */ + case 782: /* optional_block: %empty */ { (yyval.pExpression) = nullptr; } break; - case 784: /* optional_block: "where" expr_block */ + case 783: /* optional_block: "where" expr_block */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 797: /* use_initializer: %empty */ + case 796: /* use_initializer: %empty */ { (yyval.b) = true; } break; - case 798: /* use_initializer: "uninitialized" */ + case 797: /* use_initializer: "uninitialized" */ { (yyval.b) = false; } break; - case 799: /* make_struct_decl: "[[" type_declaration_no_options make_struct_dim optional_block optional_trailing_delim_sqr_sqr */ + case 798: /* make_struct_decl: "[[" type_declaration_no_options make_struct_dim optional_block optional_trailing_delim_sqr_sqr */ { ((ExprMakeStruct *)(yyvsp[-2].pExpression))->makeType = TypeDeclPtr((yyvsp[-3].pTypeDecl)); ((ExprMakeStruct *)(yyvsp[-2].pExpression))->block = (yyvsp[-1].pExpression); @@ -10991,7 +10922,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 800: /* make_struct_decl: "[[" type_declaration_no_options optional_block optional_trailing_delim_sqr_sqr */ + case 799: /* make_struct_decl: "[[" type_declaration_no_options optional_block optional_trailing_delim_sqr_sqr */ { auto msd = new ExprMakeStruct(); msd->makeType = TypeDeclPtr((yyvsp[-2].pTypeDecl)); @@ -11001,7 +10932,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 801: /* make_struct_decl: "[[" type_declaration_no_options '(' ')' optional_block optional_trailing_delim_sqr_sqr */ + case 800: /* make_struct_decl: "[[" type_declaration_no_options '(' ')' optional_block optional_trailing_delim_sqr_sqr */ { auto msd = new ExprMakeStruct(); msd->makeType = TypeDeclPtr((yyvsp[-4].pTypeDecl)); @@ -11012,7 +10943,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 802: /* make_struct_decl: "[[" type_declaration_no_options '(' ')' make_struct_dim optional_block optional_trailing_delim_sqr_sqr */ + case 801: /* make_struct_decl: "[[" type_declaration_no_options '(' ')' make_struct_dim optional_block optional_trailing_delim_sqr_sqr */ { ((ExprMakeStruct *)(yyvsp[-2].pExpression))->makeType = TypeDeclPtr((yyvsp[-5].pTypeDecl)); ((ExprMakeStruct *)(yyvsp[-2].pExpression))->useInitializer = true; @@ -11022,7 +10953,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 803: /* make_struct_decl: "[{" type_declaration_no_options make_struct_dim optional_block optional_trailing_delim_cur_sqr */ + case 802: /* make_struct_decl: "[{" type_declaration_no_options make_struct_dim optional_block optional_trailing_delim_cur_sqr */ { ((ExprMakeStruct *)(yyvsp[-2].pExpression))->makeType = TypeDeclPtr((yyvsp[-3].pTypeDecl)); ((ExprMakeStruct *)(yyvsp[-2].pExpression))->block = (yyvsp[-1].pExpression); @@ -11033,7 +10964,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 804: /* make_struct_decl: "[{" type_declaration_no_options '(' ')' make_struct_dim optional_block optional_trailing_delim_cur_sqr */ + case 803: /* make_struct_decl: "[{" type_declaration_no_options '(' ')' make_struct_dim optional_block optional_trailing_delim_cur_sqr */ { ((ExprMakeStruct *)(yyvsp[-2].pExpression))->makeType = TypeDeclPtr((yyvsp[-5].pTypeDecl)); ((ExprMakeStruct *)(yyvsp[-2].pExpression))->useInitializer = true; @@ -11045,15 +10976,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 805: /* $@88: %empty */ + case 804: /* $@88: %empty */ { yyextra->das_force_oxford_comma=true; yyextra->das_arrow_depth ++; } break; - case 806: /* $@89: %empty */ + case 805: /* $@89: %empty */ { yyextra->das_arrow_depth --; } break; - case 807: /* make_struct_decl: "struct" '<' $@88 type_declaration_no_options '>' $@89 '(' use_initializer make_struct_dim ')' */ + case 806: /* make_struct_decl: "struct" '<' $@88 type_declaration_no_options '>' $@89 '(' use_initializer make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-9])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-6].pTypeDecl)); @@ -11064,15 +10995,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 808: /* $@90: %empty */ + case 807: /* $@90: %empty */ { yyextra->das_force_oxford_comma=true; yyextra->das_arrow_depth ++; } break; - case 809: /* $@91: %empty */ + case 808: /* $@91: %empty */ { yyextra->das_arrow_depth --; } break; - case 810: /* make_struct_decl: "class" '<' $@90 type_declaration_no_options '>' $@91 '(' use_initializer make_struct_dim ')' */ + case 809: /* make_struct_decl: "class" '<' $@90 type_declaration_no_options '>' $@91 '(' use_initializer make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-9])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-6].pTypeDecl)); @@ -11082,15 +11013,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 811: /* $@92: %empty */ + case 810: /* $@92: %empty */ { yyextra->das_force_oxford_comma=true; yyextra->das_arrow_depth ++; } break; - case 812: /* $@93: %empty */ + case 811: /* $@93: %empty */ { yyextra->das_arrow_depth --; } break; - case 813: /* make_struct_decl: "variant" '<' $@92 type_declaration_no_options '>' $@93 '(' make_struct_dim ')' */ + case 812: /* make_struct_decl: "variant" '<' $@92 type_declaration_no_options '>' $@93 '(' make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-8])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-5].pTypeDecl)); @@ -11100,15 +11031,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 814: /* $@94: %empty */ + case 813: /* $@94: %empty */ { yyextra->das_arrow_depth ++; } break; - case 815: /* $@95: %empty */ + case 814: /* $@95: %empty */ { yyextra->das_arrow_depth --; } break; - case 816: /* make_struct_decl: "default" '<' $@94 type_declaration_no_options '>' $@95 use_initializer */ + case 815: /* make_struct_decl: "default" '<' $@94 type_declaration_no_options '>' $@95 use_initializer */ { auto msd = new ExprMakeStruct(); msd->at = tokAt(scanner,(yylsp[-6])); @@ -11119,13 +11050,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 817: /* make_tuple: expr */ + case 816: /* make_tuple: expr */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 818: /* make_tuple: expr "=>" expr */ + case 817: /* make_tuple: expr "=>" expr */ { ExprMakeTuple * mt = new ExprMakeTuple(tokAt(scanner,(yylsp[-1]))); mt->values.push_back(ExpressionPtr((yyvsp[-2].pExpression))); @@ -11134,7 +11065,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 819: /* make_tuple: make_tuple ',' expr */ + case 818: /* make_tuple: make_tuple ',' expr */ { ExprMakeTuple * mt; if ( (yyvsp[-2].pExpression)->rtti_isMakeTuple() ) { @@ -11148,7 +11079,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 820: /* make_map_tuple: expr "=>" expr */ + case 819: /* make_map_tuple: expr "=>" expr */ { ExprMakeTuple * mt = new ExprMakeTuple(tokAt(scanner,(yylsp[-1]))); mt->values.push_back(ExpressionPtr((yyvsp[-2].pExpression))); @@ -11157,13 +11088,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 821: /* make_map_tuple: expr */ + case 820: /* make_map_tuple: expr */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 822: /* make_tuple_call: "tuple" '(' expr_list optional_comma ')' */ + case 821: /* make_tuple_call: "tuple" '(' expr_list optional_comma ')' */ { auto mkt = new ExprMakeTuple(tokAt(scanner,(yylsp[-4]))); mkt->values = sequenceToList((yyvsp[-2].pExpression)); @@ -11172,15 +11103,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 823: /* $@96: %empty */ + case 822: /* $@96: %empty */ { yyextra->das_force_oxford_comma=true; yyextra->das_arrow_depth ++; } break; - case 824: /* $@97: %empty */ + case 823: /* $@97: %empty */ { yyextra->das_arrow_depth --; } break; - case 825: /* make_tuple_call: "tuple" '<' $@96 type_declaration_no_options '>' $@97 '(' use_initializer make_struct_dim ')' */ + case 824: /* make_tuple_call: "tuple" '<' $@96 type_declaration_no_options '>' $@97 '(' use_initializer make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-9])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-6].pTypeDecl)); @@ -11190,7 +11121,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 826: /* make_dim: make_tuple */ + case 825: /* make_dim: make_tuple */ { auto mka = new ExprMakeArray(); mka->values.push_back(ExpressionPtr((yyvsp[0].pExpression))); @@ -11198,14 +11129,14 @@ YYLTYPE yylloc = yyloc_default; } break; - case 827: /* make_dim: make_dim "end of expression" make_tuple */ + case 826: /* make_dim: make_dim "end of expression" make_tuple */ { ((ExprMakeArray *) (yyvsp[-2].pExpression))->values.push_back(ExpressionPtr((yyvsp[0].pExpression))); (yyval.pExpression) = (yyvsp[-2].pExpression); } break; - case 828: /* make_dim_decl: '[' expr_list optional_comma ']' */ + case 827: /* make_dim_decl: '[' expr_list optional_comma ']' */ { auto mka = make_smart(tokAt(scanner,(yylsp[-3]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -11216,7 +11147,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 829: /* make_dim_decl: "[[" type_declaration_no_options make_dim optional_trailing_semicolon_sqr_sqr */ + case 828: /* make_dim_decl: "[[" type_declaration_no_options make_dim optional_trailing_semicolon_sqr_sqr */ { ((ExprMakeArray *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-2].pTypeDecl)); (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-3])); @@ -11224,7 +11155,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 830: /* make_dim_decl: "[{" type_declaration_no_options make_dim optional_trailing_semicolon_cur_sqr */ + case 829: /* make_dim_decl: "[{" type_declaration_no_options make_dim optional_trailing_semicolon_cur_sqr */ { ((ExprMakeArray *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-2].pTypeDecl)); (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-3])); @@ -11234,15 +11165,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 831: /* $@98: %empty */ + case 830: /* $@98: %empty */ { yyextra->das_arrow_depth ++; } break; - case 832: /* $@99: %empty */ + case 831: /* $@99: %empty */ { yyextra->das_arrow_depth --; } break; - case 833: /* make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options '>' $@99 '(' use_initializer make_struct_dim ')' */ + case 832: /* make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options '>' $@99 '(' use_initializer make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-10])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-6].pTypeDecl)); @@ -11255,15 +11186,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 834: /* $@100: %empty */ + case 833: /* $@100: %empty */ { yyextra->das_arrow_depth ++; } break; - case 835: /* $@101: %empty */ + case 834: /* $@101: %empty */ { yyextra->das_arrow_depth --; } break; - case 836: /* make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options '>' $@101 '(' use_initializer make_struct_dim ')' */ + case 835: /* make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options '>' $@101 '(' use_initializer make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-10])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-6].pTypeDecl)); @@ -11276,15 +11207,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 837: /* $@102: %empty */ + case 836: /* $@102: %empty */ { yyextra->das_arrow_depth ++; } break; - case 838: /* $@103: %empty */ + case 837: /* $@103: %empty */ { yyextra->das_arrow_depth --; } break; - case 839: /* make_dim_decl: "array" "variant" '<' $@102 type_declaration_no_options '>' $@103 '(' make_struct_dim ')' */ + case 838: /* make_dim_decl: "array" "variant" '<' $@102 type_declaration_no_options '>' $@103 '(' make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-9])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-5].pTypeDecl)); @@ -11297,7 +11228,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 840: /* make_dim_decl: "array" '(' expr_list optional_comma ')' */ + case 839: /* make_dim_decl: "array" '(' expr_list optional_comma ')' */ { auto mka = make_smart(tokAt(scanner,(yylsp[-4]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -11308,15 +11239,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 841: /* $@104: %empty */ + case 840: /* $@104: %empty */ { yyextra->das_arrow_depth ++; } break; - case 842: /* $@105: %empty */ + case 841: /* $@105: %empty */ { yyextra->das_arrow_depth --; } break; - case 843: /* make_dim_decl: "array" '<' $@104 type_declaration_no_options '>' $@105 '(' expr_list optional_comma ')' */ + case 842: /* make_dim_decl: "array" '<' $@104 type_declaration_no_options '>' $@105 '(' expr_list optional_comma ')' */ { auto mka = make_smart(tokAt(scanner,(yylsp[-9]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -11327,7 +11258,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 844: /* make_dim_decl: "fixed_array" '(' expr_list optional_comma ')' */ + case 843: /* make_dim_decl: "fixed_array" '(' expr_list optional_comma ')' */ { auto mka = new ExprMakeArray(tokAt(scanner,(yylsp[-4]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -11337,15 +11268,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 845: /* $@106: %empty */ + case 844: /* $@106: %empty */ { yyextra->das_arrow_depth ++; } break; - case 846: /* $@107: %empty */ + case 845: /* $@107: %empty */ { yyextra->das_arrow_depth --; } break; - case 847: /* make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options '>' $@107 '(' expr_list optional_comma ')' */ + case 846: /* make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options '>' $@107 '(' expr_list optional_comma ')' */ { auto mka = new ExprMakeArray(tokAt(scanner,(yylsp[-9]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -11355,7 +11286,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 848: /* make_table: make_map_tuple */ + case 847: /* make_table: make_map_tuple */ { auto mka = new ExprMakeArray(); mka->values.push_back(ExpressionPtr((yyvsp[0].pExpression))); @@ -11363,26 +11294,26 @@ YYLTYPE yylloc = yyloc_default; } break; - case 849: /* make_table: make_table "end of expression" make_map_tuple */ + case 848: /* make_table: make_table "end of expression" make_map_tuple */ { ((ExprMakeArray *) (yyvsp[-2].pExpression))->values.push_back(ExpressionPtr((yyvsp[0].pExpression))); (yyval.pExpression) = (yyvsp[-2].pExpression); } break; - case 850: /* expr_map_tuple_list: make_map_tuple */ + case 849: /* expr_map_tuple_list: make_map_tuple */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 851: /* expr_map_tuple_list: expr_map_tuple_list ',' make_map_tuple */ + case 850: /* expr_map_tuple_list: expr_map_tuple_list ',' make_map_tuple */ { (yyval.pExpression) = new ExprSequence(tokAt(scanner,(yylsp[-2])),ExpressionPtr((yyvsp[-2].pExpression)),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 852: /* make_table_decl: "begin of code block" expr_map_tuple_list optional_comma "end of code block" */ + case 851: /* make_table_decl: "begin of code block" expr_map_tuple_list optional_comma "end of code block" */ { auto mka = make_smart(tokAt(scanner,(yylsp[-3]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -11393,7 +11324,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 853: /* make_table_decl: "{{" make_table optional_trailing_semicolon_cur_cur */ + case 852: /* make_table_decl: "{{" make_table optional_trailing_semicolon_cur_cur */ { auto mkt = make_smart(Type::autoinfer); mkt->dim.push_back(TypeDecl::dimAuto); @@ -11405,7 +11336,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 854: /* make_table_decl: "table" '(' expr_map_tuple_list optional_comma ')' */ + case 853: /* make_table_decl: "table" '(' expr_map_tuple_list optional_comma ')' */ { auto mka = make_smart(tokAt(scanner,(yylsp[-4]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -11416,7 +11347,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 855: /* make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' */ + case 854: /* make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' */ { auto mka = make_smart(tokAt(scanner,(yylsp[-7]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -11427,7 +11358,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 856: /* make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' */ + case 855: /* make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' */ { auto mka = make_smart(tokAt(scanner,(yylsp[-9]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -11440,53 +11371,53 @@ YYLTYPE yylloc = yyloc_default; } break; - case 857: /* array_comprehension_where: %empty */ + case 856: /* array_comprehension_where: %empty */ { (yyval.pExpression) = nullptr; } break; - case 858: /* array_comprehension_where: "end of expression" "where" expr */ + case 857: /* array_comprehension_where: "end of expression" "where" expr */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 859: /* optional_comma: %empty */ + case 858: /* optional_comma: %empty */ { (yyval.b) = false; } break; - case 860: /* optional_comma: ',' */ + case 859: /* optional_comma: ',' */ { (yyval.b) = true; } break; - case 861: /* array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' */ + case 860: /* array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' */ { (yyval.pExpression) = ast_arrayComprehension(scanner,tokAt(scanner,(yylsp[-7])),(yyvsp[-6].pNameWithPosList),(yyvsp[-4].pExpression),(yyvsp[-2].pExpression),(yyvsp[-1].pExpression),tokRangeAt(scanner,(yylsp[-2]),(yylsp[0])),false,false); } break; - case 862: /* array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' */ + case 861: /* array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' */ { (yyval.pExpression) = ast_arrayComprehension(scanner,tokAt(scanner,(yylsp[-7])),(yyvsp[-6].pNameWithPosList),(yyvsp[-4].pExpression),(yyvsp[-2].pExpression),(yyvsp[-1].pExpression),tokRangeAt(scanner,(yylsp[-2]),(yylsp[0])),true,false); } break; - case 863: /* array_comprehension: "[[" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' ']' */ + case 862: /* array_comprehension: "[[" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' ']' */ { (yyval.pExpression) = ast_arrayComprehension(scanner,tokAt(scanner,(yylsp[-8])),(yyvsp[-7].pNameWithPosList),(yyvsp[-5].pExpression),(yyvsp[-3].pExpression),(yyvsp[-2].pExpression),tokRangeAt(scanner,(yylsp[-3]),(yylsp[0])),true,false); } break; - case 864: /* array_comprehension: "[{" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where "end of code block" ']' */ + case 863: /* array_comprehension: "[{" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where "end of code block" ']' */ { (yyval.pExpression) = ast_arrayComprehension(scanner,tokAt(scanner,(yylsp[-8])),(yyvsp[-7].pNameWithPosList),(yyvsp[-5].pExpression),(yyvsp[-3].pExpression),(yyvsp[-2].pExpression),tokRangeAt(scanner,(yylsp[-3]),(yylsp[0])),false,false); } break; - case 865: /* array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" */ + case 864: /* array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" */ { (yyval.pExpression) = ast_arrayComprehension(scanner,tokAt(scanner,(yylsp[-7])),(yyvsp[-6].pNameWithPosList),(yyvsp[-4].pExpression),(yyvsp[-2].pExpression),(yyvsp[-1].pExpression),tokRangeAt(scanner,(yylsp[-2]),(yylsp[0])),false,true); } break; - case 866: /* array_comprehension: "{{" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" "end of code block" */ + case 865: /* array_comprehension: "{{" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" "end of code block" */ { (yyval.pExpression) = ast_arrayComprehension(scanner,tokAt(scanner,(yylsp[-8])),(yyvsp[-7].pNameWithPosList),(yyvsp[-5].pExpression),(yyvsp[-3].pExpression),(yyvsp[-2].pExpression),tokRangeAt(scanner,(yylsp[-3]),(yylsp[0])),true,true); } diff --git a/src/parser/ds_parser.output b/src/parser/ds_parser.output index 774a3fa44..e0334fad6 100644 --- a/src/parser/ds_parser.output +++ b/src/parser/ds_parser.output @@ -4,17 +4,16 @@ Terminals unused in grammar "end of failed eader macro" -State 59 conflicts: 1 shift/reduce -State 319 conflicts: 1 shift/reduce -State 416 conflicts: 1 shift/reduce +State 317 conflicts: 1 shift/reduce +State 414 conflicts: 1 shift/reduce +State 518 conflicts: 2 shift/reduce State 520 conflicts: 2 shift/reduce -State 522 conflicts: 2 shift/reduce -State 628 conflicts: 1 shift/reduce -State 848 conflicts: 1 shift/reduce -State 935 conflicts: 2 shift/reduce -State 1047 conflicts: 1 shift/reduce -State 1158 conflicts: 1 shift/reduce -State 1429 conflicts: 1 shift/reduce +State 626 conflicts: 1 shift/reduce +State 846 conflicts: 1 shift/reduce +State 933 conflicts: 2 shift/reduce +State 1045 conflicts: 1 shift/reduce +State 1156 conflicts: 1 shift/reduce +State 1427 conflicts: 1 shift/reduce Grammar @@ -360,1059 +359,1058 @@ Grammar 264 name_in_namespace: "name" 265 | "name" "::" "name" - 266 | "::" "name" - 267 expression_delete: "delete" expr - 268 | "delete" "explicit" expr + 266 expression_delete: "delete" expr + 267 | "delete" "explicit" expr - 269 $@11: %empty + 268 $@11: %empty - 270 $@12: %empty + 269 $@12: %empty - 271 new_type_declaration: '<' $@11 type_declaration '>' $@12 - 272 | structure_type_declaration + 270 new_type_declaration: '<' $@11 type_declaration '>' $@12 + 271 | structure_type_declaration - 273 expr_new: "new" new_type_declaration - 274 | "new" new_type_declaration '(' use_initializer ')' - 275 | "new" new_type_declaration '(' expr_list ')' - 276 | "new" new_type_declaration '(' use_initializer make_struct_single ')' - 277 | "new" make_decl + 272 expr_new: "new" new_type_declaration + 273 | "new" new_type_declaration '(' use_initializer ')' + 274 | "new" new_type_declaration '(' expr_list ')' + 275 | "new" new_type_declaration '(' use_initializer make_struct_single ')' + 276 | "new" make_decl - 278 expression_break: "break" + 277 expression_break: "break" - 279 expression_continue: "continue" + 278 expression_continue: "continue" - 280 expression_return_no_pipe: "return" - 281 | "return" expr_list - 282 | "return" "<-" expr_list + 279 expression_return_no_pipe: "return" + 280 | "return" expr_list + 281 | "return" "<-" expr_list - 283 expression_return: expression_return_no_pipe "end of expression" - 284 | "return" expr_pipe - 285 | "return" "<-" expr_pipe + 282 expression_return: expression_return_no_pipe "end of expression" + 283 | "return" expr_pipe + 284 | "return" "<-" expr_pipe - 286 expression_yield_no_pipe: "yield" expr - 287 | "yield" "<-" expr + 285 expression_yield_no_pipe: "yield" expr + 286 | "yield" "<-" expr - 288 expression_yield: expression_yield_no_pipe "end of expression" - 289 | "yield" expr_pipe - 290 | "yield" "<-" expr_pipe + 287 expression_yield: expression_yield_no_pipe "end of expression" + 288 | "yield" expr_pipe + 289 | "yield" "<-" expr_pipe - 291 expression_try_catch: "try" expression_block "recover" expression_block + 290 expression_try_catch: "try" expression_block "recover" expression_block - 292 kwd_let_var_or_nothing: "let" - 293 | "var" - 294 | %empty + 291 kwd_let_var_or_nothing: "let" + 292 | "var" + 293 | %empty - 295 kwd_let: "let" - 296 | "var" + 294 kwd_let: "let" + 295 | "var" - 297 optional_in_scope: "inscope" - 298 | %empty + 296 optional_in_scope: "inscope" + 297 | %empty - 299 tuple_expansion: "name" - 300 | tuple_expansion ',' "name" + 298 tuple_expansion: "name" + 299 | tuple_expansion ',' "name" - 301 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 302 | '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 303 | "[[" tuple_expansion ']' ']' optional_ref copy_or_move_or_clone expr "end of expression" - 304 | '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" + 300 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 301 | '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 302 | "[[" tuple_expansion ']' ']' optional_ref copy_or_move_or_clone expr "end of expression" + 303 | '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" - 305 expression_let: kwd_let optional_in_scope let_variable_declaration - 306 | kwd_let optional_in_scope tuple_expansion_variable_declaration + 304 expression_let: kwd_let optional_in_scope let_variable_declaration + 305 | kwd_let optional_in_scope tuple_expansion_variable_declaration - 307 $@13: %empty + 306 $@13: %empty - 308 $@14: %empty + 307 $@14: %empty - 309 expr_cast: "cast" '<' $@13 type_declaration_no_options '>' $@14 expr + 308 expr_cast: "cast" '<' $@13 type_declaration_no_options '>' $@14 expr - 310 $@15: %empty + 309 $@15: %empty - 311 $@16: %empty + 310 $@16: %empty - 312 expr_cast: "upcast" '<' $@15 type_declaration_no_options '>' $@16 expr + 311 expr_cast: "upcast" '<' $@15 type_declaration_no_options '>' $@16 expr - 313 $@17: %empty + 312 $@17: %empty - 314 $@18: %empty + 313 $@18: %empty - 315 expr_cast: "reinterpret" '<' $@17 type_declaration_no_options '>' $@18 expr + 314 expr_cast: "reinterpret" '<' $@17 type_declaration_no_options '>' $@18 expr - 316 $@19: %empty + 315 $@19: %empty - 317 $@20: %empty + 316 $@20: %empty - 318 expr_type_decl: "type" '<' $@19 type_declaration '>' $@20 + 317 expr_type_decl: "type" '<' $@19 type_declaration '>' $@20 - 319 expr_type_info: "typeinfo" '(' name_in_namespace expr ')' - 320 | "typeinfo" '(' name_in_namespace '<' "name" '>' expr ')' - 321 | "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' + 318 expr_type_info: "typeinfo" '(' name_in_namespace expr ')' + 319 | "typeinfo" '(' name_in_namespace '<' "name" '>' expr ')' + 320 | "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' - 322 expr_list: expr - 323 | expr_list ',' expr + 321 expr_list: expr + 322 | expr_list ',' expr - 324 block_or_simple_block: expression_block - 325 | "=>" expr - 326 | "=>" "<-" expr + 323 block_or_simple_block: expression_block + 324 | "=>" expr + 325 | "=>" "<-" expr - 327 block_or_lambda: '$' - 328 | '@' - 329 | '@' '@' + 326 block_or_lambda: '$' + 327 | '@' + 328 | '@' '@' - 330 capture_entry: '&' "name" - 331 | '=' "name" - 332 | "<-" "name" - 333 | ":=" "name" + 329 capture_entry: '&' "name" + 330 | '=' "name" + 331 | "<-" "name" + 332 | ":=" "name" - 334 capture_list: capture_entry - 335 | capture_list ',' capture_entry + 333 capture_list: capture_entry + 334 | capture_list ',' capture_entry - 336 optional_capture_list: %empty - 337 | "[[" capture_list ']' ']' + 335 optional_capture_list: %empty + 336 | "[[" capture_list ']' ']' - 338 expr_block: expression_block - 339 | block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block + 337 expr_block: expression_block + 338 | block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block - 340 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block + 339 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block - 341 $@21: %empty + 340 $@21: %empty - 342 expr_full_block_assumed_piped: block_or_lambda $@21 optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block + 341 expr_full_block_assumed_piped: block_or_lambda $@21 optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block - 343 expr_numeric_const: "integer constant" - 344 | "unsigned integer constant" - 345 | "long integer constant" - 346 | "unsigned long integer constant" - 347 | "unsigned int8 constant" - 348 | "floating point constant" - 349 | "double constant" + 342 expr_numeric_const: "integer constant" + 343 | "unsigned integer constant" + 344 | "long integer constant" + 345 | "unsigned long integer constant" + 346 | "unsigned int8 constant" + 347 | "floating point constant" + 348 | "double constant" - 350 expr_assign: expr - 351 | expr '=' expr - 352 | expr "<-" expr - 353 | expr ":=" expr - 354 | expr "&=" expr - 355 | expr "|=" expr - 356 | expr "^=" expr - 357 | expr "&&=" expr - 358 | expr "||=" expr - 359 | expr "^^=" expr - 360 | expr "+=" expr - 361 | expr "-=" expr - 362 | expr "*=" expr - 363 | expr "/=" expr - 364 | expr "%=" expr - 365 | expr "<<=" expr - 366 | expr ">>=" expr - 367 | expr "<<<=" expr - 368 | expr ">>>=" expr - - 369 expr_assign_pipe_right: "@ <|" expr_block - 370 | "@@ <|" expr_block - 371 | "$ <|" expr_block - 372 | expr_call_pipe - - 373 expr_assign_pipe: expr '=' expr_assign_pipe_right - 374 | expr "<-" expr_assign_pipe_right - 375 | expr "&=" expr_assign_pipe_right - 376 | expr "|=" expr_assign_pipe_right - 377 | expr "^=" expr_assign_pipe_right - 378 | expr "&&=" expr_assign_pipe_right - 379 | expr "||=" expr_assign_pipe_right - 380 | expr "^^=" expr_assign_pipe_right - 381 | expr "+=" expr_assign_pipe_right - 382 | expr "-=" expr_assign_pipe_right - 383 | expr "*=" expr_assign_pipe_right - 384 | expr "/=" expr_assign_pipe_right - 385 | expr "%=" expr_assign_pipe_right - 386 | expr "<<=" expr_assign_pipe_right - 387 | expr ">>=" expr_assign_pipe_right - 388 | expr "<<<=" expr_assign_pipe_right - 389 | expr ">>>=" expr_assign_pipe_right - - 390 expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' ')' - 391 | name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' ')' - - 392 expr_method_call: expr "->" "name" '(' ')' - 393 | expr "->" "name" '(' expr_list ')' - - 394 func_addr_name: name_in_namespace - 395 | "$i" '(' expr ')' - - 396 func_addr_expr: '@' '@' func_addr_name - - 397 $@22: %empty - - 398 $@23: %empty - - 399 func_addr_expr: '@' '@' '<' $@22 type_declaration_no_options '>' $@23 func_addr_name - - 400 $@24: %empty - - 401 $@25: %empty - - 402 func_addr_expr: '@' '@' '<' $@24 optional_function_argument_list optional_function_type '>' $@25 func_addr_name - - 403 expr_field: expr '.' "name" - 404 | expr '.' '.' "name" - 405 | expr '.' "name" '(' ')' - 406 | expr '.' "name" '(' expr_list ')' - - 407 $@26: %empty - - 408 $@27: %empty - - 409 expr_field: expr '.' $@26 error $@27 - - 410 expr_call: name_in_namespace '(' ')' - 411 | name_in_namespace '(' make_struct_single ')' - 412 | name_in_namespace '(' expr_list ')' - 413 | basic_type_declaration '(' ')' - 414 | basic_type_declaration '(' expr_list ')' - - 415 expr: "null" - 416 | name_in_namespace - 417 | expr_numeric_const - 418 | expr_reader - 419 | string_builder - 420 | make_decl - 421 | "true" - 422 | "false" - 423 | expr_field - 424 | expr_mtag - 425 | '!' expr - 426 | '~' expr - 427 | '+' expr - 428 | '-' expr - 429 | expr "<<" expr - 430 | expr ">>" expr - 431 | expr "<<<" expr - 432 | expr ">>>" expr - 433 | expr '+' expr - 434 | expr '-' expr - 435 | expr '*' expr - 436 | expr '/' expr - 437 | expr '%' expr - 438 | expr '<' expr - 439 | expr '>' expr - 440 | expr "==" expr - 441 | expr "!=" expr - 442 | expr "<=" expr - 443 | expr ">=" expr - 444 | expr '&' expr - 445 | expr '|' expr - 446 | expr '^' expr - 447 | expr "&&" expr - 448 | expr "||" expr - 449 | expr "^^" expr - 450 | expr ".." expr - 451 | "++" expr - 452 | "--" expr - 453 | expr "++" - 454 | expr "--" - 455 | '(' expr_list optional_comma ')' - 456 | expr '[' expr ']' - 457 | expr '.' '[' expr ']' - 458 | expr "?[" expr ']' - 459 | expr '.' "?[" expr ']' - 460 | expr "?." "name" - 461 | expr '.' "?." "name" - 462 | func_addr_expr - 463 | expr_call - 464 | '*' expr - 465 | "deref" '(' expr ')' - 466 | "addr" '(' expr ')' - 467 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' ')' - 468 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' - 469 | expr "??" expr - 470 | expr '?' expr ':' expr - - 471 $@28: %empty - - 472 $@29: %empty - - 473 expr: expr "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr "is" basic_type_declaration - 475 | expr "is" "name" - 476 | expr "as" "name" - - 477 $@30: %empty - - 478 $@31: %empty - - 479 expr: expr "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr "as" basic_type_declaration - 481 | expr '?' "as" "name" - - 482 $@32: %empty - - 483 $@33: %empty - - 484 expr: expr '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr '?' "as" basic_type_declaration - 486 | expr_type_info - 487 | expr_type_decl - 488 | expr_cast - 489 | expr_new - 490 | expr_method_call - 491 | expr_named_call - 492 | expr_full_block - 493 | expr "<|" expr - 494 | expr "|>" expr - 495 | expr "|>" basic_type_declaration - 496 | name_in_namespace "name" - 497 | "unsafe" '(' expr ')' - 498 | expression_keyword - - 499 expr_mtag: "$$" '(' expr ')' - 500 | "$i" '(' expr ')' - 501 | "$v" '(' expr ')' - 502 | "$b" '(' expr ')' - 503 | "$a" '(' expr ')' - 504 | "..." - 505 | "$c" '(' expr ')' '(' ')' - 506 | "$c" '(' expr ')' '(' expr_list ')' - 507 | expr '.' "$f" '(' expr ')' - 508 | expr "?." "$f" '(' expr ')' - 509 | expr '.' '.' "$f" '(' expr ')' - 510 | expr '.' "?." "$f" '(' expr ')' - 511 | expr "as" "$f" '(' expr ')' - 512 | expr '?' "as" "$f" '(' expr ')' - 513 | expr "is" "$f" '(' expr ')' - 514 | '@' '@' "$c" '(' expr ')' - - 515 optional_field_annotation: %empty - 516 | "[[" annotation_argument_list ']' ']' - 517 | metadata_argument_list - - 518 optional_override: %empty - 519 | "override" - 520 | "sealed" - - 521 optional_constant: %empty - 522 | "const" - - 523 optional_public_or_private_member_variable: %empty - 524 | "public" - 525 | "private" - - 526 optional_static_member_variable: %empty - 527 | "static" - - 528 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration - - 529 struct_variable_declaration_list: %empty + 349 expr_assign: expr + 350 | expr '=' expr + 351 | expr "<-" expr + 352 | expr ":=" expr + 353 | expr "&=" expr + 354 | expr "|=" expr + 355 | expr "^=" expr + 356 | expr "&&=" expr + 357 | expr "||=" expr + 358 | expr "^^=" expr + 359 | expr "+=" expr + 360 | expr "-=" expr + 361 | expr "*=" expr + 362 | expr "/=" expr + 363 | expr "%=" expr + 364 | expr "<<=" expr + 365 | expr ">>=" expr + 366 | expr "<<<=" expr + 367 | expr ">>>=" expr + + 368 expr_assign_pipe_right: "@ <|" expr_block + 369 | "@@ <|" expr_block + 370 | "$ <|" expr_block + 371 | expr_call_pipe + + 372 expr_assign_pipe: expr '=' expr_assign_pipe_right + 373 | expr "<-" expr_assign_pipe_right + 374 | expr "&=" expr_assign_pipe_right + 375 | expr "|=" expr_assign_pipe_right + 376 | expr "^=" expr_assign_pipe_right + 377 | expr "&&=" expr_assign_pipe_right + 378 | expr "||=" expr_assign_pipe_right + 379 | expr "^^=" expr_assign_pipe_right + 380 | expr "+=" expr_assign_pipe_right + 381 | expr "-=" expr_assign_pipe_right + 382 | expr "*=" expr_assign_pipe_right + 383 | expr "/=" expr_assign_pipe_right + 384 | expr "%=" expr_assign_pipe_right + 385 | expr "<<=" expr_assign_pipe_right + 386 | expr ">>=" expr_assign_pipe_right + 387 | expr "<<<=" expr_assign_pipe_right + 388 | expr ">>>=" expr_assign_pipe_right + + 389 expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' ')' + 390 | name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' ')' + + 391 expr_method_call: expr "->" "name" '(' ')' + 392 | expr "->" "name" '(' expr_list ')' + + 393 func_addr_name: name_in_namespace + 394 | "$i" '(' expr ')' + + 395 func_addr_expr: '@' '@' func_addr_name + + 396 $@22: %empty + + 397 $@23: %empty + + 398 func_addr_expr: '@' '@' '<' $@22 type_declaration_no_options '>' $@23 func_addr_name + + 399 $@24: %empty + + 400 $@25: %empty + + 401 func_addr_expr: '@' '@' '<' $@24 optional_function_argument_list optional_function_type '>' $@25 func_addr_name + + 402 expr_field: expr '.' "name" + 403 | expr '.' '.' "name" + 404 | expr '.' "name" '(' ')' + 405 | expr '.' "name" '(' expr_list ')' + + 406 $@26: %empty + + 407 $@27: %empty + + 408 expr_field: expr '.' $@26 error $@27 + + 409 expr_call: name_in_namespace '(' ')' + 410 | name_in_namespace '(' make_struct_single ')' + 411 | name_in_namespace '(' expr_list ')' + 412 | basic_type_declaration '(' ')' + 413 | basic_type_declaration '(' expr_list ')' + + 414 expr: "null" + 415 | name_in_namespace + 416 | expr_numeric_const + 417 | expr_reader + 418 | string_builder + 419 | make_decl + 420 | "true" + 421 | "false" + 422 | expr_field + 423 | expr_mtag + 424 | '!' expr + 425 | '~' expr + 426 | '+' expr + 427 | '-' expr + 428 | expr "<<" expr + 429 | expr ">>" expr + 430 | expr "<<<" expr + 431 | expr ">>>" expr + 432 | expr '+' expr + 433 | expr '-' expr + 434 | expr '*' expr + 435 | expr '/' expr + 436 | expr '%' expr + 437 | expr '<' expr + 438 | expr '>' expr + 439 | expr "==" expr + 440 | expr "!=" expr + 441 | expr "<=" expr + 442 | expr ">=" expr + 443 | expr '&' expr + 444 | expr '|' expr + 445 | expr '^' expr + 446 | expr "&&" expr + 447 | expr "||" expr + 448 | expr "^^" expr + 449 | expr ".." expr + 450 | "++" expr + 451 | "--" expr + 452 | expr "++" + 453 | expr "--" + 454 | '(' expr_list optional_comma ')' + 455 | expr '[' expr ']' + 456 | expr '.' '[' expr ']' + 457 | expr "?[" expr ']' + 458 | expr '.' "?[" expr ']' + 459 | expr "?." "name" + 460 | expr '.' "?." "name" + 461 | func_addr_expr + 462 | expr_call + 463 | '*' expr + 464 | "deref" '(' expr ')' + 465 | "addr" '(' expr ')' + 466 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' ')' + 467 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' + 468 | expr "??" expr + 469 | expr '?' expr ':' expr + + 470 $@28: %empty + + 471 $@29: %empty + + 472 expr: expr "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr "is" basic_type_declaration + 474 | expr "is" "name" + 475 | expr "as" "name" + + 476 $@30: %empty + + 477 $@31: %empty + + 478 expr: expr "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr "as" basic_type_declaration + 480 | expr '?' "as" "name" + + 481 $@32: %empty + + 482 $@33: %empty + + 483 expr: expr '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr '?' "as" basic_type_declaration + 485 | expr_type_info + 486 | expr_type_decl + 487 | expr_cast + 488 | expr_new + 489 | expr_method_call + 490 | expr_named_call + 491 | expr_full_block + 492 | expr "<|" expr + 493 | expr "|>" expr + 494 | expr "|>" basic_type_declaration + 495 | name_in_namespace "name" + 496 | "unsafe" '(' expr ')' + 497 | expression_keyword + + 498 expr_mtag: "$$" '(' expr ')' + 499 | "$i" '(' expr ')' + 500 | "$v" '(' expr ')' + 501 | "$b" '(' expr ')' + 502 | "$a" '(' expr ')' + 503 | "..." + 504 | "$c" '(' expr ')' '(' ')' + 505 | "$c" '(' expr ')' '(' expr_list ')' + 506 | expr '.' "$f" '(' expr ')' + 507 | expr "?." "$f" '(' expr ')' + 508 | expr '.' '.' "$f" '(' expr ')' + 509 | expr '.' "?." "$f" '(' expr ')' + 510 | expr "as" "$f" '(' expr ')' + 511 | expr '?' "as" "$f" '(' expr ')' + 512 | expr "is" "$f" '(' expr ')' + 513 | '@' '@' "$c" '(' expr ')' + + 514 optional_field_annotation: %empty + 515 | "[[" annotation_argument_list ']' ']' + 516 | metadata_argument_list + + 517 optional_override: %empty + 518 | "override" + 519 | "sealed" + + 520 optional_constant: %empty + 521 | "const" + + 522 optional_public_or_private_member_variable: %empty + 523 | "public" + 524 | "private" + + 525 optional_static_member_variable: %empty + 526 | "static" + + 527 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration + + 528 struct_variable_declaration_list: %empty - 530 $@34: %empty + 529 $@34: %empty - 531 struct_variable_declaration_list: struct_variable_declaration_list $@34 structure_variable_declaration "end of expression" + 530 struct_variable_declaration_list: struct_variable_declaration_list $@34 structure_variable_declaration "end of expression" - 532 $@35: %empty + 531 $@35: %empty - 533 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@35 function_declaration_header "end of expression" + 532 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@35 function_declaration_header "end of expression" - 534 $@36: %empty + 533 $@36: %empty - 535 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@36 function_declaration_header expression_block - 536 | struct_variable_declaration_list '[' annotation_list ']' "end of expression" + 534 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@36 function_declaration_header expression_block + 535 | struct_variable_declaration_list '[' annotation_list ']' "end of expression" - 537 function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing variable_declaration - 538 | "$a" '(' expr ')' + 536 function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing variable_declaration + 537 | "$a" '(' expr ')' - 539 function_argument_list: function_argument_declaration - 540 | function_argument_list "end of expression" function_argument_declaration + 538 function_argument_list: function_argument_declaration + 539 | function_argument_list "end of expression" function_argument_declaration - 541 tuple_type: type_declaration - 542 | "name" ':' type_declaration + 540 tuple_type: type_declaration + 541 | "name" ':' type_declaration - 543 tuple_type_list: tuple_type - 544 | tuple_type_list "end of expression" tuple_type + 542 tuple_type_list: tuple_type + 543 | tuple_type_list "end of expression" tuple_type - 545 tuple_alias_type_list: %empty - 546 | tuple_alias_type_list "end of expression" - 547 | tuple_alias_type_list tuple_type "end of expression" + 544 tuple_alias_type_list: %empty + 545 | tuple_alias_type_list "end of expression" + 546 | tuple_alias_type_list tuple_type "end of expression" - 548 variant_type: "name" ':' type_declaration + 547 variant_type: "name" ':' type_declaration - 549 variant_type_list: variant_type - 550 | variant_type_list "end of expression" variant_type + 548 variant_type_list: variant_type + 549 | variant_type_list "end of expression" variant_type - 551 variant_alias_type_list: %empty - 552 | variant_alias_type_list "end of expression" - 553 | variant_alias_type_list variant_type "end of expression" + 550 variant_alias_type_list: %empty + 551 | variant_alias_type_list "end of expression" + 552 | variant_alias_type_list variant_type "end of expression" - 554 copy_or_move: '=' - 555 | "<-" + 553 copy_or_move: '=' + 554 | "<-" - 556 variable_declaration: variable_name_with_pos_list - 557 | variable_name_with_pos_list '&' - 558 | variable_name_with_pos_list ':' type_declaration - 559 | variable_name_with_pos_list ':' type_declaration copy_or_move expr - 560 | variable_name_with_pos_list copy_or_move expr - 561 | variable_name_with_pos_list copy_or_move expr_pipe + 555 variable_declaration: variable_name_with_pos_list + 556 | variable_name_with_pos_list '&' + 557 | variable_name_with_pos_list ':' type_declaration + 558 | variable_name_with_pos_list ':' type_declaration copy_or_move expr + 559 | variable_name_with_pos_list copy_or_move expr + 560 | variable_name_with_pos_list copy_or_move expr_pipe - 562 copy_or_move_or_clone: '=' - 563 | "<-" - 564 | ":=" + 561 copy_or_move_or_clone: '=' + 562 | "<-" + 563 | ":=" - 565 optional_ref: %empty - 566 | '&' + 564 optional_ref: %empty + 565 | '&' - 567 let_variable_name_with_pos_list: "name" - 568 | "$i" '(' expr ')' - 569 | "name" "aka" "name" - 570 | let_variable_name_with_pos_list ',' "name" - 571 | let_variable_name_with_pos_list ',' "name" "aka" "name" + 566 let_variable_name_with_pos_list: "name" + 567 | "$i" '(' expr ')' + 568 | "name" "aka" "name" + 569 | let_variable_name_with_pos_list ',' "name" + 570 | let_variable_name_with_pos_list ',' "name" "aka" "name" - 572 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" - 573 | let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 574 | let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr_pipe - 575 | let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr "end of expression" - 576 | let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr_pipe + 571 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" + 572 | let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 573 | let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr_pipe + 574 | let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr "end of expression" + 575 | let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr_pipe - 577 global_variable_declaration_list: %empty + 576 global_variable_declaration_list: %empty - 578 $@37: %empty + 577 $@37: %empty - 579 global_variable_declaration_list: global_variable_declaration_list $@37 optional_field_annotation let_variable_declaration + 578 global_variable_declaration_list: global_variable_declaration_list $@37 optional_field_annotation let_variable_declaration - 580 optional_shared: %empty - 581 | "shared" + 579 optional_shared: %empty + 580 | "shared" - 582 optional_public_or_private_variable: %empty - 583 | "private" - 584 | "public" + 581 optional_public_or_private_variable: %empty + 582 | "private" + 583 | "public" - 585 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" + 584 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" - 586 $@38: %empty + 585 $@38: %empty - 587 global_let: kwd_let optional_shared optional_public_or_private_variable $@38 optional_field_annotation let_variable_declaration + 586 global_let: kwd_let optional_shared optional_public_or_private_variable $@38 optional_field_annotation let_variable_declaration - 588 enum_list: %empty - 589 | enum_list "end of expression" - 590 | enum_list "name" "end of expression" - 591 | enum_list "name" '=' expr "end of expression" + 587 enum_list: %empty + 588 | enum_list "end of expression" + 589 | enum_list "name" "end of expression" + 590 | enum_list "name" '=' expr "end of expression" - 592 optional_public_or_private_alias: %empty - 593 | "private" - 594 | "public" + 591 optional_public_or_private_alias: %empty + 592 | "private" + 593 | "public" - 595 $@39: %empty + 594 $@39: %empty - 596 single_alias: optional_public_or_private_alias "name" $@39 '=' type_declaration + 595 single_alias: optional_public_or_private_alias "name" $@39 '=' type_declaration - 597 alias_list: single_alias "end of expression" - 598 | alias_list single_alias "end of expression" + 596 alias_list: single_alias "end of expression" + 597 | alias_list single_alias "end of expression" - 599 alias_declaration: "typedef" "begin of code block" alias_list "end of code block" + 598 alias_declaration: "typedef" "begin of code block" alias_list "end of code block" - 600 $@40: %empty + 599 $@40: %empty - 601 alias_declaration: "typedef" $@40 single_alias "end of expression" + 600 alias_declaration: "typedef" $@40 single_alias "end of expression" - 602 optional_public_or_private_enum: %empty - 603 | "private" - 604 | "public" + 601 optional_public_or_private_enum: %empty + 602 | "private" + 603 | "public" - 605 enum_name: "name" + 604 enum_name: "name" - 606 $@41: %empty + 605 $@41: %empty - 607 $@42: %empty + 606 $@42: %empty - 608 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name "begin of code block" $@41 enum_list $@42 "end of code block" + 607 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name "begin of code block" $@41 enum_list $@42 "end of code block" - 609 $@43: %empty + 608 $@43: %empty - 610 $@44: %empty + 609 $@44: %empty - 611 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 "end of code block" + 610 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 "end of code block" - 612 optional_structure_parent: %empty - 613 | ':' name_in_namespace + 611 optional_structure_parent: %empty + 612 | ':' name_in_namespace - 614 optional_sealed: %empty - 615 | "sealed" + 613 optional_sealed: %empty + 614 | "sealed" - 616 structure_name: optional_sealed "name" optional_structure_parent + 615 structure_name: optional_sealed "name" optional_structure_parent - 617 class_or_struct: "class" - 618 | "struct" + 616 class_or_struct: "class" + 617 | "struct" - 619 optional_public_or_private_structure: %empty - 620 | "private" - 621 | "public" + 618 optional_public_or_private_structure: %empty + 619 | "private" + 620 | "public" - 622 optional_struct_variable_declaration_list: %empty - 623 | "begin of code block" struct_variable_declaration_list "end of code block" + 621 optional_struct_variable_declaration_list: %empty + 622 | "begin of code block" struct_variable_declaration_list "end of code block" - 624 $@45: %empty + 623 $@45: %empty - 625 $@46: %empty + 624 $@46: %empty - 626 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@45 structure_name $@46 optional_struct_variable_declaration_list + 625 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@45 structure_name $@46 optional_struct_variable_declaration_list - 627 variable_name_with_pos_list: "name" - 628 | "$i" '(' expr ')' - 629 | "name" "aka" "name" - 630 | variable_name_with_pos_list ',' "name" - 631 | variable_name_with_pos_list ',' "name" "aka" "name" + 626 variable_name_with_pos_list: "name" + 627 | "$i" '(' expr ')' + 628 | "name" "aka" "name" + 629 | variable_name_with_pos_list ',' "name" + 630 | variable_name_with_pos_list ',' "name" "aka" "name" - 632 basic_type_declaration: "bool" - 633 | "string" - 634 | "int" - 635 | "int8" - 636 | "int16" - 637 | "int64" - 638 | "int2" - 639 | "int3" - 640 | "int4" - 641 | "uint" - 642 | "uint8" - 643 | "uint16" - 644 | "uint64" - 645 | "uint2" - 646 | "uint3" - 647 | "uint4" - 648 | "float" - 649 | "float2" - 650 | "float3" - 651 | "float4" - 652 | "void" - 653 | "range" - 654 | "urange" - 655 | "range64" - 656 | "urange64" - 657 | "double" - 658 | "bitfield" + 631 basic_type_declaration: "bool" + 632 | "string" + 633 | "int" + 634 | "int8" + 635 | "int16" + 636 | "int64" + 637 | "int2" + 638 | "int3" + 639 | "int4" + 640 | "uint" + 641 | "uint8" + 642 | "uint16" + 643 | "uint64" + 644 | "uint2" + 645 | "uint3" + 646 | "uint4" + 647 | "float" + 648 | "float2" + 649 | "float3" + 650 | "float4" + 651 | "void" + 652 | "range" + 653 | "urange" + 654 | "range64" + 655 | "urange64" + 656 | "double" + 657 | "bitfield" - 659 enum_basic_type_declaration: "int" - 660 | "int8" - 661 | "int16" - 662 | "uint" - 663 | "uint8" - 664 | "uint16" - 665 | "int64" - 666 | "uint64" + 658 enum_basic_type_declaration: "int" + 659 | "int8" + 660 | "int16" + 661 | "uint" + 662 | "uint8" + 663 | "uint16" + 664 | "int64" + 665 | "uint64" - 667 structure_type_declaration: name_in_namespace + 666 structure_type_declaration: name_in_namespace - 668 auto_type_declaration: "auto" - 669 | "auto" '(' "name" ')' - 670 | "$t" '(' expr ')' + 667 auto_type_declaration: "auto" + 668 | "auto" '(' "name" ')' + 669 | "$t" '(' expr ')' - 671 bitfield_bits: "name" - 672 | bitfield_bits "end of expression" "name" + 670 bitfield_bits: "name" + 671 | bitfield_bits "end of expression" "name" - 673 bitfield_alias_bits: %empty - 674 | bitfield_alias_bits "end of expression" - 675 | bitfield_alias_bits "name" "end of expression" + 672 bitfield_alias_bits: %empty + 673 | bitfield_alias_bits "end of expression" + 674 | bitfield_alias_bits "name" "end of expression" - 676 $@47: %empty + 675 $@47: %empty - 677 $@48: %empty + 676 $@48: %empty - 678 bitfield_type_declaration: "bitfield" '<' $@47 bitfield_bits '>' $@48 + 677 bitfield_type_declaration: "bitfield" '<' $@47 bitfield_bits '>' $@48 - 679 table_type_pair: type_declaration - 680 | type_declaration "end of expression" type_declaration + 678 table_type_pair: type_declaration + 679 | type_declaration "end of expression" type_declaration - 681 dim_list: '[' expr ']' - 682 | dim_list '[' expr ']' + 680 dim_list: '[' expr ']' + 681 | dim_list '[' expr ']' - 683 type_declaration_no_options: basic_type_declaration - 684 | auto_type_declaration - 685 | bitfield_type_declaration - 686 | structure_type_declaration - 687 | type_declaration_no_options dim_list - 688 | type_declaration_no_options '[' ']' + 682 type_declaration_no_options: basic_type_declaration + 683 | auto_type_declaration + 684 | bitfield_type_declaration + 685 | structure_type_declaration + 686 | type_declaration_no_options dim_list + 687 | type_declaration_no_options '[' ']' - 689 $@49: %empty + 688 $@49: %empty - 690 $@50: %empty + 689 $@50: %empty - 691 type_declaration_no_options: "type" '<' $@49 type_declaration '>' $@50 - 692 | "typedecl" '(' expr ')' - 693 | '$' name_in_namespace '(' optional_expr_list ')' + 690 type_declaration_no_options: "type" '<' $@49 type_declaration '>' $@50 + 691 | "typedecl" '(' expr ')' + 692 | '$' name_in_namespace '(' optional_expr_list ')' - 694 $@51: %empty + 693 $@51: %empty - 695 type_declaration_no_options: '$' name_in_namespace '<' $@51 type_declaration_no_options_list '>' '(' optional_expr_list ')' - 696 | type_declaration_no_options '-' '[' ']' - 697 | type_declaration_no_options "explicit" - 698 | type_declaration_no_options "const" - 699 | type_declaration_no_options '-' "const" - 700 | type_declaration_no_options '&' - 701 | type_declaration_no_options '-' '&' - 702 | type_declaration_no_options '#' - 703 | type_declaration_no_options "implicit" - 704 | type_declaration_no_options '-' '#' - 705 | type_declaration_no_options "==" "const" - 706 | type_declaration_no_options "==" '&' - 707 | type_declaration_no_options '?' + 694 type_declaration_no_options: '$' name_in_namespace '<' $@51 type_declaration_no_options_list '>' '(' optional_expr_list ')' + 695 | type_declaration_no_options '-' '[' ']' + 696 | type_declaration_no_options "explicit" + 697 | type_declaration_no_options "const" + 698 | type_declaration_no_options '-' "const" + 699 | type_declaration_no_options '&' + 700 | type_declaration_no_options '-' '&' + 701 | type_declaration_no_options '#' + 702 | type_declaration_no_options "implicit" + 703 | type_declaration_no_options '-' '#' + 704 | type_declaration_no_options "==" "const" + 705 | type_declaration_no_options "==" '&' + 706 | type_declaration_no_options '?' - 708 $@52: %empty + 707 $@52: %empty - 709 $@53: %empty + 708 $@53: %empty - 710 type_declaration_no_options: "smart_ptr" '<' $@52 type_declaration '>' $@53 - 711 | type_declaration_no_options "??" + 709 type_declaration_no_options: "smart_ptr" '<' $@52 type_declaration '>' $@53 + 710 | type_declaration_no_options "??" - 712 $@54: %empty + 711 $@54: %empty - 713 $@55: %empty + 712 $@55: %empty - 714 type_declaration_no_options: "array" '<' $@54 type_declaration '>' $@55 + 713 type_declaration_no_options: "array" '<' $@54 type_declaration '>' $@55 - 715 $@56: %empty + 714 $@56: %empty - 716 $@57: %empty + 715 $@57: %empty - 717 type_declaration_no_options: "table" '<' $@56 table_type_pair '>' $@57 + 716 type_declaration_no_options: "table" '<' $@56 table_type_pair '>' $@57 - 718 $@58: %empty + 717 $@58: %empty - 719 $@59: %empty + 718 $@59: %empty - 720 type_declaration_no_options: "iterator" '<' $@58 type_declaration '>' $@59 - 721 | "block" + 719 type_declaration_no_options: "iterator" '<' $@58 type_declaration '>' $@59 + 720 | "block" - 722 $@60: %empty + 721 $@60: %empty - 723 $@61: %empty + 722 $@61: %empty - 724 type_declaration_no_options: "block" '<' $@60 type_declaration '>' $@61 + 723 type_declaration_no_options: "block" '<' $@60 type_declaration '>' $@61 - 725 $@62: %empty + 724 $@62: %empty - 726 $@63: %empty + 725 $@63: %empty - 727 type_declaration_no_options: "block" '<' $@62 optional_function_argument_list optional_function_type '>' $@63 - 728 | "function" + 726 type_declaration_no_options: "block" '<' $@62 optional_function_argument_list optional_function_type '>' $@63 + 727 | "function" - 729 $@64: %empty + 728 $@64: %empty - 730 $@65: %empty + 729 $@65: %empty - 731 type_declaration_no_options: "function" '<' $@64 type_declaration '>' $@65 + 730 type_declaration_no_options: "function" '<' $@64 type_declaration '>' $@65 - 732 $@66: %empty + 731 $@66: %empty - 733 $@67: %empty + 732 $@67: %empty - 734 type_declaration_no_options: "function" '<' $@66 optional_function_argument_list optional_function_type '>' $@67 - 735 | "lambda" + 733 type_declaration_no_options: "function" '<' $@66 optional_function_argument_list optional_function_type '>' $@67 + 734 | "lambda" - 736 $@68: %empty + 735 $@68: %empty - 737 $@69: %empty + 736 $@69: %empty - 738 type_declaration_no_options: "lambda" '<' $@68 type_declaration '>' $@69 + 737 type_declaration_no_options: "lambda" '<' $@68 type_declaration '>' $@69 - 739 $@70: %empty + 738 $@70: %empty - 740 $@71: %empty + 739 $@71: %empty - 741 type_declaration_no_options: "lambda" '<' $@70 optional_function_argument_list optional_function_type '>' $@71 + 740 type_declaration_no_options: "lambda" '<' $@70 optional_function_argument_list optional_function_type '>' $@71 - 742 $@72: %empty + 741 $@72: %empty - 743 $@73: %empty + 742 $@73: %empty - 744 type_declaration_no_options: "tuple" '<' $@72 tuple_type_list '>' $@73 + 743 type_declaration_no_options: "tuple" '<' $@72 tuple_type_list '>' $@73 - 745 $@74: %empty + 744 $@74: %empty - 746 $@75: %empty + 745 $@75: %empty - 747 type_declaration_no_options: "variant" '<' $@74 variant_type_list '>' $@75 + 746 type_declaration_no_options: "variant" '<' $@74 variant_type_list '>' $@75 - 748 type_declaration: type_declaration_no_options - 749 | type_declaration '|' type_declaration_no_options - 750 | type_declaration '|' '#' + 747 type_declaration: type_declaration_no_options + 748 | type_declaration '|' type_declaration_no_options + 749 | type_declaration '|' '#' - 751 $@76: %empty + 750 $@76: %empty - 752 $@77: %empty + 751 $@77: %empty - 753 $@78: %empty + 752 $@78: %empty - 754 $@79: %empty + 753 $@79: %empty - 755 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" $@77 "begin of code block" $@78 tuple_alias_type_list $@79 "end of code block" + 754 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" $@77 "begin of code block" $@78 tuple_alias_type_list $@79 "end of code block" - 756 $@80: %empty + 755 $@80: %empty - 757 $@81: %empty + 756 $@81: %empty - 758 $@82: %empty + 757 $@82: %empty - 759 $@83: %empty + 758 $@83: %empty - 760 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" $@81 "begin of code block" $@82 variant_alias_type_list $@83 "end of code block" + 759 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" $@81 "begin of code block" $@82 variant_alias_type_list $@83 "end of code block" - 761 $@84: %empty + 760 $@84: %empty - 762 $@85: %empty + 761 $@85: %empty - 763 $@86: %empty + 762 $@86: %empty - 764 $@87: %empty + 763 $@87: %empty - 765 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" $@85 "begin of code block" $@86 bitfield_alias_bits $@87 "end of code block" + 764 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" $@85 "begin of code block" $@86 bitfield_alias_bits $@87 "end of code block" - 766 make_decl: make_struct_decl - 767 | make_dim_decl - 768 | make_table_decl - 769 | array_comprehension - 770 | make_tuple_call + 765 make_decl: make_struct_decl + 766 | make_dim_decl + 767 | make_table_decl + 768 | array_comprehension + 769 | make_tuple_call - 771 make_struct_fields: "name" copy_or_move expr - 772 | "name" ":=" expr - 773 | make_struct_fields ',' "name" copy_or_move expr - 774 | make_struct_fields ',' "name" ":=" expr - 775 | "$f" '(' expr ')' copy_or_move expr - 776 | "$f" '(' expr ')' ":=" expr - 777 | make_struct_fields ',' "$f" '(' expr ')' copy_or_move expr - 778 | make_struct_fields ',' "$f" '(' expr ')' ":=" expr + 770 make_struct_fields: "name" copy_or_move expr + 771 | "name" ":=" expr + 772 | make_struct_fields ',' "name" copy_or_move expr + 773 | make_struct_fields ',' "name" ":=" expr + 774 | "$f" '(' expr ')' copy_or_move expr + 775 | "$f" '(' expr ')' ":=" expr + 776 | make_struct_fields ',' "$f" '(' expr ')' copy_or_move expr + 777 | make_struct_fields ',' "$f" '(' expr ')' ":=" expr - 779 make_struct_single: make_struct_fields + 778 make_struct_single: make_struct_fields - 780 make_struct_dim: make_struct_fields - 781 | make_struct_dim "end of expression" make_struct_fields + 779 make_struct_dim: make_struct_fields + 780 | make_struct_dim "end of expression" make_struct_fields - 782 optional_block: %empty - 783 | "where" expr_block + 781 optional_block: %empty + 782 | "where" expr_block - 784 optional_trailing_semicolon_cur_cur: "end of code block" "end of code block" - 785 | ";}}" + 783 optional_trailing_semicolon_cur_cur: "end of code block" "end of code block" + 784 | ";}}" - 786 optional_trailing_semicolon_cur_sqr: "end of code block" ']' - 787 | ";}]" + 785 optional_trailing_semicolon_cur_sqr: "end of code block" ']' + 786 | ";}]" - 788 optional_trailing_semicolon_sqr_sqr: ']' ']' - 789 | ";]]" + 787 optional_trailing_semicolon_sqr_sqr: ']' ']' + 788 | ";]]" - 790 optional_trailing_delim_sqr_sqr: ']' ']' - 791 | ";]]" - 792 | ",]]" + 789 optional_trailing_delim_sqr_sqr: ']' ']' + 790 | ";]]" + 791 | ",]]" - 793 optional_trailing_delim_cur_sqr: "end of code block" ']' - 794 | ";}]" - 795 | ",}]" + 792 optional_trailing_delim_cur_sqr: "end of code block" ']' + 793 | ";}]" + 794 | ",}]" - 796 use_initializer: %empty - 797 | "uninitialized" + 795 use_initializer: %empty + 796 | "uninitialized" - 798 make_struct_decl: "[[" type_declaration_no_options make_struct_dim optional_block optional_trailing_delim_sqr_sqr - 799 | "[[" type_declaration_no_options optional_block optional_trailing_delim_sqr_sqr - 800 | "[[" type_declaration_no_options '(' ')' optional_block optional_trailing_delim_sqr_sqr - 801 | "[[" type_declaration_no_options '(' ')' make_struct_dim optional_block optional_trailing_delim_sqr_sqr - 802 | "[{" type_declaration_no_options make_struct_dim optional_block optional_trailing_delim_cur_sqr - 803 | "[{" type_declaration_no_options '(' ')' make_struct_dim optional_block optional_trailing_delim_cur_sqr + 797 make_struct_decl: "[[" type_declaration_no_options make_struct_dim optional_block optional_trailing_delim_sqr_sqr + 798 | "[[" type_declaration_no_options optional_block optional_trailing_delim_sqr_sqr + 799 | "[[" type_declaration_no_options '(' ')' optional_block optional_trailing_delim_sqr_sqr + 800 | "[[" type_declaration_no_options '(' ')' make_struct_dim optional_block optional_trailing_delim_sqr_sqr + 801 | "[{" type_declaration_no_options make_struct_dim optional_block optional_trailing_delim_cur_sqr + 802 | "[{" type_declaration_no_options '(' ')' make_struct_dim optional_block optional_trailing_delim_cur_sqr - 804 $@88: %empty + 803 $@88: %empty - 805 $@89: %empty + 804 $@89: %empty - 806 make_struct_decl: "struct" '<' $@88 type_declaration_no_options '>' $@89 '(' use_initializer make_struct_dim ')' + 805 make_struct_decl: "struct" '<' $@88 type_declaration_no_options '>' $@89 '(' use_initializer make_struct_dim ')' - 807 $@90: %empty + 806 $@90: %empty - 808 $@91: %empty + 807 $@91: %empty - 809 make_struct_decl: "class" '<' $@90 type_declaration_no_options '>' $@91 '(' use_initializer make_struct_dim ')' + 808 make_struct_decl: "class" '<' $@90 type_declaration_no_options '>' $@91 '(' use_initializer make_struct_dim ')' - 810 $@92: %empty + 809 $@92: %empty - 811 $@93: %empty + 810 $@93: %empty - 812 make_struct_decl: "variant" '<' $@92 type_declaration_no_options '>' $@93 '(' make_struct_dim ')' + 811 make_struct_decl: "variant" '<' $@92 type_declaration_no_options '>' $@93 '(' make_struct_dim ')' - 813 $@94: %empty + 812 $@94: %empty - 814 $@95: %empty + 813 $@95: %empty - 815 make_struct_decl: "default" '<' $@94 type_declaration_no_options '>' $@95 use_initializer + 814 make_struct_decl: "default" '<' $@94 type_declaration_no_options '>' $@95 use_initializer - 816 make_tuple: expr - 817 | expr "=>" expr - 818 | make_tuple ',' expr + 815 make_tuple: expr + 816 | expr "=>" expr + 817 | make_tuple ',' expr - 819 make_map_tuple: expr "=>" expr - 820 | expr + 818 make_map_tuple: expr "=>" expr + 819 | expr - 821 make_tuple_call: "tuple" '(' expr_list optional_comma ')' + 820 make_tuple_call: "tuple" '(' expr_list optional_comma ')' - 822 $@96: %empty + 821 $@96: %empty - 823 $@97: %empty + 822 $@97: %empty - 824 make_tuple_call: "tuple" '<' $@96 type_declaration_no_options '>' $@97 '(' use_initializer make_struct_dim ')' + 823 make_tuple_call: "tuple" '<' $@96 type_declaration_no_options '>' $@97 '(' use_initializer make_struct_dim ')' - 825 make_dim: make_tuple - 826 | make_dim "end of expression" make_tuple + 824 make_dim: make_tuple + 825 | make_dim "end of expression" make_tuple - 827 make_dim_decl: '[' expr_list optional_comma ']' - 828 | "[[" type_declaration_no_options make_dim optional_trailing_semicolon_sqr_sqr - 829 | "[{" type_declaration_no_options make_dim optional_trailing_semicolon_cur_sqr + 826 make_dim_decl: '[' expr_list optional_comma ']' + 827 | "[[" type_declaration_no_options make_dim optional_trailing_semicolon_sqr_sqr + 828 | "[{" type_declaration_no_options make_dim optional_trailing_semicolon_cur_sqr - 830 $@98: %empty + 829 $@98: %empty - 831 $@99: %empty + 830 $@99: %empty - 832 make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options '>' $@99 '(' use_initializer make_struct_dim ')' + 831 make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options '>' $@99 '(' use_initializer make_struct_dim ')' - 833 $@100: %empty + 832 $@100: %empty - 834 $@101: %empty + 833 $@101: %empty - 835 make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options '>' $@101 '(' use_initializer make_struct_dim ')' + 834 make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options '>' $@101 '(' use_initializer make_struct_dim ')' - 836 $@102: %empty + 835 $@102: %empty - 837 $@103: %empty + 836 $@103: %empty - 838 make_dim_decl: "array" "variant" '<' $@102 type_declaration_no_options '>' $@103 '(' make_struct_dim ')' - 839 | "array" '(' expr_list optional_comma ')' + 837 make_dim_decl: "array" "variant" '<' $@102 type_declaration_no_options '>' $@103 '(' make_struct_dim ')' + 838 | "array" '(' expr_list optional_comma ')' - 840 $@104: %empty + 839 $@104: %empty - 841 $@105: %empty + 840 $@105: %empty - 842 make_dim_decl: "array" '<' $@104 type_declaration_no_options '>' $@105 '(' expr_list optional_comma ')' - 843 | "fixed_array" '(' expr_list optional_comma ')' + 841 make_dim_decl: "array" '<' $@104 type_declaration_no_options '>' $@105 '(' expr_list optional_comma ')' + 842 | "fixed_array" '(' expr_list optional_comma ')' - 844 $@106: %empty + 843 $@106: %empty - 845 $@107: %empty + 844 $@107: %empty - 846 make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options '>' $@107 '(' expr_list optional_comma ')' + 845 make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options '>' $@107 '(' expr_list optional_comma ')' - 847 make_table: make_map_tuple - 848 | make_table "end of expression" make_map_tuple + 846 make_table: make_map_tuple + 847 | make_table "end of expression" make_map_tuple - 849 expr_map_tuple_list: make_map_tuple - 850 | expr_map_tuple_list ',' make_map_tuple + 848 expr_map_tuple_list: make_map_tuple + 849 | expr_map_tuple_list ',' make_map_tuple - 851 make_table_decl: "begin of code block" expr_map_tuple_list optional_comma "end of code block" - 852 | "{{" make_table optional_trailing_semicolon_cur_cur - 853 | "table" '(' expr_map_tuple_list optional_comma ')' - 854 | "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - 855 | "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + 850 make_table_decl: "begin of code block" expr_map_tuple_list optional_comma "end of code block" + 851 | "{{" make_table optional_trailing_semicolon_cur_cur + 852 | "table" '(' expr_map_tuple_list optional_comma ')' + 853 | "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + 854 | "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - 856 array_comprehension_where: %empty - 857 | "end of expression" "where" expr + 855 array_comprehension_where: %empty + 856 | "end of expression" "where" expr - 858 optional_comma: %empty - 859 | ',' + 857 optional_comma: %empty + 858 | ',' - 860 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - 861 | '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - 862 | "[[" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' ']' - 863 | "[{" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where "end of code block" ']' - 864 | "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" - 865 | "{{" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" "end of code block" + 859 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 860 | '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 861 | "[[" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' ']' + 862 | "[{" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where "end of code block" ']' + 863 | "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" + 864 | "{{" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" "end of code block" Terminals, with rules where they appear $end (0) 0 - '!' (33) 111 127 425 - '#' (35) 702 704 750 - '$' (36) 20 327 693 695 - '%' (37) 35 42 147 437 - '&' (38) 155 330 444 557 566 700 701 706 - '(' (40) 100 109 115 122 123 250 274 275 276 302 304 319 320 321 390 391 392 393 395 405 406 410 411 412 413 414 455 465 466 467 468 497 499 500 501 502 503 505 506 507 508 509 510 511 512 513 514 538 568 628 669 670 692 693 695 775 776 777 778 800 801 803 806 809 812 821 824 832 835 838 839 842 843 846 853 854 855 - ')' (41) 100 109 115 122 123 250 274 275 276 302 304 319 320 321 390 391 392 393 395 405 406 410 411 412 413 414 455 465 466 467 468 497 499 500 501 502 503 505 506 507 508 509 510 511 512 513 514 538 568 628 669 670 692 693 695 775 776 777 778 800 801 803 806 809 812 821 824 832 835 838 839 842 843 846 853 854 855 - '*' (42) 145 435 464 - '+' (43) 143 427 433 - ',' (44) 51 89 102 118 300 323 335 391 570 571 630 631 773 774 777 778 818 850 859 - '-' (45) 144 428 434 696 699 701 704 - '.' (46) 43 172 174 175 403 404 405 406 409 457 459 461 507 509 510 - '/' (47) 44 146 436 - ':' (58) 53 54 125 301 302 470 542 548 558 559 572 573 574 611 613 - "end of expression" (59) 15 16 74 222 226 227 234 235 240 241 242 252 283 288 301 302 303 304 321 531 533 536 540 544 546 547 550 552 553 572 573 575 589 590 591 597 598 601 672 674 675 680 781 826 848 855 857 860 861 862 863 864 865 - '<' (60) 148 255 258 271 309 312 315 318 320 321 399 402 438 467 468 473 479 484 678 691 695 710 714 717 720 724 727 731 734 738 741 744 747 806 809 812 815 824 832 835 838 842 846 854 855 - '=' (61) 81 93 94 95 96 97 98 100 331 351 373 554 562 591 596 - '>' (62) 149 255 258 271 309 312 315 318 320 321 399 402 439 467 468 473 479 484 678 691 695 710 714 717 720 724 727 731 734 738 741 744 747 806 809 812 815 824 832 835 838 842 846 854 855 - '?' (63) 184 185 470 481 484 485 512 707 - '@' (64) 103 104 328 329 396 399 402 514 - '[' (91) 120 170 390 391 456 457 536 681 682 688 696 827 860 861 - ']' (93) 120 170 171 301 303 337 390 391 456 457 458 459 516 536 681 682 688 696 786 788 790 793 827 860 861 862 863 - '^' (94) 157 446 - "begin of code block" (123) 218 219 585 599 608 611 623 755 760 765 851 864 - '|' (124) 156 445 749 750 - "end of code block" (125) 218 219 585 599 608 611 623 755 760 765 784 786 793 851 863 864 865 - '~' (126) 128 426 - error (256) 245 409 + '!' (33) 111 127 424 + '#' (35) 701 703 749 + '$' (36) 20 326 692 694 + '%' (37) 35 42 147 436 + '&' (38) 155 329 443 556 565 699 700 705 + '(' (40) 100 109 115 122 123 250 273 274 275 301 303 318 319 320 389 390 391 392 394 404 405 409 410 411 412 413 454 464 465 466 467 496 498 499 500 501 502 504 505 506 507 508 509 510 511 512 513 537 567 627 668 669 691 692 694 774 775 776 777 799 800 802 805 808 811 820 823 831 834 837 838 841 842 845 852 853 854 + ')' (41) 100 109 115 122 123 250 273 274 275 301 303 318 319 320 389 390 391 392 394 404 405 409 410 411 412 413 454 464 465 466 467 496 498 499 500 501 502 504 505 506 507 508 509 510 511 512 513 537 567 627 668 669 691 692 694 774 775 776 777 799 800 802 805 808 811 820 823 831 834 837 838 841 842 845 852 853 854 + '*' (42) 145 434 463 + '+' (43) 143 426 432 + ',' (44) 51 89 102 118 299 322 334 390 569 570 629 630 772 773 776 777 817 849 858 + '-' (45) 144 427 433 695 698 700 703 + '.' (46) 43 172 174 175 402 403 404 405 408 456 458 460 506 508 509 + '/' (47) 44 146 435 + ':' (58) 53 54 125 300 301 469 541 547 557 558 571 572 573 610 612 + "end of expression" (59) 15 16 74 222 226 227 234 235 240 241 242 252 282 287 300 301 302 303 320 530 532 535 539 543 545 546 549 551 552 571 572 574 588 589 590 596 597 600 671 673 674 679 780 825 847 854 856 859 860 861 862 863 864 + '<' (60) 148 255 258 270 308 311 314 317 319 320 398 401 437 466 467 472 478 483 677 690 694 709 713 716 719 723 726 730 733 737 740 743 746 805 808 811 814 823 831 834 837 841 845 853 854 + '=' (61) 81 93 94 95 96 97 98 100 330 350 372 553 561 590 595 + '>' (62) 149 255 258 270 308 311 314 317 319 320 398 401 438 466 467 472 478 483 677 690 694 709 713 716 719 723 726 730 733 737 740 743 746 805 808 811 814 823 831 834 837 841 845 853 854 + '?' (63) 184 185 469 480 483 484 511 706 + '@' (64) 103 104 327 328 395 398 401 513 + '[' (91) 120 170 389 390 455 456 535 680 681 687 695 826 859 860 + ']' (93) 120 170 171 300 302 336 389 390 455 456 457 458 515 535 680 681 687 695 785 787 789 792 826 859 860 861 862 + '^' (94) 157 445 + "begin of code block" (123) 218 219 584 598 607 610 622 754 759 764 850 863 + '|' (124) 156 444 748 749 + "end of code block" (125) 218 219 584 598 607 610 622 754 759 764 783 785 792 850 862 863 864 + '~' (126) 128 425 + error (256) 245 408 "lexer error" (258) - "struct" (259) 618 806 832 - "class" (260) 617 809 - "let" (261) 292 295 - "def" (262) 211 533 535 + "struct" (259) 617 805 831 + "class" (260) 616 808 + "let" (261) 291 294 + "def" (262) 211 532 534 "while" (263) 78 "if" (264) 62 74 "static_if" (265) 63 "else" (266) 60 66 - "for" (267) 76 860 861 862 863 864 865 - "recover" (268) 291 - "true" (269) 86 97 421 - "false" (270) 87 98 422 - "new" (271) 273 274 275 276 277 - "typeinfo" (272) 319 320 321 - "type" (273) 91 318 473 479 484 691 - "in" (274) 76 92 860 861 862 863 864 865 - "is" (275) 180 182 473 474 475 513 - "as" (276) 46 181 183 184 185 476 479 480 481 484 485 511 512 + "for" (267) 76 859 860 861 862 863 864 + "recover" (268) 290 + "true" (269) 86 97 420 + "false" (270) 87 98 421 + "new" (271) 272 273 274 275 276 + "typeinfo" (272) 318 319 320 + "type" (273) 91 317 472 478 483 690 + "in" (274) 76 92 859 860 861 862 863 864 + "is" (275) 180 182 472 473 474 512 + "as" (276) 46 181 183 184 185 475 478 479 480 483 484 510 511 "elif" (277) 57 "static_elif" (278) 58 - "array" (279) 714 832 835 838 839 842 - "return" (280) 280 281 282 284 285 - "null" (281) 415 - "break" (282) 278 - "try" (283) 291 + "array" (279) 713 831 834 837 838 841 + "return" (280) 279 280 281 283 284 + "null" (281) 414 + "break" (282) 277 + "try" (283) 290 "options" (284) 36 - "table" (285) 717 853 854 855 + "table" (285) 716 852 853 854 "expect" (286) 49 - "const" (287) 522 698 699 705 + "const" (287) 521 697 698 704 "require" (288) 37 106 "operator" (289) 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 - "enum" (290) 608 611 + "enum" (290) 607 610 "finally" (291) 219 - "delete" (292) 178 267 268 - "deref" (293) 465 - "typedef" (294) 599 601 - "typedecl" (295) 692 + "delete" (292) 178 266 267 + "deref" (293) 464 + "typedef" (294) 598 600 + "typedecl" (295) 691 "with" (296) 79 - "aka" (297) 569 571 629 631 + "aka" (297) 568 570 628 630 "assume" (298) 81 - "cast" (299) 309 - "override" (300) 519 - "abstract" (301) 533 - "upcast" (302) 312 - "iterator" (303) 720 861 - "var" (304) 293 296 - "addr" (305) 466 - "continue" (306) 279 - "where" (307) 783 857 + "cast" (299) 308 + "override" (300) 518 + "abstract" (301) 532 + "upcast" (302) 311 + "iterator" (303) 719 860 + "var" (304) 292 295 + "addr" (305) 465 + "continue" (306) 278 + "where" (307) 782 856 "pass" (308) 242 - "reinterpret" (309) 315 + "reinterpret" (309) 314 "module" (310) 22 - "public" (311) 18 48 214 524 584 594 604 621 + "public" (311) 18 48 214 523 583 593 603 620 "label" (312) 54 55 "goto" (313) 55 56 - "implicit" (314) 703 - "explicit" (315) 268 697 - "shared" (316) 581 - "private" (317) 19 107 213 525 583 593 603 620 - "smart_ptr" (318) 710 - "unsafe" (319) 77 497 - "inscope" (320) 297 - "static" (321) 527 - "fixed_array" (322) 843 846 - "default" (323) 815 - "uninitialized" (324) 797 - "bool" (325) 186 632 - "void" (326) 652 - "string" (327) 187 633 - "auto" (328) 668 669 - "int" (329) 188 634 659 - "int2" (330) 189 638 - "int3" (331) 190 639 - "int4" (332) 191 640 - "uint" (333) 192 641 662 - "bitfield" (334) 658 678 765 - "uint2" (335) 193 645 - "uint3" (336) 194 646 - "uint4" (337) 195 647 - "float" (338) 196 648 - "float2" (339) 197 649 - "float3" (340) 198 650 - "float4" (341) 199 651 - "range" (342) 200 653 - "urange" (343) 201 654 - "range64" (344) 202 655 - "urange64" (345) 203 656 - "block" (346) 721 724 727 - "int64" (347) 204 637 665 - "uint64" (348) 205 644 666 - "double" (349) 206 657 - "function" (350) 728 731 734 - "lambda" (351) 735 738 741 - "int8" (352) 207 635 660 - "uint8" (353) 208 642 663 - "int16" (354) 209 636 661 - "uint16" (355) 210 643 664 - "tuple" (356) 744 755 821 824 835 - "variant" (357) 747 760 812 838 - "generator" (358) 467 468 - "yield" (359) 286 287 289 290 - "sealed" (360) 520 615 - "+=" (361) 129 360 381 - "-=" (362) 130 361 382 - "/=" (363) 132 363 384 - "*=" (364) 131 362 383 - "%=" (365) 133 364 385 - "&=" (366) 134 354 375 - "|=" (367) 135 355 376 - "^=" (368) 136 356 377 - "<<" (369) 162 429 - ">>" (370) 163 430 - "++" (371) 158 160 451 453 - "--" (372) 159 161 452 454 - "<=" (373) 153 442 - "<<=" (374) 164 365 386 - ">>=" (375) 165 366 387 - ">=" (376) 154 443 - "==" (377) 151 440 705 706 - "!=" (378) 152 441 - "->" (379) 392 393 - "<-" (380) 282 285 287 290 326 332 352 374 555 563 - "??" (381) 179 469 711 - "?." (382) 173 176 460 461 508 510 - "?[" (383) 171 458 459 - "<|" (384) 493 + "implicit" (314) 702 + "explicit" (315) 267 696 + "shared" (316) 580 + "private" (317) 19 107 213 524 582 592 602 619 + "smart_ptr" (318) 709 + "unsafe" (319) 77 496 + "inscope" (320) 296 + "static" (321) 526 + "fixed_array" (322) 842 845 + "default" (323) 814 + "uninitialized" (324) 796 + "bool" (325) 186 631 + "void" (326) 651 + "string" (327) 187 632 + "auto" (328) 667 668 + "int" (329) 188 633 658 + "int2" (330) 189 637 + "int3" (331) 190 638 + "int4" (332) 191 639 + "uint" (333) 192 640 661 + "bitfield" (334) 657 677 764 + "uint2" (335) 193 644 + "uint3" (336) 194 645 + "uint4" (337) 195 646 + "float" (338) 196 647 + "float2" (339) 197 648 + "float3" (340) 198 649 + "float4" (341) 199 650 + "range" (342) 200 652 + "urange" (343) 201 653 + "range64" (344) 202 654 + "urange64" (345) 203 655 + "block" (346) 720 723 726 + "int64" (347) 204 636 664 + "uint64" (348) 205 643 665 + "double" (349) 206 656 + "function" (350) 727 730 733 + "lambda" (351) 734 737 740 + "int8" (352) 207 634 659 + "uint8" (353) 208 641 662 + "int16" (354) 209 635 660 + "uint16" (355) 210 642 663 + "tuple" (356) 743 754 820 823 834 + "variant" (357) 746 759 811 837 + "generator" (358) 466 467 + "yield" (359) 285 286 288 289 + "sealed" (360) 519 614 + "+=" (361) 129 359 380 + "-=" (362) 130 360 381 + "/=" (363) 132 362 383 + "*=" (364) 131 361 382 + "%=" (365) 133 363 384 + "&=" (366) 134 353 374 + "|=" (367) 135 354 375 + "^=" (368) 136 355 376 + "<<" (369) 162 428 + ">>" (370) 163 429 + "++" (371) 158 160 450 452 + "--" (372) 159 161 451 453 + "<=" (373) 153 441 + "<<=" (374) 164 364 385 + ">>=" (375) 165 365 386 + ">=" (376) 154 442 + "==" (377) 151 439 704 705 + "!=" (378) 152 440 + "->" (379) 391 392 + "<-" (380) 281 284 286 289 325 331 351 373 554 562 + "??" (381) 179 468 710 + "?." (382) 173 176 459 460 507 509 + "?[" (383) 171 457 458 + "<|" (384) 492 " <|" (385) 259 - "$ <|" (386) 262 371 - "@ <|" (387) 260 369 - "@@ <|" (388) 261 370 - "|>" (389) 116 494 495 - ":=" (390) 175 177 333 353 564 772 774 776 778 - "<<<" (391) 166 431 - ">>>" (392) 167 432 - "<<<=" (393) 168 367 388 - ">>>=" (394) 169 368 389 - "=>" (395) 325 326 817 819 - "::" (396) 265 266 - "&&" (397) 112 140 447 - "||" (398) 113 141 448 - "^^" (399) 114 142 449 - "&&=" (400) 137 357 378 - "||=" (401) 138 358 379 - "^^=" (402) 139 359 380 - ".." (403) 150 450 - "$$" (404) 499 - "$i" (405) 395 500 568 628 - "$v" (406) 501 - "$b" (407) 502 - "$a" (408) 503 538 - "$t" (409) 670 - "$c" (410) 505 506 514 - "$f" (411) 507 508 509 510 511 512 513 775 776 777 778 - "..." (412) 504 - "[[" (413) 301 303 337 516 798 799 800 801 828 862 - "[{" (414) 802 803 829 863 - "{{" (415) 852 865 - "integer constant" (416) 52 53 54 55 84 95 343 - "long integer constant" (417) 345 - "unsigned integer constant" (418) 344 - "unsigned long integer constant" (419) 346 - "unsigned int8 constant" (420) 347 - "floating point constant" (421) 85 96 348 - "double constant" (422) 349 - "name" (423) 21 38 46 81 83 90 94 126 174 175 176 182 183 185 264 265 266 299 300 320 321 330 331 332 333 392 393 403 404 405 406 460 461 475 476 481 496 542 548 567 569 570 571 590 591 596 605 616 627 629 630 631 669 671 672 675 755 760 765 771 772 773 774 + "$ <|" (386) 262 370 + "@ <|" (387) 260 368 + "@@ <|" (388) 261 369 + "|>" (389) 116 493 494 + ":=" (390) 175 177 332 352 563 771 773 775 777 + "<<<" (391) 166 430 + ">>>" (392) 167 431 + "<<<=" (393) 168 366 387 + ">>>=" (394) 169 367 388 + "=>" (395) 324 325 816 818 + "::" (396) 265 + "&&" (397) 112 140 446 + "||" (398) 113 141 447 + "^^" (399) 114 142 448 + "&&=" (400) 137 356 377 + "||=" (401) 138 357 378 + "^^=" (402) 139 358 379 + ".." (403) 150 449 + "$$" (404) 498 + "$i" (405) 394 499 567 627 + "$v" (406) 500 + "$b" (407) 501 + "$a" (408) 502 537 + "$t" (409) 669 + "$c" (410) 504 505 513 + "$f" (411) 506 507 508 509 510 511 512 774 775 776 777 + "..." (412) 503 + "[[" (413) 300 302 336 515 797 798 799 800 827 861 + "[{" (414) 801 802 828 862 + "{{" (415) 851 864 + "integer constant" (416) 52 53 54 55 84 95 342 + "long integer constant" (417) 344 + "unsigned integer constant" (418) 343 + "unsigned long integer constant" (419) 345 + "unsigned int8 constant" (420) 346 + "floating point constant" (421) 85 96 347 + "double constant" (422) 348 + "name" (423) 21 38 46 81 83 90 94 126 174 175 176 182 183 185 264 265 298 299 319 320 329 330 331 332 391 392 402 403 404 405 459 460 474 475 480 495 541 547 566 568 569 570 589 590 595 604 615 626 628 629 630 668 670 671 674 754 759 764 770 771 772 773 "keyword" (424) 39 246 255 "type function" (425) 40 258 "start of the string" (426) 27 31 @@ -1422,11 +1420,11 @@ Terminals, with rules where they appear "{" (430) 30 "}" (431) 30 "end of failed eader macro" (432) - ";}}" (433) 785 - ";}]" (434) 787 794 - ";]]" (435) 789 791 - ",]]" (436) 792 - ",}]" (437) 795 + ";}}" (433) 784 + ";}]" (434) 786 793 + ";]]" (435) 788 790 + ",]]" (436) 791 + ",}]" (437) 794 UNARY_MINUS (438) UNARY_PLUS (439) PRE_INC (440) @@ -1466,13 +1464,13 @@ Nonterminals, with rules where they appear on right: 29 30 31 string_builder (226) on left: 31 - on right: 419 + on right: 418 reader_character_sequence (227) on left: 32 33 on right: 33 35 expr_reader (228) on left: 35 - on right: 16 418 + on right: 16 417 $@1 (229) on left: 34 on right: 35 @@ -1568,10 +1566,10 @@ Nonterminals, with rules where they appear on right: 101 102 103 104 annotation_argument_list (260) on left: 101 102 - on right: 36 102 109 516 + on right: 36 102 109 515 metadata_argument_list (261) on left: 103 104 - on right: 104 517 + on right: 104 516 annotation_declaration_name (262) on left: 105 106 107 on right: 108 109 @@ -1583,16 +1581,16 @@ Nonterminals, with rules where they appear on right: 111 112 113 114 115 116 117 118 annotation_list (265) on left: 117 118 - on right: 118 120 536 + on right: 118 120 535 optional_annotation_list (266) on left: 119 120 - on right: 211 339 340 342 533 535 608 611 626 + on right: 211 338 339 341 532 534 607 610 625 optional_function_argument_list (267) on left: 121 122 123 - on right: 215 339 340 342 402 727 734 741 + on right: 215 338 339 341 401 726 733 740 optional_function_type (268) on left: 124 125 - on right: 215 339 340 342 402 727 734 741 + on right: 215 338 339 341 401 726 733 740 function_name (269) on left: 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 on right: 215 @@ -1604,7 +1602,7 @@ Nonterminals, with rules where they appear on right: 217 function_declaration_header (272) on left: 215 - on right: 217 533 535 + on right: 217 532 534 function_declaration (273) on left: 217 on right: 211 @@ -1613,10 +1611,10 @@ Nonterminals, with rules where they appear on right: 217 expression_block (275) on left: 218 219 - on right: 60 61 72 76 77 78 79 217 246 291 324 338 342 535 + on right: 60 61 72 76 77 78 79 217 246 290 323 337 341 534 expr_call_pipe (276) on left: 220 221 - on right: 263 372 + on right: 263 371 expression_any (277) on left: 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 on right: 244 @@ -1628,16 +1626,16 @@ Nonterminals, with rules where they appear on right: 224 optional_expr_list (280) on left: 247 248 - on right: 250 693 695 + on right: 250 692 694 optional_expr_list_in_braces (281) on left: 249 250 on right: 258 type_declaration_no_options_list (282) on left: 251 252 - on right: 252 255 258 695 + on right: 252 255 258 694 expression_keyword (283) on left: 255 258 - on right: 221 498 + on right: 221 497 $@7 (284) on left: 253 on right: 255 @@ -1652,655 +1650,655 @@ Nonterminals, with rules where they appear on right: 258 expr_pipe (288) on left: 259 260 261 262 263 - on right: 223 284 285 289 290 561 574 576 + on right: 223 283 284 288 289 560 573 575 name_in_namespace (289) - on left: 264 265 266 - on right: 35 105 319 320 321 390 391 394 410 411 412 416 496 613 667 693 695 + on left: 264 265 + on right: 35 105 318 319 320 389 390 393 409 410 411 415 495 612 666 692 694 expression_delete (290) - on left: 267 268 + on left: 266 267 on right: 227 new_type_declaration (291) - on left: 271 272 - on right: 273 274 275 276 + on left: 270 271 + on right: 272 273 274 275 $@11 (292) - on left: 269 - on right: 271 + on left: 268 + on right: 270 $@12 (293) - on left: 270 - on right: 271 + on left: 269 + on right: 270 expr_new (294) - on left: 273 274 275 276 277 - on right: 489 + on left: 272 273 274 275 276 + on right: 488 expression_break (295) - on left: 278 + on left: 277 on right: 70 234 expression_continue (296) - on left: 279 + on left: 278 on right: 71 235 expression_return_no_pipe (297) - on left: 280 281 282 - on right: 68 283 + on left: 279 280 281 + on right: 68 282 expression_return (298) - on left: 283 284 285 + on left: 282 283 284 on right: 236 expression_yield_no_pipe (299) - on left: 286 287 - on right: 69 288 + on left: 285 286 + on right: 69 287 expression_yield (300) - on left: 288 289 290 + on left: 287 288 289 on right: 237 expression_try_catch (301) - on left: 291 + on left: 290 on right: 239 kwd_let_var_or_nothing (302) - on left: 292 293 294 - on right: 537 + on left: 291 292 293 + on right: 536 kwd_let (303) - on left: 295 296 - on right: 305 306 585 587 + on left: 294 295 + on right: 304 305 584 586 optional_in_scope (304) - on left: 297 298 - on right: 305 306 + on left: 296 297 + on right: 304 305 tuple_expansion (305) - on left: 299 300 - on right: 300 301 302 303 304 + on left: 298 299 + on right: 299 300 301 302 303 tuple_expansion_variable_declaration (306) - on left: 301 302 303 304 - on right: 306 + on left: 300 301 302 303 + on right: 305 expression_let (307) - on left: 305 306 + on left: 304 305 on right: 228 expr_cast (308) - on left: 309 312 315 - on right: 488 + on left: 308 311 314 + on right: 487 $@13 (309) - on left: 307 - on right: 309 + on left: 306 + on right: 308 $@14 (310) - on left: 308 - on right: 309 + on left: 307 + on right: 308 $@15 (311) - on left: 310 - on right: 312 + on left: 309 + on right: 311 $@16 (312) - on left: 311 - on right: 312 + on left: 310 + on right: 311 $@17 (313) - on left: 313 - on right: 315 + on left: 312 + on right: 314 $@18 (314) - on left: 314 - on right: 315 + on left: 313 + on right: 314 expr_type_decl (315) - on left: 318 - on right: 487 + on left: 317 + on right: 486 $@19 (316) - on left: 316 - on right: 318 + on left: 315 + on right: 317 $@20 (317) - on left: 317 - on right: 318 + on left: 316 + on right: 317 expr_type_info (318) - on left: 319 320 321 - on right: 486 + on left: 318 319 320 + on right: 485 expr_list (319) - on left: 322 323 - on right: 76 248 275 281 282 323 391 393 406 412 414 455 506 821 827 839 842 843 846 860 861 862 863 864 865 + on left: 321 322 + on right: 76 248 274 280 281 322 390 392 405 411 413 454 505 820 826 838 841 842 845 859 860 861 862 863 864 block_or_simple_block (320) - on left: 324 325 326 - on right: 339 340 + on left: 323 324 325 + on right: 338 339 block_or_lambda (321) - on left: 327 328 329 - on right: 339 340 342 + on left: 326 327 328 + on right: 338 339 341 capture_entry (322) - on left: 330 331 332 333 - on right: 334 335 + on left: 329 330 331 332 + on right: 333 334 capture_list (323) - on left: 334 335 - on right: 335 337 + on left: 333 334 + on right: 334 336 optional_capture_list (324) - on left: 336 337 - on right: 339 340 342 467 468 + on left: 335 336 + on right: 338 339 341 466 467 expr_block (325) - on left: 338 339 - on right: 259 260 261 262 369 370 371 783 + on left: 337 338 + on right: 259 260 261 262 368 369 370 782 expr_full_block (326) - on left: 340 - on right: 492 + on left: 339 + on right: 491 expr_full_block_assumed_piped (327) - on left: 342 + on left: 341 on right: 220 221 $@21 (328) - on left: 341 - on right: 342 + on left: 340 + on right: 341 expr_numeric_const (329) - on left: 343 344 345 346 347 348 349 - on right: 417 + on left: 342 343 344 345 346 347 348 + on right: 416 expr_assign (330) - on left: 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 + on left: 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 on right: 226 259 expr_assign_pipe_right (331) - on left: 369 370 371 372 - on right: 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 + on left: 368 369 370 371 + on right: 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 expr_assign_pipe (332) - on left: 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 + on left: 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 on right: 225 expr_named_call (333) - on left: 390 391 - on right: 491 - expr_method_call (334) - on left: 392 393 + on left: 389 390 on right: 490 + expr_method_call (334) + on left: 391 392 + on right: 489 func_addr_name (335) - on left: 394 395 - on right: 396 399 402 + on left: 393 394 + on right: 395 398 401 func_addr_expr (336) - on left: 396 399 402 - on right: 462 + on left: 395 398 401 + on right: 461 $@22 (337) - on left: 397 - on right: 399 + on left: 396 + on right: 398 $@23 (338) - on left: 398 - on right: 399 + on left: 397 + on right: 398 $@24 (339) - on left: 400 - on right: 402 + on left: 399 + on right: 401 $@25 (340) - on left: 401 - on right: 402 + on left: 400 + on right: 401 expr_field (341) - on left: 403 404 405 406 409 - on right: 423 + on left: 402 403 404 405 408 + on right: 422 $@26 (342) - on left: 407 - on right: 409 + on left: 406 + on right: 408 $@27 (343) - on left: 408 - on right: 409 + on left: 407 + on right: 408 expr_call (344) - on left: 410 411 412 413 414 - on right: 463 + on left: 409 410 411 412 413 + on right: 462 expr (345) - on left: 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 473 474 475 476 479 480 481 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 - on right: 30 56 61 67 72 74 78 79 81 220 246 255 267 268 286 287 301 302 303 304 309 312 315 319 320 321 322 323 325 326 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 392 393 395 403 404 405 406 409 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 456 457 458 459 460 461 464 465 466 468 469 470 473 474 475 476 479 480 481 484 485 493 494 495 497 499 500 501 502 503 505 506 507 508 509 510 511 512 513 514 538 559 560 568 573 575 591 628 670 681 682 692 771 772 773 774 775 776 777 778 816 817 818 819 820 857 860 861 862 863 + on left: 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 472 473 474 475 478 479 480 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 + on right: 30 56 61 67 72 74 78 79 81 220 246 255 266 267 285 286 300 301 302 303 308 311 314 318 319 320 321 322 324 325 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 391 392 394 402 403 404 405 408 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 455 456 457 458 459 460 463 464 465 467 468 469 472 473 474 475 478 479 480 483 484 492 493 494 496 498 499 500 501 502 504 505 506 507 508 509 510 511 512 513 537 558 559 567 572 574 590 627 669 680 681 691 770 771 772 773 774 775 776 777 815 816 817 818 819 856 859 860 861 862 $@28 (346) - on left: 471 - on right: 473 + on left: 470 + on right: 472 $@29 (347) - on left: 472 - on right: 473 + on left: 471 + on right: 472 $@30 (348) - on left: 477 - on right: 479 + on left: 476 + on right: 478 $@31 (349) - on left: 478 - on right: 479 + on left: 477 + on right: 478 $@32 (350) - on left: 482 - on right: 484 + on left: 481 + on right: 483 $@33 (351) - on left: 483 - on right: 484 + on left: 482 + on right: 483 expr_mtag (352) - on left: 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 - on right: 424 + on left: 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 + on right: 423 optional_field_annotation (353) - on left: 515 516 517 - on right: 528 537 579 587 + on left: 514 515 516 + on right: 527 536 578 586 optional_override (354) - on left: 518 519 520 - on right: 528 535 + on left: 517 518 519 + on right: 527 534 optional_constant (355) - on left: 521 522 - on right: 533 535 + on left: 520 521 + on right: 532 534 optional_public_or_private_member_variable (356) - on left: 523 524 525 - on right: 528 533 535 + on left: 522 523 524 + on right: 527 532 534 optional_static_member_variable (357) - on left: 526 527 - on right: 528 535 + on left: 525 526 + on right: 527 534 structure_variable_declaration (358) - on left: 528 - on right: 531 + on left: 527 + on right: 530 struct_variable_declaration_list (359) - on left: 529 531 533 535 536 - on right: 531 533 535 536 623 + on left: 528 530 532 534 535 + on right: 530 532 534 535 622 $@34 (360) - on left: 530 - on right: 531 + on left: 529 + on right: 530 $@35 (361) - on left: 532 - on right: 533 + on left: 531 + on right: 532 $@36 (362) - on left: 534 - on right: 535 + on left: 533 + on right: 534 function_argument_declaration (363) - on left: 537 538 - on right: 539 540 + on left: 536 537 + on right: 538 539 function_argument_list (364) - on left: 539 540 - on right: 123 540 + on left: 538 539 + on right: 123 539 tuple_type (365) - on left: 541 542 - on right: 543 544 547 + on left: 540 541 + on right: 542 543 546 tuple_type_list (366) - on left: 543 544 - on right: 544 744 + on left: 542 543 + on right: 543 743 tuple_alias_type_list (367) - on left: 545 546 547 - on right: 546 547 755 + on left: 544 545 546 + on right: 545 546 754 variant_type (368) - on left: 548 - on right: 549 550 553 + on left: 547 + on right: 548 549 552 variant_type_list (369) - on left: 549 550 - on right: 550 747 + on left: 548 549 + on right: 549 746 variant_alias_type_list (370) - on left: 551 552 553 - on right: 552 553 760 + on left: 550 551 552 + on right: 551 552 759 copy_or_move (371) - on left: 554 555 - on right: 559 560 561 771 773 775 777 + on left: 553 554 + on right: 558 559 560 770 772 774 776 variable_declaration (372) - on left: 556 557 558 559 560 561 - on right: 528 537 + on left: 555 556 557 558 559 560 + on right: 527 536 copy_or_move_or_clone (373) - on left: 562 563 564 - on right: 301 302 303 304 573 574 575 576 + on left: 561 562 563 + on right: 300 301 302 303 572 573 574 575 optional_ref (374) - on left: 565 566 - on right: 303 304 575 576 + on left: 564 565 + on right: 302 303 574 575 let_variable_name_with_pos_list (375) - on left: 567 568 569 570 571 - on right: 570 571 572 573 574 575 576 + on left: 566 567 568 569 570 + on right: 569 570 571 572 573 574 575 let_variable_declaration (376) - on left: 572 573 574 575 576 - on right: 305 579 587 + on left: 571 572 573 574 575 + on right: 304 578 586 global_variable_declaration_list (377) - on left: 577 579 - on right: 579 585 + on left: 576 578 + on right: 578 584 $@37 (378) - on left: 578 - on right: 579 + on left: 577 + on right: 578 optional_shared (379) - on left: 580 581 - on right: 22 585 587 + on left: 579 580 + on right: 22 584 586 optional_public_or_private_variable (380) - on left: 582 583 584 - on right: 585 587 + on left: 581 582 583 + on right: 584 586 global_let (381) - on left: 585 587 + on left: 584 586 on right: 5 $@38 (382) - on left: 586 - on right: 587 + on left: 585 + on right: 586 enum_list (383) - on left: 588 589 590 591 - on right: 589 590 591 608 611 + on left: 587 588 589 590 + on right: 588 589 590 607 610 optional_public_or_private_alias (384) - on left: 592 593 594 - on right: 596 755 760 765 + on left: 591 592 593 + on right: 595 754 759 764 single_alias (385) - on left: 596 - on right: 597 598 601 - $@39 (386) on left: 595 - on right: 596 + on right: 596 597 600 + $@39 (386) + on left: 594 + on right: 595 alias_list (387) - on left: 597 598 - on right: 598 599 + on left: 596 597 + on right: 597 598 alias_declaration (388) - on left: 599 601 + on left: 598 600 on right: 10 $@40 (389) - on left: 600 - on right: 601 + on left: 599 + on right: 600 optional_public_or_private_enum (390) - on left: 602 603 604 - on right: 608 611 + on left: 601 602 603 + on right: 607 610 enum_name (391) - on left: 605 - on right: 608 611 + on left: 604 + on right: 607 610 enum_declaration (392) - on left: 608 611 + on left: 607 610 on right: 4 $@41 (393) - on left: 606 - on right: 608 + on left: 605 + on right: 607 $@42 (394) - on left: 607 - on right: 608 + on left: 606 + on right: 607 $@43 (395) - on left: 609 - on right: 611 + on left: 608 + on right: 610 $@44 (396) - on left: 610 - on right: 611 + on left: 609 + on right: 610 optional_structure_parent (397) - on left: 612 613 - on right: 616 + on left: 611 612 + on right: 615 optional_sealed (398) - on left: 614 615 - on right: 616 + on left: 613 614 + on right: 615 structure_name (399) - on left: 616 - on right: 626 + on left: 615 + on right: 625 class_or_struct (400) - on left: 617 618 - on right: 626 + on left: 616 617 + on right: 625 optional_public_or_private_structure (401) - on left: 619 620 621 - on right: 626 + on left: 618 619 620 + on right: 625 optional_struct_variable_declaration_list (402) - on left: 622 623 - on right: 626 + on left: 621 622 + on right: 625 structure_declaration (403) - on left: 626 + on left: 625 on right: 3 $@45 (404) - on left: 624 - on right: 626 + on left: 623 + on right: 625 $@46 (405) - on left: 625 - on right: 626 + on left: 624 + on right: 625 variable_name_with_pos_list (406) - on left: 627 628 629 630 631 - on right: 76 556 557 558 559 560 561 630 631 860 861 862 863 864 865 + on left: 626 627 628 629 630 + on right: 76 555 556 557 558 559 560 629 630 859 860 861 862 863 864 basic_type_declaration (407) - on left: 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 - on right: 413 414 474 480 485 495 683 + on left: 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 + on right: 412 413 473 479 484 494 682 enum_basic_type_declaration (408) - on left: 659 660 661 662 663 664 665 666 - on right: 611 + on left: 658 659 660 661 662 663 664 665 + on right: 610 structure_type_declaration (409) - on left: 667 - on right: 272 686 + on left: 666 + on right: 271 685 auto_type_declaration (410) - on left: 668 669 670 - on right: 684 + on left: 667 668 669 + on right: 683 bitfield_bits (411) - on left: 671 672 - on right: 672 678 + on left: 670 671 + on right: 671 677 bitfield_alias_bits (412) - on left: 673 674 675 - on right: 674 675 765 + on left: 672 673 674 + on right: 673 674 764 bitfield_type_declaration (413) - on left: 678 - on right: 685 + on left: 677 + on right: 684 $@47 (414) - on left: 676 - on right: 678 + on left: 675 + on right: 677 $@48 (415) - on left: 677 - on right: 678 + on left: 676 + on right: 677 table_type_pair (416) - on left: 679 680 - on right: 717 + on left: 678 679 + on right: 716 dim_list (417) - on left: 681 682 - on right: 682 687 + on left: 680 681 + on right: 681 686 type_declaration_no_options (418) - on left: 683 684 685 686 687 688 691 692 693 695 696 697 698 699 700 701 702 703 704 705 706 707 710 711 714 717 720 721 724 727 728 731 734 735 738 741 744 747 - on right: 301 302 309 312 315 399 467 468 473 572 573 574 687 688 696 697 698 699 700 701 702 703 704 705 706 707 711 748 749 798 799 800 801 802 803 806 809 812 815 824 828 829 832 835 838 842 846 854 855 + on left: 682 683 684 685 686 687 690 691 692 694 695 696 697 698 699 700 701 702 703 704 705 706 709 710 713 716 719 720 723 726 727 730 733 734 737 740 743 746 + on right: 300 301 308 311 314 398 466 467 472 571 572 573 686 687 695 696 697 698 699 700 701 702 703 704 705 706 710 747 748 797 798 799 800 801 802 805 808 811 814 823 827 828 831 834 837 841 845 853 854 $@49 (419) - on left: 689 - on right: 691 + on left: 688 + on right: 690 $@50 (420) - on left: 690 - on right: 691 + on left: 689 + on right: 690 $@51 (421) - on left: 694 - on right: 695 + on left: 693 + on right: 694 $@52 (422) - on left: 708 - on right: 710 + on left: 707 + on right: 709 $@53 (423) - on left: 709 - on right: 710 + on left: 708 + on right: 709 $@54 (424) - on left: 712 - on right: 714 + on left: 711 + on right: 713 $@55 (425) - on left: 713 - on right: 714 + on left: 712 + on right: 713 $@56 (426) - on left: 715 - on right: 717 + on left: 714 + on right: 716 $@57 (427) - on left: 716 - on right: 717 + on left: 715 + on right: 716 $@58 (428) - on left: 718 - on right: 720 + on left: 717 + on right: 719 $@59 (429) - on left: 719 - on right: 720 + on left: 718 + on right: 719 $@60 (430) - on left: 722 - on right: 724 + on left: 721 + on right: 723 $@61 (431) - on left: 723 - on right: 724 + on left: 722 + on right: 723 $@62 (432) - on left: 725 - on right: 727 + on left: 724 + on right: 726 $@63 (433) - on left: 726 - on right: 727 + on left: 725 + on right: 726 $@64 (434) - on left: 729 - on right: 731 + on left: 728 + on right: 730 $@65 (435) - on left: 730 - on right: 731 + on left: 729 + on right: 730 $@66 (436) - on left: 732 - on right: 734 + on left: 731 + on right: 733 $@67 (437) - on left: 733 - on right: 734 + on left: 732 + on right: 733 $@68 (438) - on left: 736 - on right: 738 + on left: 735 + on right: 737 $@69 (439) - on left: 737 - on right: 738 + on left: 736 + on right: 737 $@70 (440) - on left: 739 - on right: 741 + on left: 738 + on right: 740 $@71 (441) - on left: 740 - on right: 741 + on left: 739 + on right: 740 $@72 (442) - on left: 742 - on right: 744 + on left: 741 + on right: 743 $@73 (443) - on left: 743 - on right: 744 + on left: 742 + on right: 743 $@74 (444) - on left: 745 - on right: 747 + on left: 744 + on right: 746 $@75 (445) - on left: 746 - on right: 747 + on left: 745 + on right: 746 type_declaration (446) - on left: 748 749 750 - on right: 125 251 252 271 318 479 484 541 542 548 558 559 596 679 680 691 710 714 720 724 731 738 749 750 + on left: 747 748 749 + on right: 125 251 252 270 317 478 483 540 541 547 557 558 595 678 679 690 709 713 719 723 730 737 748 749 tuple_alias_declaration (447) - on left: 755 + on left: 754 on right: 12 $@76 (448) - on left: 751 - on right: 755 + on left: 750 + on right: 754 $@77 (449) - on left: 752 - on right: 755 + on left: 751 + on right: 754 $@78 (450) - on left: 753 - on right: 755 + on left: 752 + on right: 754 $@79 (451) - on left: 754 - on right: 755 + on left: 753 + on right: 754 variant_alias_declaration (452) - on left: 760 + on left: 759 on right: 11 $@80 (453) - on left: 756 - on right: 760 + on left: 755 + on right: 759 $@81 (454) - on left: 757 - on right: 760 + on left: 756 + on right: 759 $@82 (455) - on left: 758 - on right: 760 + on left: 757 + on right: 759 $@83 (456) - on left: 759 - on right: 760 + on left: 758 + on right: 759 bitfield_alias_declaration (457) - on left: 765 + on left: 764 on right: 13 $@84 (458) - on left: 761 - on right: 765 + on left: 760 + on right: 764 $@85 (459) - on left: 762 - on right: 765 + on left: 761 + on right: 764 $@86 (460) - on left: 763 - on right: 765 + on left: 762 + on right: 764 $@87 (461) - on left: 764 - on right: 765 + on left: 763 + on right: 764 make_decl (462) - on left: 766 767 768 769 770 - on right: 277 420 + on left: 765 766 767 768 769 + on right: 276 419 make_struct_fields (463) - on left: 771 772 773 774 775 776 777 778 - on right: 390 391 773 774 777 778 779 780 781 + on left: 770 771 772 773 774 775 776 777 + on right: 389 390 772 773 776 777 778 779 780 make_struct_single (464) - on left: 779 - on right: 276 411 + on left: 778 + on right: 275 410 make_struct_dim (465) - on left: 780 781 - on right: 781 798 801 802 803 806 809 812 824 832 835 838 + on left: 779 780 + on right: 780 797 800 801 802 805 808 811 823 831 834 837 optional_block (466) - on left: 782 783 - on right: 798 799 800 801 802 803 + on left: 781 782 + on right: 797 798 799 800 801 802 optional_trailing_semicolon_cur_cur (467) - on left: 784 785 - on right: 852 + on left: 783 784 + on right: 851 optional_trailing_semicolon_cur_sqr (468) - on left: 786 787 - on right: 829 - optional_trailing_semicolon_sqr_sqr (469) - on left: 788 789 + on left: 785 786 on right: 828 + optional_trailing_semicolon_sqr_sqr (469) + on left: 787 788 + on right: 827 optional_trailing_delim_sqr_sqr (470) - on left: 790 791 792 - on right: 798 799 800 801 + on left: 789 790 791 + on right: 797 798 799 800 optional_trailing_delim_cur_sqr (471) - on left: 793 794 795 - on right: 802 803 + on left: 792 793 794 + on right: 801 802 use_initializer (472) - on left: 796 797 - on right: 274 276 806 809 815 824 832 835 + on left: 795 796 + on right: 273 275 805 808 814 823 831 834 make_struct_decl (473) - on left: 798 799 800 801 802 803 806 809 812 815 - on right: 766 + on left: 797 798 799 800 801 802 805 808 811 814 + on right: 765 $@88 (474) - on left: 804 - on right: 806 + on left: 803 + on right: 805 $@89 (475) - on left: 805 - on right: 806 + on left: 804 + on right: 805 $@90 (476) - on left: 807 - on right: 809 + on left: 806 + on right: 808 $@91 (477) - on left: 808 - on right: 809 + on left: 807 + on right: 808 $@92 (478) - on left: 810 - on right: 812 + on left: 809 + on right: 811 $@93 (479) - on left: 811 - on right: 812 + on left: 810 + on right: 811 $@94 (480) - on left: 813 - on right: 815 + on left: 812 + on right: 814 $@95 (481) - on left: 814 - on right: 815 + on left: 813 + on right: 814 make_tuple (482) - on left: 816 817 818 - on right: 818 825 826 + on left: 815 816 817 + on right: 817 824 825 make_map_tuple (483) - on left: 819 820 - on right: 847 848 849 850 864 865 + on left: 818 819 + on right: 846 847 848 849 863 864 make_tuple_call (484) - on left: 821 824 - on right: 770 + on left: 820 823 + on right: 769 $@96 (485) - on left: 822 - on right: 824 + on left: 821 + on right: 823 $@97 (486) - on left: 823 - on right: 824 + on left: 822 + on right: 823 make_dim (487) - on left: 825 826 - on right: 826 828 829 + on left: 824 825 + on right: 825 827 828 make_dim_decl (488) - on left: 827 828 829 832 835 838 839 842 843 846 - on right: 767 + on left: 826 827 828 831 834 837 838 841 842 845 + on right: 766 $@98 (489) - on left: 830 - on right: 832 + on left: 829 + on right: 831 $@99 (490) - on left: 831 - on right: 832 + on left: 830 + on right: 831 $@100 (491) - on left: 833 - on right: 835 + on left: 832 + on right: 834 $@101 (492) - on left: 834 - on right: 835 + on left: 833 + on right: 834 $@102 (493) - on left: 836 - on right: 838 + on left: 835 + on right: 837 $@103 (494) - on left: 837 - on right: 838 + on left: 836 + on right: 837 $@104 (495) - on left: 840 - on right: 842 + on left: 839 + on right: 841 $@105 (496) - on left: 841 - on right: 842 + on left: 840 + on right: 841 $@106 (497) - on left: 844 - on right: 846 + on left: 843 + on right: 845 $@107 (498) - on left: 845 - on right: 846 + on left: 844 + on right: 845 make_table (499) - on left: 847 848 - on right: 848 852 + on left: 846 847 + on right: 847 851 expr_map_tuple_list (500) - on left: 849 850 - on right: 850 851 853 854 855 + on left: 848 849 + on right: 849 850 852 853 854 make_table_decl (501) - on left: 851 852 853 854 855 - on right: 768 + on left: 850 851 852 853 854 + on right: 767 array_comprehension_where (502) - on left: 856 857 - on right: 860 861 862 863 864 865 + on left: 855 856 + on right: 859 860 861 862 863 864 optional_comma (503) - on left: 858 859 - on right: 455 821 827 839 842 843 846 851 853 854 855 + on left: 857 858 + on right: 454 820 826 838 841 842 845 850 852 853 854 array_comprehension (504) - on left: 860 861 862 863 864 865 - on right: 769 + on left: 859 860 861 862 863 864 + on right: 768 State 0 @@ -2374,9 +2372,9 @@ State 2 State 3 - 295 kwd_let: "let" . + 294 kwd_let: "let" . - $default reduce using rule 295 (kwd_let) + $default reduce using rule 294 (kwd_let) State 4 @@ -2418,21 +2416,21 @@ State 6 State 7 - 599 alias_declaration: "typedef" . "begin of code block" alias_list "end of code block" - 601 | "typedef" . $@40 single_alias "end of expression" + 598 alias_declaration: "typedef" . "begin of code block" alias_list "end of code block" + 600 | "typedef" . $@40 single_alias "end of expression" "begin of code block" shift, and go to state 48 - $default reduce using rule 600 ($@40) + $default reduce using rule 599 ($@40) $@40 go to state 49 State 8 - 296 kwd_let: "var" . + 295 kwd_let: "var" . - $default reduce using rule 296 (kwd_let) + $default reduce using rule 295 (kwd_let) State 9 @@ -2447,36 +2445,36 @@ State 9 State 10 - 765 bitfield_alias_declaration: "bitfield" . optional_public_or_private_alias $@84 "name" $@85 "begin of code block" $@86 bitfield_alias_bits $@87 "end of code block" + 764 bitfield_alias_declaration: "bitfield" . optional_public_or_private_alias $@84 "name" $@85 "begin of code block" $@86 bitfield_alias_bits $@87 "end of code block" "public" shift, and go to state 53 "private" shift, and go to state 54 - $default reduce using rule 592 (optional_public_or_private_alias) + $default reduce using rule 591 (optional_public_or_private_alias) optional_public_or_private_alias go to state 55 State 11 - 755 tuple_alias_declaration: "tuple" . optional_public_or_private_alias $@76 "name" $@77 "begin of code block" $@78 tuple_alias_type_list $@79 "end of code block" + 754 tuple_alias_declaration: "tuple" . optional_public_or_private_alias $@76 "name" $@77 "begin of code block" $@78 tuple_alias_type_list $@79 "end of code block" "public" shift, and go to state 53 "private" shift, and go to state 54 - $default reduce using rule 592 (optional_public_or_private_alias) + $default reduce using rule 591 (optional_public_or_private_alias) optional_public_or_private_alias go to state 56 State 12 - 760 variant_alias_declaration: "variant" . optional_public_or_private_alias $@80 "name" $@81 "begin of code block" $@82 variant_alias_type_list $@83 "end of code block" + 759 variant_alias_declaration: "variant" . optional_public_or_private_alias $@80 "name" $@81 "begin of code block" $@82 variant_alias_type_list $@83 "end of code block" "public" shift, and go to state 53 "private" shift, and go to state 54 - $default reduce using rule 592 (optional_public_or_private_alias) + $default reduce using rule 591 (optional_public_or_private_alias) optional_public_or_private_alias go to state 57 @@ -2492,29 +2490,27 @@ State 14 35 expr_reader: '%' . name_in_namespace $@1 reader_character_sequence - "::" shift, and go to state 58 - "name" shift, and go to state 59 + "name" shift, and go to state 58 - name_in_namespace go to state 60 + name_in_namespace go to state 59 State 15 120 optional_annotation_list: '[' . annotation_list ']' - "require" shift, and go to state 61 - "private" shift, and go to state 62 - "|>" shift, and go to state 63 - "::" shift, and go to state 58 - "name" shift, and go to state 59 - '!' shift, and go to state 64 - '(' shift, and go to state 65 + "require" shift, and go to state 60 + "private" shift, and go to state 61 + "|>" shift, and go to state 62 + "name" shift, and go to state 58 + '!' shift, and go to state 63 + '(' shift, and go to state 64 - annotation_declaration_name go to state 66 - annotation_declaration_basic go to state 67 - annotation_declaration go to state 68 - annotation_list go to state 69 - name_in_namespace go to state 70 + annotation_declaration_name go to state 65 + annotation_declaration_basic go to state 66 + annotation_declaration go to state 67 + annotation_list go to state 68 + name_in_namespace go to state 69 State 16 @@ -2535,7 +2531,7 @@ State 18 16 top_level_reader_macro: expr_reader . "end of expression" - "end of expression" shift, and go to state 71 + "end of expression" shift, and go to state 70 State 19 @@ -2562,16 +2558,16 @@ State 21 State 22 211 global_function_declaration: optional_annotation_list . "def" function_declaration - 608 enum_declaration: optional_annotation_list . "enum" optional_public_or_private_enum enum_name "begin of code block" $@41 enum_list $@42 "end of code block" - 611 | optional_annotation_list . "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 "end of code block" - 626 structure_declaration: optional_annotation_list . class_or_struct optional_public_or_private_structure $@45 structure_name $@46 optional_struct_variable_declaration_list + 607 enum_declaration: optional_annotation_list . "enum" optional_public_or_private_enum enum_name "begin of code block" $@41 enum_list $@42 "end of code block" + 610 | optional_annotation_list . "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 "end of code block" + 625 structure_declaration: optional_annotation_list . class_or_struct optional_public_or_private_structure $@45 structure_name $@46 optional_struct_variable_declaration_list - "struct" shift, and go to state 72 - "class" shift, and go to state 73 - "def" shift, and go to state 74 - "enum" shift, and go to state 75 + "struct" shift, and go to state 71 + "class" shift, and go to state 72 + "def" shift, and go to state 73 + "enum" shift, and go to state 74 - class_or_struct go to state 76 + class_or_struct go to state 75 State 23 @@ -2583,14 +2579,14 @@ State 23 State 24 - 585 global_let: kwd_let . optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" - 587 | kwd_let . optional_shared optional_public_or_private_variable $@38 optional_field_annotation let_variable_declaration + 584 global_let: kwd_let . optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" + 586 | kwd_let . optional_shared optional_public_or_private_variable $@38 optional_field_annotation let_variable_declaration - "shared" shift, and go to state 77 + "shared" shift, and go to state 76 - $default reduce using rule 580 (optional_shared) + $default reduce using rule 579 (optional_shared) - optional_shared go to state 78 + optional_shared go to state 77 State 25 @@ -2674,7 +2670,7 @@ State 35 99 | annotation_argument_name . 100 | annotation_argument_name . '=' '(' annotation_argument_value_list ')' - '=' shift, and go to state 79 + '=' shift, and go to state 78 $default reduce using rule 99 (annotation_argument) @@ -2691,7 +2687,7 @@ State 37 36 options_declaration: "options" annotation_argument_list . 102 annotation_argument_list: annotation_argument_list . ',' annotation_argument - ',' shift, and go to state 80 + ',' shift, and go to state 79 $default reduce using rule 36 (options_declaration) @@ -2701,7 +2697,7 @@ State 38 52 expect_error: "integer constant" . 53 | "integer constant" . ':' "integer constant" - ':' shift, and go to state 81 + ':' shift, and go to state 80 $default reduce using rule 52 (expect_error) @@ -2711,7 +2707,7 @@ State 39 49 expect_declaration: "expect" expect_list . 51 expect_list: expect_list . ',' expect_error - ',' shift, and go to state 82 + ',' shift, and go to state 81 $default reduce using rule 49 (expect_declaration) @@ -2754,7 +2750,7 @@ State 44 '%' shift, and go to state 44 keyword_or_name go to state 45 - require_module_name go to state 83 + require_module_name go to state 82 State 45 @@ -2771,14 +2767,14 @@ State 46 45 require_module: require_module_name . is_public_module 46 | require_module_name . "as" "name" is_public_module - "as" shift, and go to state 84 - "public" shift, and go to state 85 - '/' shift, and go to state 86 - '.' shift, and go to state 87 + "as" shift, and go to state 83 + "public" shift, and go to state 84 + '/' shift, and go to state 85 + '.' shift, and go to state 86 $default reduce using rule 47 (is_public_module) - is_public_module go to state 88 + is_public_module go to state 87 State 47 @@ -2790,29 +2786,29 @@ State 47 State 48 - 599 alias_declaration: "typedef" "begin of code block" . alias_list "end of code block" + 598 alias_declaration: "typedef" "begin of code block" . alias_list "end of code block" "public" shift, and go to state 53 "private" shift, and go to state 54 - $default reduce using rule 592 (optional_public_or_private_alias) + $default reduce using rule 591 (optional_public_or_private_alias) - optional_public_or_private_alias go to state 89 - single_alias go to state 90 - alias_list go to state 91 + optional_public_or_private_alias go to state 88 + single_alias go to state 89 + alias_list go to state 90 State 49 - 601 alias_declaration: "typedef" $@40 . single_alias "end of expression" + 600 alias_declaration: "typedef" $@40 . single_alias "end of expression" "public" shift, and go to state 53 "private" shift, and go to state 54 - $default reduce using rule 592 (optional_public_or_private_alias) + $default reduce using rule 591 (optional_public_or_private_alias) - optional_public_or_private_alias go to state 89 - single_alias go to state 92 + optional_public_or_private_alias go to state 88 + single_alias go to state 91 State 50 @@ -2833,276 +2829,265 @@ State 52 22 module_declaration: "module" module_name . optional_shared optional_public_or_private_module - "shared" shift, and go to state 77 + "shared" shift, and go to state 76 - $default reduce using rule 580 (optional_shared) + $default reduce using rule 579 (optional_shared) - optional_shared go to state 93 + optional_shared go to state 92 State 53 - 594 optional_public_or_private_alias: "public" . + 593 optional_public_or_private_alias: "public" . - $default reduce using rule 594 (optional_public_or_private_alias) + $default reduce using rule 593 (optional_public_or_private_alias) State 54 - 593 optional_public_or_private_alias: "private" . + 592 optional_public_or_private_alias: "private" . - $default reduce using rule 593 (optional_public_or_private_alias) + $default reduce using rule 592 (optional_public_or_private_alias) State 55 - 765 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias . $@84 "name" $@85 "begin of code block" $@86 bitfield_alias_bits $@87 "end of code block" + 764 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias . $@84 "name" $@85 "begin of code block" $@86 bitfield_alias_bits $@87 "end of code block" - $default reduce using rule 761 ($@84) + $default reduce using rule 760 ($@84) - $@84 go to state 94 + $@84 go to state 93 State 56 - 755 tuple_alias_declaration: "tuple" optional_public_or_private_alias . $@76 "name" $@77 "begin of code block" $@78 tuple_alias_type_list $@79 "end of code block" + 754 tuple_alias_declaration: "tuple" optional_public_or_private_alias . $@76 "name" $@77 "begin of code block" $@78 tuple_alias_type_list $@79 "end of code block" - $default reduce using rule 751 ($@76) + $default reduce using rule 750 ($@76) - $@76 go to state 95 + $@76 go to state 94 State 57 - 760 variant_alias_declaration: "variant" optional_public_or_private_alias . $@80 "name" $@81 "begin of code block" $@82 variant_alias_type_list $@83 "end of code block" + 759 variant_alias_declaration: "variant" optional_public_or_private_alias . $@80 "name" $@81 "begin of code block" $@82 variant_alias_type_list $@83 "end of code block" - $default reduce using rule 756 ($@80) + $default reduce using rule 755 ($@80) - $@80 go to state 96 + $@80 go to state 95 State 58 - 266 name_in_namespace: "::" . "name" - - "name" shift, and go to state 97 - - -State 59 - 264 name_in_namespace: "name" . 265 | "name" . "::" "name" - "::" shift, and go to state 98 + "::" shift, and go to state 96 - "::" [reduce using rule 264 (name_in_namespace)] $default reduce using rule 264 (name_in_namespace) -State 60 +State 59 35 expr_reader: '%' name_in_namespace . $@1 reader_character_sequence $default reduce using rule 34 ($@1) - $@1 go to state 99 + $@1 go to state 97 -State 61 +State 60 106 annotation_declaration_name: "require" . $default reduce using rule 106 (annotation_declaration_name) -State 62 +State 61 107 annotation_declaration_name: "private" . $default reduce using rule 107 (annotation_declaration_name) -State 63 +State 62 116 annotation_declaration: "|>" . annotation_declaration - "require" shift, and go to state 61 - "private" shift, and go to state 62 - "|>" shift, and go to state 63 - "::" shift, and go to state 58 - "name" shift, and go to state 59 - '!' shift, and go to state 64 - '(' shift, and go to state 65 + "require" shift, and go to state 60 + "private" shift, and go to state 61 + "|>" shift, and go to state 62 + "name" shift, and go to state 58 + '!' shift, and go to state 63 + '(' shift, and go to state 64 - annotation_declaration_name go to state 66 - annotation_declaration_basic go to state 67 - annotation_declaration go to state 100 - name_in_namespace go to state 70 + annotation_declaration_name go to state 65 + annotation_declaration_basic go to state 66 + annotation_declaration go to state 98 + name_in_namespace go to state 69 -State 64 +State 63 111 annotation_declaration: '!' . annotation_declaration - "require" shift, and go to state 61 - "private" shift, and go to state 62 - "|>" shift, and go to state 63 - "::" shift, and go to state 58 - "name" shift, and go to state 59 - '!' shift, and go to state 64 - '(' shift, and go to state 65 + "require" shift, and go to state 60 + "private" shift, and go to state 61 + "|>" shift, and go to state 62 + "name" shift, and go to state 58 + '!' shift, and go to state 63 + '(' shift, and go to state 64 - annotation_declaration_name go to state 66 - annotation_declaration_basic go to state 67 - annotation_declaration go to state 101 - name_in_namespace go to state 70 + annotation_declaration_name go to state 65 + annotation_declaration_basic go to state 66 + annotation_declaration go to state 99 + name_in_namespace go to state 69 -State 65 +State 64 115 annotation_declaration: '(' . annotation_declaration ')' - "require" shift, and go to state 61 - "private" shift, and go to state 62 - "|>" shift, and go to state 63 - "::" shift, and go to state 58 - "name" shift, and go to state 59 - '!' shift, and go to state 64 - '(' shift, and go to state 65 + "require" shift, and go to state 60 + "private" shift, and go to state 61 + "|>" shift, and go to state 62 + "name" shift, and go to state 58 + '!' shift, and go to state 63 + '(' shift, and go to state 64 - annotation_declaration_name go to state 66 - annotation_declaration_basic go to state 67 - annotation_declaration go to state 102 - name_in_namespace go to state 70 + annotation_declaration_name go to state 65 + annotation_declaration_basic go to state 66 + annotation_declaration go to state 100 + name_in_namespace go to state 69 -State 66 +State 65 108 annotation_declaration_basic: annotation_declaration_name . 109 | annotation_declaration_name . '(' annotation_argument_list ')' - '(' shift, and go to state 103 + '(' shift, and go to state 101 $default reduce using rule 108 (annotation_declaration_basic) -State 67 +State 66 110 annotation_declaration: annotation_declaration_basic . $default reduce using rule 110 (annotation_declaration) -State 68 +State 67 112 annotation_declaration: annotation_declaration . "&&" annotation_declaration 113 | annotation_declaration . "||" annotation_declaration 114 | annotation_declaration . "^^" annotation_declaration 117 annotation_list: annotation_declaration . - "&&" shift, and go to state 104 - "||" shift, and go to state 105 - "^^" shift, and go to state 106 + "&&" shift, and go to state 102 + "||" shift, and go to state 103 + "^^" shift, and go to state 104 $default reduce using rule 117 (annotation_list) -State 69 +State 68 118 annotation_list: annotation_list . ',' annotation_declaration 120 optional_annotation_list: '[' annotation_list . ']' - ',' shift, and go to state 107 - ']' shift, and go to state 108 + ',' shift, and go to state 105 + ']' shift, and go to state 106 -State 70 +State 69 105 annotation_declaration_name: name_in_namespace . $default reduce using rule 105 (annotation_declaration_name) -State 71 +State 70 16 top_level_reader_macro: expr_reader "end of expression" . $default reduce using rule 16 (top_level_reader_macro) -State 72 +State 71 - 618 class_or_struct: "struct" . + 617 class_or_struct: "struct" . - $default reduce using rule 618 (class_or_struct) + $default reduce using rule 617 (class_or_struct) -State 73 +State 72 - 617 class_or_struct: "class" . + 616 class_or_struct: "class" . - $default reduce using rule 617 (class_or_struct) + $default reduce using rule 616 (class_or_struct) -State 74 +State 73 211 global_function_declaration: optional_annotation_list "def" . function_declaration - "public" shift, and go to state 109 - "private" shift, and go to state 110 + "public" shift, and go to state 107 + "private" shift, and go to state 108 $default reduce using rule 212 (optional_public_or_private_function) - optional_public_or_private_function go to state 111 - function_declaration go to state 112 + optional_public_or_private_function go to state 109 + function_declaration go to state 110 -State 75 +State 74 - 608 enum_declaration: optional_annotation_list "enum" . optional_public_or_private_enum enum_name "begin of code block" $@41 enum_list $@42 "end of code block" - 611 | optional_annotation_list "enum" . optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 "end of code block" + 607 enum_declaration: optional_annotation_list "enum" . optional_public_or_private_enum enum_name "begin of code block" $@41 enum_list $@42 "end of code block" + 610 | optional_annotation_list "enum" . optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 "end of code block" - "public" shift, and go to state 113 - "private" shift, and go to state 114 + "public" shift, and go to state 111 + "private" shift, and go to state 112 - $default reduce using rule 602 (optional_public_or_private_enum) + $default reduce using rule 601 (optional_public_or_private_enum) - optional_public_or_private_enum go to state 115 + optional_public_or_private_enum go to state 113 -State 76 +State 75 - 626 structure_declaration: optional_annotation_list class_or_struct . optional_public_or_private_structure $@45 structure_name $@46 optional_struct_variable_declaration_list + 625 structure_declaration: optional_annotation_list class_or_struct . optional_public_or_private_structure $@45 structure_name $@46 optional_struct_variable_declaration_list - "public" shift, and go to state 116 - "private" shift, and go to state 117 + "public" shift, and go to state 114 + "private" shift, and go to state 115 - $default reduce using rule 619 (optional_public_or_private_structure) + $default reduce using rule 618 (optional_public_or_private_structure) - optional_public_or_private_structure go to state 118 + optional_public_or_private_structure go to state 116 -State 77 +State 76 - 581 optional_shared: "shared" . + 580 optional_shared: "shared" . - $default reduce using rule 581 (optional_shared) + $default reduce using rule 580 (optional_shared) -State 78 +State 77 - 585 global_let: kwd_let optional_shared . optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" - 587 | kwd_let optional_shared . optional_public_or_private_variable $@38 optional_field_annotation let_variable_declaration + 584 global_let: kwd_let optional_shared . optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" + 586 | kwd_let optional_shared . optional_public_or_private_variable $@38 optional_field_annotation let_variable_declaration - "public" shift, and go to state 119 - "private" shift, and go to state 120 + "public" shift, and go to state 117 + "private" shift, and go to state 118 - $default reduce using rule 582 (optional_public_or_private_variable) + $default reduce using rule 581 (optional_public_or_private_variable) - optional_public_or_private_variable go to state 121 + optional_public_or_private_variable go to state 119 -State 79 +State 78 93 annotation_argument: annotation_argument_name '=' . string_constant 94 | annotation_argument_name '=' . "name" @@ -3112,18 +3097,18 @@ State 79 98 | annotation_argument_name '=' . "false" 100 | annotation_argument_name '=' . '(' annotation_argument_value_list ')' - "true" shift, and go to state 122 - "false" shift, and go to state 123 - "integer constant" shift, and go to state 124 - "floating point constant" shift, and go to state 125 - "name" shift, and go to state 126 - "start of the string" shift, and go to state 127 - '(' shift, and go to state 128 + "true" shift, and go to state 120 + "false" shift, and go to state 121 + "integer constant" shift, and go to state 122 + "floating point constant" shift, and go to state 123 + "name" shift, and go to state 124 + "start of the string" shift, and go to state 125 + '(' shift, and go to state 126 - string_constant go to state 129 + string_constant go to state 127 -State 80 +State 79 102 annotation_argument_list: annotation_argument_list ',' . annotation_argument @@ -3132,51 +3117,51 @@ State 80 "name" shift, and go to state 34 annotation_argument_name go to state 35 - annotation_argument go to state 130 + annotation_argument go to state 128 -State 81 +State 80 53 expect_error: "integer constant" ':' . "integer constant" - "integer constant" shift, and go to state 131 + "integer constant" shift, and go to state 129 -State 82 +State 81 51 expect_list: expect_list ',' . expect_error "integer constant" shift, and go to state 38 - expect_error go to state 132 + expect_error go to state 130 -State 83 +State 82 42 require_module_name: '%' require_module_name . 43 | require_module_name . '.' keyword_or_name 44 | require_module_name . '/' keyword_or_name - '.' shift, and go to state 87 + '.' shift, and go to state 86 $default reduce using rule 42 (require_module_name) -State 84 +State 83 46 require_module: require_module_name "as" . "name" is_public_module - "name" shift, and go to state 133 + "name" shift, and go to state 131 -State 85 +State 84 48 is_public_module: "public" . $default reduce using rule 48 (is_public_module) -State 86 +State 85 44 require_module_name: require_module_name '/' . keyword_or_name @@ -3184,10 +3169,10 @@ State 86 "keyword" shift, and go to state 42 "type function" shift, and go to state 43 - keyword_or_name go to state 134 + keyword_or_name go to state 132 -State 87 +State 86 43 require_module_name: require_module_name '.' . keyword_or_name @@ -3195,109 +3180,102 @@ State 87 "keyword" shift, and go to state 42 "type function" shift, and go to state 43 - keyword_or_name go to state 135 + keyword_or_name go to state 133 -State 88 +State 87 45 require_module: require_module_name is_public_module . $default reduce using rule 45 (require_module) -State 89 +State 88 - 596 single_alias: optional_public_or_private_alias . "name" $@39 '=' type_declaration + 595 single_alias: optional_public_or_private_alias . "name" $@39 '=' type_declaration - "name" shift, and go to state 136 + "name" shift, and go to state 134 -State 90 +State 89 - 597 alias_list: single_alias . "end of expression" + 596 alias_list: single_alias . "end of expression" - "end of expression" shift, and go to state 137 + "end of expression" shift, and go to state 135 -State 91 +State 90 - 598 alias_list: alias_list . single_alias "end of expression" - 599 alias_declaration: "typedef" "begin of code block" alias_list . "end of code block" + 597 alias_list: alias_list . single_alias "end of expression" + 598 alias_declaration: "typedef" "begin of code block" alias_list . "end of code block" "public" shift, and go to state 53 "private" shift, and go to state 54 - "end of code block" shift, and go to state 138 + "end of code block" shift, and go to state 136 - $default reduce using rule 592 (optional_public_or_private_alias) + $default reduce using rule 591 (optional_public_or_private_alias) - optional_public_or_private_alias go to state 89 - single_alias go to state 139 + optional_public_or_private_alias go to state 88 + single_alias go to state 137 -State 92 +State 91 - 601 alias_declaration: "typedef" $@40 single_alias . "end of expression" + 600 alias_declaration: "typedef" $@40 single_alias . "end of expression" - "end of expression" shift, and go to state 140 + "end of expression" shift, and go to state 138 -State 93 +State 92 22 module_declaration: "module" module_name optional_shared . optional_public_or_private_module - "public" shift, and go to state 141 - "private" shift, and go to state 142 + "public" shift, and go to state 139 + "private" shift, and go to state 140 $default reduce using rule 17 (optional_public_or_private_module) - optional_public_or_private_module go to state 143 + optional_public_or_private_module go to state 141 + + +State 93 + + 764 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 . "name" $@85 "begin of code block" $@86 bitfield_alias_bits $@87 "end of code block" + + "name" shift, and go to state 142 State 94 - 765 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 . "name" $@85 "begin of code block" $@86 bitfield_alias_bits $@87 "end of code block" + 754 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 . "name" $@77 "begin of code block" $@78 tuple_alias_type_list $@79 "end of code block" - "name" shift, and go to state 144 + "name" shift, and go to state 143 State 95 - 755 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 . "name" $@77 "begin of code block" $@78 tuple_alias_type_list $@79 "end of code block" + 759 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 . "name" $@81 "begin of code block" $@82 variant_alias_type_list $@83 "end of code block" - "name" shift, and go to state 145 + "name" shift, and go to state 144 State 96 - 760 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 . "name" $@81 "begin of code block" $@82 variant_alias_type_list $@83 "end of code block" + 265 name_in_namespace: "name" "::" . "name" - "name" shift, and go to state 146 + "name" shift, and go to state 145 State 97 - 266 name_in_namespace: "::" "name" . - - $default reduce using rule 266 (name_in_namespace) - - -State 98 - - 265 name_in_namespace: "name" "::" . "name" - - "name" shift, and go to state 147 - - -State 99 - 35 expr_reader: '%' name_in_namespace $@1 . reader_character_sequence - STRING_CHARACTER shift, and go to state 148 + STRING_CHARACTER shift, and go to state 146 - reader_character_sequence go to state 149 + reader_character_sequence go to state 147 -State 100 +State 98 112 annotation_declaration: annotation_declaration . "&&" annotation_declaration 113 | annotation_declaration . "||" annotation_declaration @@ -3307,7 +3285,7 @@ State 100 $default reduce using rule 116 (annotation_declaration) -State 101 +State 99 111 annotation_declaration: '!' annotation_declaration . 112 | annotation_declaration . "&&" annotation_declaration @@ -3317,20 +3295,20 @@ State 101 $default reduce using rule 111 (annotation_declaration) -State 102 +State 100 112 annotation_declaration: annotation_declaration . "&&" annotation_declaration 113 | annotation_declaration . "||" annotation_declaration 114 | annotation_declaration . "^^" annotation_declaration 115 | '(' annotation_declaration . ')' - "&&" shift, and go to state 104 - "||" shift, and go to state 105 - "^^" shift, and go to state 106 - ')' shift, and go to state 150 + "&&" shift, and go to state 102 + "||" shift, and go to state 103 + "^^" shift, and go to state 104 + ')' shift, and go to state 148 -State 103 +State 101 109 annotation_declaration_basic: annotation_declaration_name '(' . annotation_argument_list ')' @@ -3340,431 +3318,427 @@ State 103 annotation_argument_name go to state 35 annotation_argument go to state 36 - annotation_argument_list go to state 151 + annotation_argument_list go to state 149 -State 104 +State 102 112 annotation_declaration: annotation_declaration "&&" . annotation_declaration - "require" shift, and go to state 61 - "private" shift, and go to state 62 - "|>" shift, and go to state 63 - "::" shift, and go to state 58 - "name" shift, and go to state 59 - '!' shift, and go to state 64 - '(' shift, and go to state 65 + "require" shift, and go to state 60 + "private" shift, and go to state 61 + "|>" shift, and go to state 62 + "name" shift, and go to state 58 + '!' shift, and go to state 63 + '(' shift, and go to state 64 - annotation_declaration_name go to state 66 - annotation_declaration_basic go to state 67 - annotation_declaration go to state 152 - name_in_namespace go to state 70 + annotation_declaration_name go to state 65 + annotation_declaration_basic go to state 66 + annotation_declaration go to state 150 + name_in_namespace go to state 69 -State 105 +State 103 113 annotation_declaration: annotation_declaration "||" . annotation_declaration - "require" shift, and go to state 61 - "private" shift, and go to state 62 - "|>" shift, and go to state 63 - "::" shift, and go to state 58 - "name" shift, and go to state 59 - '!' shift, and go to state 64 - '(' shift, and go to state 65 + "require" shift, and go to state 60 + "private" shift, and go to state 61 + "|>" shift, and go to state 62 + "name" shift, and go to state 58 + '!' shift, and go to state 63 + '(' shift, and go to state 64 - annotation_declaration_name go to state 66 - annotation_declaration_basic go to state 67 - annotation_declaration go to state 153 - name_in_namespace go to state 70 + annotation_declaration_name go to state 65 + annotation_declaration_basic go to state 66 + annotation_declaration go to state 151 + name_in_namespace go to state 69 -State 106 +State 104 114 annotation_declaration: annotation_declaration "^^" . annotation_declaration - "require" shift, and go to state 61 - "private" shift, and go to state 62 - "|>" shift, and go to state 63 - "::" shift, and go to state 58 - "name" shift, and go to state 59 - '!' shift, and go to state 64 - '(' shift, and go to state 65 + "require" shift, and go to state 60 + "private" shift, and go to state 61 + "|>" shift, and go to state 62 + "name" shift, and go to state 58 + '!' shift, and go to state 63 + '(' shift, and go to state 64 - annotation_declaration_name go to state 66 - annotation_declaration_basic go to state 67 - annotation_declaration go to state 154 - name_in_namespace go to state 70 + annotation_declaration_name go to state 65 + annotation_declaration_basic go to state 66 + annotation_declaration go to state 152 + name_in_namespace go to state 69 -State 107 +State 105 118 annotation_list: annotation_list ',' . annotation_declaration - "require" shift, and go to state 61 - "private" shift, and go to state 62 - "|>" shift, and go to state 63 - "::" shift, and go to state 58 - "name" shift, and go to state 59 - '!' shift, and go to state 64 - '(' shift, and go to state 65 + "require" shift, and go to state 60 + "private" shift, and go to state 61 + "|>" shift, and go to state 62 + "name" shift, and go to state 58 + '!' shift, and go to state 63 + '(' shift, and go to state 64 - annotation_declaration_name go to state 66 - annotation_declaration_basic go to state 67 - annotation_declaration go to state 155 - name_in_namespace go to state 70 + annotation_declaration_name go to state 65 + annotation_declaration_basic go to state 66 + annotation_declaration go to state 153 + name_in_namespace go to state 69 -State 108 +State 106 120 optional_annotation_list: '[' annotation_list ']' . $default reduce using rule 120 (optional_annotation_list) -State 109 +State 107 214 optional_public_or_private_function: "public" . $default reduce using rule 214 (optional_public_or_private_function) -State 110 +State 108 213 optional_public_or_private_function: "private" . $default reduce using rule 213 (optional_public_or_private_function) -State 111 +State 109 217 function_declaration: optional_public_or_private_function . $@6 function_declaration_header expression_block $default reduce using rule 216 ($@6) - $@6 go to state 156 + $@6 go to state 154 -State 112 +State 110 211 global_function_declaration: optional_annotation_list "def" function_declaration . $default reduce using rule 211 (global_function_declaration) -State 113 +State 111 - 604 optional_public_or_private_enum: "public" . + 603 optional_public_or_private_enum: "public" . - $default reduce using rule 604 (optional_public_or_private_enum) + $default reduce using rule 603 (optional_public_or_private_enum) -State 114 +State 112 - 603 optional_public_or_private_enum: "private" . + 602 optional_public_or_private_enum: "private" . - $default reduce using rule 603 (optional_public_or_private_enum) + $default reduce using rule 602 (optional_public_or_private_enum) -State 115 +State 113 - 608 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum . enum_name "begin of code block" $@41 enum_list $@42 "end of code block" - 611 | optional_annotation_list "enum" optional_public_or_private_enum . enum_name ':' enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 "end of code block" + 607 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum . enum_name "begin of code block" $@41 enum_list $@42 "end of code block" + 610 | optional_annotation_list "enum" optional_public_or_private_enum . enum_name ':' enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 "end of code block" - "name" shift, and go to state 157 + "name" shift, and go to state 155 - enum_name go to state 158 + enum_name go to state 156 -State 116 +State 114 - 621 optional_public_or_private_structure: "public" . + 620 optional_public_or_private_structure: "public" . - $default reduce using rule 621 (optional_public_or_private_structure) + $default reduce using rule 620 (optional_public_or_private_structure) -State 117 +State 115 - 620 optional_public_or_private_structure: "private" . + 619 optional_public_or_private_structure: "private" . - $default reduce using rule 620 (optional_public_or_private_structure) + $default reduce using rule 619 (optional_public_or_private_structure) -State 118 +State 116 - 626 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure . $@45 structure_name $@46 optional_struct_variable_declaration_list + 625 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure . $@45 structure_name $@46 optional_struct_variable_declaration_list - $default reduce using rule 624 ($@45) + $default reduce using rule 623 ($@45) - $@45 go to state 159 + $@45 go to state 157 -State 119 +State 117 - 584 optional_public_or_private_variable: "public" . + 583 optional_public_or_private_variable: "public" . - $default reduce using rule 584 (optional_public_or_private_variable) + $default reduce using rule 583 (optional_public_or_private_variable) -State 120 +State 118 - 583 optional_public_or_private_variable: "private" . + 582 optional_public_or_private_variable: "private" . - $default reduce using rule 583 (optional_public_or_private_variable) + $default reduce using rule 582 (optional_public_or_private_variable) -State 121 +State 119 - 585 global_let: kwd_let optional_shared optional_public_or_private_variable . "begin of code block" global_variable_declaration_list "end of code block" - 587 | kwd_let optional_shared optional_public_or_private_variable . $@38 optional_field_annotation let_variable_declaration + 584 global_let: kwd_let optional_shared optional_public_or_private_variable . "begin of code block" global_variable_declaration_list "end of code block" + 586 | kwd_let optional_shared optional_public_or_private_variable . $@38 optional_field_annotation let_variable_declaration - "begin of code block" shift, and go to state 160 + "begin of code block" shift, and go to state 158 - $default reduce using rule 586 ($@38) + $default reduce using rule 585 ($@38) - $@38 go to state 161 + $@38 go to state 159 -State 122 +State 120 97 annotation_argument: annotation_argument_name '=' "true" . $default reduce using rule 97 (annotation_argument) -State 123 +State 121 98 annotation_argument: annotation_argument_name '=' "false" . $default reduce using rule 98 (annotation_argument) -State 124 +State 122 95 annotation_argument: annotation_argument_name '=' "integer constant" . $default reduce using rule 95 (annotation_argument) -State 125 +State 123 96 annotation_argument: annotation_argument_name '=' "floating point constant" . $default reduce using rule 96 (annotation_argument) -State 126 +State 124 94 annotation_argument: annotation_argument_name '=' "name" . $default reduce using rule 94 (annotation_argument) -State 127 +State 125 27 string_constant: "start of the string" . character_sequence "end of the string" - STRING_CHARACTER shift, and go to state 162 - STRING_CHARACTER_ESC shift, and go to state 163 + STRING_CHARACTER shift, and go to state 160 + STRING_CHARACTER_ESC shift, and go to state 161 - character_sequence go to state 164 + character_sequence go to state 162 -State 128 +State 126 100 annotation_argument: annotation_argument_name '=' '(' . annotation_argument_value_list ')' - "true" shift, and go to state 165 - "false" shift, and go to state 166 - "integer constant" shift, and go to state 167 - "floating point constant" shift, and go to state 168 - "name" shift, and go to state 169 - "start of the string" shift, and go to state 127 + "true" shift, and go to state 163 + "false" shift, and go to state 164 + "integer constant" shift, and go to state 165 + "floating point constant" shift, and go to state 166 + "name" shift, and go to state 167 + "start of the string" shift, and go to state 125 - string_constant go to state 170 - annotation_argument_value go to state 171 - annotation_argument_value_list go to state 172 + string_constant go to state 168 + annotation_argument_value go to state 169 + annotation_argument_value_list go to state 170 -State 129 +State 127 93 annotation_argument: annotation_argument_name '=' string_constant . $default reduce using rule 93 (annotation_argument) -State 130 +State 128 102 annotation_argument_list: annotation_argument_list ',' annotation_argument . $default reduce using rule 102 (annotation_argument_list) -State 131 +State 129 53 expect_error: "integer constant" ':' "integer constant" . $default reduce using rule 53 (expect_error) -State 132 +State 130 51 expect_list: expect_list ',' expect_error . $default reduce using rule 51 (expect_list) -State 133 +State 131 46 require_module: require_module_name "as" "name" . is_public_module - "public" shift, and go to state 85 + "public" shift, and go to state 84 $default reduce using rule 47 (is_public_module) - is_public_module go to state 173 + is_public_module go to state 171 -State 134 +State 132 44 require_module_name: require_module_name '/' keyword_or_name . $default reduce using rule 44 (require_module_name) -State 135 +State 133 43 require_module_name: require_module_name '.' keyword_or_name . $default reduce using rule 43 (require_module_name) -State 136 +State 134 - 596 single_alias: optional_public_or_private_alias "name" . $@39 '=' type_declaration + 595 single_alias: optional_public_or_private_alias "name" . $@39 '=' type_declaration - $default reduce using rule 595 ($@39) + $default reduce using rule 594 ($@39) - $@39 go to state 174 + $@39 go to state 172 -State 137 +State 135 - 597 alias_list: single_alias "end of expression" . + 596 alias_list: single_alias "end of expression" . - $default reduce using rule 597 (alias_list) + $default reduce using rule 596 (alias_list) -State 138 +State 136 - 599 alias_declaration: "typedef" "begin of code block" alias_list "end of code block" . + 598 alias_declaration: "typedef" "begin of code block" alias_list "end of code block" . - $default reduce using rule 599 (alias_declaration) + $default reduce using rule 598 (alias_declaration) -State 139 +State 137 - 598 alias_list: alias_list single_alias . "end of expression" + 597 alias_list: alias_list single_alias . "end of expression" - "end of expression" shift, and go to state 175 + "end of expression" shift, and go to state 173 -State 140 +State 138 - 601 alias_declaration: "typedef" $@40 single_alias "end of expression" . + 600 alias_declaration: "typedef" $@40 single_alias "end of expression" . - $default reduce using rule 601 (alias_declaration) + $default reduce using rule 600 (alias_declaration) -State 141 +State 139 18 optional_public_or_private_module: "public" . $default reduce using rule 18 (optional_public_or_private_module) -State 142 +State 140 19 optional_public_or_private_module: "private" . $default reduce using rule 19 (optional_public_or_private_module) -State 143 +State 141 22 module_declaration: "module" module_name optional_shared optional_public_or_private_module . $default reduce using rule 22 (module_declaration) -State 144 +State 142 - 765 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" . $@85 "begin of code block" $@86 bitfield_alias_bits $@87 "end of code block" + 764 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" . $@85 "begin of code block" $@86 bitfield_alias_bits $@87 "end of code block" - $default reduce using rule 762 ($@85) + $default reduce using rule 761 ($@85) - $@85 go to state 176 + $@85 go to state 174 -State 145 +State 143 - 755 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" . $@77 "begin of code block" $@78 tuple_alias_type_list $@79 "end of code block" + 754 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" . $@77 "begin of code block" $@78 tuple_alias_type_list $@79 "end of code block" - $default reduce using rule 752 ($@77) + $default reduce using rule 751 ($@77) - $@77 go to state 177 + $@77 go to state 175 -State 146 +State 144 - 760 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" . $@81 "begin of code block" $@82 variant_alias_type_list $@83 "end of code block" + 759 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" . $@81 "begin of code block" $@82 variant_alias_type_list $@83 "end of code block" - $default reduce using rule 757 ($@81) + $default reduce using rule 756 ($@81) - $@81 go to state 178 + $@81 go to state 176 -State 147 +State 145 265 name_in_namespace: "name" "::" "name" . $default reduce using rule 265 (name_in_namespace) -State 148 +State 146 32 reader_character_sequence: STRING_CHARACTER . $default reduce using rule 32 (reader_character_sequence) -State 149 +State 147 33 reader_character_sequence: reader_character_sequence . STRING_CHARACTER 35 expr_reader: '%' name_in_namespace $@1 reader_character_sequence . - STRING_CHARACTER shift, and go to state 179 + STRING_CHARACTER shift, and go to state 177 $default reduce using rule 35 (expr_reader) -State 150 +State 148 115 annotation_declaration: '(' annotation_declaration ')' . $default reduce using rule 115 (annotation_declaration) -State 151 +State 149 102 annotation_argument_list: annotation_argument_list . ',' annotation_argument 109 annotation_declaration_basic: annotation_declaration_name '(' annotation_argument_list . ')' - ',' shift, and go to state 80 - ')' shift, and go to state 180 + ',' shift, and go to state 79 + ')' shift, and go to state 178 -State 152 +State 150 112 annotation_declaration: annotation_declaration . "&&" annotation_declaration 112 | annotation_declaration "&&" annotation_declaration . @@ -3774,273 +3748,273 @@ State 152 $default reduce using rule 112 (annotation_declaration) -State 153 +State 151 112 annotation_declaration: annotation_declaration . "&&" annotation_declaration 113 | annotation_declaration . "||" annotation_declaration 113 | annotation_declaration "||" annotation_declaration . 114 | annotation_declaration . "^^" annotation_declaration - "&&" shift, and go to state 104 - "^^" shift, and go to state 106 + "&&" shift, and go to state 102 + "^^" shift, and go to state 104 $default reduce using rule 113 (annotation_declaration) -State 154 +State 152 112 annotation_declaration: annotation_declaration . "&&" annotation_declaration 113 | annotation_declaration . "||" annotation_declaration 114 | annotation_declaration . "^^" annotation_declaration 114 | annotation_declaration "^^" annotation_declaration . - "&&" shift, and go to state 104 + "&&" shift, and go to state 102 $default reduce using rule 114 (annotation_declaration) -State 155 +State 153 112 annotation_declaration: annotation_declaration . "&&" annotation_declaration 113 | annotation_declaration . "||" annotation_declaration 114 | annotation_declaration . "^^" annotation_declaration 118 annotation_list: annotation_list ',' annotation_declaration . - "&&" shift, and go to state 104 - "||" shift, and go to state 105 - "^^" shift, and go to state 106 + "&&" shift, and go to state 102 + "||" shift, and go to state 103 + "^^" shift, and go to state 104 $default reduce using rule 118 (annotation_list) -State 156 +State 154 217 function_declaration: optional_public_or_private_function $@6 . function_declaration_header expression_block - "operator" shift, and go to state 181 - "bool" shift, and go to state 182 - "string" shift, and go to state 183 - "int" shift, and go to state 184 - "int2" shift, and go to state 185 - "int3" shift, and go to state 186 - "int4" shift, and go to state 187 - "uint" shift, and go to state 188 - "uint2" shift, and go to state 189 - "uint3" shift, and go to state 190 - "uint4" shift, and go to state 191 - "float" shift, and go to state 192 - "float2" shift, and go to state 193 - "float3" shift, and go to state 194 - "float4" shift, and go to state 195 - "range" shift, and go to state 196 - "urange" shift, and go to state 197 - "range64" shift, and go to state 198 - "urange64" shift, and go to state 199 - "int64" shift, and go to state 200 - "uint64" shift, and go to state 201 - "double" shift, and go to state 202 - "int8" shift, and go to state 203 - "uint8" shift, and go to state 204 - "int16" shift, and go to state 205 - "uint16" shift, and go to state 206 - "++" shift, and go to state 207 - "--" shift, and go to state 208 - "name" shift, and go to state 209 - - function_name go to state 210 - function_declaration_header go to state 211 + "operator" shift, and go to state 179 + "bool" shift, and go to state 180 + "string" shift, and go to state 181 + "int" shift, and go to state 182 + "int2" shift, and go to state 183 + "int3" shift, and go to state 184 + "int4" shift, and go to state 185 + "uint" shift, and go to state 186 + "uint2" shift, and go to state 187 + "uint3" shift, and go to state 188 + "uint4" shift, and go to state 189 + "float" shift, and go to state 190 + "float2" shift, and go to state 191 + "float3" shift, and go to state 192 + "float4" shift, and go to state 193 + "range" shift, and go to state 194 + "urange" shift, and go to state 195 + "range64" shift, and go to state 196 + "urange64" shift, and go to state 197 + "int64" shift, and go to state 198 + "uint64" shift, and go to state 199 + "double" shift, and go to state 200 + "int8" shift, and go to state 201 + "uint8" shift, and go to state 202 + "int16" shift, and go to state 203 + "uint16" shift, and go to state 204 + "++" shift, and go to state 205 + "--" shift, and go to state 206 + "name" shift, and go to state 207 + + function_name go to state 208 + function_declaration_header go to state 209 -State 157 +State 155 - 605 enum_name: "name" . + 604 enum_name: "name" . - $default reduce using rule 605 (enum_name) + $default reduce using rule 604 (enum_name) -State 158 +State 156 - 608 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name . "begin of code block" $@41 enum_list $@42 "end of code block" - 611 | optional_annotation_list "enum" optional_public_or_private_enum enum_name . ':' enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 "end of code block" + 607 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name . "begin of code block" $@41 enum_list $@42 "end of code block" + 610 | optional_annotation_list "enum" optional_public_or_private_enum enum_name . ':' enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 "end of code block" - "begin of code block" shift, and go to state 212 - ':' shift, and go to state 213 + "begin of code block" shift, and go to state 210 + ':' shift, and go to state 211 -State 159 +State 157 - 626 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@45 . structure_name $@46 optional_struct_variable_declaration_list + 625 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@45 . structure_name $@46 optional_struct_variable_declaration_list - "sealed" shift, and go to state 214 + "sealed" shift, and go to state 212 - $default reduce using rule 614 (optional_sealed) + $default reduce using rule 613 (optional_sealed) - optional_sealed go to state 215 - structure_name go to state 216 + optional_sealed go to state 213 + structure_name go to state 214 -State 160 +State 158 - 585 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" . global_variable_declaration_list "end of code block" + 584 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" . global_variable_declaration_list "end of code block" - $default reduce using rule 577 (global_variable_declaration_list) + $default reduce using rule 576 (global_variable_declaration_list) - global_variable_declaration_list go to state 217 + global_variable_declaration_list go to state 215 -State 161 +State 159 - 587 global_let: kwd_let optional_shared optional_public_or_private_variable $@38 . optional_field_annotation let_variable_declaration + 586 global_let: kwd_let optional_shared optional_public_or_private_variable $@38 . optional_field_annotation let_variable_declaration - "[[" shift, and go to state 218 - '@' shift, and go to state 219 + "[[" shift, and go to state 216 + '@' shift, and go to state 217 - $default reduce using rule 515 (optional_field_annotation) + $default reduce using rule 514 (optional_field_annotation) - metadata_argument_list go to state 220 - optional_field_annotation go to state 221 + metadata_argument_list go to state 218 + optional_field_annotation go to state 219 -State 162 +State 160 23 character_sequence: STRING_CHARACTER . $default reduce using rule 23 (character_sequence) -State 163 +State 161 24 character_sequence: STRING_CHARACTER_ESC . $default reduce using rule 24 (character_sequence) -State 164 +State 162 25 character_sequence: character_sequence . STRING_CHARACTER 26 | character_sequence . STRING_CHARACTER_ESC 27 string_constant: "start of the string" character_sequence . "end of the string" - STRING_CHARACTER shift, and go to state 222 - STRING_CHARACTER_ESC shift, and go to state 223 - "end of the string" shift, and go to state 224 + STRING_CHARACTER shift, and go to state 220 + STRING_CHARACTER_ESC shift, and go to state 221 + "end of the string" shift, and go to state 222 -State 165 +State 163 86 annotation_argument_value: "true" . $default reduce using rule 86 (annotation_argument_value) -State 166 +State 164 87 annotation_argument_value: "false" . $default reduce using rule 87 (annotation_argument_value) -State 167 +State 165 84 annotation_argument_value: "integer constant" . $default reduce using rule 84 (annotation_argument_value) -State 168 +State 166 85 annotation_argument_value: "floating point constant" . $default reduce using rule 85 (annotation_argument_value) -State 169 +State 167 83 annotation_argument_value: "name" . $default reduce using rule 83 (annotation_argument_value) -State 170 +State 168 82 annotation_argument_value: string_constant . $default reduce using rule 82 (annotation_argument_value) -State 171 +State 169 88 annotation_argument_value_list: annotation_argument_value . $default reduce using rule 88 (annotation_argument_value_list) -State 172 +State 170 89 annotation_argument_value_list: annotation_argument_value_list . ',' annotation_argument_value 100 annotation_argument: annotation_argument_name '=' '(' annotation_argument_value_list . ')' - ',' shift, and go to state 225 - ')' shift, and go to state 226 + ',' shift, and go to state 223 + ')' shift, and go to state 224 -State 173 +State 171 46 require_module: require_module_name "as" "name" is_public_module . $default reduce using rule 46 (require_module) -State 174 +State 172 - 596 single_alias: optional_public_or_private_alias "name" $@39 . '=' type_declaration + 595 single_alias: optional_public_or_private_alias "name" $@39 . '=' type_declaration - '=' shift, and go to state 227 + '=' shift, and go to state 225 -State 175 +State 173 - 598 alias_list: alias_list single_alias "end of expression" . + 597 alias_list: alias_list single_alias "end of expression" . - $default reduce using rule 598 (alias_list) + $default reduce using rule 597 (alias_list) -State 176 +State 174 - 765 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" $@85 . "begin of code block" $@86 bitfield_alias_bits $@87 "end of code block" + 764 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" $@85 . "begin of code block" $@86 bitfield_alias_bits $@87 "end of code block" - "begin of code block" shift, and go to state 228 + "begin of code block" shift, and go to state 226 -State 177 +State 175 - 755 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" $@77 . "begin of code block" $@78 tuple_alias_type_list $@79 "end of code block" + 754 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" $@77 . "begin of code block" $@78 tuple_alias_type_list $@79 "end of code block" - "begin of code block" shift, and go to state 229 + "begin of code block" shift, and go to state 227 -State 178 +State 176 - 760 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" $@81 . "begin of code block" $@82 variant_alias_type_list $@83 "end of code block" + 759 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" $@81 . "begin of code block" $@82 variant_alias_type_list $@83 "end of code block" - "begin of code block" shift, and go to state 230 + "begin of code block" shift, and go to state 228 -State 179 +State 177 33 reader_character_sequence: reader_character_sequence STRING_CHARACTER . $default reduce using rule 33 (reader_character_sequence) -State 180 +State 178 109 annotation_declaration_basic: annotation_declaration_name '(' annotation_argument_list ')' . $default reduce using rule 109 (annotation_declaration_basic) -State 181 +State 179 127 function_name: "operator" . '!' 128 | "operator" . '~' @@ -4100,338 +4074,338 @@ State 181 184 | "operator" . '?' "as" 185 | "operator" . '?' "as" "name" - "is" shift, and go to state 231 - "as" shift, and go to state 232 - "delete" shift, and go to state 233 - "+=" shift, and go to state 234 - "-=" shift, and go to state 235 - "/=" shift, and go to state 236 - "*=" shift, and go to state 237 - "%=" shift, and go to state 238 - "&=" shift, and go to state 239 - "|=" shift, and go to state 240 - "^=" shift, and go to state 241 - "<<" shift, and go to state 242 - ">>" shift, and go to state 243 - "++" shift, and go to state 244 - "--" shift, and go to state 245 - "<=" shift, and go to state 246 - "<<=" shift, and go to state 247 - ">>=" shift, and go to state 248 - ">=" shift, and go to state 249 - "==" shift, and go to state 250 - "!=" shift, and go to state 251 - "??" shift, and go to state 252 - "?." shift, and go to state 253 - "?[" shift, and go to state 254 - ":=" shift, and go to state 255 - "<<<" shift, and go to state 256 - ">>>" shift, and go to state 257 - "<<<=" shift, and go to state 258 - ">>>=" shift, and go to state 259 - "&&" shift, and go to state 260 - "||" shift, and go to state 261 - "^^" shift, and go to state 262 - "&&=" shift, and go to state 263 - "||=" shift, and go to state 264 - "^^=" shift, and go to state 265 - ".." shift, and go to state 266 - '?' shift, and go to state 267 - '|' shift, and go to state 268 - '^' shift, and go to state 269 - '&' shift, and go to state 270 - '<' shift, and go to state 271 - '>' shift, and go to state 272 - '-' shift, and go to state 273 - '+' shift, and go to state 274 - '*' shift, and go to state 275 - '/' shift, and go to state 276 - '%' shift, and go to state 277 - '~' shift, and go to state 278 - '!' shift, and go to state 279 - '.' shift, and go to state 280 - '[' shift, and go to state 281 + "is" shift, and go to state 229 + "as" shift, and go to state 230 + "delete" shift, and go to state 231 + "+=" shift, and go to state 232 + "-=" shift, and go to state 233 + "/=" shift, and go to state 234 + "*=" shift, and go to state 235 + "%=" shift, and go to state 236 + "&=" shift, and go to state 237 + "|=" shift, and go to state 238 + "^=" shift, and go to state 239 + "<<" shift, and go to state 240 + ">>" shift, and go to state 241 + "++" shift, and go to state 242 + "--" shift, and go to state 243 + "<=" shift, and go to state 244 + "<<=" shift, and go to state 245 + ">>=" shift, and go to state 246 + ">=" shift, and go to state 247 + "==" shift, and go to state 248 + "!=" shift, and go to state 249 + "??" shift, and go to state 250 + "?." shift, and go to state 251 + "?[" shift, and go to state 252 + ":=" shift, and go to state 253 + "<<<" shift, and go to state 254 + ">>>" shift, and go to state 255 + "<<<=" shift, and go to state 256 + ">>>=" shift, and go to state 257 + "&&" shift, and go to state 258 + "||" shift, and go to state 259 + "^^" shift, and go to state 260 + "&&=" shift, and go to state 261 + "||=" shift, and go to state 262 + "^^=" shift, and go to state 263 + ".." shift, and go to state 264 + '?' shift, and go to state 265 + '|' shift, and go to state 266 + '^' shift, and go to state 267 + '&' shift, and go to state 268 + '<' shift, and go to state 269 + '>' shift, and go to state 270 + '-' shift, and go to state 271 + '+' shift, and go to state 272 + '*' shift, and go to state 273 + '/' shift, and go to state 274 + '%' shift, and go to state 275 + '~' shift, and go to state 276 + '!' shift, and go to state 277 + '.' shift, and go to state 278 + '[' shift, and go to state 279 -State 182 +State 180 186 function_name: "bool" . $default reduce using rule 186 (function_name) -State 183 +State 181 187 function_name: "string" . $default reduce using rule 187 (function_name) -State 184 +State 182 188 function_name: "int" . $default reduce using rule 188 (function_name) -State 185 +State 183 189 function_name: "int2" . $default reduce using rule 189 (function_name) -State 186 +State 184 190 function_name: "int3" . $default reduce using rule 190 (function_name) -State 187 +State 185 191 function_name: "int4" . $default reduce using rule 191 (function_name) -State 188 +State 186 192 function_name: "uint" . $default reduce using rule 192 (function_name) -State 189 +State 187 193 function_name: "uint2" . $default reduce using rule 193 (function_name) -State 190 +State 188 194 function_name: "uint3" . $default reduce using rule 194 (function_name) -State 191 +State 189 195 function_name: "uint4" . $default reduce using rule 195 (function_name) -State 192 +State 190 196 function_name: "float" . $default reduce using rule 196 (function_name) -State 193 +State 191 197 function_name: "float2" . $default reduce using rule 197 (function_name) -State 194 +State 192 198 function_name: "float3" . $default reduce using rule 198 (function_name) -State 195 +State 193 199 function_name: "float4" . $default reduce using rule 199 (function_name) -State 196 +State 194 200 function_name: "range" . $default reduce using rule 200 (function_name) -State 197 +State 195 201 function_name: "urange" . $default reduce using rule 201 (function_name) -State 198 +State 196 202 function_name: "range64" . $default reduce using rule 202 (function_name) -State 199 +State 197 203 function_name: "urange64" . $default reduce using rule 203 (function_name) -State 200 +State 198 204 function_name: "int64" . $default reduce using rule 204 (function_name) -State 201 +State 199 205 function_name: "uint64" . $default reduce using rule 205 (function_name) -State 202 +State 200 206 function_name: "double" . $default reduce using rule 206 (function_name) -State 203 +State 201 207 function_name: "int8" . $default reduce using rule 207 (function_name) -State 204 +State 202 208 function_name: "uint8" . $default reduce using rule 208 (function_name) -State 205 +State 203 209 function_name: "int16" . $default reduce using rule 209 (function_name) -State 206 +State 204 210 function_name: "uint16" . $default reduce using rule 210 (function_name) -State 207 +State 205 158 function_name: "++" . "operator" - "operator" shift, and go to state 282 + "operator" shift, and go to state 280 -State 208 +State 206 159 function_name: "--" . "operator" - "operator" shift, and go to state 283 + "operator" shift, and go to state 281 -State 209 +State 207 126 function_name: "name" . $default reduce using rule 126 (function_name) -State 210 +State 208 215 function_declaration_header: function_name . optional_function_argument_list optional_function_type - '(' shift, and go to state 284 + '(' shift, and go to state 282 $default reduce using rule 121 (optional_function_argument_list) - optional_function_argument_list go to state 285 + optional_function_argument_list go to state 283 -State 211 +State 209 217 function_declaration: optional_public_or_private_function $@6 function_declaration_header . expression_block - "begin of code block" shift, and go to state 286 + "begin of code block" shift, and go to state 284 - expression_block go to state 287 + expression_block go to state 285 -State 212 +State 210 - 608 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name "begin of code block" . $@41 enum_list $@42 "end of code block" + 607 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name "begin of code block" . $@41 enum_list $@42 "end of code block" - $default reduce using rule 606 ($@41) + $default reduce using rule 605 ($@41) - $@41 go to state 288 + $@41 go to state 286 -State 213 +State 211 - 611 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' . enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 "end of code block" + 610 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' . enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 "end of code block" - "int" shift, and go to state 289 - "uint" shift, and go to state 290 - "int64" shift, and go to state 291 - "uint64" shift, and go to state 292 - "int8" shift, and go to state 293 - "uint8" shift, and go to state 294 - "int16" shift, and go to state 295 - "uint16" shift, and go to state 296 + "int" shift, and go to state 287 + "uint" shift, and go to state 288 + "int64" shift, and go to state 289 + "uint64" shift, and go to state 290 + "int8" shift, and go to state 291 + "uint8" shift, and go to state 292 + "int16" shift, and go to state 293 + "uint16" shift, and go to state 294 - enum_basic_type_declaration go to state 297 + enum_basic_type_declaration go to state 295 -State 214 +State 212 - 615 optional_sealed: "sealed" . + 614 optional_sealed: "sealed" . - $default reduce using rule 615 (optional_sealed) + $default reduce using rule 614 (optional_sealed) -State 215 +State 213 - 616 structure_name: optional_sealed . "name" optional_structure_parent + 615 structure_name: optional_sealed . "name" optional_structure_parent - "name" shift, and go to state 298 + "name" shift, and go to state 296 -State 216 +State 214 - 626 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@45 structure_name . $@46 optional_struct_variable_declaration_list + 625 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@45 structure_name . $@46 optional_struct_variable_declaration_list - $default reduce using rule 625 ($@46) + $default reduce using rule 624 ($@46) - $@46 go to state 299 + $@46 go to state 297 -State 217 +State 215 - 579 global_variable_declaration_list: global_variable_declaration_list . $@37 optional_field_annotation let_variable_declaration - 585 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list . "end of code block" + 578 global_variable_declaration_list: global_variable_declaration_list . $@37 optional_field_annotation let_variable_declaration + 584 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list . "end of code block" - "end of code block" shift, and go to state 300 + "end of code block" shift, and go to state 298 - $default reduce using rule 578 ($@37) + $default reduce using rule 577 ($@37) - $@37 go to state 301 + $@37 go to state 299 -State 218 +State 216 - 516 optional_field_annotation: "[[" . annotation_argument_list ']' ']' + 515 optional_field_annotation: "[[" . annotation_argument_list ']' ']' "type" shift, and go to state 32 "in" shift, and go to state 33 @@ -4439,10 +4413,10 @@ State 218 annotation_argument_name go to state 35 annotation_argument go to state 36 - annotation_argument_list go to state 302 + annotation_argument_list go to state 300 -State 219 +State 217 103 metadata_argument_list: '@' . annotation_argument @@ -4451,6939 +4425,6964 @@ State 219 "name" shift, and go to state 34 annotation_argument_name go to state 35 - annotation_argument go to state 303 + annotation_argument go to state 301 -State 220 +State 218 104 metadata_argument_list: metadata_argument_list . '@' annotation_argument - 517 optional_field_annotation: metadata_argument_list . + 516 optional_field_annotation: metadata_argument_list . - '@' shift, and go to state 304 + '@' shift, and go to state 302 - $default reduce using rule 517 (optional_field_annotation) + $default reduce using rule 516 (optional_field_annotation) -State 221 +State 219 - 587 global_let: kwd_let optional_shared optional_public_or_private_variable $@38 optional_field_annotation . let_variable_declaration + 586 global_let: kwd_let optional_shared optional_public_or_private_variable $@38 optional_field_annotation . let_variable_declaration - "$i" shift, and go to state 305 - "name" shift, and go to state 306 + "$i" shift, and go to state 303 + "name" shift, and go to state 304 - let_variable_name_with_pos_list go to state 307 - let_variable_declaration go to state 308 + let_variable_name_with_pos_list go to state 305 + let_variable_declaration go to state 306 -State 222 +State 220 25 character_sequence: character_sequence STRING_CHARACTER . $default reduce using rule 25 (character_sequence) -State 223 +State 221 26 character_sequence: character_sequence STRING_CHARACTER_ESC . $default reduce using rule 26 (character_sequence) -State 224 +State 222 27 string_constant: "start of the string" character_sequence "end of the string" . $default reduce using rule 27 (string_constant) -State 225 +State 223 89 annotation_argument_value_list: annotation_argument_value_list ',' . annotation_argument_value - "true" shift, and go to state 165 - "false" shift, and go to state 166 - "integer constant" shift, and go to state 167 - "floating point constant" shift, and go to state 168 - "name" shift, and go to state 169 - "start of the string" shift, and go to state 127 + "true" shift, and go to state 163 + "false" shift, and go to state 164 + "integer constant" shift, and go to state 165 + "floating point constant" shift, and go to state 166 + "name" shift, and go to state 167 + "start of the string" shift, and go to state 125 - string_constant go to state 170 - annotation_argument_value go to state 309 + string_constant go to state 168 + annotation_argument_value go to state 307 -State 226 +State 224 100 annotation_argument: annotation_argument_name '=' '(' annotation_argument_value_list ')' . $default reduce using rule 100 (annotation_argument) -State 227 +State 225 - 596 single_alias: optional_public_or_private_alias "name" $@39 '=' . type_declaration - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 356 - type_declaration go to state 357 + 595 single_alias: optional_public_or_private_alias "name" $@39 '=' . type_declaration + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 354 + type_declaration go to state 355 -State 228 +State 226 - 765 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" $@85 "begin of code block" . $@86 bitfield_alias_bits $@87 "end of code block" + 764 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" $@85 "begin of code block" . $@86 bitfield_alias_bits $@87 "end of code block" - $default reduce using rule 763 ($@86) + $default reduce using rule 762 ($@86) - $@86 go to state 358 + $@86 go to state 356 -State 229 +State 227 - 755 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" $@77 "begin of code block" . $@78 tuple_alias_type_list $@79 "end of code block" + 754 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" $@77 "begin of code block" . $@78 tuple_alias_type_list $@79 "end of code block" - $default reduce using rule 753 ($@78) + $default reduce using rule 752 ($@78) - $@78 go to state 359 + $@78 go to state 357 -State 230 +State 228 - 760 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" $@81 "begin of code block" . $@82 variant_alias_type_list $@83 "end of code block" + 759 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" $@81 "begin of code block" . $@82 variant_alias_type_list $@83 "end of code block" - $default reduce using rule 758 ($@82) + $default reduce using rule 757 ($@82) - $@82 go to state 360 + $@82 go to state 358 -State 231 +State 229 180 function_name: "operator" "is" . 182 | "operator" "is" . "name" - "name" shift, and go to state 361 + "name" shift, and go to state 359 $default reduce using rule 180 (function_name) -State 232 +State 230 181 function_name: "operator" "as" . 183 | "operator" "as" . "name" - "name" shift, and go to state 362 + "name" shift, and go to state 360 $default reduce using rule 181 (function_name) -State 233 +State 231 178 function_name: "operator" "delete" . $default reduce using rule 178 (function_name) -State 234 +State 232 129 function_name: "operator" "+=" . $default reduce using rule 129 (function_name) -State 235 +State 233 130 function_name: "operator" "-=" . $default reduce using rule 130 (function_name) -State 236 +State 234 132 function_name: "operator" "/=" . $default reduce using rule 132 (function_name) -State 237 +State 235 131 function_name: "operator" "*=" . $default reduce using rule 131 (function_name) -State 238 +State 236 133 function_name: "operator" "%=" . $default reduce using rule 133 (function_name) -State 239 +State 237 134 function_name: "operator" "&=" . $default reduce using rule 134 (function_name) -State 240 +State 238 135 function_name: "operator" "|=" . $default reduce using rule 135 (function_name) -State 241 +State 239 136 function_name: "operator" "^=" . $default reduce using rule 136 (function_name) -State 242 +State 240 162 function_name: "operator" "<<" . $default reduce using rule 162 (function_name) -State 243 +State 241 163 function_name: "operator" ">>" . $default reduce using rule 163 (function_name) -State 244 +State 242 160 function_name: "operator" "++" . $default reduce using rule 160 (function_name) -State 245 +State 243 161 function_name: "operator" "--" . $default reduce using rule 161 (function_name) -State 246 +State 244 153 function_name: "operator" "<=" . $default reduce using rule 153 (function_name) -State 247 +State 245 164 function_name: "operator" "<<=" . $default reduce using rule 164 (function_name) -State 248 +State 246 165 function_name: "operator" ">>=" . $default reduce using rule 165 (function_name) -State 249 +State 247 154 function_name: "operator" ">=" . $default reduce using rule 154 (function_name) -State 250 +State 248 151 function_name: "operator" "==" . $default reduce using rule 151 (function_name) -State 251 +State 249 152 function_name: "operator" "!=" . $default reduce using rule 152 (function_name) -State 252 +State 250 179 function_name: "operator" "??" . $default reduce using rule 179 (function_name) -State 253 +State 251 173 function_name: "operator" "?." . 176 | "operator" "?." . "name" - "name" shift, and go to state 363 + "name" shift, and go to state 361 $default reduce using rule 173 (function_name) -State 254 +State 252 171 function_name: "operator" "?[" . ']' - ']' shift, and go to state 364 + ']' shift, and go to state 362 -State 255 +State 253 177 function_name: "operator" ":=" . $default reduce using rule 177 (function_name) -State 256 +State 254 166 function_name: "operator" "<<<" . $default reduce using rule 166 (function_name) -State 257 +State 255 167 function_name: "operator" ">>>" . $default reduce using rule 167 (function_name) -State 258 +State 256 168 function_name: "operator" "<<<=" . $default reduce using rule 168 (function_name) -State 259 +State 257 169 function_name: "operator" ">>>=" . $default reduce using rule 169 (function_name) -State 260 +State 258 140 function_name: "operator" "&&" . $default reduce using rule 140 (function_name) -State 261 +State 259 141 function_name: "operator" "||" . $default reduce using rule 141 (function_name) -State 262 +State 260 142 function_name: "operator" "^^" . $default reduce using rule 142 (function_name) -State 263 +State 261 137 function_name: "operator" "&&=" . $default reduce using rule 137 (function_name) -State 264 +State 262 138 function_name: "operator" "||=" . $default reduce using rule 138 (function_name) -State 265 +State 263 139 function_name: "operator" "^^=" . $default reduce using rule 139 (function_name) -State 266 +State 264 150 function_name: "operator" ".." . $default reduce using rule 150 (function_name) -State 267 +State 265 184 function_name: "operator" '?' . "as" 185 | "operator" '?' . "as" "name" - "as" shift, and go to state 365 + "as" shift, and go to state 363 -State 268 +State 266 156 function_name: "operator" '|' . $default reduce using rule 156 (function_name) -State 269 +State 267 157 function_name: "operator" '^' . $default reduce using rule 157 (function_name) -State 270 +State 268 155 function_name: "operator" '&' . $default reduce using rule 155 (function_name) -State 271 +State 269 148 function_name: "operator" '<' . $default reduce using rule 148 (function_name) -State 272 +State 270 149 function_name: "operator" '>' . $default reduce using rule 149 (function_name) -State 273 +State 271 144 function_name: "operator" '-' . $default reduce using rule 144 (function_name) -State 274 +State 272 143 function_name: "operator" '+' . $default reduce using rule 143 (function_name) -State 275 +State 273 145 function_name: "operator" '*' . $default reduce using rule 145 (function_name) -State 276 +State 274 146 function_name: "operator" '/' . $default reduce using rule 146 (function_name) -State 277 +State 275 147 function_name: "operator" '%' . $default reduce using rule 147 (function_name) -State 278 +State 276 128 function_name: "operator" '~' . $default reduce using rule 128 (function_name) -State 279 +State 277 127 function_name: "operator" '!' . $default reduce using rule 127 (function_name) -State 280 +State 278 172 function_name: "operator" '.' . 174 | "operator" '.' . "name" 175 | "operator" '.' . "name" ":=" - "name" shift, and go to state 366 + "name" shift, and go to state 364 $default reduce using rule 172 (function_name) -State 281 +State 279 170 function_name: "operator" '[' . ']' - ']' shift, and go to state 367 + ']' shift, and go to state 365 -State 282 +State 280 158 function_name: "++" "operator" . $default reduce using rule 158 (function_name) -State 283 +State 281 159 function_name: "--" "operator" . $default reduce using rule 159 (function_name) -State 284 +State 282 122 optional_function_argument_list: '(' . ')' 123 | '(' . function_argument_list ')' - "$a" shift, and go to state 368 - "[[" shift, and go to state 218 - ')' shift, and go to state 369 - '@' shift, and go to state 219 + "$a" shift, and go to state 366 + "[[" shift, and go to state 216 + ')' shift, and go to state 367 + '@' shift, and go to state 217 - $default reduce using rule 515 (optional_field_annotation) + $default reduce using rule 514 (optional_field_annotation) - metadata_argument_list go to state 220 - optional_field_annotation go to state 370 - function_argument_declaration go to state 371 - function_argument_list go to state 372 + metadata_argument_list go to state 218 + optional_field_annotation go to state 368 + function_argument_declaration go to state 369 + function_argument_list go to state 370 -State 285 +State 283 215 function_declaration_header: function_name optional_function_argument_list . optional_function_type - ':' shift, and go to state 373 + ':' shift, and go to state 371 $default reduce using rule 124 (optional_function_type) - optional_function_type go to state 374 + optional_function_type go to state 372 -State 286 +State 284 218 expression_block: "begin of code block" . expressions "end of code block" 219 | "begin of code block" . expressions "end of code block" "finally" "begin of code block" expressions "end of code block" $default reduce using rule 243 (expressions) - expressions go to state 375 + expressions go to state 373 -State 287 +State 285 217 function_declaration: optional_public_or_private_function $@6 function_declaration_header expression_block . $default reduce using rule 217 (function_declaration) -State 288 +State 286 - 608 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name "begin of code block" $@41 . enum_list $@42 "end of code block" + 607 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name "begin of code block" $@41 . enum_list $@42 "end of code block" - $default reduce using rule 588 (enum_list) + $default reduce using rule 587 (enum_list) + + enum_list go to state 374 - enum_list go to state 376 + +State 287 + + 658 enum_basic_type_declaration: "int" . + + $default reduce using rule 658 (enum_basic_type_declaration) + + +State 288 + + 661 enum_basic_type_declaration: "uint" . + + $default reduce using rule 661 (enum_basic_type_declaration) State 289 - 659 enum_basic_type_declaration: "int" . + 664 enum_basic_type_declaration: "int64" . - $default reduce using rule 659 (enum_basic_type_declaration) + $default reduce using rule 664 (enum_basic_type_declaration) State 290 - 662 enum_basic_type_declaration: "uint" . + 665 enum_basic_type_declaration: "uint64" . - $default reduce using rule 662 (enum_basic_type_declaration) + $default reduce using rule 665 (enum_basic_type_declaration) State 291 - 665 enum_basic_type_declaration: "int64" . + 659 enum_basic_type_declaration: "int8" . - $default reduce using rule 665 (enum_basic_type_declaration) + $default reduce using rule 659 (enum_basic_type_declaration) State 292 - 666 enum_basic_type_declaration: "uint64" . + 662 enum_basic_type_declaration: "uint8" . - $default reduce using rule 666 (enum_basic_type_declaration) + $default reduce using rule 662 (enum_basic_type_declaration) State 293 - 660 enum_basic_type_declaration: "int8" . + 660 enum_basic_type_declaration: "int16" . $default reduce using rule 660 (enum_basic_type_declaration) State 294 - 663 enum_basic_type_declaration: "uint8" . + 663 enum_basic_type_declaration: "uint16" . $default reduce using rule 663 (enum_basic_type_declaration) State 295 - 661 enum_basic_type_declaration: "int16" . + 610 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration . "begin of code block" $@43 enum_list $@44 "end of code block" - $default reduce using rule 661 (enum_basic_type_declaration) + "begin of code block" shift, and go to state 375 State 296 - 664 enum_basic_type_declaration: "uint16" . + 615 structure_name: optional_sealed "name" . optional_structure_parent - $default reduce using rule 664 (enum_basic_type_declaration) + ':' shift, and go to state 376 + + $default reduce using rule 611 (optional_structure_parent) + + optional_structure_parent go to state 377 State 297 - 611 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration . "begin of code block" $@43 enum_list $@44 "end of code block" + 625 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@45 structure_name $@46 . optional_struct_variable_declaration_list - "begin of code block" shift, and go to state 377 + "begin of code block" shift, and go to state 378 + $default reduce using rule 621 (optional_struct_variable_declaration_list) -State 298 + optional_struct_variable_declaration_list go to state 379 - 616 structure_name: optional_sealed "name" . optional_structure_parent - ':' shift, and go to state 378 +State 298 - $default reduce using rule 612 (optional_structure_parent) + 584 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" . - optional_structure_parent go to state 379 + $default reduce using rule 584 (global_let) State 299 - 626 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@45 structure_name $@46 . optional_struct_variable_declaration_list + 578 global_variable_declaration_list: global_variable_declaration_list $@37 . optional_field_annotation let_variable_declaration - "begin of code block" shift, and go to state 380 + "[[" shift, and go to state 216 + '@' shift, and go to state 217 - $default reduce using rule 622 (optional_struct_variable_declaration_list) + $default reduce using rule 514 (optional_field_annotation) - optional_struct_variable_declaration_list go to state 381 + metadata_argument_list go to state 218 + optional_field_annotation go to state 380 State 300 - 585 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" . + 102 annotation_argument_list: annotation_argument_list . ',' annotation_argument + 515 optional_field_annotation: "[[" annotation_argument_list . ']' ']' - $default reduce using rule 585 (global_let) + ',' shift, and go to state 79 + ']' shift, and go to state 381 State 301 - 579 global_variable_declaration_list: global_variable_declaration_list $@37 . optional_field_annotation let_variable_declaration - - "[[" shift, and go to state 218 - '@' shift, and go to state 219 - - $default reduce using rule 515 (optional_field_annotation) + 103 metadata_argument_list: '@' annotation_argument . - metadata_argument_list go to state 220 - optional_field_annotation go to state 382 + $default reduce using rule 103 (metadata_argument_list) State 302 - 102 annotation_argument_list: annotation_argument_list . ',' annotation_argument - 516 optional_field_annotation: "[[" annotation_argument_list . ']' ']' + 104 metadata_argument_list: metadata_argument_list '@' . annotation_argument + + "type" shift, and go to state 32 + "in" shift, and go to state 33 + "name" shift, and go to state 34 - ',' shift, and go to state 80 - ']' shift, and go to state 383 + annotation_argument_name go to state 35 + annotation_argument go to state 382 State 303 - 103 metadata_argument_list: '@' annotation_argument . + 567 let_variable_name_with_pos_list: "$i" . '(' expr ')' - $default reduce using rule 103 (metadata_argument_list) + '(' shift, and go to state 383 State 304 - 104 metadata_argument_list: metadata_argument_list '@' . annotation_argument + 566 let_variable_name_with_pos_list: "name" . + 568 | "name" . "aka" "name" - "type" shift, and go to state 32 - "in" shift, and go to state 33 - "name" shift, and go to state 34 + "aka" shift, and go to state 384 - annotation_argument_name go to state 35 - annotation_argument go to state 384 + $default reduce using rule 566 (let_variable_name_with_pos_list) State 305 - 568 let_variable_name_with_pos_list: "$i" . '(' expr ')' - - '(' shift, and go to state 385 + 569 let_variable_name_with_pos_list: let_variable_name_with_pos_list . ',' "name" + 570 | let_variable_name_with_pos_list . ',' "name" "aka" "name" + 571 let_variable_declaration: let_variable_name_with_pos_list . ':' type_declaration_no_options "end of expression" + 572 | let_variable_name_with_pos_list . ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 573 | let_variable_name_with_pos_list . ':' type_declaration_no_options copy_or_move_or_clone expr_pipe + 574 | let_variable_name_with_pos_list . optional_ref copy_or_move_or_clone expr "end of expression" + 575 | let_variable_name_with_pos_list . optional_ref copy_or_move_or_clone expr_pipe + ',' shift, and go to state 385 + ':' shift, and go to state 386 + '&' shift, and go to state 387 -State 306 + $default reduce using rule 564 (optional_ref) - 567 let_variable_name_with_pos_list: "name" . - 569 | "name" . "aka" "name" + optional_ref go to state 388 - "aka" shift, and go to state 386 - $default reduce using rule 567 (let_variable_name_with_pos_list) +State 306 + 586 global_let: kwd_let optional_shared optional_public_or_private_variable $@38 optional_field_annotation let_variable_declaration . -State 307 + $default reduce using rule 586 (global_let) - 570 let_variable_name_with_pos_list: let_variable_name_with_pos_list . ',' "name" - 571 | let_variable_name_with_pos_list . ',' "name" "aka" "name" - 572 let_variable_declaration: let_variable_name_with_pos_list . ':' type_declaration_no_options "end of expression" - 573 | let_variable_name_with_pos_list . ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 574 | let_variable_name_with_pos_list . ':' type_declaration_no_options copy_or_move_or_clone expr_pipe - 575 | let_variable_name_with_pos_list . optional_ref copy_or_move_or_clone expr "end of expression" - 576 | let_variable_name_with_pos_list . optional_ref copy_or_move_or_clone expr_pipe - ',' shift, and go to state 387 - ':' shift, and go to state 388 - '&' shift, and go to state 389 +State 307 - $default reduce using rule 565 (optional_ref) + 89 annotation_argument_value_list: annotation_argument_value_list ',' annotation_argument_value . - optional_ref go to state 390 + $default reduce using rule 89 (annotation_argument_value_list) State 308 - 587 global_let: kwd_let optional_shared optional_public_or_private_variable $@38 optional_field_annotation let_variable_declaration . + 690 type_declaration_no_options: "type" . '<' $@49 type_declaration '>' $@50 - $default reduce using rule 587 (global_let) + '<' shift, and go to state 389 State 309 - 89 annotation_argument_value_list: annotation_argument_value_list ',' annotation_argument_value . + 713 type_declaration_no_options: "array" . '<' $@54 type_declaration '>' $@55 - $default reduce using rule 89 (annotation_argument_value_list) + '<' shift, and go to state 390 State 310 - 691 type_declaration_no_options: "type" . '<' $@49 type_declaration '>' $@50 + 716 type_declaration_no_options: "table" . '<' $@56 table_type_pair '>' $@57 '<' shift, and go to state 391 State 311 - 714 type_declaration_no_options: "array" . '<' $@54 type_declaration '>' $@55 + 691 type_declaration_no_options: "typedecl" . '(' expr ')' - '<' shift, and go to state 392 + '(' shift, and go to state 392 State 312 - 717 type_declaration_no_options: "table" . '<' $@56 table_type_pair '>' $@57 + 719 type_declaration_no_options: "iterator" . '<' $@58 type_declaration '>' $@59 '<' shift, and go to state 393 State 313 - 692 type_declaration_no_options: "typedecl" . '(' expr ')' + 709 type_declaration_no_options: "smart_ptr" . '<' $@52 type_declaration '>' $@53 - '(' shift, and go to state 394 + '<' shift, and go to state 394 State 314 - 720 type_declaration_no_options: "iterator" . '<' $@58 type_declaration '>' $@59 + 631 basic_type_declaration: "bool" . - '<' shift, and go to state 395 + $default reduce using rule 631 (basic_type_declaration) State 315 - 710 type_declaration_no_options: "smart_ptr" . '<' $@52 type_declaration '>' $@53 + 651 basic_type_declaration: "void" . - '<' shift, and go to state 396 + $default reduce using rule 651 (basic_type_declaration) State 316 - 632 basic_type_declaration: "bool" . + 632 basic_type_declaration: "string" . $default reduce using rule 632 (basic_type_declaration) State 317 - 652 basic_type_declaration: "void" . + 667 auto_type_declaration: "auto" . + 668 | "auto" . '(' "name" ')' - $default reduce using rule 652 (basic_type_declaration) + '(' shift, and go to state 395 + + '(' [reduce using rule 667 (auto_type_declaration)] + $default reduce using rule 667 (auto_type_declaration) State 318 - 633 basic_type_declaration: "string" . + 633 basic_type_declaration: "int" . $default reduce using rule 633 (basic_type_declaration) State 319 - 668 auto_type_declaration: "auto" . - 669 | "auto" . '(' "name" ')' + 637 basic_type_declaration: "int2" . - '(' shift, and go to state 397 - - '(' [reduce using rule 668 (auto_type_declaration)] - $default reduce using rule 668 (auto_type_declaration) + $default reduce using rule 637 (basic_type_declaration) State 320 - 634 basic_type_declaration: "int" . + 638 basic_type_declaration: "int3" . - $default reduce using rule 634 (basic_type_declaration) + $default reduce using rule 638 (basic_type_declaration) State 321 - 638 basic_type_declaration: "int2" . + 639 basic_type_declaration: "int4" . - $default reduce using rule 638 (basic_type_declaration) + $default reduce using rule 639 (basic_type_declaration) State 322 - 639 basic_type_declaration: "int3" . + 640 basic_type_declaration: "uint" . - $default reduce using rule 639 (basic_type_declaration) + $default reduce using rule 640 (basic_type_declaration) State 323 - 640 basic_type_declaration: "int4" . + 657 basic_type_declaration: "bitfield" . + 677 bitfield_type_declaration: "bitfield" . '<' $@47 bitfield_bits '>' $@48 - $default reduce using rule 640 (basic_type_declaration) + '<' shift, and go to state 396 + + $default reduce using rule 657 (basic_type_declaration) State 324 - 641 basic_type_declaration: "uint" . + 644 basic_type_declaration: "uint2" . - $default reduce using rule 641 (basic_type_declaration) + $default reduce using rule 644 (basic_type_declaration) State 325 - 658 basic_type_declaration: "bitfield" . - 678 bitfield_type_declaration: "bitfield" . '<' $@47 bitfield_bits '>' $@48 - - '<' shift, and go to state 398 + 645 basic_type_declaration: "uint3" . - $default reduce using rule 658 (basic_type_declaration) + $default reduce using rule 645 (basic_type_declaration) State 326 - 645 basic_type_declaration: "uint2" . + 646 basic_type_declaration: "uint4" . - $default reduce using rule 645 (basic_type_declaration) + $default reduce using rule 646 (basic_type_declaration) State 327 - 646 basic_type_declaration: "uint3" . + 647 basic_type_declaration: "float" . - $default reduce using rule 646 (basic_type_declaration) + $default reduce using rule 647 (basic_type_declaration) State 328 - 647 basic_type_declaration: "uint4" . + 648 basic_type_declaration: "float2" . - $default reduce using rule 647 (basic_type_declaration) + $default reduce using rule 648 (basic_type_declaration) State 329 - 648 basic_type_declaration: "float" . + 649 basic_type_declaration: "float3" . - $default reduce using rule 648 (basic_type_declaration) + $default reduce using rule 649 (basic_type_declaration) State 330 - 649 basic_type_declaration: "float2" . + 650 basic_type_declaration: "float4" . - $default reduce using rule 649 (basic_type_declaration) + $default reduce using rule 650 (basic_type_declaration) State 331 - 650 basic_type_declaration: "float3" . + 652 basic_type_declaration: "range" . - $default reduce using rule 650 (basic_type_declaration) + $default reduce using rule 652 (basic_type_declaration) State 332 - 651 basic_type_declaration: "float4" . + 653 basic_type_declaration: "urange" . - $default reduce using rule 651 (basic_type_declaration) + $default reduce using rule 653 (basic_type_declaration) State 333 - 653 basic_type_declaration: "range" . + 654 basic_type_declaration: "range64" . - $default reduce using rule 653 (basic_type_declaration) + $default reduce using rule 654 (basic_type_declaration) State 334 - 654 basic_type_declaration: "urange" . + 655 basic_type_declaration: "urange64" . - $default reduce using rule 654 (basic_type_declaration) + $default reduce using rule 655 (basic_type_declaration) State 335 - 655 basic_type_declaration: "range64" . + 720 type_declaration_no_options: "block" . + 723 | "block" . '<' $@60 type_declaration '>' $@61 + 726 | "block" . '<' $@62 optional_function_argument_list optional_function_type '>' $@63 - $default reduce using rule 655 (basic_type_declaration) + '<' shift, and go to state 397 + + $default reduce using rule 720 (type_declaration_no_options) State 336 - 656 basic_type_declaration: "urange64" . + 636 basic_type_declaration: "int64" . - $default reduce using rule 656 (basic_type_declaration) + $default reduce using rule 636 (basic_type_declaration) State 337 - 721 type_declaration_no_options: "block" . - 724 | "block" . '<' $@60 type_declaration '>' $@61 - 727 | "block" . '<' $@62 optional_function_argument_list optional_function_type '>' $@63 - - '<' shift, and go to state 399 + 643 basic_type_declaration: "uint64" . - $default reduce using rule 721 (type_declaration_no_options) + $default reduce using rule 643 (basic_type_declaration) State 338 - 637 basic_type_declaration: "int64" . + 656 basic_type_declaration: "double" . - $default reduce using rule 637 (basic_type_declaration) + $default reduce using rule 656 (basic_type_declaration) State 339 - 644 basic_type_declaration: "uint64" . + 727 type_declaration_no_options: "function" . + 730 | "function" . '<' $@64 type_declaration '>' $@65 + 733 | "function" . '<' $@66 optional_function_argument_list optional_function_type '>' $@67 - $default reduce using rule 644 (basic_type_declaration) + '<' shift, and go to state 398 + + $default reduce using rule 727 (type_declaration_no_options) State 340 - 657 basic_type_declaration: "double" . + 734 type_declaration_no_options: "lambda" . + 737 | "lambda" . '<' $@68 type_declaration '>' $@69 + 740 | "lambda" . '<' $@70 optional_function_argument_list optional_function_type '>' $@71 - $default reduce using rule 657 (basic_type_declaration) + '<' shift, and go to state 399 + $default reduce using rule 734 (type_declaration_no_options) -State 341 - 728 type_declaration_no_options: "function" . - 731 | "function" . '<' $@64 type_declaration '>' $@65 - 734 | "function" . '<' $@66 optional_function_argument_list optional_function_type '>' $@67 +State 341 - '<' shift, and go to state 400 + 634 basic_type_declaration: "int8" . - $default reduce using rule 728 (type_declaration_no_options) + $default reduce using rule 634 (basic_type_declaration) State 342 - 735 type_declaration_no_options: "lambda" . - 738 | "lambda" . '<' $@68 type_declaration '>' $@69 - 741 | "lambda" . '<' $@70 optional_function_argument_list optional_function_type '>' $@71 - - '<' shift, and go to state 401 + 641 basic_type_declaration: "uint8" . - $default reduce using rule 735 (type_declaration_no_options) + $default reduce using rule 641 (basic_type_declaration) State 343 - 635 basic_type_declaration: "int8" . + 635 basic_type_declaration: "int16" . $default reduce using rule 635 (basic_type_declaration) State 344 - 642 basic_type_declaration: "uint8" . + 642 basic_type_declaration: "uint16" . $default reduce using rule 642 (basic_type_declaration) State 345 - 636 basic_type_declaration: "int16" . + 743 type_declaration_no_options: "tuple" . '<' $@72 tuple_type_list '>' $@73 - $default reduce using rule 636 (basic_type_declaration) + '<' shift, and go to state 400 State 346 - 643 basic_type_declaration: "uint16" . + 746 type_declaration_no_options: "variant" . '<' $@74 variant_type_list '>' $@75 - $default reduce using rule 643 (basic_type_declaration) + '<' shift, and go to state 401 State 347 - 744 type_declaration_no_options: "tuple" . '<' $@72 tuple_type_list '>' $@73 + 669 auto_type_declaration: "$t" . '(' expr ')' - '<' shift, and go to state 402 + '(' shift, and go to state 402 State 348 - 747 type_declaration_no_options: "variant" . '<' $@74 variant_type_list '>' $@75 + 692 type_declaration_no_options: '$' . name_in_namespace '(' optional_expr_list ')' + 694 | '$' . name_in_namespace '<' $@51 type_declaration_no_options_list '>' '(' optional_expr_list ')' - '<' shift, and go to state 403 + "name" shift, and go to state 58 + + name_in_namespace go to state 403 State 349 - 670 auto_type_declaration: "$t" . '(' expr ')' + 666 structure_type_declaration: name_in_namespace . - '(' shift, and go to state 404 + $default reduce using rule 666 (structure_type_declaration) State 350 - 693 type_declaration_no_options: '$' . name_in_namespace '(' optional_expr_list ')' - 695 | '$' . name_in_namespace '<' $@51 type_declaration_no_options_list '>' '(' optional_expr_list ')' - - "::" shift, and go to state 58 - "name" shift, and go to state 59 + 682 type_declaration_no_options: basic_type_declaration . - name_in_namespace go to state 405 + $default reduce using rule 682 (type_declaration_no_options) State 351 - 667 structure_type_declaration: name_in_namespace . + 685 type_declaration_no_options: structure_type_declaration . - $default reduce using rule 667 (structure_type_declaration) + $default reduce using rule 685 (type_declaration_no_options) State 352 - 683 type_declaration_no_options: basic_type_declaration . + 683 type_declaration_no_options: auto_type_declaration . $default reduce using rule 683 (type_declaration_no_options) State 353 - 686 type_declaration_no_options: structure_type_declaration . + 684 type_declaration_no_options: bitfield_type_declaration . - $default reduce using rule 686 (type_declaration_no_options) + $default reduce using rule 684 (type_declaration_no_options) State 354 - 684 type_declaration_no_options: auto_type_declaration . - - $default reduce using rule 684 (type_declaration_no_options) + 686 type_declaration_no_options: type_declaration_no_options . dim_list + 687 | type_declaration_no_options . '[' ']' + 695 | type_declaration_no_options . '-' '[' ']' + 696 | type_declaration_no_options . "explicit" + 697 | type_declaration_no_options . "const" + 698 | type_declaration_no_options . '-' "const" + 699 | type_declaration_no_options . '&' + 700 | type_declaration_no_options . '-' '&' + 701 | type_declaration_no_options . '#' + 702 | type_declaration_no_options . "implicit" + 703 | type_declaration_no_options . '-' '#' + 704 | type_declaration_no_options . "==" "const" + 705 | type_declaration_no_options . "==" '&' + 706 | type_declaration_no_options . '?' + 710 | type_declaration_no_options . "??" + 747 type_declaration: type_declaration_no_options . + + "const" shift, and go to state 404 + "implicit" shift, and go to state 405 + "explicit" shift, and go to state 406 + "==" shift, and go to state 407 + "??" shift, and go to state 408 + '?' shift, and go to state 409 + '&' shift, and go to state 410 + '-' shift, and go to state 411 + '[' shift, and go to state 412 + '#' shift, and go to state 413 + + $default reduce using rule 747 (type_declaration) + + dim_list go to state 414 State 355 - 685 type_declaration_no_options: bitfield_type_declaration . + 595 single_alias: optional_public_or_private_alias "name" $@39 '=' type_declaration . + 748 type_declaration: type_declaration . '|' type_declaration_no_options + 749 | type_declaration . '|' '#' - $default reduce using rule 685 (type_declaration_no_options) + '|' shift, and go to state 415 + + $default reduce using rule 595 (single_alias) State 356 - 687 type_declaration_no_options: type_declaration_no_options . dim_list - 688 | type_declaration_no_options . '[' ']' - 696 | type_declaration_no_options . '-' '[' ']' - 697 | type_declaration_no_options . "explicit" - 698 | type_declaration_no_options . "const" - 699 | type_declaration_no_options . '-' "const" - 700 | type_declaration_no_options . '&' - 701 | type_declaration_no_options . '-' '&' - 702 | type_declaration_no_options . '#' - 703 | type_declaration_no_options . "implicit" - 704 | type_declaration_no_options . '-' '#' - 705 | type_declaration_no_options . "==" "const" - 706 | type_declaration_no_options . "==" '&' - 707 | type_declaration_no_options . '?' - 711 | type_declaration_no_options . "??" - 748 type_declaration: type_declaration_no_options . - - "const" shift, and go to state 406 - "implicit" shift, and go to state 407 - "explicit" shift, and go to state 408 - "==" shift, and go to state 409 - "??" shift, and go to state 410 - '?' shift, and go to state 411 - '&' shift, and go to state 412 - '-' shift, and go to state 413 - '[' shift, and go to state 414 - '#' shift, and go to state 415 + 764 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" $@85 "begin of code block" $@86 . bitfield_alias_bits $@87 "end of code block" - $default reduce using rule 748 (type_declaration) + $default reduce using rule 672 (bitfield_alias_bits) - dim_list go to state 416 + bitfield_alias_bits go to state 416 State 357 - 596 single_alias: optional_public_or_private_alias "name" $@39 '=' type_declaration . - 749 type_declaration: type_declaration . '|' type_declaration_no_options - 750 | type_declaration . '|' '#' + 754 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" $@77 "begin of code block" $@78 . tuple_alias_type_list $@79 "end of code block" - '|' shift, and go to state 417 + $default reduce using rule 544 (tuple_alias_type_list) - $default reduce using rule 596 (single_alias) + tuple_alias_type_list go to state 417 State 358 - 765 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" $@85 "begin of code block" $@86 . bitfield_alias_bits $@87 "end of code block" + 759 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" $@81 "begin of code block" $@82 . variant_alias_type_list $@83 "end of code block" - $default reduce using rule 673 (bitfield_alias_bits) + $default reduce using rule 550 (variant_alias_type_list) - bitfield_alias_bits go to state 418 + variant_alias_type_list go to state 418 State 359 - 755 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" $@77 "begin of code block" $@78 . tuple_alias_type_list $@79 "end of code block" - - $default reduce using rule 545 (tuple_alias_type_list) - - tuple_alias_type_list go to state 419 - - -State 360 - - 760 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" $@81 "begin of code block" $@82 . variant_alias_type_list $@83 "end of code block" - - $default reduce using rule 551 (variant_alias_type_list) - - variant_alias_type_list go to state 420 - - -State 361 - 182 function_name: "operator" "is" "name" . $default reduce using rule 182 (function_name) -State 362 +State 360 183 function_name: "operator" "as" "name" . $default reduce using rule 183 (function_name) -State 363 +State 361 176 function_name: "operator" "?." "name" . $default reduce using rule 176 (function_name) -State 364 +State 362 171 function_name: "operator" "?[" ']' . $default reduce using rule 171 (function_name) -State 365 +State 363 184 function_name: "operator" '?' "as" . 185 | "operator" '?' "as" . "name" - "name" shift, and go to state 421 + "name" shift, and go to state 419 $default reduce using rule 184 (function_name) -State 366 +State 364 174 function_name: "operator" '.' "name" . 175 | "operator" '.' "name" . ":=" - ":=" shift, and go to state 422 + ":=" shift, and go to state 420 $default reduce using rule 174 (function_name) -State 367 +State 365 170 function_name: "operator" '[' ']' . $default reduce using rule 170 (function_name) -State 368 +State 366 - 538 function_argument_declaration: "$a" . '(' expr ')' + 537 function_argument_declaration: "$a" . '(' expr ')' - '(' shift, and go to state 423 + '(' shift, and go to state 421 -State 369 +State 367 122 optional_function_argument_list: '(' ')' . $default reduce using rule 122 (optional_function_argument_list) -State 370 +State 368 - 537 function_argument_declaration: optional_field_annotation . kwd_let_var_or_nothing variable_declaration + 536 function_argument_declaration: optional_field_annotation . kwd_let_var_or_nothing variable_declaration - "let" shift, and go to state 424 - "var" shift, and go to state 425 + "let" shift, and go to state 422 + "var" shift, and go to state 423 - $default reduce using rule 294 (kwd_let_var_or_nothing) + $default reduce using rule 293 (kwd_let_var_or_nothing) - kwd_let_var_or_nothing go to state 426 + kwd_let_var_or_nothing go to state 424 -State 371 +State 369 - 539 function_argument_list: function_argument_declaration . + 538 function_argument_list: function_argument_declaration . - $default reduce using rule 539 (function_argument_list) + $default reduce using rule 538 (function_argument_list) -State 372 +State 370 123 optional_function_argument_list: '(' function_argument_list . ')' - 540 function_argument_list: function_argument_list . "end of expression" function_argument_declaration + 539 function_argument_list: function_argument_list . "end of expression" function_argument_declaration - "end of expression" shift, and go to state 427 - ')' shift, and go to state 428 + "end of expression" shift, and go to state 425 + ')' shift, and go to state 426 -State 373 +State 371 125 optional_function_type: ':' . type_declaration - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 356 - type_declaration go to state 429 + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 354 + type_declaration go to state 427 -State 374 +State 372 215 function_declaration_header: function_name optional_function_argument_list optional_function_type . $default reduce using rule 215 (function_declaration_header) -State 375 +State 373 218 expression_block: "begin of code block" expressions . "end of code block" 219 | "begin of code block" expressions . "end of code block" "finally" "begin of code block" expressions "end of code block" 244 expressions: expressions . expression_any 245 | expressions . error - error shift, and go to state 430 - "struct" shift, and go to state 431 - "class" shift, and go to state 432 + error shift, and go to state 428 + "struct" shift, and go to state 429 + "class" shift, and go to state 430 "let" shift, and go to state 3 - "while" shift, and go to state 433 - "if" shift, and go to state 434 - "static_if" shift, and go to state 435 - "for" shift, and go to state 436 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "return" shift, and go to state 443 - "null" shift, and go to state 444 - "break" shift, and go to state 445 - "try" shift, and go to state 446 - "table" shift, and go to state 447 - "delete" shift, and go to state 448 - "deref" shift, and go to state 449 - "with" shift, and go to state 450 - "assume" shift, and go to state 451 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 + "while" shift, and go to state 431 + "if" shift, and go to state 432 + "static_if" shift, and go to state 433 + "for" shift, and go to state 434 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "return" shift, and go to state 441 + "null" shift, and go to state 442 + "break" shift, and go to state 443 + "try" shift, and go to state 444 + "table" shift, and go to state 445 + "delete" shift, and go to state 446 + "deref" shift, and go to state 447 + "with" shift, and go to state 448 + "assume" shift, and go to state 449 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 "var" shift, and go to state 8 - "addr" shift, and go to state 454 - "continue" shift, and go to state 455 - "pass" shift, and go to state 456 - "reinterpret" shift, and go to state 457 - "label" shift, and go to state 458 - "goto" shift, and go to state 459 - "unsafe" shift, and go to state 460 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "yield" shift, and go to state 467 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "$ <|" shift, and go to state 470 - "@ <|" shift, and go to state 471 - "@@ <|" shift, and go to state 472 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 490 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - "end of code block" shift, and go to state 494 - "end of expression" shift, and go to state 495 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + "addr" shift, and go to state 452 + "continue" shift, and go to state 453 + "pass" shift, and go to state 454 + "reinterpret" shift, and go to state 455 + "label" shift, and go to state 456 + "goto" shift, and go to state 457 + "unsafe" shift, and go to state 458 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "yield" shift, and go to state 465 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$ <|" shift, and go to state 468 + "@ <|" shift, and go to state 469 + "@@ <|" shift, and go to state 470 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 488 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + "end of code block" shift, and go to state 492 + "end of expression" shift, and go to state 493 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_label go to state 507 - expression_goto go to state 508 - if_or_static_if go to state 509 - expression_if_one_liner go to state 510 - expression_if_then_else go to state 511 - expression_for_loop go to state 512 - expression_unsafe go to state 513 - expression_while_loop go to state 514 - expression_with go to state 515 - expression_with_alias go to state 516 - expr_call_pipe go to state 517 - expression_any go to state 518 - expr_keyword go to state 519 - expression_keyword go to state 520 - expr_pipe go to state 521 - name_in_namespace go to state 522 - expression_delete go to state 523 - expr_new go to state 524 - expression_break go to state 525 - expression_continue go to state 526 - expression_return_no_pipe go to state 527 - expression_return go to state 528 - expression_yield_no_pipe go to state 529 - expression_yield go to state 530 - expression_try_catch go to state 531 - kwd_let go to state 532 - expression_let go to state 533 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_assign go to state 540 - expr_assign_pipe go to state 541 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 547 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_label go to state 505 + expression_goto go to state 506 + if_or_static_if go to state 507 + expression_if_one_liner go to state 508 + expression_if_then_else go to state 509 + expression_for_loop go to state 510 + expression_unsafe go to state 511 + expression_while_loop go to state 512 + expression_with go to state 513 + expression_with_alias go to state 514 + expr_call_pipe go to state 515 + expression_any go to state 516 + expr_keyword go to state 517 + expression_keyword go to state 518 + expr_pipe go to state 519 + name_in_namespace go to state 520 + expression_delete go to state 521 + expr_new go to state 522 + expression_break go to state 523 + expression_continue go to state 524 + expression_return_no_pipe go to state 525 + expression_return go to state 526 + expression_yield_no_pipe go to state 527 + expression_yield go to state 528 + expression_try_catch go to state 529 + kwd_let go to state 530 + expression_let go to state 531 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_assign go to state 538 + expr_assign_pipe go to state 539 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 545 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 -State 376 +State 374 - 589 enum_list: enum_list . "end of expression" - 590 | enum_list . "name" "end of expression" - 591 | enum_list . "name" '=' expr "end of expression" - 608 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name "begin of code block" $@41 enum_list . $@42 "end of code block" + 588 enum_list: enum_list . "end of expression" + 589 | enum_list . "name" "end of expression" + 590 | enum_list . "name" '=' expr "end of expression" + 607 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name "begin of code block" $@41 enum_list . $@42 "end of code block" - "name" shift, and go to state 556 - "end of expression" shift, and go to state 557 + "name" shift, and go to state 554 + "end of expression" shift, and go to state 555 - $default reduce using rule 607 ($@42) + $default reduce using rule 606 ($@42) - $@42 go to state 558 + $@42 go to state 556 -State 377 +State 375 + + 610 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" . $@43 enum_list $@44 "end of code block" + + $default reduce using rule 608 ($@43) + + $@43 go to state 557 + + +State 376 + + 612 optional_structure_parent: ':' . name_in_namespace + + "name" shift, and go to state 58 + + name_in_namespace go to state 558 - 611 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" . $@43 enum_list $@44 "end of code block" - $default reduce using rule 609 ($@43) +State 377 + + 615 structure_name: optional_sealed "name" optional_structure_parent . - $@43 go to state 559 + $default reduce using rule 615 (structure_name) State 378 - 613 optional_structure_parent: ':' . name_in_namespace + 622 optional_struct_variable_declaration_list: "begin of code block" . struct_variable_declaration_list "end of code block" - "::" shift, and go to state 58 - "name" shift, and go to state 59 + $default reduce using rule 528 (struct_variable_declaration_list) - name_in_namespace go to state 560 + struct_variable_declaration_list go to state 559 State 379 - 616 structure_name: optional_sealed "name" optional_structure_parent . + 625 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@45 structure_name $@46 optional_struct_variable_declaration_list . - $default reduce using rule 616 (structure_name) + $default reduce using rule 625 (structure_declaration) State 380 - 623 optional_struct_variable_declaration_list: "begin of code block" . struct_variable_declaration_list "end of code block" + 578 global_variable_declaration_list: global_variable_declaration_list $@37 optional_field_annotation . let_variable_declaration - $default reduce using rule 529 (struct_variable_declaration_list) + "$i" shift, and go to state 303 + "name" shift, and go to state 304 - struct_variable_declaration_list go to state 561 + let_variable_name_with_pos_list go to state 305 + let_variable_declaration go to state 560 State 381 - 626 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@45 structure_name $@46 optional_struct_variable_declaration_list . + 515 optional_field_annotation: "[[" annotation_argument_list ']' . ']' - $default reduce using rule 626 (structure_declaration) + ']' shift, and go to state 561 State 382 - 579 global_variable_declaration_list: global_variable_declaration_list $@37 optional_field_annotation . let_variable_declaration - - "$i" shift, and go to state 305 - "name" shift, and go to state 306 + 104 metadata_argument_list: metadata_argument_list '@' annotation_argument . - let_variable_name_with_pos_list go to state 307 - let_variable_declaration go to state 562 + $default reduce using rule 104 (metadata_argument_list) State 383 - 516 optional_field_annotation: "[[" annotation_argument_list ']' . ']' - - ']' shift, and go to state 563 + 567 let_variable_name_with_pos_list: "$i" '(' . expr ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 565 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 384 - 104 metadata_argument_list: metadata_argument_list '@' annotation_argument . + 568 let_variable_name_with_pos_list: "name" "aka" . "name" - $default reduce using rule 104 (metadata_argument_list) + "name" shift, and go to state 566 State 385 - 568 let_variable_name_with_pos_list: "$i" '(' . expr ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 567 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 569 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' . "name" + 570 | let_variable_name_with_pos_list ',' . "name" "aka" "name" + "name" shift, and go to state 567 -State 386 - 569 let_variable_name_with_pos_list: "name" "aka" . "name" +State 386 - "name" shift, and go to state 568 + 571 let_variable_declaration: let_variable_name_with_pos_list ':' . type_declaration_no_options "end of expression" + 572 | let_variable_name_with_pos_list ':' . type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 573 | let_variable_name_with_pos_list ':' . type_declaration_no_options copy_or_move_or_clone expr_pipe + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 568 State 387 - 570 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' . "name" - 571 | let_variable_name_with_pos_list ',' . "name" "aka" "name" + 565 optional_ref: '&' . - "name" shift, and go to state 569 + $default reduce using rule 565 (optional_ref) State 388 - 572 let_variable_declaration: let_variable_name_with_pos_list ':' . type_declaration_no_options "end of expression" - 573 | let_variable_name_with_pos_list ':' . type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 574 | let_variable_name_with_pos_list ':' . type_declaration_no_options copy_or_move_or_clone expr_pipe - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 570 + 574 let_variable_declaration: let_variable_name_with_pos_list optional_ref . copy_or_move_or_clone expr "end of expression" + 575 | let_variable_name_with_pos_list optional_ref . copy_or_move_or_clone expr_pipe + + "<-" shift, and go to state 569 + ":=" shift, and go to state 570 + '=' shift, and go to state 571 + + copy_or_move_or_clone go to state 572 State 389 - 566 optional_ref: '&' . + 690 type_declaration_no_options: "type" '<' . $@49 type_declaration '>' $@50 + + $default reduce using rule 688 ($@49) - $default reduce using rule 566 (optional_ref) + $@49 go to state 573 State 390 - 575 let_variable_declaration: let_variable_name_with_pos_list optional_ref . copy_or_move_or_clone expr "end of expression" - 576 | let_variable_name_with_pos_list optional_ref . copy_or_move_or_clone expr_pipe + 713 type_declaration_no_options: "array" '<' . $@54 type_declaration '>' $@55 - "<-" shift, and go to state 571 - ":=" shift, and go to state 572 - '=' shift, and go to state 573 + $default reduce using rule 711 ($@54) - copy_or_move_or_clone go to state 574 + $@54 go to state 574 State 391 - 691 type_declaration_no_options: "type" '<' . $@49 type_declaration '>' $@50 + 716 type_declaration_no_options: "table" '<' . $@56 table_type_pair '>' $@57 - $default reduce using rule 689 ($@49) + $default reduce using rule 714 ($@56) - $@49 go to state 575 + $@56 go to state 575 State 392 - 714 type_declaration_no_options: "array" '<' . $@54 type_declaration '>' $@55 - - $default reduce using rule 712 ($@54) - - $@54 go to state 576 + 691 type_declaration_no_options: "typedecl" '(' . expr ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 576 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 393 - 717 type_declaration_no_options: "table" '<' . $@56 table_type_pair '>' $@57 + 719 type_declaration_no_options: "iterator" '<' . $@58 type_declaration '>' $@59 - $default reduce using rule 715 ($@56) + $default reduce using rule 717 ($@58) - $@56 go to state 577 + $@58 go to state 577 State 394 - 692 type_declaration_no_options: "typedecl" '(' . expr ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 578 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 709 type_declaration_no_options: "smart_ptr" '<' . $@52 type_declaration '>' $@53 + $default reduce using rule 707 ($@52) + + $@52 go to state 578 -State 395 - 720 type_declaration_no_options: "iterator" '<' . $@58 type_declaration '>' $@59 +State 395 - $default reduce using rule 718 ($@58) + 668 auto_type_declaration: "auto" '(' . "name" ')' - $@58 go to state 579 + "name" shift, and go to state 579 State 396 - 710 type_declaration_no_options: "smart_ptr" '<' . $@52 type_declaration '>' $@53 + 677 bitfield_type_declaration: "bitfield" '<' . $@47 bitfield_bits '>' $@48 - $default reduce using rule 708 ($@52) + $default reduce using rule 675 ($@47) - $@52 go to state 580 + $@47 go to state 580 State 397 - 669 auto_type_declaration: "auto" '(' . "name" ')' + 723 type_declaration_no_options: "block" '<' . $@60 type_declaration '>' $@61 + 726 | "block" '<' . $@62 optional_function_argument_list optional_function_type '>' $@63 + + ':' reduce using rule 724 ($@62) + '>' reduce using rule 724 ($@62) + '(' reduce using rule 724 ($@62) + $default reduce using rule 721 ($@60) - "name" shift, and go to state 581 + $@60 go to state 581 + $@62 go to state 582 State 398 - 678 bitfield_type_declaration: "bitfield" '<' . $@47 bitfield_bits '>' $@48 + 730 type_declaration_no_options: "function" '<' . $@64 type_declaration '>' $@65 + 733 | "function" '<' . $@66 optional_function_argument_list optional_function_type '>' $@67 - $default reduce using rule 676 ($@47) + ':' reduce using rule 731 ($@66) + '>' reduce using rule 731 ($@66) + '(' reduce using rule 731 ($@66) + $default reduce using rule 728 ($@64) - $@47 go to state 582 + $@64 go to state 583 + $@66 go to state 584 State 399 - 724 type_declaration_no_options: "block" '<' . $@60 type_declaration '>' $@61 - 727 | "block" '<' . $@62 optional_function_argument_list optional_function_type '>' $@63 + 737 type_declaration_no_options: "lambda" '<' . $@68 type_declaration '>' $@69 + 740 | "lambda" '<' . $@70 optional_function_argument_list optional_function_type '>' $@71 - ':' reduce using rule 725 ($@62) - '>' reduce using rule 725 ($@62) - '(' reduce using rule 725 ($@62) - $default reduce using rule 722 ($@60) + ':' reduce using rule 738 ($@70) + '>' reduce using rule 738 ($@70) + '(' reduce using rule 738 ($@70) + $default reduce using rule 735 ($@68) - $@60 go to state 583 - $@62 go to state 584 + $@68 go to state 585 + $@70 go to state 586 State 400 - 731 type_declaration_no_options: "function" '<' . $@64 type_declaration '>' $@65 - 734 | "function" '<' . $@66 optional_function_argument_list optional_function_type '>' $@67 + 743 type_declaration_no_options: "tuple" '<' . $@72 tuple_type_list '>' $@73 - ':' reduce using rule 732 ($@66) - '>' reduce using rule 732 ($@66) - '(' reduce using rule 732 ($@66) - $default reduce using rule 729 ($@64) + $default reduce using rule 741 ($@72) - $@64 go to state 585 - $@66 go to state 586 + $@72 go to state 587 State 401 - 738 type_declaration_no_options: "lambda" '<' . $@68 type_declaration '>' $@69 - 741 | "lambda" '<' . $@70 optional_function_argument_list optional_function_type '>' $@71 + 746 type_declaration_no_options: "variant" '<' . $@74 variant_type_list '>' $@75 - ':' reduce using rule 739 ($@70) - '>' reduce using rule 739 ($@70) - '(' reduce using rule 739 ($@70) - $default reduce using rule 736 ($@68) + $default reduce using rule 744 ($@74) - $@68 go to state 587 - $@70 go to state 588 + $@74 go to state 588 State 402 - 744 type_declaration_no_options: "tuple" '<' . $@72 tuple_type_list '>' $@73 - - $default reduce using rule 742 ($@72) - - $@72 go to state 589 + 669 auto_type_declaration: "$t" '(' . expr ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 589 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 403 - 747 type_declaration_no_options: "variant" '<' . $@74 variant_type_list '>' $@75 - - $default reduce using rule 745 ($@74) + 692 type_declaration_no_options: '$' name_in_namespace . '(' optional_expr_list ')' + 694 | '$' name_in_namespace . '<' $@51 type_declaration_no_options_list '>' '(' optional_expr_list ')' - $@74 go to state 590 + '<' shift, and go to state 590 + '(' shift, and go to state 591 State 404 - 670 auto_type_declaration: "$t" '(' . expr ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 591 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 697 type_declaration_no_options: type_declaration_no_options "const" . + + $default reduce using rule 697 (type_declaration_no_options) State 405 - 693 type_declaration_no_options: '$' name_in_namespace . '(' optional_expr_list ')' - 695 | '$' name_in_namespace . '<' $@51 type_declaration_no_options_list '>' '(' optional_expr_list ')' + 702 type_declaration_no_options: type_declaration_no_options "implicit" . - '<' shift, and go to state 592 - '(' shift, and go to state 593 + $default reduce using rule 702 (type_declaration_no_options) State 406 - 698 type_declaration_no_options: type_declaration_no_options "const" . + 696 type_declaration_no_options: type_declaration_no_options "explicit" . - $default reduce using rule 698 (type_declaration_no_options) + $default reduce using rule 696 (type_declaration_no_options) State 407 - 703 type_declaration_no_options: type_declaration_no_options "implicit" . + 704 type_declaration_no_options: type_declaration_no_options "==" . "const" + 705 | type_declaration_no_options "==" . '&' - $default reduce using rule 703 (type_declaration_no_options) + "const" shift, and go to state 592 + '&' shift, and go to state 593 State 408 - 697 type_declaration_no_options: type_declaration_no_options "explicit" . + 710 type_declaration_no_options: type_declaration_no_options "??" . - $default reduce using rule 697 (type_declaration_no_options) + $default reduce using rule 710 (type_declaration_no_options) State 409 - 705 type_declaration_no_options: type_declaration_no_options "==" . "const" - 706 | type_declaration_no_options "==" . '&' + 706 type_declaration_no_options: type_declaration_no_options '?' . - "const" shift, and go to state 594 - '&' shift, and go to state 595 + $default reduce using rule 706 (type_declaration_no_options) State 410 - 711 type_declaration_no_options: type_declaration_no_options "??" . + 699 type_declaration_no_options: type_declaration_no_options '&' . - $default reduce using rule 711 (type_declaration_no_options) + $default reduce using rule 699 (type_declaration_no_options) State 411 - 707 type_declaration_no_options: type_declaration_no_options '?' . + 695 type_declaration_no_options: type_declaration_no_options '-' . '[' ']' + 698 | type_declaration_no_options '-' . "const" + 700 | type_declaration_no_options '-' . '&' + 703 | type_declaration_no_options '-' . '#' - $default reduce using rule 707 (type_declaration_no_options) + "const" shift, and go to state 594 + '&' shift, and go to state 595 + '[' shift, and go to state 596 + '#' shift, and go to state 597 State 412 - 700 type_declaration_no_options: type_declaration_no_options '&' . - - $default reduce using rule 700 (type_declaration_no_options) + 680 dim_list: '[' . expr ']' + 687 type_declaration_no_options: type_declaration_no_options '[' . ']' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + ']' shift, and go to state 598 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 599 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 413 - 696 type_declaration_no_options: type_declaration_no_options '-' . '[' ']' - 699 | type_declaration_no_options '-' . "const" - 701 | type_declaration_no_options '-' . '&' - 704 | type_declaration_no_options '-' . '#' + 701 type_declaration_no_options: type_declaration_no_options '#' . - "const" shift, and go to state 596 - '&' shift, and go to state 597 - '[' shift, and go to state 598 - '#' shift, and go to state 599 + $default reduce using rule 701 (type_declaration_no_options) State 414 - 681 dim_list: '[' . expr ']' - 688 type_declaration_no_options: type_declaration_no_options '[' . ']' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - ']' shift, and go to state 600 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 601 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 681 dim_list: dim_list . '[' expr ']' + 686 type_declaration_no_options: type_declaration_no_options dim_list . + '[' shift, and go to state 600 -State 415 + '[' [reduce using rule 686 (type_declaration_no_options)] + $default reduce using rule 686 (type_declaration_no_options) - 702 type_declaration_no_options: type_declaration_no_options '#' . - $default reduce using rule 702 (type_declaration_no_options) +State 415 + + 748 type_declaration: type_declaration '|' . type_declaration_no_options + 749 | type_declaration '|' . '#' + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + '#' shift, and go to state 601 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 602 State 416 - 682 dim_list: dim_list . '[' expr ']' - 687 type_declaration_no_options: type_declaration_no_options dim_list . + 673 bitfield_alias_bits: bitfield_alias_bits . "end of expression" + 674 | bitfield_alias_bits . "name" "end of expression" + 764 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" $@85 "begin of code block" $@86 bitfield_alias_bits . $@87 "end of code block" - '[' shift, and go to state 602 + "name" shift, and go to state 603 + "end of expression" shift, and go to state 604 - '[' [reduce using rule 687 (type_declaration_no_options)] - $default reduce using rule 687 (type_declaration_no_options) + $default reduce using rule 763 ($@87) + + $@87 go to state 605 State 417 - 749 type_declaration: type_declaration '|' . type_declaration_no_options - 750 | type_declaration '|' . '#' - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - '#' shift, and go to state 603 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 604 + 545 tuple_alias_type_list: tuple_alias_type_list . "end of expression" + 546 | tuple_alias_type_list . tuple_type "end of expression" + 754 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" $@77 "begin of code block" $@78 tuple_alias_type_list . $@79 "end of code block" + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 606 + "end of expression" shift, and go to state 607 + '$' shift, and go to state 348 + + $default reduce using rule 753 ($@79) + + name_in_namespace go to state 349 + tuple_type go to state 608 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 354 + type_declaration go to state 609 + $@79 go to state 610 State 418 - 674 bitfield_alias_bits: bitfield_alias_bits . "end of expression" - 675 | bitfield_alias_bits . "name" "end of expression" - 765 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" $@85 "begin of code block" $@86 bitfield_alias_bits . $@87 "end of code block" + 551 variant_alias_type_list: variant_alias_type_list . "end of expression" + 552 | variant_alias_type_list . variant_type "end of expression" + 759 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" $@81 "begin of code block" $@82 variant_alias_type_list . $@83 "end of code block" - "name" shift, and go to state 605 - "end of expression" shift, and go to state 606 + "name" shift, and go to state 611 + "end of expression" shift, and go to state 612 - $default reduce using rule 764 ($@87) + $default reduce using rule 758 ($@83) - $@87 go to state 607 + variant_type go to state 613 + $@83 go to state 614 State 419 - 546 tuple_alias_type_list: tuple_alias_type_list . "end of expression" - 547 | tuple_alias_type_list . tuple_type "end of expression" - 755 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" $@77 "begin of code block" $@78 tuple_alias_type_list . $@79 "end of code block" - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 608 - "end of expression" shift, and go to state 609 - '$' shift, and go to state 350 - - $default reduce using rule 754 ($@79) - - name_in_namespace go to state 351 - tuple_type go to state 610 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 356 - type_declaration go to state 611 - $@79 go to state 612 - - -State 420 - - 552 variant_alias_type_list: variant_alias_type_list . "end of expression" - 553 | variant_alias_type_list . variant_type "end of expression" - 760 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" $@81 "begin of code block" $@82 variant_alias_type_list . $@83 "end of code block" - - "name" shift, and go to state 613 - "end of expression" shift, and go to state 614 - - $default reduce using rule 759 ($@83) - - variant_type go to state 615 - $@83 go to state 616 - - -State 421 - 185 function_name: "operator" '?' "as" "name" . $default reduce using rule 185 (function_name) -State 422 +State 420 175 function_name: "operator" '.' "name" ":=" . $default reduce using rule 175 (function_name) -State 423 +State 421 - 538 function_argument_declaration: "$a" '(' . expr ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 537 function_argument_declaration: "$a" '(' . expr ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 617 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 615 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 -State 424 +State 422 - 292 kwd_let_var_or_nothing: "let" . + 291 kwd_let_var_or_nothing: "let" . - $default reduce using rule 292 (kwd_let_var_or_nothing) + $default reduce using rule 291 (kwd_let_var_or_nothing) -State 425 +State 423 - 293 kwd_let_var_or_nothing: "var" . + 292 kwd_let_var_or_nothing: "var" . - $default reduce using rule 293 (kwd_let_var_or_nothing) + $default reduce using rule 292 (kwd_let_var_or_nothing) -State 426 +State 424 - 537 function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing . variable_declaration + 536 function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing . variable_declaration - "$i" shift, and go to state 618 - "name" shift, and go to state 619 + "$i" shift, and go to state 616 + "name" shift, and go to state 617 - variable_declaration go to state 620 - variable_name_with_pos_list go to state 621 + variable_declaration go to state 618 + variable_name_with_pos_list go to state 619 -State 427 +State 425 - 540 function_argument_list: function_argument_list "end of expression" . function_argument_declaration + 539 function_argument_list: function_argument_list "end of expression" . function_argument_declaration - "$a" shift, and go to state 368 - "[[" shift, and go to state 218 - '@' shift, and go to state 219 + "$a" shift, and go to state 366 + "[[" shift, and go to state 216 + '@' shift, and go to state 217 - $default reduce using rule 515 (optional_field_annotation) + $default reduce using rule 514 (optional_field_annotation) - metadata_argument_list go to state 220 - optional_field_annotation go to state 370 - function_argument_declaration go to state 622 + metadata_argument_list go to state 218 + optional_field_annotation go to state 368 + function_argument_declaration go to state 620 -State 428 +State 426 123 optional_function_argument_list: '(' function_argument_list ')' . $default reduce using rule 123 (optional_function_argument_list) -State 429 +State 427 125 optional_function_type: ':' type_declaration . - 749 type_declaration: type_declaration . '|' type_declaration_no_options - 750 | type_declaration . '|' '#' + 748 type_declaration: type_declaration . '|' type_declaration_no_options + 749 | type_declaration . '|' '#' - '|' shift, and go to state 417 + '|' shift, and go to state 415 $default reduce using rule 125 (optional_function_type) -State 430 +State 428 245 expressions: expressions error . $default reduce using rule 245 (expressions) -State 431 +State 429 - 806 make_struct_decl: "struct" . '<' $@88 type_declaration_no_options '>' $@89 '(' use_initializer make_struct_dim ')' + 805 make_struct_decl: "struct" . '<' $@88 type_declaration_no_options '>' $@89 '(' use_initializer make_struct_dim ')' - '<' shift, and go to state 623 + '<' shift, and go to state 621 -State 432 +State 430 - 809 make_struct_decl: "class" . '<' $@90 type_declaration_no_options '>' $@91 '(' use_initializer make_struct_dim ')' + 808 make_struct_decl: "class" . '<' $@90 type_declaration_no_options '>' $@91 '(' use_initializer make_struct_dim ')' - '<' shift, and go to state 624 + '<' shift, and go to state 622 -State 433 +State 431 78 expression_while_loop: "while" . expr expression_block - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 625 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 623 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 -State 434 +State 432 62 if_or_static_if: "if" . $default reduce using rule 62 (if_or_static_if) -State 435 +State 433 63 if_or_static_if: "static_if" . $default reduce using rule 63 (if_or_static_if) -State 436 +State 434 76 expression_for_loop: "for" . $@4 variable_name_with_pos_list "in" expr_list expression_block $default reduce using rule 75 ($@4) - $@4 go to state 626 + $@4 go to state 624 -State 437 +State 435 + + 420 expr: "true" . + + $default reduce using rule 420 (expr) + + +State 436 - 421 expr: "true" . + 421 expr: "false" . $default reduce using rule 421 (expr) +State 437 + + 272 expr_new: "new" . new_type_declaration + 273 | "new" . new_type_declaration '(' use_initializer ')' + 274 | "new" . new_type_declaration '(' expr_list ')' + 275 | "new" . new_type_declaration '(' use_initializer make_struct_single ')' + 276 | "new" . make_decl + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "array" shift, and go to state 440 + "table" shift, and go to state 445 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "name" shift, and go to state 58 + "begin of code block" shift, and go to state 491 + '<' shift, and go to state 625 + '[' shift, and go to state 499 + + name_in_namespace go to state 349 + new_type_declaration go to state 626 + structure_type_declaration go to state 627 + make_decl go to state 628 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 + + State 438 - 422 expr: "false" . + 318 expr_type_info: "typeinfo" . '(' name_in_namespace expr ')' + 319 | "typeinfo" . '(' name_in_namespace '<' "name" '>' expr ')' + 320 | "typeinfo" . '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' - $default reduce using rule 422 (expr) + '(' shift, and go to state 629 State 439 - 273 expr_new: "new" . new_type_declaration - 274 | "new" . new_type_declaration '(' use_initializer ')' - 275 | "new" . new_type_declaration '(' expr_list ')' - 276 | "new" . new_type_declaration '(' use_initializer make_struct_single ')' - 277 | "new" . make_decl - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "array" shift, and go to state 442 - "table" shift, and go to state 447 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "::" shift, and go to state 58 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "name" shift, and go to state 59 - "begin of code block" shift, and go to state 493 - '<' shift, and go to state 627 - '[' shift, and go to state 501 - - name_in_namespace go to state 351 - new_type_declaration go to state 628 - structure_type_declaration go to state 629 - make_decl go to state 630 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 317 expr_type_decl: "type" . '<' $@19 type_declaration '>' $@20 + + '<' shift, and go to state 630 State 440 - 319 expr_type_info: "typeinfo" . '(' name_in_namespace expr ')' - 320 | "typeinfo" . '(' name_in_namespace '<' "name" '>' expr ')' - 321 | "typeinfo" . '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' + 831 make_dim_decl: "array" . "struct" '<' $@98 type_declaration_no_options '>' $@99 '(' use_initializer make_struct_dim ')' + 834 | "array" . "tuple" '<' $@100 type_declaration_no_options '>' $@101 '(' use_initializer make_struct_dim ')' + 837 | "array" . "variant" '<' $@102 type_declaration_no_options '>' $@103 '(' make_struct_dim ')' + 838 | "array" . '(' expr_list optional_comma ')' + 841 | "array" . '<' $@104 type_declaration_no_options '>' $@105 '(' expr_list optional_comma ')' - '(' shift, and go to state 631 + "struct" shift, and go to state 631 + "tuple" shift, and go to state 632 + "variant" shift, and go to state 633 + '<' shift, and go to state 634 + '(' shift, and go to state 635 State 441 - 318 expr_type_decl: "type" . '<' $@19 type_declaration '>' $@20 - - '<' shift, and go to state 632 + 279 expression_return_no_pipe: "return" . + 280 | "return" . expr_list + 281 | "return" . "<-" expr_list + 283 expression_return: "return" . expr_pipe + 284 | "return" . "<-" expr_pipe + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "<-" shift, and go to state 636 + "$ <|" shift, and go to state 468 + "@ <|" shift, and go to state 469 + "@@ <|" shift, and go to state 470 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + $default reduce using rule 279 (expression_return_no_pipe) + + string_builder go to state 503 + expr_reader go to state 504 + expr_call_pipe go to state 515 + expression_keyword go to state 518 + expr_pipe go to state 637 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + expr_list go to state 638 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_assign go to state 639 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 640 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 442 - 832 make_dim_decl: "array" . "struct" '<' $@98 type_declaration_no_options '>' $@99 '(' use_initializer make_struct_dim ')' - 835 | "array" . "tuple" '<' $@100 type_declaration_no_options '>' $@101 '(' use_initializer make_struct_dim ')' - 838 | "array" . "variant" '<' $@102 type_declaration_no_options '>' $@103 '(' make_struct_dim ')' - 839 | "array" . '(' expr_list optional_comma ')' - 842 | "array" . '<' $@104 type_declaration_no_options '>' $@105 '(' expr_list optional_comma ')' + 414 expr: "null" . - "struct" shift, and go to state 633 - "tuple" shift, and go to state 634 - "variant" shift, and go to state 635 - '<' shift, and go to state 636 - '(' shift, and go to state 637 + $default reduce using rule 414 (expr) State 443 - 280 expression_return_no_pipe: "return" . - 281 | "return" . expr_list - 282 | "return" . "<-" expr_list - 284 expression_return: "return" . expr_pipe - 285 | "return" . "<-" expr_pipe - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "<-" shift, and go to state 638 - "$ <|" shift, and go to state 470 - "@ <|" shift, and go to state 471 - "@@ <|" shift, and go to state 472 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - $default reduce using rule 280 (expression_return_no_pipe) + 277 expression_break: "break" . - string_builder go to state 505 - expr_reader go to state 506 - expr_call_pipe go to state 517 - expression_keyword go to state 520 - expr_pipe go to state 639 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - expr_list go to state 640 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_assign go to state 641 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 642 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + $default reduce using rule 277 (expression_break) State 444 - 415 expr: "null" . + 290 expression_try_catch: "try" . expression_block "recover" expression_block - $default reduce using rule 415 (expr) + "begin of code block" shift, and go to state 284 + + expression_block go to state 641 State 445 - 278 expression_break: "break" . + 852 make_table_decl: "table" . '(' expr_map_tuple_list optional_comma ')' + 853 | "table" . '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + 854 | "table" . '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - $default reduce using rule 278 (expression_break) + '<' shift, and go to state 642 + '(' shift, and go to state 643 State 446 - 291 expression_try_catch: "try" . expression_block "recover" expression_block - - "begin of code block" shift, and go to state 286 - - expression_block go to state 643 + 266 expression_delete: "delete" . expr + 267 | "delete" . "explicit" expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "explicit" shift, and go to state 644 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 645 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 447 - 853 make_table_decl: "table" . '(' expr_map_tuple_list optional_comma ')' - 854 | "table" . '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - 855 | "table" . '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + 464 expr: "deref" . '(' expr ')' - '<' shift, and go to state 644 - '(' shift, and go to state 645 + '(' shift, and go to state 646 State 448 - 267 expression_delete: "delete" . expr - 268 | "delete" . "explicit" expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "explicit" shift, and go to state 646 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 79 expression_with: "with" . expr expression_block + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 647 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 449 - 465 expr: "deref" . '(' expr ')' + 81 expression_with_alias: "assume" . "name" '=' $@5 expr - '(' shift, and go to state 648 + "name" shift, and go to state 648 State 450 - 79 expression_with: "with" . expr expression_block + 308 expr_cast: "cast" . '<' $@13 type_declaration_no_options '>' $@14 expr - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 649 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '<' shift, and go to state 649 State 451 - 81 expression_with_alias: "assume" . "name" '=' $@5 expr + 311 expr_cast: "upcast" . '<' $@15 type_declaration_no_options '>' $@16 expr - "name" shift, and go to state 650 + '<' shift, and go to state 650 State 452 - 309 expr_cast: "cast" . '<' $@13 type_declaration_no_options '>' $@14 expr + 465 expr: "addr" . '(' expr ')' - '<' shift, and go to state 651 + '(' shift, and go to state 651 State 453 - 312 expr_cast: "upcast" . '<' $@15 type_declaration_no_options '>' $@16 expr + 278 expression_continue: "continue" . - '<' shift, and go to state 652 + $default reduce using rule 278 (expression_continue) State 454 - 466 expr: "addr" . '(' expr ')' + 242 expression_any: "pass" . "end of expression" - '(' shift, and go to state 653 + "end of expression" shift, and go to state 652 State 455 - 279 expression_continue: "continue" . + 314 expr_cast: "reinterpret" . '<' $@17 type_declaration_no_options '>' $@18 expr - $default reduce using rule 279 (expression_continue) + '<' shift, and go to state 653 State 456 - 242 expression_any: "pass" . "end of expression" + 54 expression_label: "label" . "integer constant" ':' - "end of expression" shift, and go to state 654 + "integer constant" shift, and go to state 654 State 457 - 315 expr_cast: "reinterpret" . '<' $@17 type_declaration_no_options '>' $@18 expr + 55 expression_goto: "goto" . "label" "integer constant" + 56 | "goto" . expr - '<' shift, and go to state 655 + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "label" shift, and go to state 655 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 656 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 458 - 54 expression_label: "label" . "integer constant" ':' + 77 expression_unsafe: "unsafe" . expression_block + 496 expr: "unsafe" . '(' expr ')' - "integer constant" shift, and go to state 656 + "begin of code block" shift, and go to state 284 + '(' shift, and go to state 657 + + expression_block go to state 658 State 459 - 55 expression_goto: "goto" . "label" "integer constant" - 56 | "goto" . expr + 842 make_dim_decl: "fixed_array" . '(' expr_list optional_comma ')' + 845 | "fixed_array" . '<' $@106 type_declaration_no_options '>' $@107 '(' expr_list optional_comma ')' - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "label" shift, and go to state 657 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 658 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '<' shift, and go to state 659 + '(' shift, and go to state 660 State 460 - 77 expression_unsafe: "unsafe" . expression_block - 497 expr: "unsafe" . '(' expr ')' - - "begin of code block" shift, and go to state 286 - '(' shift, and go to state 659 + 814 make_struct_decl: "default" . '<' $@94 type_declaration_no_options '>' $@95 use_initializer - expression_block go to state 660 + '<' shift, and go to state 661 State 461 - 843 make_dim_decl: "fixed_array" . '(' expr_list optional_comma ')' - 846 | "fixed_array" . '<' $@106 type_declaration_no_options '>' $@107 '(' expr_list optional_comma ')' + 657 basic_type_declaration: "bitfield" . - '<' shift, and go to state 661 - '(' shift, and go to state 662 + $default reduce using rule 657 (basic_type_declaration) State 462 - 815 make_struct_decl: "default" . '<' $@94 type_declaration_no_options '>' $@95 use_initializer + 820 make_tuple_call: "tuple" . '(' expr_list optional_comma ')' + 823 | "tuple" . '<' $@96 type_declaration_no_options '>' $@97 '(' use_initializer make_struct_dim ')' - '<' shift, and go to state 663 + '<' shift, and go to state 662 + '(' shift, and go to state 663 State 463 - 658 basic_type_declaration: "bitfield" . + 811 make_struct_decl: "variant" . '<' $@92 type_declaration_no_options '>' $@93 '(' make_struct_dim ')' - $default reduce using rule 658 (basic_type_declaration) + '<' shift, and go to state 664 State 464 - 821 make_tuple_call: "tuple" . '(' expr_list optional_comma ')' - 824 | "tuple" . '<' $@96 type_declaration_no_options '>' $@97 '(' use_initializer make_struct_dim ')' + 466 expr: "generator" . '<' type_declaration_no_options '>' optional_capture_list '(' ')' + 467 | "generator" . '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' - '<' shift, and go to state 664 - '(' shift, and go to state 665 + '<' shift, and go to state 665 State 465 - 812 make_struct_decl: "variant" . '<' $@92 type_declaration_no_options '>' $@93 '(' make_struct_dim ')' - - '<' shift, and go to state 666 + 285 expression_yield_no_pipe: "yield" . expr + 286 | "yield" . "<-" expr + 288 expression_yield: "yield" . expr_pipe + 289 | "yield" . "<-" expr_pipe + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "<-" shift, and go to state 666 + "$ <|" shift, and go to state 468 + "@ <|" shift, and go to state 469 + "@@ <|" shift, and go to state 470 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expr_call_pipe go to state 515 + expression_keyword go to state 518 + expr_pipe go to state 667 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_assign go to state 639 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 668 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 466 - 467 expr: "generator" . '<' type_declaration_no_options '>' optional_capture_list '(' ')' - 468 | "generator" . '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' - - '<' shift, and go to state 667 + 450 expr: "++" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 669 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 467 - 286 expression_yield_no_pipe: "yield" . expr - 287 | "yield" . "<-" expr - 289 expression_yield: "yield" . expr_pipe - 290 | "yield" . "<-" expr_pipe - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "<-" shift, and go to state 668 - "$ <|" shift, and go to state 470 - "@ <|" shift, and go to state 471 - "@@ <|" shift, and go to state 472 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 451 expr: "--" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expr_call_pipe go to state 517 - expression_keyword go to state 520 - expr_pipe go to state 669 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_assign go to state 641 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 670 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 468 - 451 expr: "++" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 671 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 262 expr_pipe: "$ <|" . expr_block + + "begin of code block" shift, and go to state 284 + '$' shift, and go to state 501 + '@' shift, and go to state 671 + + expression_block go to state 672 + block_or_lambda go to state 673 + expr_block go to state 674 State 469 - 452 expr: "--" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 672 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 260 expr_pipe: "@ <|" . expr_block + "begin of code block" shift, and go to state 284 + '$' shift, and go to state 501 + '@' shift, and go to state 671 -State 470 + expression_block go to state 672 + block_or_lambda go to state 673 + expr_block go to state 675 - 262 expr_pipe: "$ <|" . expr_block - "begin of code block" shift, and go to state 286 - '$' shift, and go to state 503 - '@' shift, and go to state 673 +State 470 + + 261 expr_pipe: "@@ <|" . expr_block + + "begin of code block" shift, and go to state 284 + '$' shift, and go to state 501 + '@' shift, and go to state 671 - expression_block go to state 674 - block_or_lambda go to state 675 + expression_block go to state 672 + block_or_lambda go to state 673 expr_block go to state 676 State 471 - 260 expr_pipe: "@ <|" . expr_block - - "begin of code block" shift, and go to state 286 - '$' shift, and go to state 503 - '@' shift, and go to state 673 + 498 expr_mtag: "$$" . '(' expr ')' - expression_block go to state 674 - block_or_lambda go to state 675 - expr_block go to state 677 + '(' shift, and go to state 677 State 472 - 261 expr_pipe: "@@ <|" . expr_block - - "begin of code block" shift, and go to state 286 - '$' shift, and go to state 503 - '@' shift, and go to state 673 + 499 expr_mtag: "$i" . '(' expr ')' - expression_block go to state 674 - block_or_lambda go to state 675 - expr_block go to state 678 + '(' shift, and go to state 678 State 473 - 499 expr_mtag: "$$" . '(' expr ')' + 500 expr_mtag: "$v" . '(' expr ')' '(' shift, and go to state 679 State 474 - 500 expr_mtag: "$i" . '(' expr ')' + 501 expr_mtag: "$b" . '(' expr ')' '(' shift, and go to state 680 State 475 - 501 expr_mtag: "$v" . '(' expr ')' + 502 expr_mtag: "$a" . '(' expr ')' '(' shift, and go to state 681 State 476 - 502 expr_mtag: "$b" . '(' expr ')' + 504 expr_mtag: "$c" . '(' expr ')' '(' ')' + 505 | "$c" . '(' expr ')' '(' expr_list ')' '(' shift, and go to state 682 State 477 - 503 expr_mtag: "$a" . '(' expr ')' + 503 expr_mtag: "..." . - '(' shift, and go to state 683 + $default reduce using rule 503 (expr_mtag) State 478 - 505 expr_mtag: "$c" . '(' expr ')' '(' ')' - 506 | "$c" . '(' expr ')' '(' expr_list ')' - - '(' shift, and go to state 684 + 797 make_struct_decl: "[[" . type_declaration_no_options make_struct_dim optional_block optional_trailing_delim_sqr_sqr + 798 | "[[" . type_declaration_no_options optional_block optional_trailing_delim_sqr_sqr + 799 | "[[" . type_declaration_no_options '(' ')' optional_block optional_trailing_delim_sqr_sqr + 800 | "[[" . type_declaration_no_options '(' ')' make_struct_dim optional_block optional_trailing_delim_sqr_sqr + 827 make_dim_decl: "[[" . type_declaration_no_options make_dim optional_trailing_semicolon_sqr_sqr + 861 array_comprehension: "[[" . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' ']' + + "for" shift, and go to state 683 + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 684 State 479 - 504 expr_mtag: "..." . + 801 make_struct_decl: "[{" . type_declaration_no_options make_struct_dim optional_block optional_trailing_delim_cur_sqr + 802 | "[{" . type_declaration_no_options '(' ')' make_struct_dim optional_block optional_trailing_delim_cur_sqr + 828 make_dim_decl: "[{" . type_declaration_no_options make_dim optional_trailing_semicolon_cur_sqr + 862 array_comprehension: "[{" . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where "end of code block" ']' - $default reduce using rule 504 (expr_mtag) + "for" shift, and go to state 685 + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 686 State 480 - 798 make_struct_decl: "[[" . type_declaration_no_options make_struct_dim optional_block optional_trailing_delim_sqr_sqr - 799 | "[[" . type_declaration_no_options optional_block optional_trailing_delim_sqr_sqr - 800 | "[[" . type_declaration_no_options '(' ')' optional_block optional_trailing_delim_sqr_sqr - 801 | "[[" . type_declaration_no_options '(' ')' make_struct_dim optional_block optional_trailing_delim_sqr_sqr - 828 make_dim_decl: "[[" . type_declaration_no_options make_dim optional_trailing_semicolon_sqr_sqr - 862 array_comprehension: "[[" . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' ']' - - "for" shift, and go to state 685 - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 686 + 851 make_table_decl: "{{" . make_table optional_trailing_semicolon_cur_cur + 864 array_comprehension: "{{" . "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" "end of code block" + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "for" shift, and go to state 687 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 688 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_map_tuple go to state 689 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table go to state 690 + make_table_decl go to state 552 + array_comprehension go to state 553 State 481 - 802 make_struct_decl: "[{" . type_declaration_no_options make_struct_dim optional_block optional_trailing_delim_cur_sqr - 803 | "[{" . type_declaration_no_options '(' ')' make_struct_dim optional_block optional_trailing_delim_cur_sqr - 829 make_dim_decl: "[{" . type_declaration_no_options make_dim optional_trailing_semicolon_cur_sqr - 863 array_comprehension: "[{" . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where "end of code block" ']' - - "for" shift, and go to state 687 - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 688 + 342 expr_numeric_const: "integer constant" . + + $default reduce using rule 342 (expr_numeric_const) State 482 - 852 make_table_decl: "{{" . make_table optional_trailing_semicolon_cur_cur - 865 array_comprehension: "{{" . "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" "end of code block" - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "for" shift, and go to state 689 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 690 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_map_tuple go to state 691 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table go to state 692 - make_table_decl go to state 554 - array_comprehension go to state 555 + 344 expr_numeric_const: "long integer constant" . + + $default reduce using rule 344 (expr_numeric_const) State 483 - 343 expr_numeric_const: "integer constant" . + 343 expr_numeric_const: "unsigned integer constant" . $default reduce using rule 343 (expr_numeric_const) State 484 - 345 expr_numeric_const: "long integer constant" . + 345 expr_numeric_const: "unsigned long integer constant" . $default reduce using rule 345 (expr_numeric_const) State 485 - 344 expr_numeric_const: "unsigned integer constant" . - - $default reduce using rule 344 (expr_numeric_const) - - -State 486 - - 346 expr_numeric_const: "unsigned long integer constant" . + 346 expr_numeric_const: "unsigned int8 constant" . $default reduce using rule 346 (expr_numeric_const) -State 487 +State 486 - 347 expr_numeric_const: "unsigned int8 constant" . + 347 expr_numeric_const: "floating point constant" . $default reduce using rule 347 (expr_numeric_const) -State 488 +State 487 - 348 expr_numeric_const: "floating point constant" . + 348 expr_numeric_const: "double constant" . $default reduce using rule 348 (expr_numeric_const) -State 489 - - 349 expr_numeric_const: "double constant" . - - $default reduce using rule 349 (expr_numeric_const) - - -State 490 +State 488 246 expr_keyword: "keyword" . expr expression_block 255 expression_keyword: "keyword" . '<' $@7 type_declaration_no_options_list '>' $@8 expr - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '<' shift, and go to state 693 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '<' shift, and go to state 691 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 694 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 692 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 -State 491 +State 489 258 expression_keyword: "type function" . '<' $@9 type_declaration_no_options_list '>' $@10 optional_expr_list_in_braces - '<' shift, and go to state 695 + '<' shift, and go to state 693 -State 492 +State 490 31 string_builder: "start of the string" . string_builder_body "end of the string" $default reduce using rule 28 (string_builder_body) - string_builder_body go to state 696 + string_builder_body go to state 694 -State 493 +State 491 - 851 make_table_decl: "begin of code block" . expr_map_tuple_list optional_comma "end of code block" - 864 array_comprehension: "begin of code block" . "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "for" shift, and go to state 697 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 850 make_table_decl: "begin of code block" . expr_map_tuple_list optional_comma "end of code block" + 863 array_comprehension: "begin of code block" . "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "for" shift, and go to state 695 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 690 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_map_tuple go to state 698 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - expr_map_tuple_list go to state 699 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 688 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_map_tuple go to state 696 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + expr_map_tuple_list go to state 697 + make_table_decl go to state 552 + array_comprehension go to state 553 -State 494 +State 492 218 expression_block: "begin of code block" expressions "end of code block" . 219 | "begin of code block" expressions "end of code block" . "finally" "begin of code block" expressions "end of code block" - "finally" shift, and go to state 700 + "finally" shift, and go to state 698 $default reduce using rule 218 (expression_block) -State 495 +State 493 222 expression_any: "end of expression" . $default reduce using rule 222 (expression_any) +State 494 + + 427 expr: '-' . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 699 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 + + +State 495 + + 426 expr: '+' . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 700 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 + + State 496 - 428 expr: '-' . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 463 expr: '*' . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 701 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 497 - 427 expr: '+' . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 425 expr: '~' . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 702 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 498 - 464 expr: '*' . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 424 expr: '!' . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 703 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 499 - 426 expr: '~' . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 826 make_dim_decl: '[' . expr_list optional_comma ']' + 859 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 860 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "for" shift, and go to state 704 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "iterator" shift, and go to state 705 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 704 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + expr_list go to state 706 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 707 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 500 - 425 expr: '!' . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 454 expr: '(' . expr_list optional_comma ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 705 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + expr_list go to state 708 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 707 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 501 - 827 make_dim_decl: '[' . expr_list optional_comma ']' - 860 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - 861 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "for" shift, and go to state 706 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "iterator" shift, and go to state 707 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - expr_list go to state 708 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 709 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 - + 326 block_or_lambda: '$' . -State 502 + $default reduce using rule 326 (block_or_lambda) - 455 expr: '(' . expr_list optional_comma ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - expr_list go to state 710 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 709 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 +State 502 -State 503 + 327 block_or_lambda: '@' . + 328 | '@' . '@' + 395 func_addr_expr: '@' . '@' func_addr_name + 398 | '@' . '@' '<' $@22 type_declaration_no_options '>' $@23 func_addr_name + 401 | '@' . '@' '<' $@24 optional_function_argument_list optional_function_type '>' $@25 func_addr_name + 513 expr_mtag: '@' . '@' "$c" '(' expr ')' - 327 block_or_lambda: '$' . + '@' shift, and go to state 709 $default reduce using rule 327 (block_or_lambda) -State 504 - - 328 block_or_lambda: '@' . - 329 | '@' . '@' - 396 func_addr_expr: '@' . '@' func_addr_name - 399 | '@' . '@' '<' $@22 type_declaration_no_options '>' $@23 func_addr_name - 402 | '@' . '@' '<' $@24 optional_function_argument_list optional_function_type '>' $@25 func_addr_name - 514 expr_mtag: '@' . '@' "$c" '(' expr ')' - - '@' shift, and go to state 711 - - $default reduce using rule 328 (block_or_lambda) - - -State 505 +State 503 - 419 expr: string_builder . + 418 expr: string_builder . - $default reduce using rule 419 (expr) + $default reduce using rule 418 (expr) -State 506 +State 504 - 418 expr: expr_reader . + 417 expr: expr_reader . - $default reduce using rule 418 (expr) + $default reduce using rule 417 (expr) -State 507 +State 505 240 expression_any: expression_label . "end of expression" - "end of expression" shift, and go to state 712 + "end of expression" shift, and go to state 710 -State 508 +State 506 241 expression_any: expression_goto . "end of expression" - "end of expression" shift, and go to state 713 + "end of expression" shift, and go to state 711 -State 509 +State 507 72 expression_if_then_else: if_or_static_if . expr expression_block expression_else - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 714 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 712 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 -State 510 +State 508 74 expression_if_then_else: expression_if_one_liner . "if" $@3 expr expression_else_one_liner "end of expression" - "if" shift, and go to state 715 + "if" shift, and go to state 713 -State 511 +State 509 238 expression_any: expression_if_then_else . $default reduce using rule 238 (expression_any) -State 512 +State 510 233 expression_any: expression_for_loop . $default reduce using rule 233 (expression_any) -State 513 +State 511 230 expression_any: expression_unsafe . $default reduce using rule 230 (expression_any) -State 514 +State 512 229 expression_any: expression_while_loop . $default reduce using rule 229 (expression_any) -State 515 +State 513 231 expression_any: expression_with . $default reduce using rule 231 (expression_any) -State 516 +State 514 232 expression_any: expression_with_alias . $default reduce using rule 232 (expression_any) -State 517 +State 515 263 expr_pipe: expr_call_pipe . $default reduce using rule 263 (expr_pipe) -State 518 +State 516 244 expressions: expressions expression_any . $default reduce using rule 244 (expressions) -State 519 +State 517 224 expression_any: expr_keyword . $default reduce using rule 224 (expression_any) -State 520 +State 518 221 expr_call_pipe: expression_keyword . expr_full_block_assumed_piped - 498 expr: expression_keyword . + 497 expr: expression_keyword . - '$' shift, and go to state 503 - '@' shift, and go to state 673 + '$' shift, and go to state 501 + '@' shift, and go to state 671 - '$' [reduce using rule 498 (expr)] - '@' [reduce using rule 498 (expr)] - $default reduce using rule 498 (expr) + '$' [reduce using rule 497 (expr)] + '@' [reduce using rule 497 (expr)] + $default reduce using rule 497 (expr) - block_or_lambda go to state 716 - expr_full_block_assumed_piped go to state 717 + block_or_lambda go to state 714 + expr_full_block_assumed_piped go to state 715 -State 521 +State 519 223 expression_any: expr_pipe . $default reduce using rule 223 (expression_any) -State 522 +State 520 - 390 expr_named_call: name_in_namespace . '(' '[' make_struct_fields ']' ')' - 391 | name_in_namespace . '(' expr_list ',' '[' make_struct_fields ']' ')' - 410 expr_call: name_in_namespace . '(' ')' - 411 | name_in_namespace . '(' make_struct_single ')' - 412 | name_in_namespace . '(' expr_list ')' - 416 expr: name_in_namespace . - 496 | name_in_namespace . "name" + 389 expr_named_call: name_in_namespace . '(' '[' make_struct_fields ']' ')' + 390 | name_in_namespace . '(' expr_list ',' '[' make_struct_fields ']' ')' + 409 expr_call: name_in_namespace . '(' ')' + 410 | name_in_namespace . '(' make_struct_single ')' + 411 | name_in_namespace . '(' expr_list ')' + 415 expr: name_in_namespace . + 495 | name_in_namespace . "name" - "name" shift, and go to state 718 - '(' shift, and go to state 719 + "name" shift, and go to state 716 + '(' shift, and go to state 717 - "name" [reduce using rule 416 (expr)] - '(' [reduce using rule 416 (expr)] - $default reduce using rule 416 (expr) + "name" [reduce using rule 415 (expr)] + '(' [reduce using rule 415 (expr)] + $default reduce using rule 415 (expr) -State 523 +State 521 227 expression_any: expression_delete . "end of expression" - "end of expression" shift, and go to state 720 + "end of expression" shift, and go to state 718 -State 524 +State 522 - 489 expr: expr_new . + 488 expr: expr_new . - $default reduce using rule 489 (expr) + $default reduce using rule 488 (expr) -State 525 +State 523 70 expression_if_one_liner: expression_break . 234 expression_any: expression_break . "end of expression" - "end of expression" shift, and go to state 721 + "end of expression" shift, and go to state 719 $default reduce using rule 70 (expression_if_one_liner) -State 526 +State 524 71 expression_if_one_liner: expression_continue . 235 expression_any: expression_continue . "end of expression" - "end of expression" shift, and go to state 722 + "end of expression" shift, and go to state 720 $default reduce using rule 71 (expression_if_one_liner) -State 527 +State 525 68 expression_if_one_liner: expression_return_no_pipe . - 283 expression_return: expression_return_no_pipe . "end of expression" + 282 expression_return: expression_return_no_pipe . "end of expression" - "end of expression" shift, and go to state 723 + "end of expression" shift, and go to state 721 $default reduce using rule 68 (expression_if_one_liner) -State 528 +State 526 236 expression_any: expression_return . $default reduce using rule 236 (expression_any) -State 529 +State 527 69 expression_if_one_liner: expression_yield_no_pipe . - 288 expression_yield: expression_yield_no_pipe . "end of expression" + 287 expression_yield: expression_yield_no_pipe . "end of expression" - "end of expression" shift, and go to state 724 + "end of expression" shift, and go to state 722 $default reduce using rule 69 (expression_if_one_liner) -State 530 +State 528 237 expression_any: expression_yield . $default reduce using rule 237 (expression_any) -State 531 +State 529 239 expression_any: expression_try_catch . $default reduce using rule 239 (expression_any) -State 532 +State 530 - 305 expression_let: kwd_let . optional_in_scope let_variable_declaration - 306 | kwd_let . optional_in_scope tuple_expansion_variable_declaration + 304 expression_let: kwd_let . optional_in_scope let_variable_declaration + 305 | kwd_let . optional_in_scope tuple_expansion_variable_declaration - "inscope" shift, and go to state 725 + "inscope" shift, and go to state 723 - $default reduce using rule 298 (optional_in_scope) + $default reduce using rule 297 (optional_in_scope) - optional_in_scope go to state 726 + optional_in_scope go to state 724 -State 533 +State 531 228 expression_any: expression_let . $default reduce using rule 228 (expression_any) -State 534 +State 532 - 488 expr: expr_cast . + 487 expr: expr_cast . - $default reduce using rule 488 (expr) + $default reduce using rule 487 (expr) -State 535 +State 533 - 487 expr: expr_type_decl . + 486 expr: expr_type_decl . - $default reduce using rule 487 (expr) + $default reduce using rule 486 (expr) -State 536 +State 534 - 486 expr: expr_type_info . + 485 expr: expr_type_info . - $default reduce using rule 486 (expr) + $default reduce using rule 485 (expr) -State 537 +State 535 - 340 expr_full_block: block_or_lambda . optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block + 339 expr_full_block: block_or_lambda . optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block '[' shift, and go to state 15 $default reduce using rule 119 (optional_annotation_list) - optional_annotation_list go to state 727 + optional_annotation_list go to state 725 -State 538 +State 536 - 492 expr: expr_full_block . + 491 expr: expr_full_block . - $default reduce using rule 492 (expr) + $default reduce using rule 491 (expr) -State 539 +State 537 - 417 expr: expr_numeric_const . + 416 expr: expr_numeric_const . - $default reduce using rule 417 (expr) + $default reduce using rule 416 (expr) -State 540 +State 538 226 expression_any: expr_assign . "end of expression" 259 expr_pipe: expr_assign . " <|" expr_block - " <|" shift, and go to state 728 - "end of expression" shift, and go to state 729 + " <|" shift, and go to state 726 + "end of expression" shift, and go to state 727 -State 541 +State 539 225 expression_any: expr_assign_pipe . $default reduce using rule 225 (expression_any) +State 540 + + 490 expr: expr_named_call . + + $default reduce using rule 490 (expr) + + +State 541 + + 489 expr: expr_method_call . + + $default reduce using rule 489 (expr) + + State 542 - 491 expr: expr_named_call . + 461 expr: func_addr_expr . - $default reduce using rule 491 (expr) + $default reduce using rule 461 (expr) State 543 - 490 expr: expr_method_call . + 422 expr: expr_field . - $default reduce using rule 490 (expr) + $default reduce using rule 422 (expr) State 544 - 462 expr: func_addr_expr . + 462 expr: expr_call . $default reduce using rule 462 (expr) State 545 - 423 expr: expr_field . + 67 expression_if_one_liner: expr . + 220 expr_call_pipe: expr . expr_full_block_assumed_piped + 349 expr_assign: expr . + 350 | expr . '=' expr + 351 | expr . "<-" expr + 352 | expr . ":=" expr + 353 | expr . "&=" expr + 354 | expr . "|=" expr + 355 | expr . "^=" expr + 356 | expr . "&&=" expr + 357 | expr . "||=" expr + 358 | expr . "^^=" expr + 359 | expr . "+=" expr + 360 | expr . "-=" expr + 361 | expr . "*=" expr + 362 | expr . "/=" expr + 363 | expr . "%=" expr + 364 | expr . "<<=" expr + 365 | expr . ">>=" expr + 366 | expr . "<<<=" expr + 367 | expr . ">>>=" expr + 372 expr_assign_pipe: expr . '=' expr_assign_pipe_right + 373 | expr . "<-" expr_assign_pipe_right + 374 | expr . "&=" expr_assign_pipe_right + 375 | expr . "|=" expr_assign_pipe_right + 376 | expr . "^=" expr_assign_pipe_right + 377 | expr . "&&=" expr_assign_pipe_right + 378 | expr . "||=" expr_assign_pipe_right + 379 | expr . "^^=" expr_assign_pipe_right + 380 | expr . "+=" expr_assign_pipe_right + 381 | expr . "-=" expr_assign_pipe_right + 382 | expr . "*=" expr_assign_pipe_right + 383 | expr . "/=" expr_assign_pipe_right + 384 | expr . "%=" expr_assign_pipe_right + 385 | expr . "<<=" expr_assign_pipe_right + 386 | expr . ">>=" expr_assign_pipe_right + 387 | expr . "<<<=" expr_assign_pipe_right + 388 | expr . ">>>=" expr_assign_pipe_right + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "+=" shift, and go to state 730 + "-=" shift, and go to state 731 + "/=" shift, and go to state 732 + "*=" shift, and go to state 733 + "%=" shift, and go to state 734 + "&=" shift, and go to state 735 + "|=" shift, and go to state 736 + "^=" shift, and go to state 737 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + "<<=" shift, and go to state 743 + ">>=" shift, and go to state 744 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "<-" shift, and go to state 749 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + ":=" shift, and go to state 755 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "<<<=" shift, and go to state 758 + ">>>=" shift, and go to state 759 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + "&&=" shift, and go to state 763 + "||=" shift, and go to state 764 + "^^=" shift, and go to state 765 + ".." shift, and go to state 766 + '=' shift, and go to state 767 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + '$' shift, and go to state 501 + '@' shift, and go to state 671 + + "if" reduce using rule 67 (expression_if_one_liner) + $default reduce using rule 349 (expr_assign) - $default reduce using rule 423 (expr) + block_or_lambda go to state 714 + expr_full_block_assumed_piped go to state 781 State 546 - 463 expr: expr_call . + 423 expr: expr_mtag . - $default reduce using rule 463 (expr) + $default reduce using rule 423 (expr) State 547 - 67 expression_if_one_liner: expr . - 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 350 expr_assign: expr . - 351 | expr . '=' expr - 352 | expr . "<-" expr - 353 | expr . ":=" expr - 354 | expr . "&=" expr - 355 | expr . "|=" expr - 356 | expr . "^=" expr - 357 | expr . "&&=" expr - 358 | expr . "||=" expr - 359 | expr . "^^=" expr - 360 | expr . "+=" expr - 361 | expr . "-=" expr - 362 | expr . "*=" expr - 363 | expr . "/=" expr - 364 | expr . "%=" expr - 365 | expr . "<<=" expr - 366 | expr . ">>=" expr - 367 | expr . "<<<=" expr - 368 | expr . ">>>=" expr - 373 expr_assign_pipe: expr . '=' expr_assign_pipe_right - 374 | expr . "<-" expr_assign_pipe_right - 375 | expr . "&=" expr_assign_pipe_right - 376 | expr . "|=" expr_assign_pipe_right - 377 | expr . "^=" expr_assign_pipe_right - 378 | expr . "&&=" expr_assign_pipe_right - 379 | expr . "||=" expr_assign_pipe_right - 380 | expr . "^^=" expr_assign_pipe_right - 381 | expr . "+=" expr_assign_pipe_right - 382 | expr . "-=" expr_assign_pipe_right - 383 | expr . "*=" expr_assign_pipe_right - 384 | expr . "/=" expr_assign_pipe_right - 385 | expr . "%=" expr_assign_pipe_right - 386 | expr . "<<=" expr_assign_pipe_right - 387 | expr . ">>=" expr_assign_pipe_right - 388 | expr . "<<<=" expr_assign_pipe_right - 389 | expr . ">>>=" expr_assign_pipe_right - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "+=" shift, and go to state 732 - "-=" shift, and go to state 733 - "/=" shift, and go to state 734 - "*=" shift, and go to state 735 - "%=" shift, and go to state 736 - "&=" shift, and go to state 737 - "|=" shift, and go to state 738 - "^=" shift, and go to state 739 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - "<<=" shift, and go to state 745 - ">>=" shift, and go to state 746 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "<-" shift, and go to state 751 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - ":=" shift, and go to state 757 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "<<<=" shift, and go to state 760 - ">>>=" shift, and go to state 761 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - "&&=" shift, and go to state 765 - "||=" shift, and go to state 766 - "^^=" shift, and go to state 767 - ".." shift, and go to state 768 - '=' shift, and go to state 769 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - '$' shift, and go to state 503 - '@' shift, and go to state 673 - - "if" reduce using rule 67 (expression_if_one_liner) - $default reduce using rule 350 (expr_assign) + 412 expr_call: basic_type_declaration . '(' ')' + 413 | basic_type_declaration . '(' expr_list ')' - block_or_lambda go to state 716 - expr_full_block_assumed_piped go to state 783 + '(' shift, and go to state 782 State 548 - 424 expr: expr_mtag . + 419 expr: make_decl . - $default reduce using rule 424 (expr) + $default reduce using rule 419 (expr) State 549 - 413 expr_call: basic_type_declaration . '(' ')' - 414 | basic_type_declaration . '(' expr_list ')' + 765 make_decl: make_struct_decl . - '(' shift, and go to state 784 + $default reduce using rule 765 (make_decl) State 550 - 420 expr: make_decl . + 769 make_decl: make_tuple_call . - $default reduce using rule 420 (expr) + $default reduce using rule 769 (make_decl) State 551 - 766 make_decl: make_struct_decl . + 766 make_decl: make_dim_decl . $default reduce using rule 766 (make_decl) State 552 - 770 make_decl: make_tuple_call . + 767 make_decl: make_table_decl . - $default reduce using rule 770 (make_decl) + $default reduce using rule 767 (make_decl) State 553 - 767 make_decl: make_dim_decl . + 768 make_decl: array_comprehension . - $default reduce using rule 767 (make_decl) + $default reduce using rule 768 (make_decl) State 554 - 768 make_decl: make_table_decl . + 589 enum_list: enum_list "name" . "end of expression" + 590 | enum_list "name" . '=' expr "end of expression" - $default reduce using rule 768 (make_decl) + "end of expression" shift, and go to state 783 + '=' shift, and go to state 784 State 555 - 769 make_decl: array_comprehension . + 588 enum_list: enum_list "end of expression" . - $default reduce using rule 769 (make_decl) + $default reduce using rule 588 (enum_list) State 556 - 590 enum_list: enum_list "name" . "end of expression" - 591 | enum_list "name" . '=' expr "end of expression" + 607 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name "begin of code block" $@41 enum_list $@42 . "end of code block" - "end of expression" shift, and go to state 785 - '=' shift, and go to state 786 + "end of code block" shift, and go to state 785 State 557 - 589 enum_list: enum_list "end of expression" . + 610 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" $@43 . enum_list $@44 "end of code block" - $default reduce using rule 589 (enum_list) + $default reduce using rule 587 (enum_list) + + enum_list go to state 786 State 558 - 608 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name "begin of code block" $@41 enum_list $@42 . "end of code block" + 612 optional_structure_parent: ':' name_in_namespace . - "end of code block" shift, and go to state 787 + $default reduce using rule 612 (optional_structure_parent) State 559 - 611 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" $@43 . enum_list $@44 "end of code block" + 530 struct_variable_declaration_list: struct_variable_declaration_list . $@34 structure_variable_declaration "end of expression" + 532 | struct_variable_declaration_list . optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@35 function_declaration_header "end of expression" + 534 | struct_variable_declaration_list . optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@36 function_declaration_header expression_block + 535 | struct_variable_declaration_list . '[' annotation_list ']' "end of expression" + 622 optional_struct_variable_declaration_list: "begin of code block" struct_variable_declaration_list . "end of code block" - $default reduce using rule 588 (enum_list) + "end of code block" shift, and go to state 787 + '[' shift, and go to state 788 + + "def" reduce using rule 119 (optional_annotation_list) + $default reduce using rule 529 ($@34) - enum_list go to state 788 + optional_annotation_list go to state 789 + $@34 go to state 790 State 560 - 613 optional_structure_parent: ':' name_in_namespace . + 578 global_variable_declaration_list: global_variable_declaration_list $@37 optional_field_annotation let_variable_declaration . - $default reduce using rule 613 (optional_structure_parent) + $default reduce using rule 578 (global_variable_declaration_list) State 561 - 531 struct_variable_declaration_list: struct_variable_declaration_list . $@34 structure_variable_declaration "end of expression" - 533 | struct_variable_declaration_list . optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@35 function_declaration_header "end of expression" - 535 | struct_variable_declaration_list . optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@36 function_declaration_header expression_block - 536 | struct_variable_declaration_list . '[' annotation_list ']' "end of expression" - 623 optional_struct_variable_declaration_list: "begin of code block" struct_variable_declaration_list . "end of code block" - - "end of code block" shift, and go to state 789 - '[' shift, and go to state 790 - - "def" reduce using rule 119 (optional_annotation_list) - $default reduce using rule 530 ($@34) + 515 optional_field_annotation: "[[" annotation_argument_list ']' ']' . - optional_annotation_list go to state 791 - $@34 go to state 792 + $default reduce using rule 515 (optional_field_annotation) State 562 - 579 global_variable_declaration_list: global_variable_declaration_list $@37 optional_field_annotation let_variable_declaration . + 496 expr: "unsafe" . '(' expr ')' - $default reduce using rule 579 (global_variable_declaration_list) + '(' shift, and go to state 657 State 563 - 516 optional_field_annotation: "[[" annotation_argument_list ']' ']' . + 255 expression_keyword: "keyword" . '<' $@7 type_declaration_no_options_list '>' $@8 expr - $default reduce using rule 516 (optional_field_annotation) + '<' shift, and go to state 691 State 564 - 497 expr: "unsafe" . '(' expr ')' + 497 expr: expression_keyword . - '(' shift, and go to state 659 + $default reduce using rule 497 (expr) State 565 - 255 expression_keyword: "keyword" . '<' $@7 type_declaration_no_options_list '>' $@8 expr - - '<' shift, and go to state 693 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 567 let_variable_name_with_pos_list: "$i" '(' expr . ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + ')' shift, and go to state 791 State 566 - 498 expr: expression_keyword . + 568 let_variable_name_with_pos_list: "name" "aka" "name" . - $default reduce using rule 498 (expr) + $default reduce using rule 568 (let_variable_name_with_pos_list) State 567 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 568 let_variable_name_with_pos_list: "$i" '(' expr . ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - ')' shift, and go to state 793 + 569 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" . + 570 | let_variable_name_with_pos_list ',' "name" . "aka" "name" + "aka" shift, and go to state 792 -State 568 + $default reduce using rule 569 (let_variable_name_with_pos_list) - 569 let_variable_name_with_pos_list: "name" "aka" "name" . - $default reduce using rule 569 (let_variable_name_with_pos_list) +State 568 + 571 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options . "end of expression" + 572 | let_variable_name_with_pos_list ':' type_declaration_no_options . copy_or_move_or_clone expr "end of expression" + 573 | let_variable_name_with_pos_list ':' type_declaration_no_options . copy_or_move_or_clone expr_pipe + 686 type_declaration_no_options: type_declaration_no_options . dim_list + 687 | type_declaration_no_options . '[' ']' + 695 | type_declaration_no_options . '-' '[' ']' + 696 | type_declaration_no_options . "explicit" + 697 | type_declaration_no_options . "const" + 698 | type_declaration_no_options . '-' "const" + 699 | type_declaration_no_options . '&' + 700 | type_declaration_no_options . '-' '&' + 701 | type_declaration_no_options . '#' + 702 | type_declaration_no_options . "implicit" + 703 | type_declaration_no_options . '-' '#' + 704 | type_declaration_no_options . "==" "const" + 705 | type_declaration_no_options . "==" '&' + 706 | type_declaration_no_options . '?' + 710 | type_declaration_no_options . "??" + + "const" shift, and go to state 404 + "implicit" shift, and go to state 405 + "explicit" shift, and go to state 406 + "==" shift, and go to state 407 + "<-" shift, and go to state 569 + "??" shift, and go to state 408 + ":=" shift, and go to state 570 + "end of expression" shift, and go to state 793 + '=' shift, and go to state 571 + '?' shift, and go to state 409 + '&' shift, and go to state 410 + '-' shift, and go to state 411 + '[' shift, and go to state 412 + '#' shift, and go to state 413 + + copy_or_move_or_clone go to state 794 + dim_list go to state 414 -State 569 - 570 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" . - 571 | let_variable_name_with_pos_list ',' "name" . "aka" "name" +State 569 - "aka" shift, and go to state 794 + 562 copy_or_move_or_clone: "<-" . - $default reduce using rule 570 (let_variable_name_with_pos_list) + $default reduce using rule 562 (copy_or_move_or_clone) State 570 - 572 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options . "end of expression" - 573 | let_variable_name_with_pos_list ':' type_declaration_no_options . copy_or_move_or_clone expr "end of expression" - 574 | let_variable_name_with_pos_list ':' type_declaration_no_options . copy_or_move_or_clone expr_pipe - 687 type_declaration_no_options: type_declaration_no_options . dim_list - 688 | type_declaration_no_options . '[' ']' - 696 | type_declaration_no_options . '-' '[' ']' - 697 | type_declaration_no_options . "explicit" - 698 | type_declaration_no_options . "const" - 699 | type_declaration_no_options . '-' "const" - 700 | type_declaration_no_options . '&' - 701 | type_declaration_no_options . '-' '&' - 702 | type_declaration_no_options . '#' - 703 | type_declaration_no_options . "implicit" - 704 | type_declaration_no_options . '-' '#' - 705 | type_declaration_no_options . "==" "const" - 706 | type_declaration_no_options . "==" '&' - 707 | type_declaration_no_options . '?' - 711 | type_declaration_no_options . "??" - - "const" shift, and go to state 406 - "implicit" shift, and go to state 407 - "explicit" shift, and go to state 408 - "==" shift, and go to state 409 - "<-" shift, and go to state 571 - "??" shift, and go to state 410 - ":=" shift, and go to state 572 - "end of expression" shift, and go to state 795 - '=' shift, and go to state 573 - '?' shift, and go to state 411 - '&' shift, and go to state 412 - '-' shift, and go to state 413 - '[' shift, and go to state 414 - '#' shift, and go to state 415 - - copy_or_move_or_clone go to state 796 - dim_list go to state 416 + 563 copy_or_move_or_clone: ":=" . + + $default reduce using rule 563 (copy_or_move_or_clone) State 571 - 563 copy_or_move_or_clone: "<-" . + 561 copy_or_move_or_clone: '=' . - $default reduce using rule 563 (copy_or_move_or_clone) + $default reduce using rule 561 (copy_or_move_or_clone) State 572 - 564 copy_or_move_or_clone: ":=" . - - $default reduce using rule 564 (copy_or_move_or_clone) + 574 let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone . expr "end of expression" + 575 | let_variable_name_with_pos_list optional_ref copy_or_move_or_clone . expr_pipe + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$ <|" shift, and go to state 468 + "@ <|" shift, and go to state 469 + "@@ <|" shift, and go to state 470 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expr_call_pipe go to state 515 + expression_keyword go to state 518 + expr_pipe go to state 795 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_assign go to state 639 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 796 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 573 - 562 copy_or_move_or_clone: '=' . - - $default reduce using rule 562 (copy_or_move_or_clone) + 690 type_declaration_no_options: "type" '<' $@49 . type_declaration '>' $@50 + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 354 + type_declaration go to state 797 State 574 - 575 let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone . expr "end of expression" - 576 | let_variable_name_with_pos_list optional_ref copy_or_move_or_clone . expr_pipe - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "$ <|" shift, and go to state 470 - "@ <|" shift, and go to state 471 - "@@ <|" shift, and go to state 472 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expr_call_pipe go to state 517 - expression_keyword go to state 520 - expr_pipe go to state 797 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_assign go to state 641 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 798 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 713 type_declaration_no_options: "array" '<' $@54 . type_declaration '>' $@55 + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 354 + type_declaration go to state 798 State 575 - 691 type_declaration_no_options: "type" '<' $@49 . type_declaration '>' $@50 - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 356 - type_declaration go to state 799 + 716 type_declaration_no_options: "table" '<' $@56 . table_type_pair '>' $@57 + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + table_type_pair go to state 799 + type_declaration_no_options go to state 354 + type_declaration go to state 800 State 576 - 714 type_declaration_no_options: "array" '<' $@54 . type_declaration '>' $@55 - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 356 - type_declaration go to state 800 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 691 type_declaration_no_options: "typedecl" '(' expr . ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + ')' shift, and go to state 801 State 577 - 717 type_declaration_no_options: "table" '<' $@56 . table_type_pair '>' $@57 - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - table_type_pair go to state 801 - type_declaration_no_options go to state 356 + 719 type_declaration_no_options: "iterator" '<' $@58 . type_declaration '>' $@59 + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 354 type_declaration go to state 802 State 578 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 692 type_declaration_no_options: "typedecl" '(' expr . ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - ')' shift, and go to state 803 + 709 type_declaration_no_options: "smart_ptr" '<' $@52 . type_declaration '>' $@53 + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 354 + type_declaration go to state 803 State 579 - 720 type_declaration_no_options: "iterator" '<' $@58 . type_declaration '>' $@59 - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 356 - type_declaration go to state 804 + 668 auto_type_declaration: "auto" '(' "name" . ')' + + ')' shift, and go to state 804 State 580 - 710 type_declaration_no_options: "smart_ptr" '<' $@52 . type_declaration '>' $@53 - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 356 - type_declaration go to state 805 + 677 bitfield_type_declaration: "bitfield" '<' $@47 . bitfield_bits '>' $@48 + "name" shift, and go to state 805 -State 581 + bitfield_bits go to state 806 - 669 auto_type_declaration: "auto" '(' "name" . ')' - ')' shift, and go to state 806 +State 581 + + 723 type_declaration_no_options: "block" '<' $@60 . type_declaration '>' $@61 + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 354 + type_declaration go to state 807 State 582 - 678 bitfield_type_declaration: "bitfield" '<' $@47 . bitfield_bits '>' $@48 + 726 type_declaration_no_options: "block" '<' $@62 . optional_function_argument_list optional_function_type '>' $@63 - "name" shift, and go to state 807 + '(' shift, and go to state 282 + + $default reduce using rule 121 (optional_function_argument_list) - bitfield_bits go to state 808 + optional_function_argument_list go to state 808 State 583 - 724 type_declaration_no_options: "block" '<' $@60 . type_declaration '>' $@61 - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 356 + 730 type_declaration_no_options: "function" '<' $@64 . type_declaration '>' $@65 + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 354 type_declaration go to state 809 State 584 - 727 type_declaration_no_options: "block" '<' $@62 . optional_function_argument_list optional_function_type '>' $@63 + 733 type_declaration_no_options: "function" '<' $@66 . optional_function_argument_list optional_function_type '>' $@67 - '(' shift, and go to state 284 + '(' shift, and go to state 282 $default reduce using rule 121 (optional_function_argument_list) @@ -11392,66 +11391,65 @@ State 584 State 585 - 731 type_declaration_no_options: "function" '<' $@64 . type_declaration '>' $@65 - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 356 + 737 type_declaration_no_options: "lambda" '<' $@68 . type_declaration '>' $@69 + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 354 type_declaration go to state 811 State 586 - 734 type_declaration_no_options: "function" '<' $@66 . optional_function_argument_list optional_function_type '>' $@67 + 740 type_declaration_no_options: "lambda" '<' $@70 . optional_function_argument_list optional_function_type '>' $@71 - '(' shift, and go to state 284 + '(' shift, and go to state 282 $default reduce using rule 121 (optional_function_argument_list) @@ -11460,11821 +11458,11698 @@ State 586 State 587 - 738 type_declaration_no_options: "lambda" '<' $@68 . type_declaration '>' $@69 - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 356 - type_declaration go to state 813 + 743 type_declaration_no_options: "tuple" '<' $@72 . tuple_type_list '>' $@73 + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 606 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + tuple_type go to state 813 + tuple_type_list go to state 814 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 354 + type_declaration go to state 609 State 588 - 741 type_declaration_no_options: "lambda" '<' $@70 . optional_function_argument_list optional_function_type '>' $@71 + 746 type_declaration_no_options: "variant" '<' $@74 . variant_type_list '>' $@75 - '(' shift, and go to state 284 + "name" shift, and go to state 611 - $default reduce using rule 121 (optional_function_argument_list) - - optional_function_argument_list go to state 814 + variant_type go to state 815 + variant_type_list go to state 816 State 589 - 744 type_declaration_no_options: "tuple" '<' $@72 . tuple_type_list '>' $@73 - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 608 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - tuple_type go to state 815 - tuple_type_list go to state 816 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 356 - type_declaration go to state 611 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 669 auto_type_declaration: "$t" '(' expr . ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + ')' shift, and go to state 817 State 590 - 747 type_declaration_no_options: "variant" '<' $@74 . variant_type_list '>' $@75 + 694 type_declaration_no_options: '$' name_in_namespace '<' . $@51 type_declaration_no_options_list '>' '(' optional_expr_list ')' - "name" shift, and go to state 613 + $default reduce using rule 693 ($@51) - variant_type go to state 817 - variant_type_list go to state 818 + $@51 go to state 818 State 591 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 670 auto_type_declaration: "$t" '(' expr . ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - ')' shift, and go to state 819 + 692 type_declaration_no_options: '$' name_in_namespace '(' . optional_expr_list ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + $default reduce using rule 247 (optional_expr_list) -State 592 + string_builder go to state 503 + expr_reader go to state 504 + optional_expr_list go to state 819 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + expr_list go to state 820 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 707 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 - 695 type_declaration_no_options: '$' name_in_namespace '<' . $@51 type_declaration_no_options_list '>' '(' optional_expr_list ')' - $default reduce using rule 694 ($@51) +State 592 - $@51 go to state 820 + 704 type_declaration_no_options: type_declaration_no_options "==" "const" . + $default reduce using rule 704 (type_declaration_no_options) -State 593 - 693 type_declaration_no_options: '$' name_in_namespace '(' . optional_expr_list ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 +State 593 - $default reduce using rule 247 (optional_expr_list) + 705 type_declaration_no_options: type_declaration_no_options "==" '&' . - string_builder go to state 505 - expr_reader go to state 506 - optional_expr_list go to state 821 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - expr_list go to state 822 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 709 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + $default reduce using rule 705 (type_declaration_no_options) State 594 - 705 type_declaration_no_options: type_declaration_no_options "==" "const" . + 698 type_declaration_no_options: type_declaration_no_options '-' "const" . - $default reduce using rule 705 (type_declaration_no_options) + $default reduce using rule 698 (type_declaration_no_options) State 595 - 706 type_declaration_no_options: type_declaration_no_options "==" '&' . + 700 type_declaration_no_options: type_declaration_no_options '-' '&' . - $default reduce using rule 706 (type_declaration_no_options) + $default reduce using rule 700 (type_declaration_no_options) State 596 - 699 type_declaration_no_options: type_declaration_no_options '-' "const" . + 695 type_declaration_no_options: type_declaration_no_options '-' '[' . ']' - $default reduce using rule 699 (type_declaration_no_options) + ']' shift, and go to state 821 State 597 - 701 type_declaration_no_options: type_declaration_no_options '-' '&' . + 703 type_declaration_no_options: type_declaration_no_options '-' '#' . - $default reduce using rule 701 (type_declaration_no_options) + $default reduce using rule 703 (type_declaration_no_options) State 598 - 696 type_declaration_no_options: type_declaration_no_options '-' '[' . ']' + 687 type_declaration_no_options: type_declaration_no_options '[' ']' . - ']' shift, and go to state 823 + $default reduce using rule 687 (type_declaration_no_options) State 599 - 704 type_declaration_no_options: type_declaration_no_options '-' '#' . - - $default reduce using rule 704 (type_declaration_no_options) + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 680 dim_list: '[' expr . ']' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + ']' shift, and go to state 822 State 600 - 688 type_declaration_no_options: type_declaration_no_options '[' ']' . - - $default reduce using rule 688 (type_declaration_no_options) + 681 dim_list: dim_list '[' . expr ']' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 823 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 601 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 681 dim_list: '[' expr . ']' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - ']' shift, and go to state 824 + 749 type_declaration: type_declaration '|' '#' . + + $default reduce using rule 749 (type_declaration) State 602 - 682 dim_list: dim_list '[' . expr ']' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 825 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 686 type_declaration_no_options: type_declaration_no_options . dim_list + 687 | type_declaration_no_options . '[' ']' + 695 | type_declaration_no_options . '-' '[' ']' + 696 | type_declaration_no_options . "explicit" + 697 | type_declaration_no_options . "const" + 698 | type_declaration_no_options . '-' "const" + 699 | type_declaration_no_options . '&' + 700 | type_declaration_no_options . '-' '&' + 701 | type_declaration_no_options . '#' + 702 | type_declaration_no_options . "implicit" + 703 | type_declaration_no_options . '-' '#' + 704 | type_declaration_no_options . "==" "const" + 705 | type_declaration_no_options . "==" '&' + 706 | type_declaration_no_options . '?' + 710 | type_declaration_no_options . "??" + 748 type_declaration: type_declaration '|' type_declaration_no_options . + + "const" shift, and go to state 404 + "implicit" shift, and go to state 405 + "explicit" shift, and go to state 406 + "==" shift, and go to state 407 + "??" shift, and go to state 408 + '?' shift, and go to state 409 + '&' shift, and go to state 410 + '-' shift, and go to state 411 + '[' shift, and go to state 412 + '#' shift, and go to state 413 + + $default reduce using rule 748 (type_declaration) + + dim_list go to state 414 State 603 - 750 type_declaration: type_declaration '|' '#' . + 674 bitfield_alias_bits: bitfield_alias_bits "name" . "end of expression" - $default reduce using rule 750 (type_declaration) + "end of expression" shift, and go to state 824 State 604 - 687 type_declaration_no_options: type_declaration_no_options . dim_list - 688 | type_declaration_no_options . '[' ']' - 696 | type_declaration_no_options . '-' '[' ']' - 697 | type_declaration_no_options . "explicit" - 698 | type_declaration_no_options . "const" - 699 | type_declaration_no_options . '-' "const" - 700 | type_declaration_no_options . '&' - 701 | type_declaration_no_options . '-' '&' - 702 | type_declaration_no_options . '#' - 703 | type_declaration_no_options . "implicit" - 704 | type_declaration_no_options . '-' '#' - 705 | type_declaration_no_options . "==" "const" - 706 | type_declaration_no_options . "==" '&' - 707 | type_declaration_no_options . '?' - 711 | type_declaration_no_options . "??" - 749 type_declaration: type_declaration '|' type_declaration_no_options . - - "const" shift, and go to state 406 - "implicit" shift, and go to state 407 - "explicit" shift, and go to state 408 - "==" shift, and go to state 409 - "??" shift, and go to state 410 - '?' shift, and go to state 411 - '&' shift, and go to state 412 - '-' shift, and go to state 413 - '[' shift, and go to state 414 - '#' shift, and go to state 415 - - $default reduce using rule 749 (type_declaration) + 673 bitfield_alias_bits: bitfield_alias_bits "end of expression" . - dim_list go to state 416 + $default reduce using rule 673 (bitfield_alias_bits) State 605 - 675 bitfield_alias_bits: bitfield_alias_bits "name" . "end of expression" + 764 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" $@85 "begin of code block" $@86 bitfield_alias_bits $@87 . "end of code block" - "end of expression" shift, and go to state 826 + "end of code block" shift, and go to state 825 State 606 - 674 bitfield_alias_bits: bitfield_alias_bits "end of expression" . + 264 name_in_namespace: "name" . + 265 | "name" . "::" "name" + 541 tuple_type: "name" . ':' type_declaration - $default reduce using rule 674 (bitfield_alias_bits) + "::" shift, and go to state 96 + ':' shift, and go to state 826 + + $default reduce using rule 264 (name_in_namespace) State 607 - 765 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" $@85 "begin of code block" $@86 bitfield_alias_bits $@87 . "end of code block" + 545 tuple_alias_type_list: tuple_alias_type_list "end of expression" . - "end of code block" shift, and go to state 827 + $default reduce using rule 545 (tuple_alias_type_list) State 608 - 264 name_in_namespace: "name" . - 265 | "name" . "::" "name" - 542 tuple_type: "name" . ':' type_declaration - - "::" shift, and go to state 98 - ':' shift, and go to state 828 + 546 tuple_alias_type_list: tuple_alias_type_list tuple_type . "end of expression" - $default reduce using rule 264 (name_in_namespace) + "end of expression" shift, and go to state 827 State 609 - 546 tuple_alias_type_list: tuple_alias_type_list "end of expression" . + 540 tuple_type: type_declaration . + 748 type_declaration: type_declaration . '|' type_declaration_no_options + 749 | type_declaration . '|' '#' - $default reduce using rule 546 (tuple_alias_type_list) + '|' shift, and go to state 415 + + $default reduce using rule 540 (tuple_type) State 610 - 547 tuple_alias_type_list: tuple_alias_type_list tuple_type . "end of expression" + 754 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" $@77 "begin of code block" $@78 tuple_alias_type_list $@79 . "end of code block" - "end of expression" shift, and go to state 829 + "end of code block" shift, and go to state 828 State 611 - 541 tuple_type: type_declaration . - 749 type_declaration: type_declaration . '|' type_declaration_no_options - 750 | type_declaration . '|' '#' + 547 variant_type: "name" . ':' type_declaration - '|' shift, and go to state 417 - - $default reduce using rule 541 (tuple_type) + ':' shift, and go to state 829 State 612 - 755 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" $@77 "begin of code block" $@78 tuple_alias_type_list $@79 . "end of code block" + 551 variant_alias_type_list: variant_alias_type_list "end of expression" . - "end of code block" shift, and go to state 830 + $default reduce using rule 551 (variant_alias_type_list) State 613 - 548 variant_type: "name" . ':' type_declaration + 552 variant_alias_type_list: variant_alias_type_list variant_type . "end of expression" - ':' shift, and go to state 831 + "end of expression" shift, and go to state 830 State 614 - 552 variant_alias_type_list: variant_alias_type_list "end of expression" . + 759 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" $@81 "begin of code block" $@82 variant_alias_type_list $@83 . "end of code block" - $default reduce using rule 552 (variant_alias_type_list) + "end of code block" shift, and go to state 831 State 615 - 553 variant_alias_type_list: variant_alias_type_list variant_type . "end of expression" - - "end of expression" shift, and go to state 832 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 537 function_argument_declaration: "$a" '(' expr . ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + ')' shift, and go to state 832 State 616 - 760 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" $@81 "begin of code block" $@82 variant_alias_type_list $@83 . "end of code block" + 627 variable_name_with_pos_list: "$i" . '(' expr ')' - "end of code block" shift, and go to state 833 + '(' shift, and go to state 833 State 617 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 538 function_argument_declaration: "$a" '(' expr . ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - ')' shift, and go to state 834 + 626 variable_name_with_pos_list: "name" . + 628 | "name" . "aka" "name" + + "aka" shift, and go to state 834 + + $default reduce using rule 626 (variable_name_with_pos_list) State 618 - 628 variable_name_with_pos_list: "$i" . '(' expr ')' + 536 function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing variable_declaration . - '(' shift, and go to state 835 + $default reduce using rule 536 (function_argument_declaration) State 619 - 627 variable_name_with_pos_list: "name" . - 629 | "name" . "aka" "name" + 555 variable_declaration: variable_name_with_pos_list . + 556 | variable_name_with_pos_list . '&' + 557 | variable_name_with_pos_list . ':' type_declaration + 558 | variable_name_with_pos_list . ':' type_declaration copy_or_move expr + 559 | variable_name_with_pos_list . copy_or_move expr + 560 | variable_name_with_pos_list . copy_or_move expr_pipe + 629 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" + 630 | variable_name_with_pos_list . ',' "name" "aka" "name" - "aka" shift, and go to state 836 + "<-" shift, and go to state 835 + ',' shift, and go to state 836 + '=' shift, and go to state 837 + ':' shift, and go to state 838 + '&' shift, and go to state 839 - $default reduce using rule 627 (variable_name_with_pos_list) + $default reduce using rule 555 (variable_declaration) + + copy_or_move go to state 840 State 620 - 537 function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing variable_declaration . + 539 function_argument_list: function_argument_list "end of expression" function_argument_declaration . - $default reduce using rule 537 (function_argument_declaration) + $default reduce using rule 539 (function_argument_list) State 621 - 556 variable_declaration: variable_name_with_pos_list . - 557 | variable_name_with_pos_list . '&' - 558 | variable_name_with_pos_list . ':' type_declaration - 559 | variable_name_with_pos_list . ':' type_declaration copy_or_move expr - 560 | variable_name_with_pos_list . copy_or_move expr - 561 | variable_name_with_pos_list . copy_or_move expr_pipe - 630 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" - 631 | variable_name_with_pos_list . ',' "name" "aka" "name" - - "<-" shift, and go to state 837 - ',' shift, and go to state 838 - '=' shift, and go to state 839 - ':' shift, and go to state 840 - '&' shift, and go to state 841 + 805 make_struct_decl: "struct" '<' . $@88 type_declaration_no_options '>' $@89 '(' use_initializer make_struct_dim ')' - $default reduce using rule 556 (variable_declaration) + $default reduce using rule 803 ($@88) - copy_or_move go to state 842 + $@88 go to state 841 State 622 - 540 function_argument_list: function_argument_list "end of expression" function_argument_declaration . - - $default reduce using rule 540 (function_argument_list) + 808 make_struct_decl: "class" '<' . $@90 type_declaration_no_options '>' $@91 '(' use_initializer make_struct_dim ')' + $default reduce using rule 806 ($@90) -State 623 + $@90 go to state 842 - 806 make_struct_decl: "struct" '<' . $@88 type_declaration_no_options '>' $@89 '(' use_initializer make_struct_dim ')' - $default reduce using rule 804 ($@88) +State 623 - $@88 go to state 843 + 78 expression_while_loop: "while" expr . expression_block + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + "begin of code block" shift, and go to state 284 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + + expression_block go to state 843 State 624 - 809 make_struct_decl: "class" '<' . $@90 type_declaration_no_options '>' $@91 '(' use_initializer make_struct_dim ')' + 76 expression_for_loop: "for" $@4 . variable_name_with_pos_list "in" expr_list expression_block - $default reduce using rule 807 ($@90) + "$i" shift, and go to state 616 + "name" shift, and go to state 617 - $@90 go to state 844 + variable_name_with_pos_list go to state 844 State 625 - 78 expression_while_loop: "while" expr . expression_block - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - "begin of code block" shift, and go to state 286 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - - expression_block go to state 845 + 270 new_type_declaration: '<' . $@11 type_declaration '>' $@12 + + $default reduce using rule 268 ($@11) + + $@11 go to state 845 State 626 - 76 expression_for_loop: "for" $@4 . variable_name_with_pos_list "in" expr_list expression_block + 272 expr_new: "new" new_type_declaration . + 273 | "new" new_type_declaration . '(' use_initializer ')' + 274 | "new" new_type_declaration . '(' expr_list ')' + 275 | "new" new_type_declaration . '(' use_initializer make_struct_single ')' - "$i" shift, and go to state 618 - "name" shift, and go to state 619 + '(' shift, and go to state 846 - variable_name_with_pos_list go to state 846 + '(' [reduce using rule 272 (expr_new)] + $default reduce using rule 272 (expr_new) State 627 - 271 new_type_declaration: '<' . $@11 type_declaration '>' $@12 + 271 new_type_declaration: structure_type_declaration . - $default reduce using rule 269 ($@11) - - $@11 go to state 847 + $default reduce using rule 271 (new_type_declaration) State 628 - 273 expr_new: "new" new_type_declaration . - 274 | "new" new_type_declaration . '(' use_initializer ')' - 275 | "new" new_type_declaration . '(' expr_list ')' - 276 | "new" new_type_declaration . '(' use_initializer make_struct_single ')' - - '(' shift, and go to state 848 + 276 expr_new: "new" make_decl . - '(' [reduce using rule 273 (expr_new)] - $default reduce using rule 273 (expr_new) + $default reduce using rule 276 (expr_new) State 629 - 272 new_type_declaration: structure_type_declaration . + 318 expr_type_info: "typeinfo" '(' . name_in_namespace expr ')' + 319 | "typeinfo" '(' . name_in_namespace '<' "name" '>' expr ')' + 320 | "typeinfo" '(' . name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' + + "name" shift, and go to state 58 - $default reduce using rule 272 (new_type_declaration) + name_in_namespace go to state 847 State 630 - 277 expr_new: "new" make_decl . + 317 expr_type_decl: "type" '<' . $@19 type_declaration '>' $@20 - $default reduce using rule 277 (expr_new) + $default reduce using rule 315 ($@19) + $@19 go to state 848 -State 631 - 319 expr_type_info: "typeinfo" '(' . name_in_namespace expr ')' - 320 | "typeinfo" '(' . name_in_namespace '<' "name" '>' expr ')' - 321 | "typeinfo" '(' . name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' +State 631 - "::" shift, and go to state 58 - "name" shift, and go to state 59 + 831 make_dim_decl: "array" "struct" . '<' $@98 type_declaration_no_options '>' $@99 '(' use_initializer make_struct_dim ')' - name_in_namespace go to state 849 + '<' shift, and go to state 849 State 632 - 318 expr_type_decl: "type" '<' . $@19 type_declaration '>' $@20 + 834 make_dim_decl: "array" "tuple" . '<' $@100 type_declaration_no_options '>' $@101 '(' use_initializer make_struct_dim ')' - $default reduce using rule 316 ($@19) - - $@19 go to state 850 + '<' shift, and go to state 850 State 633 - 832 make_dim_decl: "array" "struct" . '<' $@98 type_declaration_no_options '>' $@99 '(' use_initializer make_struct_dim ')' + 837 make_dim_decl: "array" "variant" . '<' $@102 type_declaration_no_options '>' $@103 '(' make_struct_dim ')' '<' shift, and go to state 851 State 634 - 835 make_dim_decl: "array" "tuple" . '<' $@100 type_declaration_no_options '>' $@101 '(' use_initializer make_struct_dim ')' + 841 make_dim_decl: "array" '<' . $@104 type_declaration_no_options '>' $@105 '(' expr_list optional_comma ')' - '<' shift, and go to state 852 + $default reduce using rule 839 ($@104) + $@104 go to state 852 -State 635 - 838 make_dim_decl: "array" "variant" . '<' $@102 type_declaration_no_options '>' $@103 '(' make_struct_dim ')' +State 635 - '<' shift, and go to state 853 + 838 make_dim_decl: "array" '(' . expr_list optional_comma ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + expr_list go to state 853 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 707 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 636 - 842 make_dim_decl: "array" '<' . $@104 type_declaration_no_options '>' $@105 '(' expr_list optional_comma ')' - - $default reduce using rule 840 ($@104) - - $@104 go to state 854 + 281 expression_return_no_pipe: "return" "<-" . expr_list + 284 expression_return: "return" "<-" . expr_pipe + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$ <|" shift, and go to state 468 + "@ <|" shift, and go to state 469 + "@@ <|" shift, and go to state 470 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expr_call_pipe go to state 515 + expression_keyword go to state 518 + expr_pipe go to state 854 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + expr_list go to state 855 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_assign go to state 639 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 640 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 637 - 839 make_dim_decl: "array" '(' . expr_list optional_comma ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - expr_list go to state 855 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 709 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 283 expression_return: "return" expr_pipe . + + $default reduce using rule 283 (expression_return) State 638 - 282 expression_return_no_pipe: "return" "<-" . expr_list - 285 expression_return: "return" "<-" . expr_pipe - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "$ <|" shift, and go to state 470 - "@ <|" shift, and go to state 471 - "@@ <|" shift, and go to state 472 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expr_call_pipe go to state 517 - expression_keyword go to state 520 - expr_pipe go to state 856 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - expr_list go to state 857 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_assign go to state 641 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 642 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 280 expression_return_no_pipe: "return" expr_list . + 322 expr_list: expr_list . ',' expr + ',' shift, and go to state 856 -State 639 + $default reduce using rule 280 (expression_return_no_pipe) - 284 expression_return: "return" expr_pipe . - $default reduce using rule 284 (expression_return) +State 639 + 259 expr_pipe: expr_assign . " <|" expr_block -State 640 + " <|" shift, and go to state 726 - 281 expression_return_no_pipe: "return" expr_list . - 323 expr_list: expr_list . ',' expr - ',' shift, and go to state 858 +State 640 - $default reduce using rule 281 (expression_return_no_pipe) + 220 expr_call_pipe: expr . expr_full_block_assumed_piped + 321 expr_list: expr . + 349 expr_assign: expr . + 350 | expr . '=' expr + 351 | expr . "<-" expr + 352 | expr . ":=" expr + 353 | expr . "&=" expr + 354 | expr . "|=" expr + 355 | expr . "^=" expr + 356 | expr . "&&=" expr + 357 | expr . "||=" expr + 358 | expr . "^^=" expr + 359 | expr . "+=" expr + 360 | expr . "-=" expr + 361 | expr . "*=" expr + 362 | expr . "/=" expr + 363 | expr . "%=" expr + 364 | expr . "<<=" expr + 365 | expr . ">>=" expr + 366 | expr . "<<<=" expr + 367 | expr . ">>>=" expr + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "+=" shift, and go to state 857 + "-=" shift, and go to state 858 + "/=" shift, and go to state 859 + "*=" shift, and go to state 860 + "%=" shift, and go to state 861 + "&=" shift, and go to state 862 + "|=" shift, and go to state 863 + "^=" shift, and go to state 864 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + "<<=" shift, and go to state 865 + ">>=" shift, and go to state 866 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "<-" shift, and go to state 867 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + ":=" shift, and go to state 755 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "<<<=" shift, and go to state 868 + ">>>=" shift, and go to state 869 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + "&&=" shift, and go to state 870 + "||=" shift, and go to state 871 + "^^=" shift, and go to state 872 + ".." shift, and go to state 766 + '=' shift, and go to state 873 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + '$' shift, and go to state 501 + '@' shift, and go to state 671 + + " <|" reduce using rule 349 (expr_assign) + $default reduce using rule 321 (expr_list) + + block_or_lambda go to state 714 + expr_full_block_assumed_piped go to state 781 State 641 - 259 expr_pipe: expr_assign . " <|" expr_block + 290 expression_try_catch: "try" expression_block . "recover" expression_block - " <|" shift, and go to state 728 + "recover" shift, and go to state 874 State 642 - 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 322 expr_list: expr . - 350 expr_assign: expr . - 351 | expr . '=' expr - 352 | expr . "<-" expr - 353 | expr . ":=" expr - 354 | expr . "&=" expr - 355 | expr . "|=" expr - 356 | expr . "^=" expr - 357 | expr . "&&=" expr - 358 | expr . "||=" expr - 359 | expr . "^^=" expr - 360 | expr . "+=" expr - 361 | expr . "-=" expr - 362 | expr . "*=" expr - 363 | expr . "/=" expr - 364 | expr . "%=" expr - 365 | expr . "<<=" expr - 366 | expr . ">>=" expr - 367 | expr . "<<<=" expr - 368 | expr . ">>>=" expr - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "+=" shift, and go to state 859 - "-=" shift, and go to state 860 - "/=" shift, and go to state 861 - "*=" shift, and go to state 862 - "%=" shift, and go to state 863 - "&=" shift, and go to state 864 - "|=" shift, and go to state 865 - "^=" shift, and go to state 866 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - "<<=" shift, and go to state 867 - ">>=" shift, and go to state 868 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "<-" shift, and go to state 869 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - ":=" shift, and go to state 757 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "<<<=" shift, and go to state 870 - ">>>=" shift, and go to state 871 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - "&&=" shift, and go to state 872 - "||=" shift, and go to state 873 - "^^=" shift, and go to state 874 - ".." shift, and go to state 768 - '=' shift, and go to state 875 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - '$' shift, and go to state 503 - '@' shift, and go to state 673 - - " <|" reduce using rule 350 (expr_assign) - $default reduce using rule 322 (expr_list) - - block_or_lambda go to state 716 - expr_full_block_assumed_piped go to state 783 + 853 make_table_decl: "table" '<' . type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + 854 | "table" '<' . type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 875 State 643 - 291 expression_try_catch: "try" expression_block . "recover" expression_block - - "recover" shift, and go to state 876 + 852 make_table_decl: "table" '(' . expr_map_tuple_list optional_comma ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 688 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_map_tuple go to state 696 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + expr_map_tuple_list go to state 876 + make_table_decl go to state 552 + array_comprehension go to state 553 State 644 - 854 make_table_decl: "table" '<' . type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - 855 | "table" '<' . type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 877 + 267 expression_delete: "delete" "explicit" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 877 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 645 - 853 make_table_decl: "table" '(' . expr_map_tuple_list optional_comma ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 690 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_map_tuple go to state 698 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - expr_map_tuple_list go to state 878 - make_table_decl go to state 554 - array_comprehension go to state 555 + 266 expression_delete: "delete" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + + $default reduce using rule 266 (expression_delete) State 646 - 268 expression_delete: "delete" "explicit" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 464 expr: "deref" '(' . expr ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 879 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 878 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 647 - 267 expression_delete: "delete" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - - $default reduce using rule 267 (expression_delete) + 79 expression_with: "with" expr . expression_block + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + "begin of code block" shift, and go to state 284 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + + expression_block go to state 879 State 648 - 465 expr: "deref" '(' . expr ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 880 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 81 expression_with_alias: "assume" "name" . '=' $@5 expr + + '=' shift, and go to state 880 State 649 - 79 expression_with: "with" expr . expression_block - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - "begin of code block" shift, and go to state 286 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - - expression_block go to state 881 + 308 expr_cast: "cast" '<' . $@13 type_declaration_no_options '>' $@14 expr + $default reduce using rule 306 ($@13) -State 650 + $@13 go to state 881 - 81 expression_with_alias: "assume" "name" . '=' $@5 expr - '=' shift, and go to state 882 +State 650 + 311 expr_cast: "upcast" '<' . $@15 type_declaration_no_options '>' $@16 expr -State 651 + $default reduce using rule 309 ($@15) - 309 expr_cast: "cast" '<' . $@13 type_declaration_no_options '>' $@14 expr + $@15 go to state 882 - $default reduce using rule 307 ($@13) - $@13 go to state 883 +State 651 + 465 expr: "addr" '(' . expr ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 883 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 -State 652 - 312 expr_cast: "upcast" '<' . $@15 type_declaration_no_options '>' $@16 expr +State 652 - $default reduce using rule 310 ($@15) + 242 expression_any: "pass" "end of expression" . - $@15 go to state 884 + $default reduce using rule 242 (expression_any) State 653 - 466 expr: "addr" '(' . expr ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 885 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 314 expr_cast: "reinterpret" '<' . $@17 type_declaration_no_options '>' $@18 expr + + $default reduce using rule 312 ($@17) + + $@17 go to state 884 State 654 - 242 expression_any: "pass" "end of expression" . + 54 expression_label: "label" "integer constant" . ':' - $default reduce using rule 242 (expression_any) + ':' shift, and go to state 885 State 655 - 315 expr_cast: "reinterpret" '<' . $@17 type_declaration_no_options '>' $@18 expr - - $default reduce using rule 313 ($@17) + 55 expression_goto: "goto" "label" . "integer constant" - $@17 go to state 886 + "integer constant" shift, and go to state 886 State 656 - 54 expression_label: "label" "integer constant" . ':' + 56 expression_goto: "goto" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - ':' shift, and go to state 887 + $default reduce using rule 56 (expression_goto) State 657 - 55 expression_goto: "goto" "label" . "integer constant" - - "integer constant" shift, and go to state 888 + 496 expr: "unsafe" '(' . expr ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 887 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 658 - 56 expression_goto: "goto" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 77 expression_unsafe: "unsafe" expression_block . - $default reduce using rule 56 (expression_goto) + $default reduce using rule 77 (expression_unsafe) State 659 - 497 expr: "unsafe" '(' . expr ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 889 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 845 make_dim_decl: "fixed_array" '<' . $@106 type_declaration_no_options '>' $@107 '(' expr_list optional_comma ')' + $default reduce using rule 843 ($@106) -State 660 + $@106 go to state 888 - 77 expression_unsafe: "unsafe" expression_block . - $default reduce using rule 77 (expression_unsafe) +State 660 + + 842 make_dim_decl: "fixed_array" '(' . expr_list optional_comma ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + expr_list go to state 889 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 707 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 661 - 846 make_dim_decl: "fixed_array" '<' . $@106 type_declaration_no_options '>' $@107 '(' expr_list optional_comma ')' + 814 make_struct_decl: "default" '<' . $@94 type_declaration_no_options '>' $@95 use_initializer - $default reduce using rule 844 ($@106) + $default reduce using rule 812 ($@94) - $@106 go to state 890 + $@94 go to state 890 State 662 - 843 make_dim_decl: "fixed_array" '(' . expr_list optional_comma ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - expr_list go to state 891 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 709 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 823 make_tuple_call: "tuple" '<' . $@96 type_declaration_no_options '>' $@97 '(' use_initializer make_struct_dim ')' + $default reduce using rule 821 ($@96) -State 663 + $@96 go to state 891 - 815 make_struct_decl: "default" '<' . $@94 type_declaration_no_options '>' $@95 use_initializer - $default reduce using rule 813 ($@94) +State 663 - $@94 go to state 892 + 820 make_tuple_call: "tuple" '(' . expr_list optional_comma ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + expr_list go to state 892 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 707 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 664 - 824 make_tuple_call: "tuple" '<' . $@96 type_declaration_no_options '>' $@97 '(' use_initializer make_struct_dim ')' + 811 make_struct_decl: "variant" '<' . $@92 type_declaration_no_options '>' $@93 '(' make_struct_dim ')' - $default reduce using rule 822 ($@96) + $default reduce using rule 809 ($@92) - $@96 go to state 893 + $@92 go to state 893 State 665 - 821 make_tuple_call: "tuple" '(' . expr_list optional_comma ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - expr_list go to state 894 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 709 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 466 expr: "generator" '<' . type_declaration_no_options '>' optional_capture_list '(' ')' + 467 | "generator" '<' . type_declaration_no_options '>' optional_capture_list '(' expr ')' + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 894 State 666 - 812 make_struct_decl: "variant" '<' . $@92 type_declaration_no_options '>' $@93 '(' make_struct_dim ')' - - $default reduce using rule 810 ($@92) - - $@92 go to state 895 + 286 expression_yield_no_pipe: "yield" "<-" . expr + 289 expression_yield: "yield" "<-" . expr_pipe + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$ <|" shift, and go to state 468 + "@ <|" shift, and go to state 469 + "@@ <|" shift, and go to state 470 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expr_call_pipe go to state 515 + expression_keyword go to state 518 + expr_pipe go to state 895 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_assign go to state 639 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 896 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 667 - 467 expr: "generator" '<' . type_declaration_no_options '>' optional_capture_list '(' ')' - 468 | "generator" '<' . type_declaration_no_options '>' optional_capture_list '(' expr ')' - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 896 + 288 expression_yield: "yield" expr_pipe . + + $default reduce using rule 288 (expression_yield) State 668 - 287 expression_yield_no_pipe: "yield" "<-" . expr - 290 expression_yield: "yield" "<-" . expr_pipe - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "$ <|" shift, and go to state 470 - "@ <|" shift, and go to state 471 - "@@ <|" shift, and go to state 472 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expr_call_pipe go to state 517 - expression_keyword go to state 520 - expr_pipe go to state 897 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_assign go to state 641 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 898 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 220 expr_call_pipe: expr . expr_full_block_assumed_piped + 285 expression_yield_no_pipe: "yield" expr . + 349 expr_assign: expr . + 350 | expr . '=' expr + 351 | expr . "<-" expr + 352 | expr . ":=" expr + 353 | expr . "&=" expr + 354 | expr . "|=" expr + 355 | expr . "^=" expr + 356 | expr . "&&=" expr + 357 | expr . "||=" expr + 358 | expr . "^^=" expr + 359 | expr . "+=" expr + 360 | expr . "-=" expr + 361 | expr . "*=" expr + 362 | expr . "/=" expr + 363 | expr . "%=" expr + 364 | expr . "<<=" expr + 365 | expr . ">>=" expr + 366 | expr . "<<<=" expr + 367 | expr . ">>>=" expr + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "+=" shift, and go to state 857 + "-=" shift, and go to state 858 + "/=" shift, and go to state 859 + "*=" shift, and go to state 860 + "%=" shift, and go to state 861 + "&=" shift, and go to state 862 + "|=" shift, and go to state 863 + "^=" shift, and go to state 864 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + "<<=" shift, and go to state 865 + ">>=" shift, and go to state 866 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "<-" shift, and go to state 867 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + ":=" shift, and go to state 755 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "<<<=" shift, and go to state 868 + ">>>=" shift, and go to state 869 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + "&&=" shift, and go to state 870 + "||=" shift, and go to state 871 + "^^=" shift, and go to state 872 + ".." shift, and go to state 766 + '=' shift, and go to state 873 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + '$' shift, and go to state 501 + '@' shift, and go to state 671 + + " <|" reduce using rule 349 (expr_assign) + $default reduce using rule 285 (expression_yield_no_pipe) + + block_or_lambda go to state 714 + expr_full_block_assumed_piped go to state 781 State 669 - 289 expression_yield: "yield" expr_pipe . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 450 | "++" expr . + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "->" shift, and go to state 748 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 289 (expression_yield) + $default reduce using rule 450 (expr) State 670 - 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 286 expression_yield_no_pipe: "yield" expr . - 350 expr_assign: expr . - 351 | expr . '=' expr - 352 | expr . "<-" expr - 353 | expr . ":=" expr - 354 | expr . "&=" expr - 355 | expr . "|=" expr - 356 | expr . "^=" expr - 357 | expr . "&&=" expr - 358 | expr . "||=" expr - 359 | expr . "^^=" expr - 360 | expr . "+=" expr - 361 | expr . "-=" expr - 362 | expr . "*=" expr - 363 | expr . "/=" expr - 364 | expr . "%=" expr - 365 | expr . "<<=" expr - 366 | expr . ">>=" expr - 367 | expr . "<<<=" expr - 368 | expr . ">>>=" expr - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "+=" shift, and go to state 859 - "-=" shift, and go to state 860 - "/=" shift, and go to state 861 - "*=" shift, and go to state 862 - "%=" shift, and go to state 863 - "&=" shift, and go to state 864 - "|=" shift, and go to state 865 - "^=" shift, and go to state 866 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - "<<=" shift, and go to state 867 - ">>=" shift, and go to state 868 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "<-" shift, and go to state 869 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - ":=" shift, and go to state 757 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "<<<=" shift, and go to state 870 - ">>>=" shift, and go to state 871 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - "&&=" shift, and go to state 872 - "||=" shift, and go to state 873 - "^^=" shift, and go to state 874 - ".." shift, and go to state 768 - '=' shift, and go to state 875 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - '$' shift, and go to state 503 - '@' shift, and go to state 673 - - " <|" reduce using rule 350 (expr_assign) - $default reduce using rule 286 (expression_yield_no_pipe) + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 451 | "--" expr . + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "->" shift, and go to state 748 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - block_or_lambda go to state 716 - expr_full_block_assumed_piped go to state 783 + $default reduce using rule 451 (expr) State 671 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 451 | "++" expr . - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "->" shift, and go to state 750 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 327 block_or_lambda: '@' . + 328 | '@' . '@' - $default reduce using rule 451 (expr) + '@' shift, and go to state 897 + + $default reduce using rule 327 (block_or_lambda) State 672 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 452 | "--" expr . - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "->" shift, and go to state 750 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 337 expr_block: expression_block . - $default reduce using rule 452 (expr) + $default reduce using rule 337 (expr_block) State 673 - 328 block_or_lambda: '@' . - 329 | '@' . '@' + 338 expr_block: block_or_lambda . optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block + + '[' shift, and go to state 15 - '@' shift, and go to state 899 + $default reduce using rule 119 (optional_annotation_list) - $default reduce using rule 328 (block_or_lambda) + optional_annotation_list go to state 898 State 674 - 338 expr_block: expression_block . + 262 expr_pipe: "$ <|" expr_block . - $default reduce using rule 338 (expr_block) + $default reduce using rule 262 (expr_pipe) State 675 - 339 expr_block: block_or_lambda . optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block - - '[' shift, and go to state 15 - - $default reduce using rule 119 (optional_annotation_list) + 260 expr_pipe: "@ <|" expr_block . - optional_annotation_list go to state 900 + $default reduce using rule 260 (expr_pipe) State 676 - 262 expr_pipe: "$ <|" expr_block . + 261 expr_pipe: "@@ <|" expr_block . - $default reduce using rule 262 (expr_pipe) + $default reduce using rule 261 (expr_pipe) State 677 - 260 expr_pipe: "@ <|" expr_block . - - $default reduce using rule 260 (expr_pipe) + 498 expr_mtag: "$$" '(' . expr ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 899 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 678 - 261 expr_pipe: "@@ <|" expr_block . - - $default reduce using rule 261 (expr_pipe) + 499 expr_mtag: "$i" '(' . expr ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 900 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 679 - 499 expr_mtag: "$$" '(' . expr ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 500 expr_mtag: "$v" '(' . expr ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 901 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 680 - 500 expr_mtag: "$i" '(' . expr ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 501 expr_mtag: "$b" '(' . expr ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 902 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 681 - 501 expr_mtag: "$v" '(' . expr ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 502 expr_mtag: "$a" '(' . expr ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 903 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 682 - 502 expr_mtag: "$b" '(' . expr ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 504 expr_mtag: "$c" '(' . expr ')' '(' ')' + 505 | "$c" '(' . expr ')' '(' expr_list ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 904 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 683 - 503 expr_mtag: "$a" '(' . expr ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 905 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 861 array_comprehension: "[[" "for" . variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' ']' + + "$i" shift, and go to state 616 + "name" shift, and go to state 617 + + variable_name_with_pos_list go to state 905 State 684 - 505 expr_mtag: "$c" '(' . expr ')' '(' ')' - 506 | "$c" '(' . expr ')' '(' expr_list ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 686 type_declaration_no_options: type_declaration_no_options . dim_list + 687 | type_declaration_no_options . '[' ']' + 695 | type_declaration_no_options . '-' '[' ']' + 696 | type_declaration_no_options . "explicit" + 697 | type_declaration_no_options . "const" + 698 | type_declaration_no_options . '-' "const" + 699 | type_declaration_no_options . '&' + 700 | type_declaration_no_options . '-' '&' + 701 | type_declaration_no_options . '#' + 702 | type_declaration_no_options . "implicit" + 703 | type_declaration_no_options . '-' '#' + 704 | type_declaration_no_options . "==" "const" + 705 | type_declaration_no_options . "==" '&' + 706 | type_declaration_no_options . '?' + 710 | type_declaration_no_options . "??" + 797 make_struct_decl: "[[" type_declaration_no_options . make_struct_dim optional_block optional_trailing_delim_sqr_sqr + 798 | "[[" type_declaration_no_options . optional_block optional_trailing_delim_sqr_sqr + 799 | "[[" type_declaration_no_options . '(' ')' optional_block optional_trailing_delim_sqr_sqr + 800 | "[[" type_declaration_no_options . '(' ')' make_struct_dim optional_block optional_trailing_delim_sqr_sqr + 827 make_dim_decl: "[[" type_declaration_no_options . make_dim optional_trailing_semicolon_sqr_sqr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "const" shift, and go to state 404 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "where" shift, and go to state 906 + "reinterpret" shift, and go to state 455 + "implicit" shift, and go to state 405 + "explicit" shift, and go to state 406 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "==" shift, and go to state 407 + "??" shift, and go to state 408 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "$f" shift, and go to state 907 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 908 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '?' shift, and go to state 409 + '&' shift, and go to state 410 + '-' shift, and go to state 909 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 906 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 910 + '(' shift, and go to state 911 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + '#' shift, and go to state 413 + + $default reduce using rule 781 (optional_block) + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 912 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + dim_list go to state 414 + make_decl go to state 548 + make_struct_fields go to state 913 + make_struct_dim go to state 914 + optional_block go to state 915 + make_struct_decl go to state 549 + make_tuple go to state 916 + make_tuple_call go to state 550 + make_dim go to state 917 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 685 - 862 array_comprehension: "[[" "for" . variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' ']' + 862 array_comprehension: "[{" "for" . variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where "end of code block" ']' - "$i" shift, and go to state 618 - "name" shift, and go to state 619 + "$i" shift, and go to state 616 + "name" shift, and go to state 617 - variable_name_with_pos_list go to state 907 + variable_name_with_pos_list go to state 918 State 686 - 687 type_declaration_no_options: type_declaration_no_options . dim_list - 688 | type_declaration_no_options . '[' ']' - 696 | type_declaration_no_options . '-' '[' ']' - 697 | type_declaration_no_options . "explicit" - 698 | type_declaration_no_options . "const" - 699 | type_declaration_no_options . '-' "const" - 700 | type_declaration_no_options . '&' - 701 | type_declaration_no_options . '-' '&' - 702 | type_declaration_no_options . '#' - 703 | type_declaration_no_options . "implicit" - 704 | type_declaration_no_options . '-' '#' - 705 | type_declaration_no_options . "==" "const" - 706 | type_declaration_no_options . "==" '&' - 707 | type_declaration_no_options . '?' - 711 | type_declaration_no_options . "??" - 798 make_struct_decl: "[[" type_declaration_no_options . make_struct_dim optional_block optional_trailing_delim_sqr_sqr - 799 | "[[" type_declaration_no_options . optional_block optional_trailing_delim_sqr_sqr - 800 | "[[" type_declaration_no_options . '(' ')' optional_block optional_trailing_delim_sqr_sqr - 801 | "[[" type_declaration_no_options . '(' ')' make_struct_dim optional_block optional_trailing_delim_sqr_sqr - 828 make_dim_decl: "[[" type_declaration_no_options . make_dim optional_trailing_semicolon_sqr_sqr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "const" shift, and go to state 406 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "where" shift, and go to state 908 - "reinterpret" shift, and go to state 457 - "implicit" shift, and go to state 407 - "explicit" shift, and go to state 408 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "==" shift, and go to state 409 - "??" shift, and go to state 410 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "$f" shift, and go to state 909 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 910 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '?' shift, and go to state 411 - '&' shift, and go to state 412 - '-' shift, and go to state 911 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 686 type_declaration_no_options: type_declaration_no_options . dim_list + 687 | type_declaration_no_options . '[' ']' + 695 | type_declaration_no_options . '-' '[' ']' + 696 | type_declaration_no_options . "explicit" + 697 | type_declaration_no_options . "const" + 698 | type_declaration_no_options . '-' "const" + 699 | type_declaration_no_options . '&' + 700 | type_declaration_no_options . '-' '&' + 701 | type_declaration_no_options . '#' + 702 | type_declaration_no_options . "implicit" + 703 | type_declaration_no_options . '-' '#' + 704 | type_declaration_no_options . "==" "const" + 705 | type_declaration_no_options . "==" '&' + 706 | type_declaration_no_options . '?' + 710 | type_declaration_no_options . "??" + 801 make_struct_decl: "[{" type_declaration_no_options . make_struct_dim optional_block optional_trailing_delim_cur_sqr + 802 | "[{" type_declaration_no_options . '(' ')' make_struct_dim optional_block optional_trailing_delim_cur_sqr + 828 make_dim_decl: "[{" type_declaration_no_options . make_dim optional_trailing_semicolon_cur_sqr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "const" shift, and go to state 404 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "implicit" shift, and go to state 405 + "explicit" shift, and go to state 406 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "==" shift, and go to state 407 + "??" shift, and go to state 408 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "$f" shift, and go to state 907 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 908 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '?' shift, and go to state 409 + '&' shift, and go to state 410 + '-' shift, and go to state 909 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 912 - '(' shift, and go to state 913 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - '#' shift, and go to state 415 - - $default reduce using rule 782 (optional_block) - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 914 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - dim_list go to state 416 - make_decl go to state 550 - make_struct_fields go to state 915 - make_struct_dim go to state 916 - optional_block go to state 917 - make_struct_decl go to state 551 - make_tuple go to state 918 - make_tuple_call go to state 552 - make_dim go to state 919 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 910 + '(' shift, and go to state 919 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + '#' shift, and go to state 413 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 912 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + dim_list go to state 414 + make_decl go to state 548 + make_struct_fields go to state 913 + make_struct_dim go to state 920 + make_struct_decl go to state 549 + make_tuple go to state 916 + make_tuple_call go to state 550 + make_dim go to state 921 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 687 - 863 array_comprehension: "[{" "for" . variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where "end of code block" ']' + 864 array_comprehension: "{{" "for" . variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" "end of code block" - "$i" shift, and go to state 618 - "name" shift, and go to state 619 + "$i" shift, and go to state 616 + "name" shift, and go to state 617 - variable_name_with_pos_list go to state 920 + variable_name_with_pos_list go to state 922 State 688 - 687 type_declaration_no_options: type_declaration_no_options . dim_list - 688 | type_declaration_no_options . '[' ']' - 696 | type_declaration_no_options . '-' '[' ']' - 697 | type_declaration_no_options . "explicit" - 698 | type_declaration_no_options . "const" - 699 | type_declaration_no_options . '-' "const" - 700 | type_declaration_no_options . '&' - 701 | type_declaration_no_options . '-' '&' - 702 | type_declaration_no_options . '#' - 703 | type_declaration_no_options . "implicit" - 704 | type_declaration_no_options . '-' '#' - 705 | type_declaration_no_options . "==" "const" - 706 | type_declaration_no_options . "==" '&' - 707 | type_declaration_no_options . '?' - 711 | type_declaration_no_options . "??" - 802 make_struct_decl: "[{" type_declaration_no_options . make_struct_dim optional_block optional_trailing_delim_cur_sqr - 803 | "[{" type_declaration_no_options . '(' ')' make_struct_dim optional_block optional_trailing_delim_cur_sqr - 829 make_dim_decl: "[{" type_declaration_no_options . make_dim optional_trailing_semicolon_cur_sqr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "const" shift, and go to state 406 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "implicit" shift, and go to state 407 - "explicit" shift, and go to state 408 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "==" shift, and go to state 409 - "??" shift, and go to state 410 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "$f" shift, and go to state 909 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 910 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '?' shift, and go to state 411 - '&' shift, and go to state 412 - '-' shift, and go to state 911 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 912 - '(' shift, and go to state 921 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - '#' shift, and go to state 415 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 914 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - dim_list go to state 416 - make_decl go to state 550 - make_struct_fields go to state 915 - make_struct_dim go to state 922 - make_struct_decl go to state 551 - make_tuple go to state 918 - make_tuple_call go to state 552 - make_dim go to state 923 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 818 make_map_tuple: expr . "=>" expr + 819 | expr . + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "=>" shift, and go to state 923 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + $default reduce using rule 819 (make_map_tuple) -State 689 - 865 array_comprehension: "{{" "for" . variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" "end of code block" +State 689 - "$i" shift, and go to state 618 - "name" shift, and go to state 619 + 846 make_table: make_map_tuple . - variable_name_with_pos_list go to state 924 + $default reduce using rule 846 (make_table) State 690 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 819 make_map_tuple: expr . "=>" expr - 820 | expr . - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "=>" shift, and go to state 925 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - - $default reduce using rule 820 (make_map_tuple) + 847 make_table: make_table . "end of expression" make_map_tuple + 851 make_table_decl: "{{" make_table . optional_trailing_semicolon_cur_cur + "end of code block" shift, and go to state 924 + "end of expression" shift, and go to state 925 + ";}}" shift, and go to state 926 -State 691 + optional_trailing_semicolon_cur_cur go to state 927 - 847 make_table: make_map_tuple . - $default reduce using rule 847 (make_table) +State 691 + 255 expression_keyword: "keyword" '<' . $@7 type_declaration_no_options_list '>' $@8 expr -State 692 + $default reduce using rule 253 ($@7) - 848 make_table: make_table . "end of expression" make_map_tuple - 852 make_table_decl: "{{" make_table . optional_trailing_semicolon_cur_cur + $@7 go to state 928 - "end of code block" shift, and go to state 926 - "end of expression" shift, and go to state 927 - ";}}" shift, and go to state 928 - optional_trailing_semicolon_cur_cur go to state 929 +State 692 + + 246 expr_keyword: "keyword" expr . expression_block + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + "begin of code block" shift, and go to state 284 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + + expression_block go to state 929 State 693 - 255 expression_keyword: "keyword" '<' . $@7 type_declaration_no_options_list '>' $@8 expr + 258 expression_keyword: "type function" '<' . $@9 type_declaration_no_options_list '>' $@10 optional_expr_list_in_braces - $default reduce using rule 253 ($@7) + $default reduce using rule 256 ($@9) - $@7 go to state 930 + $@9 go to state 930 State 694 - 246 expr_keyword: "keyword" expr . expression_block - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - "begin of code block" shift, and go to state 286 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - - expression_block go to state 931 + 29 string_builder_body: string_builder_body . character_sequence + 30 | string_builder_body . "{" expr "}" + 31 string_builder: "start of the string" string_builder_body . "end of the string" + + STRING_CHARACTER shift, and go to state 160 + STRING_CHARACTER_ESC shift, and go to state 161 + "end of the string" shift, and go to state 931 + "{" shift, and go to state 932 + + character_sequence go to state 933 State 695 - 258 expression_keyword: "type function" '<' . $@9 type_declaration_no_options_list '>' $@10 optional_expr_list_in_braces + 863 array_comprehension: "begin of code block" "for" . variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" - $default reduce using rule 256 ($@9) + "$i" shift, and go to state 616 + "name" shift, and go to state 617 - $@9 go to state 932 + variable_name_with_pos_list go to state 934 State 696 - 29 string_builder_body: string_builder_body . character_sequence - 30 | string_builder_body . "{" expr "}" - 31 string_builder: "start of the string" string_builder_body . "end of the string" - - STRING_CHARACTER shift, and go to state 162 - STRING_CHARACTER_ESC shift, and go to state 163 - "end of the string" shift, and go to state 933 - "{" shift, and go to state 934 + 848 expr_map_tuple_list: make_map_tuple . - character_sequence go to state 935 + $default reduce using rule 848 (expr_map_tuple_list) State 697 - 864 array_comprehension: "begin of code block" "for" . variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" + 849 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple + 850 make_table_decl: "begin of code block" expr_map_tuple_list . optional_comma "end of code block" + + ',' shift, and go to state 935 - "$i" shift, and go to state 618 - "name" shift, and go to state 619 + $default reduce using rule 857 (optional_comma) - variable_name_with_pos_list go to state 936 + optional_comma go to state 936 State 698 - 849 expr_map_tuple_list: make_map_tuple . + 219 expression_block: "begin of code block" expressions "end of code block" "finally" . "begin of code block" expressions "end of code block" - $default reduce using rule 849 (expr_map_tuple_list) + "begin of code block" shift, and go to state 937 State 699 - 850 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple - 851 make_table_decl: "begin of code block" expr_map_tuple_list . optional_comma "end of code block" - - ',' shift, and go to state 937 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 427 expr: '-' expr . + 428 | expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "->" shift, and go to state 748 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 858 (optional_comma) - - optional_comma go to state 938 + $default reduce using rule 427 (expr) State 700 - 219 expression_block: "begin of code block" expressions "end of code block" "finally" . "begin of code block" expressions "end of code block" + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 426 expr: '+' expr . + 428 | expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "->" shift, and go to state 748 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - "begin of code block" shift, and go to state 939 + $default reduce using rule 426 (expr) State 701 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 428 expr: '-' expr . - 429 | expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "->" shift, and go to state 750 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 463 | '*' expr . + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 428 (expr) + $default reduce using rule 463 (expr) State 702 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 427 expr: '+' expr . - 429 | expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "->" shift, and go to state 750 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 425 expr: '~' expr . + 428 | expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "->" shift, and go to state 748 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 427 (expr) + $default reduce using rule 425 (expr) State 703 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 464 | '*' expr . - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 424 expr: '!' expr . + 428 | expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "->" shift, and go to state 748 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 464 (expr) + $default reduce using rule 424 (expr) State 704 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 426 expr: '~' expr . - 429 | expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "->" shift, and go to state 750 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 859 array_comprehension: '[' "for" . variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - $default reduce using rule 426 (expr) + "$i" shift, and go to state 616 + "name" shift, and go to state 617 + + variable_name_with_pos_list go to state 938 State 705 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 425 expr: '!' expr . - 429 | expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "->" shift, and go to state 750 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 860 array_comprehension: '[' "iterator" . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - $default reduce using rule 425 (expr) + "for" shift, and go to state 939 State 706 - 860 array_comprehension: '[' "for" . variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 322 expr_list: expr_list . ',' expr + 826 make_dim_decl: '[' expr_list . optional_comma ']' - "$i" shift, and go to state 618 - "name" shift, and go to state 619 + ',' shift, and go to state 940 - variable_name_with_pos_list go to state 940 + $default reduce using rule 857 (optional_comma) + optional_comma go to state 941 -State 707 - 861 array_comprehension: '[' "iterator" . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' +State 707 - "for" shift, and go to state 941 + 321 expr_list: expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + + $default reduce using rule 321 (expr_list) State 708 - 323 expr_list: expr_list . ',' expr - 827 make_dim_decl: '[' expr_list . optional_comma ']' + 322 expr_list: expr_list . ',' expr + 454 expr: '(' expr_list . optional_comma ')' - ',' shift, and go to state 942 + ',' shift, and go to state 940 - $default reduce using rule 858 (optional_comma) + $default reduce using rule 857 (optional_comma) - optional_comma go to state 943 + optional_comma go to state 942 State 709 - 322 expr_list: expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - - $default reduce using rule 322 (expr_list) - - -State 710 - - 323 expr_list: expr_list . ',' expr - 455 expr: '(' expr_list . optional_comma ')' - - ',' shift, and go to state 942 - - $default reduce using rule 858 (optional_comma) - - optional_comma go to state 944 + 328 block_or_lambda: '@' '@' . + 395 func_addr_expr: '@' '@' . func_addr_name + 398 | '@' '@' . '<' $@22 type_declaration_no_options '>' $@23 func_addr_name + 401 | '@' '@' . '<' $@24 optional_function_argument_list optional_function_type '>' $@25 func_addr_name + 513 expr_mtag: '@' '@' . "$c" '(' expr ')' + "$i" shift, and go to state 943 + "$c" shift, and go to state 944 + "name" shift, and go to state 58 + '<' shift, and go to state 945 -State 711 - - 329 block_or_lambda: '@' '@' . - 396 func_addr_expr: '@' '@' . func_addr_name - 399 | '@' '@' . '<' $@22 type_declaration_no_options '>' $@23 func_addr_name - 402 | '@' '@' . '<' $@24 optional_function_argument_list optional_function_type '>' $@25 func_addr_name - 514 expr_mtag: '@' '@' . "$c" '(' expr ')' - - "::" shift, and go to state 58 - "$i" shift, and go to state 945 - "$c" shift, and go to state 946 - "name" shift, and go to state 59 - '<' shift, and go to state 947 - - $default reduce using rule 329 (block_or_lambda) + $default reduce using rule 328 (block_or_lambda) - name_in_namespace go to state 948 - func_addr_name go to state 949 + name_in_namespace go to state 946 + func_addr_name go to state 947 -State 712 +State 710 240 expression_any: expression_label "end of expression" . $default reduce using rule 240 (expression_any) -State 713 +State 711 241 expression_any: expression_goto "end of expression" . $default reduce using rule 241 (expression_any) -State 714 +State 712 72 expression_if_then_else: if_or_static_if expr . expression_block expression_else - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - "begin of code block" shift, and go to state 286 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - - expression_block go to state 950 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + "begin of code block" shift, and go to state 284 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + + expression_block go to state 948 -State 715 +State 713 74 expression_if_then_else: expression_if_one_liner "if" . $@3 expr expression_else_one_liner "end of expression" $default reduce using rule 73 ($@3) - $@3 go to state 951 + $@3 go to state 949 -State 716 +State 714 - 342 expr_full_block_assumed_piped: block_or_lambda . $@21 optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block + 341 expr_full_block_assumed_piped: block_or_lambda . $@21 optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block - $default reduce using rule 341 ($@21) + $default reduce using rule 340 ($@21) - $@21 go to state 952 + $@21 go to state 950 -State 717 +State 715 221 expr_call_pipe: expression_keyword expr_full_block_assumed_piped . $default reduce using rule 221 (expr_call_pipe) -State 718 +State 716 - 496 expr: name_in_namespace "name" . + 495 expr: name_in_namespace "name" . - $default reduce using rule 496 (expr) + $default reduce using rule 495 (expr) -State 719 +State 717 - 390 expr_named_call: name_in_namespace '(' . '[' make_struct_fields ']' ')' - 391 | name_in_namespace '(' . expr_list ',' '[' make_struct_fields ']' ')' - 410 expr_call: name_in_namespace '(' . ')' - 411 | name_in_namespace '(' . make_struct_single ')' - 412 | name_in_namespace '(' . expr_list ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "$f" shift, and go to state 909 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 910 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 389 expr_named_call: name_in_namespace '(' . '[' make_struct_fields ']' ')' + 390 | name_in_namespace '(' . expr_list ',' '[' make_struct_fields ']' ')' + 409 expr_call: name_in_namespace '(' . ')' + 410 | name_in_namespace '(' . make_struct_single ')' + 411 | name_in_namespace '(' . expr_list ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "$f" shift, and go to state 907 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 908 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 953 - '(' shift, and go to state 502 - ')' shift, and go to state 954 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - expr_list go to state 955 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 709 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_fields go to state 956 - make_struct_single go to state 957 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 951 + '(' shift, and go to state 500 + ')' shift, and go to state 952 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + expr_list go to state 953 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 707 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_fields go to state 954 + make_struct_single go to state 955 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 -State 720 +State 718 227 expression_any: expression_delete "end of expression" . $default reduce using rule 227 (expression_any) -State 721 +State 719 234 expression_any: expression_break "end of expression" . $default reduce using rule 234 (expression_any) -State 722 +State 720 235 expression_any: expression_continue "end of expression" . $default reduce using rule 235 (expression_any) -State 723 +State 721 - 283 expression_return: expression_return_no_pipe "end of expression" . + 282 expression_return: expression_return_no_pipe "end of expression" . - $default reduce using rule 283 (expression_return) + $default reduce using rule 282 (expression_return) -State 724 +State 722 - 288 expression_yield: expression_yield_no_pipe "end of expression" . + 287 expression_yield: expression_yield_no_pipe "end of expression" . - $default reduce using rule 288 (expression_yield) + $default reduce using rule 287 (expression_yield) -State 725 +State 723 - 297 optional_in_scope: "inscope" . + 296 optional_in_scope: "inscope" . - $default reduce using rule 297 (optional_in_scope) + $default reduce using rule 296 (optional_in_scope) -State 726 +State 724 - 305 expression_let: kwd_let optional_in_scope . let_variable_declaration - 306 | kwd_let optional_in_scope . tuple_expansion_variable_declaration + 304 expression_let: kwd_let optional_in_scope . let_variable_declaration + 305 | kwd_let optional_in_scope . tuple_expansion_variable_declaration - "$i" shift, and go to state 305 - "[[" shift, and go to state 958 - "name" shift, and go to state 306 - '(' shift, and go to state 959 + "$i" shift, and go to state 303 + "[[" shift, and go to state 956 + "name" shift, and go to state 304 + '(' shift, and go to state 957 - tuple_expansion_variable_declaration go to state 960 - let_variable_name_with_pos_list go to state 307 - let_variable_declaration go to state 961 + tuple_expansion_variable_declaration go to state 958 + let_variable_name_with_pos_list go to state 305 + let_variable_declaration go to state 959 -State 727 +State 725 - 340 expr_full_block: block_or_lambda optional_annotation_list . optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block + 339 expr_full_block: block_or_lambda optional_annotation_list . optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block - "[[" shift, and go to state 962 + "[[" shift, and go to state 960 - $default reduce using rule 336 (optional_capture_list) + $default reduce using rule 335 (optional_capture_list) - optional_capture_list go to state 963 + optional_capture_list go to state 961 -State 728 +State 726 259 expr_pipe: expr_assign " <|" . expr_block - "begin of code block" shift, and go to state 286 - '$' shift, and go to state 503 - '@' shift, and go to state 673 + "begin of code block" shift, and go to state 284 + '$' shift, and go to state 501 + '@' shift, and go to state 671 - expression_block go to state 674 - block_or_lambda go to state 675 - expr_block go to state 964 + expression_block go to state 672 + block_or_lambda go to state 673 + expr_block go to state 962 -State 729 +State 727 226 expression_any: expr_assign "end of expression" . $default reduce using rule 226 (expression_any) -State 730 +State 728 - 473 expr: expr "is" . "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr "is" . basic_type_declaration - 475 | expr "is" . "name" - 513 expr_mtag: expr "is" . "$f" '(' expr ')' - - "type" shift, and go to state 965 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "$f" shift, and go to state 966 - "name" shift, and go to state 967 - - basic_type_declaration go to state 968 + 472 expr: expr "is" . "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr "is" . basic_type_declaration + 474 | expr "is" . "name" + 512 expr_mtag: expr "is" . "$f" '(' expr ')' + + "type" shift, and go to state 963 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "$f" shift, and go to state 964 + "name" shift, and go to state 965 + + basic_type_declaration go to state 966 -State 731 +State 729 - 476 expr: expr "as" . "name" - 479 | expr "as" . "type" '<' $@30 type_declaration '>' $@31 - 480 | expr "as" . basic_type_declaration - 511 expr_mtag: expr "as" . "$f" '(' expr ')' - - "type" shift, and go to state 969 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "$f" shift, and go to state 970 - "name" shift, and go to state 971 - - basic_type_declaration go to state 972 + 475 expr: expr "as" . "name" + 478 | expr "as" . "type" '<' $@30 type_declaration '>' $@31 + 479 | expr "as" . basic_type_declaration + 510 expr_mtag: expr "as" . "$f" '(' expr ')' + + "type" shift, and go to state 967 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "$f" shift, and go to state 968 + "name" shift, and go to state 969 + + basic_type_declaration go to state 970 -State 732 +State 730 + + 359 expr_assign: expr "+=" . expr + 380 expr_assign_pipe: expr "+=" . expr_assign_pipe_right + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$ <|" shift, and go to state 971 + "@ <|" shift, and go to state 972 + "@@ <|" shift, and go to state 973 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expr_call_pipe go to state 974 + expression_keyword go to state 518 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_assign_pipe_right go to state 975 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 976 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 + + +State 731 - 360 expr_assign: expr "+=" . expr - 381 expr_assign_pipe: expr "+=" . expr_assign_pipe_right - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "$ <|" shift, and go to state 973 - "@ <|" shift, and go to state 974 - "@@ <|" shift, and go to state 975 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 360 expr_assign: expr "-=" . expr + 381 expr_assign_pipe: expr "-=" . expr_assign_pipe_right + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$ <|" shift, and go to state 971 + "@ <|" shift, and go to state 972 + "@@ <|" shift, and go to state 973 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expr_call_pipe go to state 976 - expression_keyword go to state 520 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expr_call_pipe go to state 974 + expression_keyword go to state 518 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 expr_assign_pipe_right go to state 977 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 978 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 -State 733 +State 732 - 361 expr_assign: expr "-=" . expr - 382 expr_assign_pipe: expr "-=" . expr_assign_pipe_right - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "$ <|" shift, and go to state 973 - "@ <|" shift, and go to state 974 - "@@ <|" shift, and go to state 975 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 362 expr_assign: expr "/=" . expr + 383 expr_assign_pipe: expr "/=" . expr_assign_pipe_right + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$ <|" shift, and go to state 971 + "@ <|" shift, and go to state 972 + "@@ <|" shift, and go to state 973 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expr_call_pipe go to state 976 - expression_keyword go to state 520 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expr_call_pipe go to state 974 + expression_keyword go to state 518 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 expr_assign_pipe_right go to state 979 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 980 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 -State 734 +State 733 - 363 expr_assign: expr "/=" . expr - 384 expr_assign_pipe: expr "/=" . expr_assign_pipe_right - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "$ <|" shift, and go to state 973 - "@ <|" shift, and go to state 974 - "@@ <|" shift, and go to state 975 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 361 expr_assign: expr "*=" . expr + 382 expr_assign_pipe: expr "*=" . expr_assign_pipe_right + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$ <|" shift, and go to state 971 + "@ <|" shift, and go to state 972 + "@@ <|" shift, and go to state 973 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expr_call_pipe go to state 976 - expression_keyword go to state 520 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expr_call_pipe go to state 974 + expression_keyword go to state 518 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 expr_assign_pipe_right go to state 981 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 982 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 -State 735 +State 734 - 362 expr_assign: expr "*=" . expr - 383 expr_assign_pipe: expr "*=" . expr_assign_pipe_right - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "$ <|" shift, and go to state 973 - "@ <|" shift, and go to state 974 - "@@ <|" shift, and go to state 975 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 363 expr_assign: expr "%=" . expr + 384 expr_assign_pipe: expr "%=" . expr_assign_pipe_right + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$ <|" shift, and go to state 971 + "@ <|" shift, and go to state 972 + "@@ <|" shift, and go to state 973 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expr_call_pipe go to state 976 - expression_keyword go to state 520 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expr_call_pipe go to state 974 + expression_keyword go to state 518 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 expr_assign_pipe_right go to state 983 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 984 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 -State 736 +State 735 - 364 expr_assign: expr "%=" . expr - 385 expr_assign_pipe: expr "%=" . expr_assign_pipe_right - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "$ <|" shift, and go to state 973 - "@ <|" shift, and go to state 974 - "@@ <|" shift, and go to state 975 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 353 expr_assign: expr "&=" . expr + 374 expr_assign_pipe: expr "&=" . expr_assign_pipe_right + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$ <|" shift, and go to state 971 + "@ <|" shift, and go to state 972 + "@@ <|" shift, and go to state 973 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expr_call_pipe go to state 976 - expression_keyword go to state 520 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expr_call_pipe go to state 974 + expression_keyword go to state 518 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 expr_assign_pipe_right go to state 985 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 986 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 -State 737 +State 736 - 354 expr_assign: expr "&=" . expr - 375 expr_assign_pipe: expr "&=" . expr_assign_pipe_right - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "$ <|" shift, and go to state 973 - "@ <|" shift, and go to state 974 - "@@ <|" shift, and go to state 975 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 354 expr_assign: expr "|=" . expr + 375 expr_assign_pipe: expr "|=" . expr_assign_pipe_right + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$ <|" shift, and go to state 971 + "@ <|" shift, and go to state 972 + "@@ <|" shift, and go to state 973 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expr_call_pipe go to state 976 - expression_keyword go to state 520 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expr_call_pipe go to state 974 + expression_keyword go to state 518 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 expr_assign_pipe_right go to state 987 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 988 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 -State 738 +State 737 - 355 expr_assign: expr "|=" . expr - 376 expr_assign_pipe: expr "|=" . expr_assign_pipe_right - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "$ <|" shift, and go to state 973 - "@ <|" shift, and go to state 974 - "@@ <|" shift, and go to state 975 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 355 expr_assign: expr "^=" . expr + 376 expr_assign_pipe: expr "^=" . expr_assign_pipe_right + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$ <|" shift, and go to state 971 + "@ <|" shift, and go to state 972 + "@@ <|" shift, and go to state 973 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expr_call_pipe go to state 976 - expression_keyword go to state 520 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expr_call_pipe go to state 974 + expression_keyword go to state 518 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 expr_assign_pipe_right go to state 989 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 990 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 + + +State 738 + + 428 expr: expr "<<" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 991 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 739 - 356 expr_assign: expr "^=" . expr - 377 expr_assign_pipe: expr "^=" . expr_assign_pipe_right - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "$ <|" shift, and go to state 973 - "@ <|" shift, and go to state 974 - "@@ <|" shift, and go to state 975 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 429 expr: expr ">>" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expr_call_pipe go to state 976 - expression_keyword go to state 520 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_assign_pipe_right go to state 991 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 992 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 740 - 429 expr: expr "<<" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 993 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 452 expr: expr "++" . + + $default reduce using rule 452 (expr) State 741 - 430 expr: expr ">>" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 994 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 453 expr: expr "--" . + $default reduce using rule 453 (expr) -State 742 - 453 expr: expr "++" . +State 742 - $default reduce using rule 453 (expr) + 441 expr: expr "<=" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 993 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 743 - 454 expr: expr "--" . - - $default reduce using rule 454 (expr) + 364 expr_assign: expr "<<=" . expr + 385 expr_assign_pipe: expr "<<=" . expr_assign_pipe_right + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$ <|" shift, and go to state 971 + "@ <|" shift, and go to state 972 + "@@ <|" shift, and go to state 973 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expr_call_pipe go to state 974 + expression_keyword go to state 518 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_assign_pipe_right go to state 994 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 995 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 744 - 442 expr: expr "<=" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 365 expr_assign: expr ">>=" . expr + 386 expr_assign_pipe: expr ">>=" . expr_assign_pipe_right + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$ <|" shift, and go to state 971 + "@ <|" shift, and go to state 972 + "@@ <|" shift, and go to state 973 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 995 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expr_call_pipe go to state 974 + expression_keyword go to state 518 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_assign_pipe_right go to state 996 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 997 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 745 - 365 expr_assign: expr "<<=" . expr - 386 expr_assign_pipe: expr "<<=" . expr_assign_pipe_right - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "$ <|" shift, and go to state 973 - "@ <|" shift, and go to state 974 - "@@ <|" shift, and go to state 975 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 442 expr: expr ">=" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expr_call_pipe go to state 976 - expression_keyword go to state 520 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_assign_pipe_right go to state 996 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 997 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 998 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 746 - 366 expr_assign: expr ">>=" . expr - 387 expr_assign_pipe: expr ">>=" . expr_assign_pipe_right - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "$ <|" shift, and go to state 973 - "@ <|" shift, and go to state 974 - "@@ <|" shift, and go to state 975 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 439 expr: expr "==" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expr_call_pipe go to state 976 - expression_keyword go to state 520 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_assign_pipe_right go to state 998 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 999 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 747 - 443 expr: expr ">=" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 440 expr: expr "!=" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1000 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 748 - 440 expr: expr "==" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1001 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 391 expr_method_call: expr "->" . "name" '(' ')' + 392 | expr "->" . "name" '(' expr_list ')' + + "name" shift, and go to state 1001 State 749 - 441 expr: expr "!=" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 351 expr_assign: expr "<-" . expr + 373 expr_assign_pipe: expr "<-" . expr_assign_pipe_right + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$ <|" shift, and go to state 971 + "@ <|" shift, and go to state 972 + "@@ <|" shift, and go to state 973 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1002 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expr_call_pipe go to state 974 + expression_keyword go to state 518 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_assign_pipe_right go to state 1002 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1003 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 750 - 392 expr_method_call: expr "->" . "name" '(' ')' - 393 | expr "->" . "name" '(' expr_list ')' - - "name" shift, and go to state 1003 + 468 expr: expr "??" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1004 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 751 - 352 expr_assign: expr "<-" . expr - 374 expr_assign_pipe: expr "<-" . expr_assign_pipe_right - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "$ <|" shift, and go to state 973 - "@ <|" shift, and go to state 974 - "@@ <|" shift, and go to state 975 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expr_call_pipe go to state 976 - expression_keyword go to state 520 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_assign_pipe_right go to state 1004 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1005 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 459 expr: expr "?." . "name" + 507 expr_mtag: expr "?." . "$f" '(' expr ')' + + "$f" shift, and go to state 1005 + "name" shift, and go to state 1006 State 752 - 469 expr: expr "??" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 457 expr: expr "?[" . expr ']' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1006 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1007 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 753 - 460 expr: expr "?." . "name" - 508 expr_mtag: expr "?." . "$f" '(' expr ')' - - "$f" shift, and go to state 1007 - "name" shift, and go to state 1008 + 492 expr: expr "<|" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1008 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 754 - 458 expr: expr "?[" . expr ']' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 493 expr: expr "|>" . expr + 494 | expr "|>" . basic_type_declaration + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1009 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 1010 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 755 - 493 expr: expr "<|" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 352 expr_assign: expr ":=" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1010 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1011 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 756 - 494 expr: expr "|>" . expr - 495 | expr "|>" . basic_type_declaration - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 430 expr: expr "<<<" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1011 - expr_mtag go to state 548 - basic_type_declaration go to state 1012 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1012 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 757 - 353 expr_assign: expr ":=" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 431 expr: expr ">>>" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1013 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 758 - 431 expr: expr "<<<" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 366 expr_assign: expr "<<<=" . expr + 387 expr_assign_pipe: expr "<<<=" . expr_assign_pipe_right + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$ <|" shift, and go to state 971 + "@ <|" shift, and go to state 972 + "@@ <|" shift, and go to state 973 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1014 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expr_call_pipe go to state 974 + expression_keyword go to state 518 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_assign_pipe_right go to state 1014 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1015 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 759 - 432 expr: expr ">>>" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 367 expr_assign: expr ">>>=" . expr + 388 expr_assign_pipe: expr ">>>=" . expr_assign_pipe_right + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$ <|" shift, and go to state 971 + "@ <|" shift, and go to state 972 + "@@ <|" shift, and go to state 973 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1015 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expr_call_pipe go to state 974 + expression_keyword go to state 518 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_assign_pipe_right go to state 1016 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1017 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 760 - 367 expr_assign: expr "<<<=" . expr - 388 expr_assign_pipe: expr "<<<=" . expr_assign_pipe_right - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "$ <|" shift, and go to state 973 - "@ <|" shift, and go to state 974 - "@@ <|" shift, and go to state 975 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 446 expr: expr "&&" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expr_call_pipe go to state 976 - expression_keyword go to state 520 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_assign_pipe_right go to state 1016 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1017 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1018 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 761 - 368 expr_assign: expr ">>>=" . expr - 389 expr_assign_pipe: expr ">>>=" . expr_assign_pipe_right - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "$ <|" shift, and go to state 973 - "@ <|" shift, and go to state 974 - "@@ <|" shift, and go to state 975 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 447 expr: expr "||" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expr_call_pipe go to state 976 - expression_keyword go to state 520 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_assign_pipe_right go to state 1018 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1019 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 762 - 447 expr: expr "&&" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 448 expr: expr "^^" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1020 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 763 - 448 expr: expr "||" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 356 expr_assign: expr "&&=" . expr + 377 expr_assign_pipe: expr "&&=" . expr_assign_pipe_right + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$ <|" shift, and go to state 971 + "@ <|" shift, and go to state 972 + "@@ <|" shift, and go to state 973 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1021 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expr_call_pipe go to state 974 + expression_keyword go to state 518 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_assign_pipe_right go to state 1021 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1022 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 764 - 449 expr: expr "^^" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 357 expr_assign: expr "||=" . expr + 378 expr_assign_pipe: expr "||=" . expr_assign_pipe_right + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$ <|" shift, and go to state 971 + "@ <|" shift, and go to state 972 + "@@ <|" shift, and go to state 973 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1022 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expr_call_pipe go to state 974 + expression_keyword go to state 518 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_assign_pipe_right go to state 1023 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1024 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 765 - 357 expr_assign: expr "&&=" . expr - 378 expr_assign_pipe: expr "&&=" . expr_assign_pipe_right - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "$ <|" shift, and go to state 973 - "@ <|" shift, and go to state 974 - "@@ <|" shift, and go to state 975 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 358 expr_assign: expr "^^=" . expr + 379 expr_assign_pipe: expr "^^=" . expr_assign_pipe_right + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$ <|" shift, and go to state 971 + "@ <|" shift, and go to state 972 + "@@ <|" shift, and go to state 973 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expr_call_pipe go to state 976 - expression_keyword go to state 520 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_assign_pipe_right go to state 1023 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1024 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expr_call_pipe go to state 974 + expression_keyword go to state 518 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_assign_pipe_right go to state 1025 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1026 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 766 - 358 expr_assign: expr "||=" . expr - 379 expr_assign_pipe: expr "||=" . expr_assign_pipe_right - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "$ <|" shift, and go to state 973 - "@ <|" shift, and go to state 974 - "@@ <|" shift, and go to state 975 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 449 expr: expr ".." . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expr_call_pipe go to state 976 - expression_keyword go to state 520 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_assign_pipe_right go to state 1025 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1026 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1027 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 767 - 359 expr_assign: expr "^^=" . expr - 380 expr_assign_pipe: expr "^^=" . expr_assign_pipe_right - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "$ <|" shift, and go to state 973 - "@ <|" shift, and go to state 974 - "@@ <|" shift, and go to state 975 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 350 expr_assign: expr '=' . expr + 372 expr_assign_pipe: expr '=' . expr_assign_pipe_right + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$ <|" shift, and go to state 971 + "@ <|" shift, and go to state 972 + "@@ <|" shift, and go to state 973 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expr_call_pipe go to state 976 - expression_keyword go to state 520 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_assign_pipe_right go to state 1027 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1028 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expr_call_pipe go to state 974 + expression_keyword go to state 518 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_assign_pipe_right go to state 1028 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1029 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 768 - 450 expr: expr ".." . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 469 expr: expr '?' . expr ':' expr + 480 | expr '?' . "as" "name" + 483 | expr '?' . "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr '?' . "as" basic_type_declaration + 511 expr_mtag: expr '?' . "as" "$f" '(' expr ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "as" shift, and go to state 1030 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1029 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1031 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 769 - 351 expr_assign: expr '=' . expr - 373 expr_assign_pipe: expr '=' . expr_assign_pipe_right - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "$ <|" shift, and go to state 973 - "@ <|" shift, and go to state 974 - "@@ <|" shift, and go to state 975 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 444 expr: expr '|' . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expr_call_pipe go to state 976 - expression_keyword go to state 520 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_assign_pipe_right go to state 1030 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1031 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1032 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 770 - 470 expr: expr '?' . expr ':' expr - 481 | expr '?' . "as" "name" - 484 | expr '?' . "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr '?' . "as" basic_type_declaration - 512 expr_mtag: expr '?' . "as" "$f" '(' expr ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "as" shift, and go to state 1032 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 445 expr: expr '^' . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1033 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 771 - 445 expr: expr '|' . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 443 expr: expr '&' . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1034 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 772 - 446 expr: expr '^' . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 437 expr: expr '<' . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1035 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 773 - 444 expr: expr '&' . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 438 expr: expr '>' . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1036 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 774 - 438 expr: expr '<' . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 433 expr: expr '-' . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1037 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 775 - 439 expr: expr '>' . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 432 expr: expr '+' . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1038 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 776 - 434 expr: expr '-' . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 434 expr: expr '*' . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1039 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 777 - 433 expr: expr '+' . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 435 expr: expr '/' . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1040 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 778 - 435 expr: expr '*' . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 436 expr: expr '%' . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1041 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 779 - 436 expr: expr '/' . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1042 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 402 expr_field: expr '.' . "name" + 403 | expr '.' . '.' "name" + 404 | expr '.' . "name" '(' ')' + 405 | expr '.' . "name" '(' expr_list ')' + 408 | expr '.' . $@26 error $@27 + 456 expr: expr '.' . '[' expr ']' + 458 | expr '.' . "?[" expr ']' + 460 | expr '.' . "?." "name" + 506 expr_mtag: expr '.' . "$f" '(' expr ')' + 508 | expr '.' . '.' "$f" '(' expr ')' + 509 | expr '.' . "?." "$f" '(' expr ')' + + "?." shift, and go to state 1042 + "?[" shift, and go to state 1043 + "$f" shift, and go to state 1044 + "name" shift, and go to state 1045 + '.' shift, and go to state 1046 + '[' shift, and go to state 1047 + + $default reduce using rule 406 ($@26) + + $@26 go to state 1048 State 780 - 437 expr: expr '%' . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 455 expr: expr '[' . expr ']' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1043 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1049 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 781 - 403 expr_field: expr '.' . "name" - 404 | expr '.' . '.' "name" - 405 | expr '.' . "name" '(' ')' - 406 | expr '.' . "name" '(' expr_list ')' - 409 | expr '.' . $@26 error $@27 - 457 expr: expr '.' . '[' expr ']' - 459 | expr '.' . "?[" expr ']' - 461 | expr '.' . "?." "name" - 507 expr_mtag: expr '.' . "$f" '(' expr ')' - 509 | expr '.' . '.' "$f" '(' expr ')' - 510 | expr '.' . "?." "$f" '(' expr ')' - - "?." shift, and go to state 1044 - "?[" shift, and go to state 1045 - "$f" shift, and go to state 1046 - "name" shift, and go to state 1047 - '.' shift, and go to state 1048 - '[' shift, and go to state 1049 - - $default reduce using rule 407 ($@26) + 220 expr_call_pipe: expr expr_full_block_assumed_piped . - $@26 go to state 1050 + $default reduce using rule 220 (expr_call_pipe) State 782 - 456 expr: expr '[' . expr ']' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 412 expr_call: basic_type_declaration '(' . ')' + 413 | basic_type_declaration '(' . expr_list ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1051 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + ')' shift, and go to state 1050 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + expr_list go to state 1051 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 707 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 783 - 220 expr_call_pipe: expr expr_full_block_assumed_piped . + 589 enum_list: enum_list "name" "end of expression" . - $default reduce using rule 220 (expr_call_pipe) + $default reduce using rule 589 (enum_list) State 784 - 413 expr_call: basic_type_declaration '(' . ')' - 414 | basic_type_declaration '(' . expr_list ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 590 enum_list: enum_list "name" '=' . expr "end of expression" + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - ')' shift, and go to state 1052 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - expr_list go to state 1053 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 709 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1052 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 785 - 590 enum_list: enum_list "name" "end of expression" . + 607 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name "begin of code block" $@41 enum_list $@42 "end of code block" . - $default reduce using rule 590 (enum_list) + $default reduce using rule 607 (enum_declaration) State 786 - 591 enum_list: enum_list "name" '=' . expr "end of expression" - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1054 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 588 enum_list: enum_list . "end of expression" + 589 | enum_list . "name" "end of expression" + 590 | enum_list . "name" '=' expr "end of expression" + 610 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" $@43 enum_list . $@44 "end of code block" + + "name" shift, and go to state 554 + "end of expression" shift, and go to state 555 + + $default reduce using rule 609 ($@44) + + $@44 go to state 1053 State 787 - 608 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name "begin of code block" $@41 enum_list $@42 "end of code block" . + 622 optional_struct_variable_declaration_list: "begin of code block" struct_variable_declaration_list "end of code block" . - $default reduce using rule 608 (enum_declaration) + $default reduce using rule 622 (optional_struct_variable_declaration_list) State 788 - 589 enum_list: enum_list . "end of expression" - 590 | enum_list . "name" "end of expression" - 591 | enum_list . "name" '=' expr "end of expression" - 611 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" $@43 enum_list . $@44 "end of code block" - - "name" shift, and go to state 556 - "end of expression" shift, and go to state 557 + 120 optional_annotation_list: '[' . annotation_list ']' + 535 struct_variable_declaration_list: struct_variable_declaration_list '[' . annotation_list ']' "end of expression" - $default reduce using rule 610 ($@44) + "require" shift, and go to state 60 + "private" shift, and go to state 61 + "|>" shift, and go to state 62 + "name" shift, and go to state 58 + '!' shift, and go to state 63 + '(' shift, and go to state 64 - $@44 go to state 1055 + annotation_declaration_name go to state 65 + annotation_declaration_basic go to state 66 + annotation_declaration go to state 67 + annotation_list go to state 1054 + name_in_namespace go to state 69 State 789 - 623 optional_struct_variable_declaration_list: "begin of code block" struct_variable_declaration_list "end of code block" . + 532 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list . "def" optional_public_or_private_member_variable "abstract" optional_constant $@35 function_declaration_header "end of expression" + 534 | struct_variable_declaration_list optional_annotation_list . "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@36 function_declaration_header expression_block - $default reduce using rule 623 (optional_struct_variable_declaration_list) + "def" shift, and go to state 1055 State 790 - 120 optional_annotation_list: '[' . annotation_list ']' - 536 struct_variable_declaration_list: struct_variable_declaration_list '[' . annotation_list ']' "end of expression" + 530 struct_variable_declaration_list: struct_variable_declaration_list $@34 . structure_variable_declaration "end of expression" + + "[[" shift, and go to state 216 + '@' shift, and go to state 217 - "require" shift, and go to state 61 - "private" shift, and go to state 62 - "|>" shift, and go to state 63 - "::" shift, and go to state 58 - "name" shift, and go to state 59 - '!' shift, and go to state 64 - '(' shift, and go to state 65 + $default reduce using rule 514 (optional_field_annotation) - annotation_declaration_name go to state 66 - annotation_declaration_basic go to state 67 - annotation_declaration go to state 68 - annotation_list go to state 1056 - name_in_namespace go to state 70 + metadata_argument_list go to state 218 + optional_field_annotation go to state 1056 + structure_variable_declaration go to state 1057 State 791 - 533 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list . "def" optional_public_or_private_member_variable "abstract" optional_constant $@35 function_declaration_header "end of expression" - 535 | struct_variable_declaration_list optional_annotation_list . "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@36 function_declaration_header expression_block + 567 let_variable_name_with_pos_list: "$i" '(' expr ')' . - "def" shift, and go to state 1057 + $default reduce using rule 567 (let_variable_name_with_pos_list) State 792 - 531 struct_variable_declaration_list: struct_variable_declaration_list $@34 . structure_variable_declaration "end of expression" - - "[[" shift, and go to state 218 - '@' shift, and go to state 219 - - $default reduce using rule 515 (optional_field_annotation) + 570 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" "aka" . "name" - metadata_argument_list go to state 220 - optional_field_annotation go to state 1058 - structure_variable_declaration go to state 1059 + "name" shift, and go to state 1058 State 793 - 568 let_variable_name_with_pos_list: "$i" '(' expr ')' . + 571 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" . - $default reduce using rule 568 (let_variable_name_with_pos_list) + $default reduce using rule 571 (let_variable_declaration) State 794 - 571 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" "aka" . "name" - - "name" shift, and go to state 1060 + 572 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone . expr "end of expression" + 573 | let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone . expr_pipe + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$ <|" shift, and go to state 468 + "@ <|" shift, and go to state 469 + "@@ <|" shift, and go to state 470 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expr_call_pipe go to state 515 + expression_keyword go to state 518 + expr_pipe go to state 1059 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_assign go to state 639 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1060 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 795 - 572 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" . + 575 let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr_pipe . - $default reduce using rule 572 (let_variable_declaration) + $default reduce using rule 575 (let_variable_declaration) State 796 - 573 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone . expr "end of expression" - 574 | let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone . expr_pipe - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "$ <|" shift, and go to state 470 - "@ <|" shift, and go to state 471 - "@@ <|" shift, and go to state 472 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expr_call_pipe go to state 517 - expression_keyword go to state 520 - expr_pipe go to state 1061 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_assign go to state 641 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1062 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 220 expr_call_pipe: expr . expr_full_block_assumed_piped + 349 expr_assign: expr . + 350 | expr . '=' expr + 351 | expr . "<-" expr + 352 | expr . ":=" expr + 353 | expr . "&=" expr + 354 | expr . "|=" expr + 355 | expr . "^=" expr + 356 | expr . "&&=" expr + 357 | expr . "||=" expr + 358 | expr . "^^=" expr + 359 | expr . "+=" expr + 360 | expr . "-=" expr + 361 | expr . "*=" expr + 362 | expr . "/=" expr + 363 | expr . "%=" expr + 364 | expr . "<<=" expr + 365 | expr . ">>=" expr + 366 | expr . "<<<=" expr + 367 | expr . ">>>=" expr + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 574 let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr . "end of expression" + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "+=" shift, and go to state 857 + "-=" shift, and go to state 858 + "/=" shift, and go to state 859 + "*=" shift, and go to state 860 + "%=" shift, and go to state 861 + "&=" shift, and go to state 862 + "|=" shift, and go to state 863 + "^=" shift, and go to state 864 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + "<<=" shift, and go to state 865 + ">>=" shift, and go to state 866 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "<-" shift, and go to state 867 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + ":=" shift, and go to state 755 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "<<<=" shift, and go to state 868 + ">>>=" shift, and go to state 869 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + "&&=" shift, and go to state 870 + "||=" shift, and go to state 871 + "^^=" shift, and go to state 872 + ".." shift, and go to state 766 + "end of expression" shift, and go to state 1061 + '=' shift, and go to state 873 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + '$' shift, and go to state 501 + '@' shift, and go to state 671 + + $default reduce using rule 349 (expr_assign) + + block_or_lambda go to state 714 + expr_full_block_assumed_piped go to state 781 State 797 - 576 let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr_pipe . + 690 type_declaration_no_options: "type" '<' $@49 type_declaration . '>' $@50 + 748 type_declaration: type_declaration . '|' type_declaration_no_options + 749 | type_declaration . '|' '#' - $default reduce using rule 576 (let_variable_declaration) + '|' shift, and go to state 415 + '>' shift, and go to state 1062 State 798 - 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 350 expr_assign: expr . - 351 | expr . '=' expr - 352 | expr . "<-" expr - 353 | expr . ":=" expr - 354 | expr . "&=" expr - 355 | expr . "|=" expr - 356 | expr . "^=" expr - 357 | expr . "&&=" expr - 358 | expr . "||=" expr - 359 | expr . "^^=" expr - 360 | expr . "+=" expr - 361 | expr . "-=" expr - 362 | expr . "*=" expr - 363 | expr . "/=" expr - 364 | expr . "%=" expr - 365 | expr . "<<=" expr - 366 | expr . ">>=" expr - 367 | expr . "<<<=" expr - 368 | expr . ">>>=" expr - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 575 let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr . "end of expression" - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "+=" shift, and go to state 859 - "-=" shift, and go to state 860 - "/=" shift, and go to state 861 - "*=" shift, and go to state 862 - "%=" shift, and go to state 863 - "&=" shift, and go to state 864 - "|=" shift, and go to state 865 - "^=" shift, and go to state 866 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - "<<=" shift, and go to state 867 - ">>=" shift, and go to state 868 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "<-" shift, and go to state 869 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - ":=" shift, and go to state 757 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "<<<=" shift, and go to state 870 - ">>>=" shift, and go to state 871 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - "&&=" shift, and go to state 872 - "||=" shift, and go to state 873 - "^^=" shift, and go to state 874 - ".." shift, and go to state 768 - "end of expression" shift, and go to state 1063 - '=' shift, and go to state 875 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - '$' shift, and go to state 503 - '@' shift, and go to state 673 - - $default reduce using rule 350 (expr_assign) + 713 type_declaration_no_options: "array" '<' $@54 type_declaration . '>' $@55 + 748 type_declaration: type_declaration . '|' type_declaration_no_options + 749 | type_declaration . '|' '#' - block_or_lambda go to state 716 - expr_full_block_assumed_piped go to state 783 + '|' shift, and go to state 415 + '>' shift, and go to state 1063 State 799 - 691 type_declaration_no_options: "type" '<' $@49 type_declaration . '>' $@50 - 749 type_declaration: type_declaration . '|' type_declaration_no_options - 750 | type_declaration . '|' '#' + 716 type_declaration_no_options: "table" '<' $@56 table_type_pair . '>' $@57 - '|' shift, and go to state 417 '>' shift, and go to state 1064 State 800 - 714 type_declaration_no_options: "array" '<' $@54 type_declaration . '>' $@55 - 749 type_declaration: type_declaration . '|' type_declaration_no_options - 750 | type_declaration . '|' '#' + 678 table_type_pair: type_declaration . + 679 | type_declaration . "end of expression" type_declaration + 748 type_declaration: type_declaration . '|' type_declaration_no_options + 749 | type_declaration . '|' '#' - '|' shift, and go to state 417 - '>' shift, and go to state 1065 + "end of expression" shift, and go to state 1065 + '|' shift, and go to state 415 + + $default reduce using rule 678 (table_type_pair) State 801 - 717 type_declaration_no_options: "table" '<' $@56 table_type_pair . '>' $@57 + 691 type_declaration_no_options: "typedecl" '(' expr ')' . - '>' shift, and go to state 1066 + $default reduce using rule 691 (type_declaration_no_options) State 802 - 679 table_type_pair: type_declaration . - 680 | type_declaration . "end of expression" type_declaration - 749 type_declaration: type_declaration . '|' type_declaration_no_options - 750 | type_declaration . '|' '#' - - "end of expression" shift, and go to state 1067 - '|' shift, and go to state 417 + 719 type_declaration_no_options: "iterator" '<' $@58 type_declaration . '>' $@59 + 748 type_declaration: type_declaration . '|' type_declaration_no_options + 749 | type_declaration . '|' '#' - $default reduce using rule 679 (table_type_pair) + '|' shift, and go to state 415 + '>' shift, and go to state 1066 State 803 - 692 type_declaration_no_options: "typedecl" '(' expr ')' . + 709 type_declaration_no_options: "smart_ptr" '<' $@52 type_declaration . '>' $@53 + 748 type_declaration: type_declaration . '|' type_declaration_no_options + 749 | type_declaration . '|' '#' - $default reduce using rule 692 (type_declaration_no_options) + '|' shift, and go to state 415 + '>' shift, and go to state 1067 State 804 - 720 type_declaration_no_options: "iterator" '<' $@58 type_declaration . '>' $@59 - 749 type_declaration: type_declaration . '|' type_declaration_no_options - 750 | type_declaration . '|' '#' + 668 auto_type_declaration: "auto" '(' "name" ')' . - '|' shift, and go to state 417 - '>' shift, and go to state 1068 + $default reduce using rule 668 (auto_type_declaration) State 805 - 710 type_declaration_no_options: "smart_ptr" '<' $@52 type_declaration . '>' $@53 - 749 type_declaration: type_declaration . '|' type_declaration_no_options - 750 | type_declaration . '|' '#' + 670 bitfield_bits: "name" . - '|' shift, and go to state 417 - '>' shift, and go to state 1069 + $default reduce using rule 670 (bitfield_bits) State 806 - 669 auto_type_declaration: "auto" '(' "name" ')' . + 671 bitfield_bits: bitfield_bits . "end of expression" "name" + 677 bitfield_type_declaration: "bitfield" '<' $@47 bitfield_bits . '>' $@48 - $default reduce using rule 669 (auto_type_declaration) + "end of expression" shift, and go to state 1068 + '>' shift, and go to state 1069 State 807 - 671 bitfield_bits: "name" . + 723 type_declaration_no_options: "block" '<' $@60 type_declaration . '>' $@61 + 748 type_declaration: type_declaration . '|' type_declaration_no_options + 749 | type_declaration . '|' '#' - $default reduce using rule 671 (bitfield_bits) + '|' shift, and go to state 415 + '>' shift, and go to state 1070 State 808 - 672 bitfield_bits: bitfield_bits . "end of expression" "name" - 678 bitfield_type_declaration: "bitfield" '<' $@47 bitfield_bits . '>' $@48 + 726 type_declaration_no_options: "block" '<' $@62 optional_function_argument_list . optional_function_type '>' $@63 - "end of expression" shift, and go to state 1070 - '>' shift, and go to state 1071 + ':' shift, and go to state 371 + + $default reduce using rule 124 (optional_function_type) + + optional_function_type go to state 1071 State 809 - 724 type_declaration_no_options: "block" '<' $@60 type_declaration . '>' $@61 - 749 type_declaration: type_declaration . '|' type_declaration_no_options - 750 | type_declaration . '|' '#' + 730 type_declaration_no_options: "function" '<' $@64 type_declaration . '>' $@65 + 748 type_declaration: type_declaration . '|' type_declaration_no_options + 749 | type_declaration . '|' '#' - '|' shift, and go to state 417 + '|' shift, and go to state 415 '>' shift, and go to state 1072 State 810 - 727 type_declaration_no_options: "block" '<' $@62 optional_function_argument_list . optional_function_type '>' $@63 + 733 type_declaration_no_options: "function" '<' $@66 optional_function_argument_list . optional_function_type '>' $@67 - ':' shift, and go to state 373 + ':' shift, and go to state 371 $default reduce using rule 124 (optional_function_type) @@ -23283,19 +23158,19 @@ State 810 State 811 - 731 type_declaration_no_options: "function" '<' $@64 type_declaration . '>' $@65 - 749 type_declaration: type_declaration . '|' type_declaration_no_options - 750 | type_declaration . '|' '#' + 737 type_declaration_no_options: "lambda" '<' $@68 type_declaration . '>' $@69 + 748 type_declaration: type_declaration . '|' type_declaration_no_options + 749 | type_declaration . '|' '#' - '|' shift, and go to state 417 + '|' shift, and go to state 415 '>' shift, and go to state 1074 State 812 - 734 type_declaration_no_options: "function" '<' $@66 optional_function_argument_list . optional_function_type '>' $@67 + 740 type_declaration_no_options: "lambda" '<' $@70 optional_function_argument_list . optional_function_type '>' $@71 - ':' shift, and go to state 373 + ':' shift, and go to state 371 $default reduce using rule 124 (optional_function_type) @@ -23304,36 +23179,31 @@ State 812 State 813 - 738 type_declaration_no_options: "lambda" '<' $@68 type_declaration . '>' $@69 - 749 type_declaration: type_declaration . '|' type_declaration_no_options - 750 | type_declaration . '|' '#' + 542 tuple_type_list: tuple_type . - '|' shift, and go to state 417 - '>' shift, and go to state 1076 + $default reduce using rule 542 (tuple_type_list) State 814 - 741 type_declaration_no_options: "lambda" '<' $@70 optional_function_argument_list . optional_function_type '>' $@71 - - ':' shift, and go to state 373 + 543 tuple_type_list: tuple_type_list . "end of expression" tuple_type + 743 type_declaration_no_options: "tuple" '<' $@72 tuple_type_list . '>' $@73 - $default reduce using rule 124 (optional_function_type) - - optional_function_type go to state 1077 + "end of expression" shift, and go to state 1076 + '>' shift, and go to state 1077 State 815 - 543 tuple_type_list: tuple_type . + 548 variant_type_list: variant_type . - $default reduce using rule 543 (tuple_type_list) + $default reduce using rule 548 (variant_type_list) State 816 - 544 tuple_type_list: tuple_type_list . "end of expression" tuple_type - 744 type_declaration_no_options: "tuple" '<' $@72 tuple_type_list . '>' $@73 + 549 variant_type_list: variant_type_list . "end of expression" variant_type + 746 type_declaration_no_options: "variant" '<' $@74 variant_type_list . '>' $@75 "end of expression" shift, and go to state 1078 '>' shift, and go to state 1079 @@ -23341,7143 +23211,7190 @@ State 816 State 817 - 549 variant_type_list: variant_type . + 669 auto_type_declaration: "$t" '(' expr ')' . - $default reduce using rule 549 (variant_type_list) + $default reduce using rule 669 (auto_type_declaration) State 818 - 550 variant_type_list: variant_type_list . "end of expression" variant_type - 747 type_declaration_no_options: "variant" '<' $@74 variant_type_list . '>' $@75 - - "end of expression" shift, and go to state 1080 - '>' shift, and go to state 1081 + 694 type_declaration_no_options: '$' name_in_namespace '<' $@51 . type_declaration_no_options_list '>' '(' optional_expr_list ')' + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + type_declaration_no_options_list go to state 1080 + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 354 + type_declaration go to state 1081 State 819 - 670 auto_type_declaration: "$t" '(' expr ')' . + 692 type_declaration_no_options: '$' name_in_namespace '(' optional_expr_list . ')' - $default reduce using rule 670 (auto_type_declaration) + ')' shift, and go to state 1082 State 820 - 695 type_declaration_no_options: '$' name_in_namespace '<' $@51 . type_declaration_no_options_list '>' '(' optional_expr_list ')' - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - type_declaration_no_options_list go to state 1082 - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 356 - type_declaration go to state 1083 + 248 optional_expr_list: expr_list . + 322 expr_list: expr_list . ',' expr + + ',' shift, and go to state 856 + + $default reduce using rule 248 (optional_expr_list) State 821 - 693 type_declaration_no_options: '$' name_in_namespace '(' optional_expr_list . ')' + 695 type_declaration_no_options: type_declaration_no_options '-' '[' ']' . - ')' shift, and go to state 1084 + $default reduce using rule 695 (type_declaration_no_options) State 822 - 248 optional_expr_list: expr_list . - 323 expr_list: expr_list . ',' expr - - ',' shift, and go to state 858 + 680 dim_list: '[' expr ']' . - $default reduce using rule 248 (optional_expr_list) + $default reduce using rule 680 (dim_list) State 823 - 696 type_declaration_no_options: type_declaration_no_options '-' '[' ']' . - - $default reduce using rule 696 (type_declaration_no_options) + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 681 dim_list: dim_list '[' expr . ']' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + ']' shift, and go to state 1083 State 824 - 681 dim_list: '[' expr ']' . + 674 bitfield_alias_bits: bitfield_alias_bits "name" "end of expression" . - $default reduce using rule 681 (dim_list) + $default reduce using rule 674 (bitfield_alias_bits) State 825 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 682 dim_list: dim_list '[' expr . ']' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - ']' shift, and go to state 1085 + 764 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" $@85 "begin of code block" $@86 bitfield_alias_bits $@87 "end of code block" . + $default reduce using rule 764 (bitfield_alias_declaration) -State 826 - 675 bitfield_alias_bits: bitfield_alias_bits "name" "end of expression" . +State 826 - $default reduce using rule 675 (bitfield_alias_bits) + 541 tuple_type: "name" ':' . type_declaration + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 354 + type_declaration go to state 1084 State 827 - 765 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" $@85 "begin of code block" $@86 bitfield_alias_bits $@87 "end of code block" . + 546 tuple_alias_type_list: tuple_alias_type_list tuple_type "end of expression" . - $default reduce using rule 765 (bitfield_alias_declaration) + $default reduce using rule 546 (tuple_alias_type_list) State 828 - 542 tuple_type: "name" ':' . type_declaration - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 356 - type_declaration go to state 1086 + 754 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" $@77 "begin of code block" $@78 tuple_alias_type_list $@79 "end of code block" . + $default reduce using rule 754 (tuple_alias_declaration) -State 829 - 547 tuple_alias_type_list: tuple_alias_type_list tuple_type "end of expression" . +State 829 - $default reduce using rule 547 (tuple_alias_type_list) + 547 variant_type: "name" ':' . type_declaration + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 354 + type_declaration go to state 1085 State 830 - 755 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" $@77 "begin of code block" $@78 tuple_alias_type_list $@79 "end of code block" . + 552 variant_alias_type_list: variant_alias_type_list variant_type "end of expression" . - $default reduce using rule 755 (tuple_alias_declaration) + $default reduce using rule 552 (variant_alias_type_list) State 831 - 548 variant_type: "name" ':' . type_declaration - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 356 - type_declaration go to state 1087 + 759 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" $@81 "begin of code block" $@82 variant_alias_type_list $@83 "end of code block" . + + $default reduce using rule 759 (variant_alias_declaration) State 832 - 553 variant_alias_type_list: variant_alias_type_list variant_type "end of expression" . + 537 function_argument_declaration: "$a" '(' expr ')' . - $default reduce using rule 553 (variant_alias_type_list) + $default reduce using rule 537 (function_argument_declaration) State 833 - 760 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" $@81 "begin of code block" $@82 variant_alias_type_list $@83 "end of code block" . - - $default reduce using rule 760 (variant_alias_declaration) + 627 variable_name_with_pos_list: "$i" '(' . expr ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1086 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 834 - 538 function_argument_declaration: "$a" '(' expr ')' . + 628 variable_name_with_pos_list: "name" "aka" . "name" - $default reduce using rule 538 (function_argument_declaration) + "name" shift, and go to state 1087 State 835 - 628 variable_name_with_pos_list: "$i" '(' . expr ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1088 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 554 copy_or_move: "<-" . + + $default reduce using rule 554 (copy_or_move) State 836 - 629 variable_name_with_pos_list: "name" "aka" . "name" + 629 variable_name_with_pos_list: variable_name_with_pos_list ',' . "name" + 630 | variable_name_with_pos_list ',' . "name" "aka" "name" - "name" shift, and go to state 1089 + "name" shift, and go to state 1088 State 837 - 555 copy_or_move: "<-" . + 553 copy_or_move: '=' . - $default reduce using rule 555 (copy_or_move) + $default reduce using rule 553 (copy_or_move) State 838 - 630 variable_name_with_pos_list: variable_name_with_pos_list ',' . "name" - 631 | variable_name_with_pos_list ',' . "name" "aka" "name" - - "name" shift, and go to state 1090 + 557 variable_declaration: variable_name_with_pos_list ':' . type_declaration + 558 | variable_name_with_pos_list ':' . type_declaration copy_or_move expr + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 354 + type_declaration go to state 1089 State 839 - 554 copy_or_move: '=' . + 556 variable_declaration: variable_name_with_pos_list '&' . - $default reduce using rule 554 (copy_or_move) + $default reduce using rule 556 (variable_declaration) State 840 - 558 variable_declaration: variable_name_with_pos_list ':' . type_declaration - 559 | variable_name_with_pos_list ':' . type_declaration copy_or_move expr - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 356 - type_declaration go to state 1091 + 559 variable_declaration: variable_name_with_pos_list copy_or_move . expr + 560 | variable_name_with_pos_list copy_or_move . expr_pipe + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$ <|" shift, and go to state 468 + "@ <|" shift, and go to state 469 + "@@ <|" shift, and go to state 470 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expr_call_pipe go to state 515 + expression_keyword go to state 518 + expr_pipe go to state 1090 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_assign go to state 639 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1091 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 841 - 557 variable_declaration: variable_name_with_pos_list '&' . - - $default reduce using rule 557 (variable_declaration) + 805 make_struct_decl: "struct" '<' $@88 . type_declaration_no_options '>' $@89 '(' use_initializer make_struct_dim ')' + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 1092 State 842 - 560 variable_declaration: variable_name_with_pos_list copy_or_move . expr - 561 | variable_name_with_pos_list copy_or_move . expr_pipe - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "$ <|" shift, and go to state 470 - "@ <|" shift, and go to state 471 - "@@ <|" shift, and go to state 472 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expr_call_pipe go to state 517 - expression_keyword go to state 520 - expr_pipe go to state 1092 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_assign go to state 641 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1093 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 808 make_struct_decl: "class" '<' $@90 . type_declaration_no_options '>' $@91 '(' use_initializer make_struct_dim ')' + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 1093 State 843 - 806 make_struct_decl: "struct" '<' $@88 . type_declaration_no_options '>' $@89 '(' use_initializer make_struct_dim ')' - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 1094 + 78 expression_while_loop: "while" expr expression_block . + + $default reduce using rule 78 (expression_while_loop) State 844 - 809 make_struct_decl: "class" '<' $@90 . type_declaration_no_options '>' $@91 '(' use_initializer make_struct_dim ')' - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 1095 + 76 expression_for_loop: "for" $@4 variable_name_with_pos_list . "in" expr_list expression_block + 629 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" + 630 | variable_name_with_pos_list . ',' "name" "aka" "name" + "in" shift, and go to state 1094 + ',' shift, and go to state 836 -State 845 - 78 expression_while_loop: "while" expr expression_block . +State 845 - $default reduce using rule 78 (expression_while_loop) + 270 new_type_declaration: '<' $@11 . type_declaration '>' $@12 + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 354 + type_declaration go to state 1095 State 846 - 76 expression_for_loop: "for" $@4 variable_name_with_pos_list . "in" expr_list expression_block - 630 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" - 631 | variable_name_with_pos_list . ',' "name" "aka" "name" - - "in" shift, and go to state 1096 - ',' shift, and go to state 838 + 273 expr_new: "new" new_type_declaration '(' . use_initializer ')' + 274 | "new" new_type_declaration '(' . expr_list ')' + 275 | "new" new_type_declaration '(' . use_initializer make_struct_single ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "uninitialized" shift, and go to state 1096 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + "name" [reduce using rule 795 (use_initializer)] + $default reduce using rule 795 (use_initializer) + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + expr_list go to state 1097 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 707 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + use_initializer go to state 1098 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 847 - 271 new_type_declaration: '<' $@11 . type_declaration '>' $@12 - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 356 - type_declaration go to state 1097 + 318 expr_type_info: "typeinfo" '(' name_in_namespace . expr ')' + 319 | "typeinfo" '(' name_in_namespace . '<' "name" '>' expr ')' + 320 | "typeinfo" '(' name_in_namespace . '<' "name" "end of expression" "name" '>' expr ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '<' shift, and go to state 1099 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1100 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 848 - 274 expr_new: "new" new_type_declaration '(' . use_initializer ')' - 275 | "new" new_type_declaration '(' . expr_list ')' - 276 | "new" new_type_declaration '(' . use_initializer make_struct_single ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "uninitialized" shift, and go to state 1098 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - "name" [reduce using rule 796 (use_initializer)] - $default reduce using rule 796 (use_initializer) - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - expr_list go to state 1099 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 709 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - use_initializer go to state 1100 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 317 expr_type_decl: "type" '<' $@19 . type_declaration '>' $@20 + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 354 + type_declaration go to state 1101 State 849 - 319 expr_type_info: "typeinfo" '(' name_in_namespace . expr ')' - 320 | "typeinfo" '(' name_in_namespace . '<' "name" '>' expr ')' - 321 | "typeinfo" '(' name_in_namespace . '<' "name" "end of expression" "name" '>' expr ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '<' shift, and go to state 1101 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1102 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 831 make_dim_decl: "array" "struct" '<' . $@98 type_declaration_no_options '>' $@99 '(' use_initializer make_struct_dim ')' + + $default reduce using rule 829 ($@98) + + $@98 go to state 1102 State 850 - 318 expr_type_decl: "type" '<' $@19 . type_declaration '>' $@20 - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 356 - type_declaration go to state 1103 + 834 make_dim_decl: "array" "tuple" '<' . $@100 type_declaration_no_options '>' $@101 '(' use_initializer make_struct_dim ')' + $default reduce using rule 832 ($@100) -State 851 + $@100 go to state 1103 - 832 make_dim_decl: "array" "struct" '<' . $@98 type_declaration_no_options '>' $@99 '(' use_initializer make_struct_dim ')' - $default reduce using rule 830 ($@98) +State 851 - $@98 go to state 1104 + 837 make_dim_decl: "array" "variant" '<' . $@102 type_declaration_no_options '>' $@103 '(' make_struct_dim ')' + $default reduce using rule 835 ($@102) -State 852 + $@102 go to state 1104 - 835 make_dim_decl: "array" "tuple" '<' . $@100 type_declaration_no_options '>' $@101 '(' use_initializer make_struct_dim ')' - $default reduce using rule 833 ($@100) +State 852 - $@100 go to state 1105 + 841 make_dim_decl: "array" '<' $@104 . type_declaration_no_options '>' $@105 '(' expr_list optional_comma ')' + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 1105 State 853 - 838 make_dim_decl: "array" "variant" '<' . $@102 type_declaration_no_options '>' $@103 '(' make_struct_dim ')' + 322 expr_list: expr_list . ',' expr + 838 make_dim_decl: "array" '(' expr_list . optional_comma ')' - $default reduce using rule 836 ($@102) + ',' shift, and go to state 940 - $@102 go to state 1106 + $default reduce using rule 857 (optional_comma) + + optional_comma go to state 1106 State 854 - 842 make_dim_decl: "array" '<' $@104 . type_declaration_no_options '>' $@105 '(' expr_list optional_comma ')' - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 1107 + 284 expression_return: "return" "<-" expr_pipe . + + $default reduce using rule 284 (expression_return) State 855 - 323 expr_list: expr_list . ',' expr - 839 make_dim_decl: "array" '(' expr_list . optional_comma ')' - - ',' shift, and go to state 942 + 281 expression_return_no_pipe: "return" "<-" expr_list . + 322 expr_list: expr_list . ',' expr - $default reduce using rule 858 (optional_comma) + ',' shift, and go to state 856 - optional_comma go to state 1108 + $default reduce using rule 281 (expression_return_no_pipe) State 856 - 285 expression_return: "return" "<-" expr_pipe . - - $default reduce using rule 285 (expression_return) + 322 expr_list: expr_list ',' . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1107 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 857 - 282 expression_return_no_pipe: "return" "<-" expr_list . - 323 expr_list: expr_list . ',' expr - - ',' shift, and go to state 858 - - $default reduce using rule 282 (expression_return_no_pipe) + 359 expr_assign: expr "+=" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1108 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 858 - 323 expr_list: expr_list ',' . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 360 expr_assign: expr "-=" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1109 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 859 - 360 expr_assign: expr "+=" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 362 expr_assign: expr "/=" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1110 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 860 - 361 expr_assign: expr "-=" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 361 expr_assign: expr "*=" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1111 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 861 - 363 expr_assign: expr "/=" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 363 expr_assign: expr "%=" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1112 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 862 - 362 expr_assign: expr "*=" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 353 expr_assign: expr "&=" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1113 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 863 - 364 expr_assign: expr "%=" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 354 expr_assign: expr "|=" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1114 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 864 - 354 expr_assign: expr "&=" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 355 expr_assign: expr "^=" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1115 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 865 - 355 expr_assign: expr "|=" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 364 expr_assign: expr "<<=" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1116 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 866 - 356 expr_assign: expr "^=" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 365 expr_assign: expr ">>=" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1117 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 867 - 365 expr_assign: expr "<<=" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 351 expr_assign: expr "<-" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1118 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 868 - 366 expr_assign: expr ">>=" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 366 expr_assign: expr "<<<=" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1119 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 869 - 352 expr_assign: expr "<-" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 367 expr_assign: expr ">>>=" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1120 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 870 - 367 expr_assign: expr "<<<=" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 356 expr_assign: expr "&&=" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1121 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 871 - 368 expr_assign: expr ">>>=" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 357 expr_assign: expr "||=" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1122 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 872 - 357 expr_assign: expr "&&=" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 358 expr_assign: expr "^^=" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1123 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 873 - 358 expr_assign: expr "||=" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 350 expr_assign: expr '=' . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1124 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 874 - 359 expr_assign: expr "^^=" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1125 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 290 expression_try_catch: "try" expression_block "recover" . expression_block + + "begin of code block" shift, and go to state 284 + + expression_block go to state 1125 State 875 - 351 expr_assign: expr '=' . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1126 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 686 type_declaration_no_options: type_declaration_no_options . dim_list + 687 | type_declaration_no_options . '[' ']' + 695 | type_declaration_no_options . '-' '[' ']' + 696 | type_declaration_no_options . "explicit" + 697 | type_declaration_no_options . "const" + 698 | type_declaration_no_options . '-' "const" + 699 | type_declaration_no_options . '&' + 700 | type_declaration_no_options . '-' '&' + 701 | type_declaration_no_options . '#' + 702 | type_declaration_no_options . "implicit" + 703 | type_declaration_no_options . '-' '#' + 704 | type_declaration_no_options . "==" "const" + 705 | type_declaration_no_options . "==" '&' + 706 | type_declaration_no_options . '?' + 710 | type_declaration_no_options . "??" + 853 make_table_decl: "table" '<' type_declaration_no_options . '>' '(' expr_map_tuple_list optional_comma ')' + 854 | "table" '<' type_declaration_no_options . "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + + "const" shift, and go to state 404 + "implicit" shift, and go to state 405 + "explicit" shift, and go to state 406 + "==" shift, and go to state 407 + "??" shift, and go to state 408 + "end of expression" shift, and go to state 1126 + '?' shift, and go to state 409 + '&' shift, and go to state 410 + '>' shift, and go to state 1127 + '-' shift, and go to state 411 + '[' shift, and go to state 412 + '#' shift, and go to state 413 + + dim_list go to state 414 State 876 - 291 expression_try_catch: "try" expression_block "recover" . expression_block + 849 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple + 852 make_table_decl: "table" '(' expr_map_tuple_list . optional_comma ')' + + ',' shift, and go to state 935 - "begin of code block" shift, and go to state 286 + $default reduce using rule 857 (optional_comma) - expression_block go to state 1127 + optional_comma go to state 1128 State 877 - 687 type_declaration_no_options: type_declaration_no_options . dim_list - 688 | type_declaration_no_options . '[' ']' - 696 | type_declaration_no_options . '-' '[' ']' - 697 | type_declaration_no_options . "explicit" - 698 | type_declaration_no_options . "const" - 699 | type_declaration_no_options . '-' "const" - 700 | type_declaration_no_options . '&' - 701 | type_declaration_no_options . '-' '&' - 702 | type_declaration_no_options . '#' - 703 | type_declaration_no_options . "implicit" - 704 | type_declaration_no_options . '-' '#' - 705 | type_declaration_no_options . "==" "const" - 706 | type_declaration_no_options . "==" '&' - 707 | type_declaration_no_options . '?' - 711 | type_declaration_no_options . "??" - 854 make_table_decl: "table" '<' type_declaration_no_options . '>' '(' expr_map_tuple_list optional_comma ')' - 855 | "table" '<' type_declaration_no_options . "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - - "const" shift, and go to state 406 - "implicit" shift, and go to state 407 - "explicit" shift, and go to state 408 - "==" shift, and go to state 409 - "??" shift, and go to state 410 - "end of expression" shift, and go to state 1128 - '?' shift, and go to state 411 - '&' shift, and go to state 412 - '>' shift, and go to state 1129 - '-' shift, and go to state 413 - '[' shift, and go to state 414 - '#' shift, and go to state 415 - - dim_list go to state 416 + 267 expression_delete: "delete" "explicit" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + + $default reduce using rule 267 (expression_delete) State 878 - 850 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple - 853 make_table_decl: "table" '(' expr_map_tuple_list . optional_comma ')' + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 464 | "deref" '(' expr . ')' + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + ')' shift, and go to state 1129 - ',' shift, and go to state 937 - $default reduce using rule 858 (optional_comma) +State 879 - optional_comma go to state 1130 + 79 expression_with: "with" expr expression_block . + $default reduce using rule 79 (expression_with) -State 879 - 268 expression_delete: "delete" "explicit" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - - $default reduce using rule 268 (expression_delete) +State 880 + 81 expression_with_alias: "assume" "name" '=' . $@5 expr -State 880 + $default reduce using rule 80 ($@5) - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 465 | "deref" '(' expr . ')' - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - ')' shift, and go to state 1131 + $@5 go to state 1130 State 881 - 79 expression_with: "with" expr expression_block . - - $default reduce using rule 79 (expression_with) + 308 expr_cast: "cast" '<' $@13 . type_declaration_no_options '>' $@14 expr + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 1131 State 882 - 81 expression_with_alias: "assume" "name" '=' . $@5 expr - - $default reduce using rule 80 ($@5) - - $@5 go to state 1132 + 311 expr_cast: "upcast" '<' $@15 . type_declaration_no_options '>' $@16 expr + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 1132 State 883 - 309 expr_cast: "cast" '<' $@13 . type_declaration_no_options '>' $@14 expr - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 1133 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 465 | "addr" '(' expr . ')' + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + ')' shift, and go to state 1133 State 884 - 312 expr_cast: "upcast" '<' $@15 . type_declaration_no_options '>' $@16 expr - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 + 314 expr_cast: "reinterpret" '<' $@17 . type_declaration_no_options '>' $@18 expr + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 type_declaration_no_options go to state 1134 State 885 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 466 | "addr" '(' expr . ')' - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - ')' shift, and go to state 1135 + 54 expression_label: "label" "integer constant" ':' . + + $default reduce using rule 54 (expression_label) State 886 - 315 expr_cast: "reinterpret" '<' $@17 . type_declaration_no_options '>' $@18 expr - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 1136 + 55 expression_goto: "goto" "label" "integer constant" . + $default reduce using rule 55 (expression_goto) -State 887 - 54 expression_label: "label" "integer constant" ':' . +State 887 - $default reduce using rule 54 (expression_label) + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 496 | "unsafe" '(' expr . ')' + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + ')' shift, and go to state 1135 State 888 - 55 expression_goto: "goto" "label" "integer constant" . - - $default reduce using rule 55 (expression_goto) + 845 make_dim_decl: "fixed_array" '<' $@106 . type_declaration_no_options '>' $@107 '(' expr_list optional_comma ')' + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 1136 State 889 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 497 | "unsafe" '(' expr . ')' - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - ')' shift, and go to state 1137 + 322 expr_list: expr_list . ',' expr + 842 make_dim_decl: "fixed_array" '(' expr_list . optional_comma ')' + + ',' shift, and go to state 940 + + $default reduce using rule 857 (optional_comma) + + optional_comma go to state 1137 State 890 - 846 make_dim_decl: "fixed_array" '<' $@106 . type_declaration_no_options '>' $@107 '(' expr_list optional_comma ')' - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 + 814 make_struct_decl: "default" '<' $@94 . type_declaration_no_options '>' $@95 use_initializer + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 type_declaration_no_options go to state 1138 State 891 - 323 expr_list: expr_list . ',' expr - 843 make_dim_decl: "fixed_array" '(' expr_list . optional_comma ')' + 823 make_tuple_call: "tuple" '<' $@96 . type_declaration_no_options '>' $@97 '(' use_initializer make_struct_dim ')' + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 1139 - ',' shift, and go to state 942 - $default reduce using rule 858 (optional_comma) +State 892 - optional_comma go to state 1139 + 322 expr_list: expr_list . ',' expr + 820 make_tuple_call: "tuple" '(' expr_list . optional_comma ')' + ',' shift, and go to state 940 -State 892 + $default reduce using rule 857 (optional_comma) - 815 make_struct_decl: "default" '<' $@94 . type_declaration_no_options '>' $@95 use_initializer - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 1140 + optional_comma go to state 1140 State 893 - 824 make_tuple_call: "tuple" '<' $@96 . type_declaration_no_options '>' $@97 '(' use_initializer make_struct_dim ')' - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 + 811 make_struct_decl: "variant" '<' $@92 . type_declaration_no_options '>' $@93 '(' make_struct_dim ')' + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 type_declaration_no_options go to state 1141 State 894 - 323 expr_list: expr_list . ',' expr - 821 make_tuple_call: "tuple" '(' expr_list . optional_comma ')' - - ',' shift, and go to state 942 - - $default reduce using rule 858 (optional_comma) - - optional_comma go to state 1142 + 466 expr: "generator" '<' type_declaration_no_options . '>' optional_capture_list '(' ')' + 467 | "generator" '<' type_declaration_no_options . '>' optional_capture_list '(' expr ')' + 686 type_declaration_no_options: type_declaration_no_options . dim_list + 687 | type_declaration_no_options . '[' ']' + 695 | type_declaration_no_options . '-' '[' ']' + 696 | type_declaration_no_options . "explicit" + 697 | type_declaration_no_options . "const" + 698 | type_declaration_no_options . '-' "const" + 699 | type_declaration_no_options . '&' + 700 | type_declaration_no_options . '-' '&' + 701 | type_declaration_no_options . '#' + 702 | type_declaration_no_options . "implicit" + 703 | type_declaration_no_options . '-' '#' + 704 | type_declaration_no_options . "==" "const" + 705 | type_declaration_no_options . "==" '&' + 706 | type_declaration_no_options . '?' + 710 | type_declaration_no_options . "??" + + "const" shift, and go to state 404 + "implicit" shift, and go to state 405 + "explicit" shift, and go to state 406 + "==" shift, and go to state 407 + "??" shift, and go to state 408 + '?' shift, and go to state 409 + '&' shift, and go to state 410 + '>' shift, and go to state 1142 + '-' shift, and go to state 411 + '[' shift, and go to state 412 + '#' shift, and go to state 413 + + dim_list go to state 414 State 895 - 812 make_struct_decl: "variant" '<' $@92 . type_declaration_no_options '>' $@93 '(' make_struct_dim ')' - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 1143 + 289 expression_yield: "yield" "<-" expr_pipe . + + $default reduce using rule 289 (expression_yield) State 896 - 467 expr: "generator" '<' type_declaration_no_options . '>' optional_capture_list '(' ')' - 468 | "generator" '<' type_declaration_no_options . '>' optional_capture_list '(' expr ')' - 687 type_declaration_no_options: type_declaration_no_options . dim_list - 688 | type_declaration_no_options . '[' ']' - 696 | type_declaration_no_options . '-' '[' ']' - 697 | type_declaration_no_options . "explicit" - 698 | type_declaration_no_options . "const" - 699 | type_declaration_no_options . '-' "const" - 700 | type_declaration_no_options . '&' - 701 | type_declaration_no_options . '-' '&' - 702 | type_declaration_no_options . '#' - 703 | type_declaration_no_options . "implicit" - 704 | type_declaration_no_options . '-' '#' - 705 | type_declaration_no_options . "==" "const" - 706 | type_declaration_no_options . "==" '&' - 707 | type_declaration_no_options . '?' - 711 | type_declaration_no_options . "??" - - "const" shift, and go to state 406 - "implicit" shift, and go to state 407 - "explicit" shift, and go to state 408 - "==" shift, and go to state 409 - "??" shift, and go to state 410 - '?' shift, and go to state 411 - '&' shift, and go to state 412 - '>' shift, and go to state 1144 - '-' shift, and go to state 413 - '[' shift, and go to state 414 - '#' shift, and go to state 415 - - dim_list go to state 416 + 220 expr_call_pipe: expr . expr_full_block_assumed_piped + 286 expression_yield_no_pipe: "yield" "<-" expr . + 349 expr_assign: expr . + 350 | expr . '=' expr + 351 | expr . "<-" expr + 352 | expr . ":=" expr + 353 | expr . "&=" expr + 354 | expr . "|=" expr + 355 | expr . "^=" expr + 356 | expr . "&&=" expr + 357 | expr . "||=" expr + 358 | expr . "^^=" expr + 359 | expr . "+=" expr + 360 | expr . "-=" expr + 361 | expr . "*=" expr + 362 | expr . "/=" expr + 363 | expr . "%=" expr + 364 | expr . "<<=" expr + 365 | expr . ">>=" expr + 366 | expr . "<<<=" expr + 367 | expr . ">>>=" expr + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "+=" shift, and go to state 857 + "-=" shift, and go to state 858 + "/=" shift, and go to state 859 + "*=" shift, and go to state 860 + "%=" shift, and go to state 861 + "&=" shift, and go to state 862 + "|=" shift, and go to state 863 + "^=" shift, and go to state 864 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + "<<=" shift, and go to state 865 + ">>=" shift, and go to state 866 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "<-" shift, and go to state 867 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + ":=" shift, and go to state 755 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "<<<=" shift, and go to state 868 + ">>>=" shift, and go to state 869 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + "&&=" shift, and go to state 870 + "||=" shift, and go to state 871 + "^^=" shift, and go to state 872 + ".." shift, and go to state 766 + '=' shift, and go to state 873 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + '$' shift, and go to state 501 + '@' shift, and go to state 671 + + " <|" reduce using rule 349 (expr_assign) + $default reduce using rule 286 (expression_yield_no_pipe) + + block_or_lambda go to state 714 + expr_full_block_assumed_piped go to state 781 State 897 - 290 expression_yield: "yield" "<-" expr_pipe . + 328 block_or_lambda: '@' '@' . - $default reduce using rule 290 (expression_yield) + $default reduce using rule 328 (block_or_lambda) State 898 - 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 287 expression_yield_no_pipe: "yield" "<-" expr . - 350 expr_assign: expr . - 351 | expr . '=' expr - 352 | expr . "<-" expr - 353 | expr . ":=" expr - 354 | expr . "&=" expr - 355 | expr . "|=" expr - 356 | expr . "^=" expr - 357 | expr . "&&=" expr - 358 | expr . "||=" expr - 359 | expr . "^^=" expr - 360 | expr . "+=" expr - 361 | expr . "-=" expr - 362 | expr . "*=" expr - 363 | expr . "/=" expr - 364 | expr . "%=" expr - 365 | expr . "<<=" expr - 366 | expr . ">>=" expr - 367 | expr . "<<<=" expr - 368 | expr . ">>>=" expr - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "+=" shift, and go to state 859 - "-=" shift, and go to state 860 - "/=" shift, and go to state 861 - "*=" shift, and go to state 862 - "%=" shift, and go to state 863 - "&=" shift, and go to state 864 - "|=" shift, and go to state 865 - "^=" shift, and go to state 866 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - "<<=" shift, and go to state 867 - ">>=" shift, and go to state 868 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "<-" shift, and go to state 869 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - ":=" shift, and go to state 757 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "<<<=" shift, and go to state 870 - ">>>=" shift, and go to state 871 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - "&&=" shift, and go to state 872 - "||=" shift, and go to state 873 - "^^=" shift, and go to state 874 - ".." shift, and go to state 768 - '=' shift, and go to state 875 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - '$' shift, and go to state 503 - '@' shift, and go to state 673 - - " <|" reduce using rule 350 (expr_assign) - $default reduce using rule 287 (expression_yield_no_pipe) - - block_or_lambda go to state 716 - expr_full_block_assumed_piped go to state 783 - + 338 expr_block: block_or_lambda optional_annotation_list . optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block -State 899 + "[[" shift, and go to state 960 - 329 block_or_lambda: '@' '@' . + $default reduce using rule 335 (optional_capture_list) - $default reduce using rule 329 (block_or_lambda) + optional_capture_list go to state 1143 -State 900 +State 899 - 339 expr_block: block_or_lambda optional_annotation_list . optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 498 expr_mtag: "$$" '(' expr . ')' + 506 | expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + ')' shift, and go to state 1144 - "[[" shift, and go to state 962 - $default reduce using rule 336 (optional_capture_list) +State 900 - optional_capture_list go to state 1145 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 499 expr_mtag: "$i" '(' expr . ')' + 506 | expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + ')' shift, and go to state 1145 State 901 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 499 expr_mtag: "$$" '(' expr . ')' - 507 | expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 500 expr_mtag: "$v" '(' expr . ')' + 506 | expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 ')' shift, and go to state 1146 State 902 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 500 expr_mtag: "$i" '(' expr . ')' - 507 | expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 501 expr_mtag: "$b" '(' expr . ')' + 506 | expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 ')' shift, and go to state 1147 State 903 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 501 expr_mtag: "$v" '(' expr . ')' - 507 | expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 502 expr_mtag: "$a" '(' expr . ')' + 506 | expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 ')' shift, and go to state 1148 State 904 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 502 expr_mtag: "$b" '(' expr . ')' - 507 | expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 504 expr_mtag: "$c" '(' expr . ')' '(' ')' + 505 | "$c" '(' expr . ')' '(' expr_list ')' + 506 | expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 ')' shift, and go to state 1149 State 905 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 503 expr_mtag: "$a" '(' expr . ')' - 507 | expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - ')' shift, and go to state 1150 + 629 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" + 630 | variable_name_with_pos_list . ',' "name" "aka" "name" + 861 array_comprehension: "[[" "for" variable_name_with_pos_list . "in" expr_list "end of expression" expr array_comprehension_where ']' ']' + + "in" shift, and go to state 1150 + ',' shift, and go to state 836 State 906 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 505 expr_mtag: "$c" '(' expr . ')' '(' ')' - 506 | "$c" '(' expr . ')' '(' expr_list ')' - 507 | expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - ')' shift, and go to state 1151 + 782 optional_block: "where" . expr_block + + "begin of code block" shift, and go to state 284 + '$' shift, and go to state 501 + '@' shift, and go to state 671 + + expression_block go to state 672 + block_or_lambda go to state 673 + expr_block go to state 1151 State 907 - 630 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" - 631 | variable_name_with_pos_list . ',' "name" "aka" "name" - 862 array_comprehension: "[[" "for" variable_name_with_pos_list . "in" expr_list "end of expression" expr array_comprehension_where ']' ']' + 774 make_struct_fields: "$f" . '(' expr ')' copy_or_move expr + 775 | "$f" . '(' expr ')' ":=" expr - "in" shift, and go to state 1152 - ',' shift, and go to state 838 + '(' shift, and go to state 1152 State 908 - 783 optional_block: "where" . expr_block + 264 name_in_namespace: "name" . + 265 | "name" . "::" "name" + 770 make_struct_fields: "name" . copy_or_move expr + 771 | "name" . ":=" expr - "begin of code block" shift, and go to state 286 - '$' shift, and go to state 503 - '@' shift, and go to state 673 + "<-" shift, and go to state 835 + ":=" shift, and go to state 1153 + "::" shift, and go to state 96 + '=' shift, and go to state 837 - expression_block go to state 674 - block_or_lambda go to state 675 - expr_block go to state 1153 + $default reduce using rule 264 (name_in_namespace) + copy_or_move go to state 1154 -State 909 - 775 make_struct_fields: "$f" . '(' expr ')' copy_or_move expr - 776 | "$f" . '(' expr ')' ":=" expr +State 909 - '(' shift, and go to state 1154 + 427 expr: '-' . expr + 695 type_declaration_no_options: type_declaration_no_options '-' . '[' ']' + 698 | type_declaration_no_options '-' . "const" + 700 | type_declaration_no_options '-' . '&' + 703 | type_declaration_no_options '-' . '#' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "const" shift, and go to state 594 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '&' shift, and go to state 595 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 1155 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + '#' shift, and go to state 597 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 699 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 910 - 264 name_in_namespace: "name" . - 265 | "name" . "::" "name" - 771 make_struct_fields: "name" . copy_or_move expr - 772 | "name" . ":=" expr - - "<-" shift, and go to state 837 - ":=" shift, and go to state 1155 - "::" shift, and go to state 98 - '=' shift, and go to state 839 - - $default reduce using rule 264 (name_in_namespace) - - copy_or_move go to state 1156 + 680 dim_list: '[' . expr ']' + 687 type_declaration_no_options: type_declaration_no_options '[' . ']' + 826 make_dim_decl: '[' . expr_list optional_comma ']' + 859 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 860 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "for" shift, and go to state 704 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "iterator" shift, and go to state 705 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + ']' shift, and go to state 598 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + expr_list go to state 706 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1156 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 911 - 428 expr: '-' . expr - 696 type_declaration_no_options: type_declaration_no_options '-' . '[' ']' - 699 | type_declaration_no_options '-' . "const" - 701 | type_declaration_no_options '-' . '&' - 704 | type_declaration_no_options '-' . '#' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "const" shift, and go to state 596 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '&' shift, and go to state 597 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 454 expr: '(' . expr_list optional_comma ')' + 799 make_struct_decl: "[[" type_declaration_no_options '(' . ')' optional_block optional_trailing_delim_sqr_sqr + 800 | "[[" type_declaration_no_options '(' . ')' make_struct_dim optional_block optional_trailing_delim_sqr_sqr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 1157 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - '#' shift, and go to state 599 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 701 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + ')' shift, and go to state 1157 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + expr_list go to state 708 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 707 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 912 - 681 dim_list: '[' . expr ']' - 688 type_declaration_no_options: type_declaration_no_options '[' . ']' - 827 make_dim_decl: '[' . expr_list optional_comma ']' - 860 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - 861 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "for" shift, and go to state 706 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "iterator" shift, and go to state 707 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - ']' shift, and go to state 600 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - expr_list go to state 708 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1158 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 815 make_tuple: expr . + 816 | expr . "=>" expr + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "=>" shift, and go to state 1158 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + + $default reduce using rule 815 (make_tuple) State 913 - 455 expr: '(' . expr_list optional_comma ')' - 800 make_struct_decl: "[[" type_declaration_no_options '(' . ')' optional_block optional_trailing_delim_sqr_sqr - 801 | "[[" type_declaration_no_options '(' . ')' make_struct_dim optional_block optional_trailing_delim_sqr_sqr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - ')' shift, and go to state 1159 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - expr_list go to state 710 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 709 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 772 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr + 773 | make_struct_fields . ',' "name" ":=" expr + 776 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr + 777 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr + 779 make_struct_dim: make_struct_fields . + + ',' shift, and go to state 1159 + + $default reduce using rule 779 (make_struct_dim) State 914 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 816 make_tuple: expr . - 817 | expr . "=>" expr - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "=>" shift, and go to state 1160 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 780 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 797 make_struct_decl: "[[" type_declaration_no_options make_struct_dim . optional_block optional_trailing_delim_sqr_sqr - $default reduce using rule 816 (make_tuple) + "where" shift, and go to state 906 + "end of expression" shift, and go to state 1160 + + $default reduce using rule 781 (optional_block) + + optional_block go to state 1161 State 915 - 773 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr - 774 | make_struct_fields . ',' "name" ":=" expr - 777 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr - 778 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr - 780 make_struct_dim: make_struct_fields . + 798 make_struct_decl: "[[" type_declaration_no_options optional_block . optional_trailing_delim_sqr_sqr - ',' shift, and go to state 1161 + ";]]" shift, and go to state 1162 + ",]]" shift, and go to state 1163 + ']' shift, and go to state 1164 - $default reduce using rule 780 (make_struct_dim) + optional_trailing_delim_sqr_sqr go to state 1165 State 916 - 781 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 798 make_struct_decl: "[[" type_declaration_no_options make_struct_dim . optional_block optional_trailing_delim_sqr_sqr + 817 make_tuple: make_tuple . ',' expr + 824 make_dim: make_tuple . - "where" shift, and go to state 908 - "end of expression" shift, and go to state 1162 + ',' shift, and go to state 1166 - $default reduce using rule 782 (optional_block) - - optional_block go to state 1163 + $default reduce using rule 824 (make_dim) State 917 - 799 make_struct_decl: "[[" type_declaration_no_options optional_block . optional_trailing_delim_sqr_sqr + 825 make_dim: make_dim . "end of expression" make_tuple + 827 make_dim_decl: "[[" type_declaration_no_options make_dim . optional_trailing_semicolon_sqr_sqr - ";]]" shift, and go to state 1164 - ",]]" shift, and go to state 1165 - ']' shift, and go to state 1166 + "end of expression" shift, and go to state 1167 + ";]]" shift, and go to state 1168 + ']' shift, and go to state 1169 - optional_trailing_delim_sqr_sqr go to state 1167 + optional_trailing_semicolon_sqr_sqr go to state 1170 State 918 - 818 make_tuple: make_tuple . ',' expr - 825 make_dim: make_tuple . + 629 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" + 630 | variable_name_with_pos_list . ',' "name" "aka" "name" + 862 array_comprehension: "[{" "for" variable_name_with_pos_list . "in" expr_list "end of expression" expr array_comprehension_where "end of code block" ']' - ',' shift, and go to state 1168 - - $default reduce using rule 825 (make_dim) + "in" shift, and go to state 1171 + ',' shift, and go to state 836 State 919 - 826 make_dim: make_dim . "end of expression" make_tuple - 828 make_dim_decl: "[[" type_declaration_no_options make_dim . optional_trailing_semicolon_sqr_sqr + 454 expr: '(' . expr_list optional_comma ')' + 802 make_struct_decl: "[{" type_declaration_no_options '(' . ')' make_struct_dim optional_block optional_trailing_delim_cur_sqr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + ')' shift, and go to state 1172 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + expr_list go to state 708 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 707 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 - "end of expression" shift, and go to state 1169 - ";]]" shift, and go to state 1170 - ']' shift, and go to state 1171 - optional_trailing_semicolon_sqr_sqr go to state 1172 +State 920 + 780 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 801 make_struct_decl: "[{" type_declaration_no_options make_struct_dim . optional_block optional_trailing_delim_cur_sqr -State 920 + "where" shift, and go to state 906 + "end of expression" shift, and go to state 1160 - 630 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" - 631 | variable_name_with_pos_list . ',' "name" "aka" "name" - 863 array_comprehension: "[{" "for" variable_name_with_pos_list . "in" expr_list "end of expression" expr array_comprehension_where "end of code block" ']' + $default reduce using rule 781 (optional_block) - "in" shift, and go to state 1173 - ',' shift, and go to state 838 + optional_block go to state 1173 State 921 - 455 expr: '(' . expr_list optional_comma ')' - 803 make_struct_decl: "[{" type_declaration_no_options '(' . ')' make_struct_dim optional_block optional_trailing_delim_cur_sqr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - ')' shift, and go to state 1174 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - expr_list go to state 710 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 709 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 825 make_dim: make_dim . "end of expression" make_tuple + 828 make_dim_decl: "[{" type_declaration_no_options make_dim . optional_trailing_semicolon_cur_sqr + "end of code block" shift, and go to state 1174 + "end of expression" shift, and go to state 1167 + ";}]" shift, and go to state 1175 -State 922 + optional_trailing_semicolon_cur_sqr go to state 1176 - 781 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 802 make_struct_decl: "[{" type_declaration_no_options make_struct_dim . optional_block optional_trailing_delim_cur_sqr - "where" shift, and go to state 908 - "end of expression" shift, and go to state 1162 +State 922 - $default reduce using rule 782 (optional_block) + 629 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" + 630 | variable_name_with_pos_list . ',' "name" "aka" "name" + 864 array_comprehension: "{{" "for" variable_name_with_pos_list . "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" "end of code block" - optional_block go to state 1175 + "in" shift, and go to state 1177 + ',' shift, and go to state 836 State 923 - 826 make_dim: make_dim . "end of expression" make_tuple - 829 make_dim_decl: "[{" type_declaration_no_options make_dim . optional_trailing_semicolon_cur_sqr - - "end of code block" shift, and go to state 1176 - "end of expression" shift, and go to state 1169 - ";}]" shift, and go to state 1177 - - optional_trailing_semicolon_cur_sqr go to state 1178 + 818 make_map_tuple: expr "=>" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1178 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 924 - 630 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" - 631 | variable_name_with_pos_list . ',' "name" "aka" "name" - 865 array_comprehension: "{{" "for" variable_name_with_pos_list . "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" "end of code block" + 783 optional_trailing_semicolon_cur_cur: "end of code block" . "end of code block" - "in" shift, and go to state 1179 - ',' shift, and go to state 838 + "end of code block" shift, and go to state 1179 State 925 - 819 make_map_tuple: expr "=>" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 847 make_table: make_table "end of expression" . make_map_tuple + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1180 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 688 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_map_tuple go to state 1180 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 926 - 784 optional_trailing_semicolon_cur_cur: "end of code block" . "end of code block" + 784 optional_trailing_semicolon_cur_cur: ";}}" . - "end of code block" shift, and go to state 1181 + $default reduce using rule 784 (optional_trailing_semicolon_cur_cur) State 927 - 848 make_table: make_table "end of expression" . make_map_tuple - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 690 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_map_tuple go to state 1182 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 851 make_table_decl: "{{" make_table optional_trailing_semicolon_cur_cur . + + $default reduce using rule 851 (make_table_decl) State 928 - 785 optional_trailing_semicolon_cur_cur: ";}}" . + 255 expression_keyword: "keyword" '<' $@7 . type_declaration_no_options_list '>' $@8 expr - $default reduce using rule 785 (optional_trailing_semicolon_cur_cur) + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + type_declaration_no_options_list go to state 1181 + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 354 + type_declaration go to state 1081 State 929 - 852 make_table_decl: "{{" make_table optional_trailing_semicolon_cur_cur . + 246 expr_keyword: "keyword" expr expression_block . - $default reduce using rule 852 (make_table_decl) + $default reduce using rule 246 (expr_keyword) State 930 - 255 expression_keyword: "keyword" '<' $@7 . type_declaration_no_options_list '>' $@8 expr + 258 expression_keyword: "type function" '<' $@9 . type_declaration_no_options_list '>' $@10 optional_expr_list_in_braces - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - type_declaration_no_options_list go to state 1183 - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 356 - type_declaration go to state 1083 + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + type_declaration_no_options_list go to state 1182 + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 354 + type_declaration go to state 1081 State 931 - 246 expr_keyword: "keyword" expr expression_block . + 31 string_builder: "start of the string" string_builder_body "end of the string" . - $default reduce using rule 246 (expr_keyword) + $default reduce using rule 31 (string_builder) State 932 - 258 expression_keyword: "type function" '<' $@9 . type_declaration_no_options_list '>' $@10 optional_expr_list_in_braces + 30 string_builder_body: string_builder_body "{" . expr "}" - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - type_declaration_no_options_list go to state 1184 - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 356 - type_declaration go to state 1083 + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1183 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 933 - 31 string_builder: "start of the string" string_builder_body "end of the string" . + 25 character_sequence: character_sequence . STRING_CHARACTER + 26 | character_sequence . STRING_CHARACTER_ESC + 29 string_builder_body: string_builder_body character_sequence . - $default reduce using rule 31 (string_builder) + STRING_CHARACTER shift, and go to state 220 + STRING_CHARACTER_ESC shift, and go to state 221 + + STRING_CHARACTER [reduce using rule 29 (string_builder_body)] + STRING_CHARACTER_ESC [reduce using rule 29 (string_builder_body)] + $default reduce using rule 29 (string_builder_body) State 934 - 30 string_builder_body: string_builder_body "{" . expr "}" + 629 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" + 630 | variable_name_with_pos_list . ',' "name" "aka" "name" + 863 array_comprehension: "begin of code block" "for" variable_name_with_pos_list . "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1185 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + "in" shift, and go to state 1184 + ',' shift, and go to state 836 State 935 - 25 character_sequence: character_sequence . STRING_CHARACTER - 26 | character_sequence . STRING_CHARACTER_ESC - 29 string_builder_body: string_builder_body character_sequence . + 849 expr_map_tuple_list: expr_map_tuple_list ',' . make_map_tuple + 858 optional_comma: ',' . + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 - STRING_CHARACTER shift, and go to state 222 - STRING_CHARACTER_ESC shift, and go to state 223 + $default reduce using rule 858 (optional_comma) - STRING_CHARACTER [reduce using rule 29 (string_builder_body)] - STRING_CHARACTER_ESC [reduce using rule 29 (string_builder_body)] - $default reduce using rule 29 (string_builder_body) + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 688 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_map_tuple go to state 1185 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 936 - 630 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" - 631 | variable_name_with_pos_list . ',' "name" "aka" "name" - 864 array_comprehension: "begin of code block" "for" variable_name_with_pos_list . "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" + 850 make_table_decl: "begin of code block" expr_map_tuple_list optional_comma . "end of code block" - "in" shift, and go to state 1186 - ',' shift, and go to state 838 + "end of code block" shift, and go to state 1186 State 937 - 850 expr_map_tuple_list: expr_map_tuple_list ',' . make_map_tuple - 859 optional_comma: ',' . - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - $default reduce using rule 859 (optional_comma) - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 690 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_map_tuple go to state 1187 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 219 expression_block: "begin of code block" expressions "end of code block" "finally" "begin of code block" . expressions "end of code block" + + $default reduce using rule 243 (expressions) + + expressions go to state 1187 State 938 - 851 make_table_decl: "begin of code block" expr_map_tuple_list optional_comma . "end of code block" + 629 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" + 630 | variable_name_with_pos_list . ',' "name" "aka" "name" + 859 array_comprehension: '[' "for" variable_name_with_pos_list . "in" expr_list "end of expression" expr array_comprehension_where ']' - "end of code block" shift, and go to state 1188 + "in" shift, and go to state 1188 + ',' shift, and go to state 836 State 939 - 219 expression_block: "begin of code block" expressions "end of code block" "finally" "begin of code block" . expressions "end of code block" + 860 array_comprehension: '[' "iterator" "for" . variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - $default reduce using rule 243 (expressions) + "$i" shift, and go to state 616 + "name" shift, and go to state 617 - expressions go to state 1189 + variable_name_with_pos_list go to state 1189 State 940 - 630 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" - 631 | variable_name_with_pos_list . ',' "name" "aka" "name" - 860 array_comprehension: '[' "for" variable_name_with_pos_list . "in" expr_list "end of expression" expr array_comprehension_where ']' + 322 expr_list: expr_list ',' . expr + 858 optional_comma: ',' . + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + $default reduce using rule 858 (optional_comma) - "in" shift, and go to state 1190 - ',' shift, and go to state 838 + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1107 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 941 - 861 array_comprehension: '[' "iterator" "for" . variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - - "$i" shift, and go to state 618 - "name" shift, and go to state 619 + 826 make_dim_decl: '[' expr_list optional_comma . ']' - variable_name_with_pos_list go to state 1191 + ']' shift, and go to state 1190 State 942 - 323 expr_list: expr_list ',' . expr - 859 optional_comma: ',' . - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - $default reduce using rule 859 (optional_comma) - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1109 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 454 expr: '(' expr_list optional_comma . ')' + + ')' shift, and go to state 1191 State 943 - 827 make_dim_decl: '[' expr_list optional_comma . ']' + 394 func_addr_name: "$i" . '(' expr ')' - ']' shift, and go to state 1192 + '(' shift, and go to state 1192 State 944 - 455 expr: '(' expr_list optional_comma . ')' + 513 expr_mtag: '@' '@' "$c" . '(' expr ')' - ')' shift, and go to state 1193 + '(' shift, and go to state 1193 State 945 - 395 func_addr_name: "$i" . '(' expr ')' + 398 func_addr_expr: '@' '@' '<' . $@22 type_declaration_no_options '>' $@23 func_addr_name + 401 | '@' '@' '<' . $@24 optional_function_argument_list optional_function_type '>' $@25 func_addr_name + + ':' reduce using rule 399 ($@24) + '>' reduce using rule 399 ($@24) + '(' reduce using rule 399 ($@24) + $default reduce using rule 396 ($@22) - '(' shift, and go to state 1194 + $@22 go to state 1194 + $@24 go to state 1195 State 946 - 514 expr_mtag: '@' '@' "$c" . '(' expr ')' + 393 func_addr_name: name_in_namespace . - '(' shift, and go to state 1195 + $default reduce using rule 393 (func_addr_name) State 947 - 399 func_addr_expr: '@' '@' '<' . $@22 type_declaration_no_options '>' $@23 func_addr_name - 402 | '@' '@' '<' . $@24 optional_function_argument_list optional_function_type '>' $@25 func_addr_name + 395 func_addr_expr: '@' '@' func_addr_name . - ':' reduce using rule 400 ($@24) - '>' reduce using rule 400 ($@24) - '(' reduce using rule 400 ($@24) - $default reduce using rule 397 ($@22) - - $@22 go to state 1196 - $@24 go to state 1197 + $default reduce using rule 395 (func_addr_expr) State 948 - 394 func_addr_name: name_in_namespace . + 72 expression_if_then_else: if_or_static_if expr expression_block . expression_else + + "else" shift, and go to state 1196 + "elif" shift, and go to state 1197 + "static_elif" shift, and go to state 1198 - $default reduce using rule 394 (func_addr_name) + $default reduce using rule 59 (expression_else) + + elif_or_static_elif go to state 1199 + expression_else go to state 1200 State 949 - 396 func_addr_expr: '@' '@' func_addr_name . + 74 expression_if_then_else: expression_if_one_liner "if" $@3 . expr expression_else_one_liner "end of expression" - $default reduce using rule 396 (func_addr_expr) + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1201 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 950 - 72 expression_if_then_else: if_or_static_if expr expression_block . expression_else + 341 expr_full_block_assumed_piped: block_or_lambda $@21 . optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block - "else" shift, and go to state 1198 - "elif" shift, and go to state 1199 - "static_elif" shift, and go to state 1200 + '[' shift, and go to state 15 - $default reduce using rule 59 (expression_else) + $default reduce using rule 119 (optional_annotation_list) - elif_or_static_elif go to state 1201 - expression_else go to state 1202 + optional_annotation_list go to state 1202 State 951 - 74 expression_if_then_else: expression_if_one_liner "if" $@3 . expr expression_else_one_liner "end of expression" - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 389 expr_named_call: name_in_namespace '(' '[' . make_struct_fields ']' ')' + 826 make_dim_decl: '[' . expr_list optional_comma ']' + 859 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 860 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "for" shift, and go to state 704 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "iterator" shift, and go to state 705 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "$f" shift, and go to state 907 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 908 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1203 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + expr_list go to state 706 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 707 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_fields go to state 1203 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 952 - 342 expr_full_block_assumed_piped: block_or_lambda $@21 . optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block + 409 expr_call: name_in_namespace '(' ')' . - '[' shift, and go to state 15 - - $default reduce using rule 119 (optional_annotation_list) - - optional_annotation_list go to state 1204 + $default reduce using rule 409 (expr_call) State 953 - 390 expr_named_call: name_in_namespace '(' '[' . make_struct_fields ']' ')' - 827 make_dim_decl: '[' . expr_list optional_comma ']' - 860 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - 861 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "for" shift, and go to state 706 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "iterator" shift, and go to state 707 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "$f" shift, and go to state 909 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 910 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - expr_list go to state 708 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 709 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_fields go to state 1205 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 322 expr_list: expr_list . ',' expr + 390 expr_named_call: name_in_namespace '(' expr_list . ',' '[' make_struct_fields ']' ')' + 411 expr_call: name_in_namespace '(' expr_list . ')' + + ',' shift, and go to state 1204 + ')' shift, and go to state 1205 State 954 - 410 expr_call: name_in_namespace '(' ')' . + 772 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr + 773 | make_struct_fields . ',' "name" ":=" expr + 776 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr + 777 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr + 778 make_struct_single: make_struct_fields . - $default reduce using rule 410 (expr_call) + ',' shift, and go to state 1159 + + $default reduce using rule 778 (make_struct_single) State 955 - 323 expr_list: expr_list . ',' expr - 391 expr_named_call: name_in_namespace '(' expr_list . ',' '[' make_struct_fields ']' ')' - 412 expr_call: name_in_namespace '(' expr_list . ')' + 410 expr_call: name_in_namespace '(' make_struct_single . ')' - ',' shift, and go to state 1206 - ')' shift, and go to state 1207 + ')' shift, and go to state 1206 State 956 - 773 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr - 774 | make_struct_fields . ',' "name" ":=" expr - 777 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr - 778 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr - 779 make_struct_single: make_struct_fields . + 300 tuple_expansion_variable_declaration: "[[" . tuple_expansion ']' ']' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 302 | "[[" . tuple_expansion ']' ']' optional_ref copy_or_move_or_clone expr "end of expression" - ',' shift, and go to state 1161 + "name" shift, and go to state 1207 - $default reduce using rule 779 (make_struct_single) + tuple_expansion go to state 1208 State 957 - 411 expr_call: name_in_namespace '(' make_struct_single . ')' + 301 tuple_expansion_variable_declaration: '(' . tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 303 | '(' . tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" - ')' shift, and go to state 1208 + "name" shift, and go to state 1207 + tuple_expansion go to state 1209 -State 958 - 301 tuple_expansion_variable_declaration: "[[" . tuple_expansion ']' ']' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 303 | "[[" . tuple_expansion ']' ']' optional_ref copy_or_move_or_clone expr "end of expression" +State 958 - "name" shift, and go to state 1209 + 305 expression_let: kwd_let optional_in_scope tuple_expansion_variable_declaration . - tuple_expansion go to state 1210 + $default reduce using rule 305 (expression_let) State 959 - 302 tuple_expansion_variable_declaration: '(' . tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 304 | '(' . tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" + 304 expression_let: kwd_let optional_in_scope let_variable_declaration . - "name" shift, and go to state 1209 - - tuple_expansion go to state 1211 + $default reduce using rule 304 (expression_let) State 960 - 306 expression_let: kwd_let optional_in_scope tuple_expansion_variable_declaration . + 336 optional_capture_list: "[[" . capture_list ']' ']' - $default reduce using rule 306 (expression_let) + "<-" shift, and go to state 1210 + ":=" shift, and go to state 1211 + '=' shift, and go to state 1212 + '&' shift, and go to state 1213 + capture_entry go to state 1214 + capture_list go to state 1215 -State 961 - 305 expression_let: kwd_let optional_in_scope let_variable_declaration . +State 961 - $default reduce using rule 305 (expression_let) + 339 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list . optional_function_argument_list optional_function_type block_or_simple_block + '(' shift, and go to state 282 -State 962 + $default reduce using rule 121 (optional_function_argument_list) - 337 optional_capture_list: "[[" . capture_list ']' ']' + optional_function_argument_list go to state 1216 - "<-" shift, and go to state 1212 - ":=" shift, and go to state 1213 - '=' shift, and go to state 1214 - '&' shift, and go to state 1215 - capture_entry go to state 1216 - capture_list go to state 1217 +State 962 + 259 expr_pipe: expr_assign " <|" expr_block . -State 963 + $default reduce using rule 259 (expr_pipe) - 340 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list . optional_function_argument_list optional_function_type block_or_simple_block - '(' shift, and go to state 284 +State 963 - $default reduce using rule 121 (optional_function_argument_list) + 472 expr: expr "is" "type" . '<' $@28 type_declaration_no_options '>' $@29 - optional_function_argument_list go to state 1218 + '<' shift, and go to state 1217 State 964 - 259 expr_pipe: expr_assign " <|" expr_block . + 512 expr_mtag: expr "is" "$f" . '(' expr ')' - $default reduce using rule 259 (expr_pipe) + '(' shift, and go to state 1218 State 965 - 473 expr: expr "is" "type" . '<' $@28 type_declaration_no_options '>' $@29 + 474 expr: expr "is" "name" . - '<' shift, and go to state 1219 + $default reduce using rule 474 (expr) State 966 - 513 expr_mtag: expr "is" "$f" . '(' expr ')' + 473 expr: expr "is" basic_type_declaration . - '(' shift, and go to state 1220 + $default reduce using rule 473 (expr) State 967 - 475 expr: expr "is" "name" . + 478 expr: expr "as" "type" . '<' $@30 type_declaration '>' $@31 - $default reduce using rule 475 (expr) + '<' shift, and go to state 1219 State 968 - 474 expr: expr "is" basic_type_declaration . + 510 expr_mtag: expr "as" "$f" . '(' expr ')' - $default reduce using rule 474 (expr) + '(' shift, and go to state 1220 State 969 - 479 expr: expr "as" "type" . '<' $@30 type_declaration '>' $@31 + 475 expr: expr "as" "name" . - '<' shift, and go to state 1221 + $default reduce using rule 475 (expr) State 970 - 511 expr_mtag: expr "as" "$f" . '(' expr ')' + 479 expr: expr "as" basic_type_declaration . - '(' shift, and go to state 1222 + $default reduce using rule 479 (expr) State 971 - 476 expr: expr "as" "name" . + 370 expr_assign_pipe_right: "$ <|" . expr_block - $default reduce using rule 476 (expr) + "begin of code block" shift, and go to state 284 + '$' shift, and go to state 501 + '@' shift, and go to state 671 + + expression_block go to state 672 + block_or_lambda go to state 673 + expr_block go to state 1221 State 972 - 480 expr: expr "as" basic_type_declaration . + 368 expr_assign_pipe_right: "@ <|" . expr_block - $default reduce using rule 480 (expr) + "begin of code block" shift, and go to state 284 + '$' shift, and go to state 501 + '@' shift, and go to state 671 + + expression_block go to state 672 + block_or_lambda go to state 673 + expr_block go to state 1222 State 973 - 371 expr_assign_pipe_right: "$ <|" . expr_block + 369 expr_assign_pipe_right: "@@ <|" . expr_block - "begin of code block" shift, and go to state 286 - '$' shift, and go to state 503 - '@' shift, and go to state 673 + "begin of code block" shift, and go to state 284 + '$' shift, and go to state 501 + '@' shift, and go to state 671 - expression_block go to state 674 - block_or_lambda go to state 675 + expression_block go to state 672 + block_or_lambda go to state 673 expr_block go to state 1223 State 974 - 369 expr_assign_pipe_right: "@ <|" . expr_block - - "begin of code block" shift, and go to state 286 - '$' shift, and go to state 503 - '@' shift, and go to state 673 + 371 expr_assign_pipe_right: expr_call_pipe . - expression_block go to state 674 - block_or_lambda go to state 675 - expr_block go to state 1224 + $default reduce using rule 371 (expr_assign_pipe_right) State 975 - 370 expr_assign_pipe_right: "@@ <|" . expr_block - - "begin of code block" shift, and go to state 286 - '$' shift, and go to state 503 - '@' shift, and go to state 673 + 380 expr_assign_pipe: expr "+=" expr_assign_pipe_right . - expression_block go to state 674 - block_or_lambda go to state 675 - expr_block go to state 1225 + $default reduce using rule 380 (expr_assign_pipe) State 976 - 372 expr_assign_pipe_right: expr_call_pipe . + 220 expr_call_pipe: expr . expr_full_block_assumed_piped + 359 expr_assign: expr "+=" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + '$' shift, and go to state 501 + '@' shift, and go to state 671 + + $default reduce using rule 359 (expr_assign) - $default reduce using rule 372 (expr_assign_pipe_right) + block_or_lambda go to state 714 + expr_full_block_assumed_piped go to state 781 State 977 - 381 expr_assign_pipe: expr "+=" expr_assign_pipe_right . + 381 expr_assign_pipe: expr "-=" expr_assign_pipe_right . $default reduce using rule 381 (expr_assign_pipe) @@ -30485,569 +30402,569 @@ State 977 State 978 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 360 expr_assign: expr "+=" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - '$' shift, and go to state 503 - '@' shift, and go to state 673 + 360 expr_assign: expr "-=" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + '$' shift, and go to state 501 + '@' shift, and go to state 671 $default reduce using rule 360 (expr_assign) - block_or_lambda go to state 716 - expr_full_block_assumed_piped go to state 783 + block_or_lambda go to state 714 + expr_full_block_assumed_piped go to state 781 State 979 - 382 expr_assign_pipe: expr "-=" expr_assign_pipe_right . + 383 expr_assign_pipe: expr "/=" expr_assign_pipe_right . - $default reduce using rule 382 (expr_assign_pipe) + $default reduce using rule 383 (expr_assign_pipe) State 980 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 361 expr_assign: expr "-=" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - '$' shift, and go to state 503 - '@' shift, and go to state 673 + 362 expr_assign: expr "/=" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + '$' shift, and go to state 501 + '@' shift, and go to state 671 - $default reduce using rule 361 (expr_assign) + $default reduce using rule 362 (expr_assign) - block_or_lambda go to state 716 - expr_full_block_assumed_piped go to state 783 + block_or_lambda go to state 714 + expr_full_block_assumed_piped go to state 781 State 981 - 384 expr_assign_pipe: expr "/=" expr_assign_pipe_right . + 382 expr_assign_pipe: expr "*=" expr_assign_pipe_right . - $default reduce using rule 384 (expr_assign_pipe) + $default reduce using rule 382 (expr_assign_pipe) State 982 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 363 expr_assign: expr "/=" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - '$' shift, and go to state 503 - '@' shift, and go to state 673 + 361 expr_assign: expr "*=" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + '$' shift, and go to state 501 + '@' shift, and go to state 671 - $default reduce using rule 363 (expr_assign) + $default reduce using rule 361 (expr_assign) - block_or_lambda go to state 716 - expr_full_block_assumed_piped go to state 783 + block_or_lambda go to state 714 + expr_full_block_assumed_piped go to state 781 State 983 - 383 expr_assign_pipe: expr "*=" expr_assign_pipe_right . + 384 expr_assign_pipe: expr "%=" expr_assign_pipe_right . - $default reduce using rule 383 (expr_assign_pipe) + $default reduce using rule 384 (expr_assign_pipe) State 984 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 362 expr_assign: expr "*=" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - '$' shift, and go to state 503 - '@' shift, and go to state 673 + 363 expr_assign: expr "%=" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + '$' shift, and go to state 501 + '@' shift, and go to state 671 - $default reduce using rule 362 (expr_assign) + $default reduce using rule 363 (expr_assign) - block_or_lambda go to state 716 - expr_full_block_assumed_piped go to state 783 + block_or_lambda go to state 714 + expr_full_block_assumed_piped go to state 781 State 985 - 385 expr_assign_pipe: expr "%=" expr_assign_pipe_right . + 374 expr_assign_pipe: expr "&=" expr_assign_pipe_right . - $default reduce using rule 385 (expr_assign_pipe) + $default reduce using rule 374 (expr_assign_pipe) State 986 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 364 expr_assign: expr "%=" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - '$' shift, and go to state 503 - '@' shift, and go to state 673 + 353 expr_assign: expr "&=" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + '$' shift, and go to state 501 + '@' shift, and go to state 671 - $default reduce using rule 364 (expr_assign) + $default reduce using rule 353 (expr_assign) - block_or_lambda go to state 716 - expr_full_block_assumed_piped go to state 783 + block_or_lambda go to state 714 + expr_full_block_assumed_piped go to state 781 State 987 - 375 expr_assign_pipe: expr "&=" expr_assign_pipe_right . + 375 expr_assign_pipe: expr "|=" expr_assign_pipe_right . $default reduce using rule 375 (expr_assign_pipe) @@ -31055,113 +30972,113 @@ State 987 State 988 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 354 expr_assign: expr "&=" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - '$' shift, and go to state 503 - '@' shift, and go to state 673 + 354 expr_assign: expr "|=" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + '$' shift, and go to state 501 + '@' shift, and go to state 671 $default reduce using rule 354 (expr_assign) - block_or_lambda go to state 716 - expr_full_block_assumed_piped go to state 783 + block_or_lambda go to state 714 + expr_full_block_assumed_piped go to state 781 State 989 - 376 expr_assign_pipe: expr "|=" expr_assign_pipe_right . + 376 expr_assign_pipe: expr "^=" expr_assign_pipe_right . $default reduce using rule 376 (expr_assign_pipe) @@ -31169,480 +31086,480 @@ State 989 State 990 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 355 expr_assign: expr "|=" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - '$' shift, and go to state 503 - '@' shift, and go to state 673 + 355 expr_assign: expr "^=" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + '$' shift, and go to state 501 + '@' shift, and go to state 671 $default reduce using rule 355 (expr_assign) - block_or_lambda go to state 716 - expr_full_block_assumed_piped go to state 783 + block_or_lambda go to state 714 + expr_full_block_assumed_piped go to state 781 State 991 - 377 expr_assign_pipe: expr "^=" expr_assign_pipe_right . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 428 | expr "<<" expr . + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 377 (expr_assign_pipe) + $default reduce using rule 428 (expr) State 992 - 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 356 expr_assign: expr "^=" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - '$' shift, and go to state 503 - '@' shift, and go to state 673 - - $default reduce using rule 356 (expr_assign) + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 429 | expr ">>" expr . + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - block_or_lambda go to state 716 - expr_full_block_assumed_piped go to state 783 + $default reduce using rule 429 (expr) State 993 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 429 | expr "<<" expr . - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 441 | expr "<=" expr . + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 429 (expr) + $default reduce using rule 441 (expr) State 994 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 430 | expr ">>" expr . - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 385 expr_assign_pipe: expr "<<=" expr_assign_pipe_right . - $default reduce using rule 430 (expr) + $default reduce using rule 385 (expr_assign_pipe) State 995 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 442 | expr "<=" expr . - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 220 expr_call_pipe: expr . expr_full_block_assumed_piped + 364 expr_assign: expr "<<=" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + '$' shift, and go to state 501 + '@' shift, and go to state 671 - $default reduce using rule 442 (expr) + $default reduce using rule 364 (expr_assign) + + block_or_lambda go to state 714 + expr_full_block_assumed_piped go to state 781 State 996 - 386 expr_assign_pipe: expr "<<=" expr_assign_pipe_right . + 386 expr_assign_pipe: expr ">>=" expr_assign_pipe_right . $default reduce using rule 386 (expr_assign_pipe) @@ -31650,1230 +31567,1230 @@ State 996 State 997 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 365 expr_assign: expr "<<=" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - '$' shift, and go to state 503 - '@' shift, and go to state 673 + 365 expr_assign: expr ">>=" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + '$' shift, and go to state 501 + '@' shift, and go to state 671 $default reduce using rule 365 (expr_assign) - block_or_lambda go to state 716 - expr_full_block_assumed_piped go to state 783 + block_or_lambda go to state 714 + expr_full_block_assumed_piped go to state 781 State 998 - 387 expr_assign_pipe: expr ">>=" expr_assign_pipe_right . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 442 | expr ">=" expr . + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 387 (expr_assign_pipe) + $default reduce using rule 442 (expr) State 999 - 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 366 expr_assign: expr ">>=" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - '$' shift, and go to state 503 - '@' shift, and go to state 673 - - $default reduce using rule 366 (expr_assign) + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 439 | expr "==" expr . + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - block_or_lambda go to state 716 - expr_full_block_assumed_piped go to state 783 + $default reduce using rule 439 (expr) State 1000 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 443 | expr ">=" expr . - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 440 | expr "!=" expr . + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 443 (expr) + $default reduce using rule 440 (expr) State 1001 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 440 | expr "==" expr . - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 391 expr_method_call: expr "->" "name" . '(' ')' + 392 | expr "->" "name" . '(' expr_list ')' - $default reduce using rule 440 (expr) + '(' shift, and go to state 1224 State 1002 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 441 | expr "!=" expr . - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 373 expr_assign_pipe: expr "<-" expr_assign_pipe_right . - $default reduce using rule 441 (expr) + $default reduce using rule 373 (expr_assign_pipe) State 1003 - 392 expr_method_call: expr "->" "name" . '(' ')' - 393 | expr "->" "name" . '(' expr_list ')' + 220 expr_call_pipe: expr . expr_full_block_assumed_piped + 351 expr_assign: expr "<-" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + '$' shift, and go to state 501 + '@' shift, and go to state 671 + + $default reduce using rule 351 (expr_assign) - '(' shift, and go to state 1226 + block_or_lambda go to state 714 + expr_full_block_assumed_piped go to state 781 State 1004 - 374 expr_assign_pipe: expr "<-" expr_assign_pipe_right . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 468 | expr "??" expr . + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 374 (expr_assign_pipe) + $default reduce using rule 468 (expr) State 1005 - 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 352 expr_assign: expr "<-" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - '$' shift, and go to state 503 - '@' shift, and go to state 673 - - $default reduce using rule 352 (expr_assign) + 507 expr_mtag: expr "?." "$f" . '(' expr ')' - block_or_lambda go to state 716 - expr_full_block_assumed_piped go to state 783 + '(' shift, and go to state 1225 State 1006 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 469 | expr "??" expr . - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 459 expr: expr "?." "name" . - $default reduce using rule 469 (expr) + $default reduce using rule 459 (expr) State 1007 - 508 expr_mtag: expr "?." "$f" . '(' expr ')' - - '(' shift, and go to state 1227 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 457 | expr "?[" expr . ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + ']' shift, and go to state 1226 State 1008 - 460 expr: expr "?." "name" . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 492 | expr "<|" expr . + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "->" shift, and go to state 748 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 460 (expr) + $default reduce using rule 492 (expr) State 1009 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 458 | expr "?[" expr . ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - ']' shift, and go to state 1228 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 493 | expr "|>" expr . + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "->" shift, and go to state 748 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + + $default reduce using rule 493 (expr) State 1010 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 493 | expr "<|" expr . - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "->" shift, and go to state 750 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 412 expr_call: basic_type_declaration . '(' ')' + 413 | basic_type_declaration . '(' expr_list ')' + 494 expr: expr "|>" basic_type_declaration . - $default reduce using rule 493 (expr) + '(' shift, and go to state 782 + + $default reduce using rule 494 (expr) State 1011 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 494 | expr "|>" expr . - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "->" shift, and go to state 750 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 352 expr_assign: expr ":=" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 494 (expr) + $default reduce using rule 352 (expr_assign) State 1012 - 413 expr_call: basic_type_declaration . '(' ')' - 414 | basic_type_declaration . '(' expr_list ')' - 495 expr: expr "|>" basic_type_declaration . - - '(' shift, and go to state 784 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 430 | expr "<<<" expr . + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 495 (expr) + $default reduce using rule 430 (expr) State 1013 - 353 expr_assign: expr ":=" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 431 | expr ">>>" expr . + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 353 (expr_assign) + $default reduce using rule 431 (expr) State 1014 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 431 | expr "<<<" expr . - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 387 expr_assign_pipe: expr "<<<=" expr_assign_pipe_right . - $default reduce using rule 431 (expr) + $default reduce using rule 387 (expr_assign_pipe) State 1015 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 432 | expr ">>>" expr . - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 220 expr_call_pipe: expr . expr_full_block_assumed_piped + 366 expr_assign: expr "<<<=" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + '$' shift, and go to state 501 + '@' shift, and go to state 671 - $default reduce using rule 432 (expr) + $default reduce using rule 366 (expr_assign) + + block_or_lambda go to state 714 + expr_full_block_assumed_piped go to state 781 State 1016 - 388 expr_assign_pipe: expr "<<<=" expr_assign_pipe_right . + 388 expr_assign_pipe: expr ">>>=" expr_assign_pipe_right . $default reduce using rule 388 (expr_assign_pipe) @@ -32881,518 +32798,518 @@ State 1016 State 1017 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 367 expr_assign: expr "<<<=" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - '$' shift, and go to state 503 - '@' shift, and go to state 673 + 367 expr_assign: expr ">>>=" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + '$' shift, and go to state 501 + '@' shift, and go to state 671 $default reduce using rule 367 (expr_assign) - block_or_lambda go to state 716 - expr_full_block_assumed_piped go to state 783 + block_or_lambda go to state 714 + expr_full_block_assumed_piped go to state 781 State 1018 - 389 expr_assign_pipe: expr ">>>=" expr_assign_pipe_right . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 446 | expr "&&" expr . + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 389 (expr_assign_pipe) + $default reduce using rule 446 (expr) State 1019 - 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 368 expr_assign: expr ">>>=" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - '$' shift, and go to state 503 - '@' shift, and go to state 673 - - $default reduce using rule 368 (expr_assign) - - block_or_lambda go to state 716 - expr_full_block_assumed_piped go to state 783 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 447 | expr "||" expr . + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "^^" shift, and go to state 762 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + + $default reduce using rule 447 (expr) State 1020 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 447 | expr "&&" expr . - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 448 | expr "^^" expr . + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 447 (expr) + $default reduce using rule 448 (expr) State 1021 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 448 | expr "||" expr . - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "^^" shift, and go to state 764 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 377 expr_assign_pipe: expr "&&=" expr_assign_pipe_right . - $default reduce using rule 448 (expr) + $default reduce using rule 377 (expr_assign_pipe) State 1022 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 449 | expr "^^" expr . - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 220 expr_call_pipe: expr . expr_full_block_assumed_piped + 356 expr_assign: expr "&&=" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + '$' shift, and go to state 501 + '@' shift, and go to state 671 - $default reduce using rule 449 (expr) + $default reduce using rule 356 (expr_assign) + + block_or_lambda go to state 714 + expr_full_block_assumed_piped go to state 781 State 1023 - 378 expr_assign_pipe: expr "&&=" expr_assign_pipe_right . + 378 expr_assign_pipe: expr "||=" expr_assign_pipe_right . $default reduce using rule 378 (expr_assign_pipe) @@ -33400,113 +33317,113 @@ State 1023 State 1024 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 357 expr_assign: expr "&&=" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - '$' shift, and go to state 503 - '@' shift, and go to state 673 + 357 expr_assign: expr "||=" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + '$' shift, and go to state 501 + '@' shift, and go to state 671 $default reduce using rule 357 (expr_assign) - block_or_lambda go to state 716 - expr_full_block_assumed_piped go to state 783 + block_or_lambda go to state 714 + expr_full_block_assumed_piped go to state 781 State 1025 - 379 expr_assign_pipe: expr "||=" expr_assign_pipe_right . + 379 expr_assign_pipe: expr "^^=" expr_assign_pipe_right . $default reduce using rule 379 (expr_assign_pipe) @@ -33514,22442 +33431,22240 @@ State 1025 State 1026 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 358 expr_assign: expr "||=" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - '$' shift, and go to state 503 - '@' shift, and go to state 673 + 358 expr_assign: expr "^^=" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + '$' shift, and go to state 501 + '@' shift, and go to state 671 $default reduce using rule 358 (expr_assign) - block_or_lambda go to state 716 - expr_full_block_assumed_piped go to state 783 + block_or_lambda go to state 714 + expr_full_block_assumed_piped go to state 781 State 1027 - 380 expr_assign_pipe: expr "^^=" expr_assign_pipe_right . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 449 | expr ".." expr . + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 380 (expr_assign_pipe) + ".." error (nonassociative) + $default reduce using rule 449 (expr) -State 1028 - 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 359 expr_assign: expr "^^=" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - '$' shift, and go to state 503 - '@' shift, and go to state 673 +State 1028 - $default reduce using rule 359 (expr_assign) + 372 expr_assign_pipe: expr '=' expr_assign_pipe_right . - block_or_lambda go to state 716 - expr_full_block_assumed_piped go to state 783 + $default reduce using rule 372 (expr_assign_pipe) State 1029 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 450 | expr ".." expr . - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 220 expr_call_pipe: expr . expr_full_block_assumed_piped + 350 expr_assign: expr '=' expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + '$' shift, and go to state 501 + '@' shift, and go to state 671 - ".." error (nonassociative) + $default reduce using rule 350 (expr_assign) - $default reduce using rule 450 (expr) + block_or_lambda go to state 714 + expr_full_block_assumed_piped go to state 781 State 1030 - 373 expr_assign_pipe: expr '=' expr_assign_pipe_right . - - $default reduce using rule 373 (expr_assign_pipe) + 480 expr: expr '?' "as" . "name" + 483 | expr '?' "as" . "type" '<' $@32 type_declaration '>' $@33 + 484 | expr '?' "as" . basic_type_declaration + 511 expr_mtag: expr '?' "as" . "$f" '(' expr ')' + + "type" shift, and go to state 1227 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "$f" shift, and go to state 1228 + "name" shift, and go to state 1229 + + basic_type_declaration go to state 1230 State 1031 - 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 351 expr_assign: expr '=' expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - '$' shift, and go to state 503 - '@' shift, and go to state 673 - - $default reduce using rule 351 (expr_assign) - - block_or_lambda go to state 716 - expr_full_block_assumed_piped go to state 783 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 469 | expr '?' expr . ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + ':' shift, and go to state 1231 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 State 1032 - 481 expr: expr '?' "as" . "name" - 484 | expr '?' "as" . "type" '<' $@32 type_declaration '>' $@33 - 485 | expr '?' "as" . basic_type_declaration - 512 expr_mtag: expr '?' "as" . "$f" '(' expr ')' - - "type" shift, and go to state 1229 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "$f" shift, and go to state 1230 - "name" shift, and go to state 1231 - - basic_type_declaration go to state 1232 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 444 | expr '|' expr . + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + + $default reduce using rule 444 (expr) State 1033 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 470 | expr '?' expr . ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - ':' shift, and go to state 1233 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 445 | expr '^' expr . + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + + $default reduce using rule 445 (expr) State 1034 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 445 | expr '|' expr . - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 443 | expr '&' expr . + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 445 (expr) + $default reduce using rule 443 (expr) State 1035 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 446 | expr '^' expr . - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 437 | expr '<' expr . + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 446 (expr) + $default reduce using rule 437 (expr) State 1036 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 444 | expr '&' expr . - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 438 | expr '>' expr . + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 444 (expr) + $default reduce using rule 438 (expr) State 1037 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 438 | expr '<' expr . - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 433 | expr '-' expr . + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 438 (expr) + $default reduce using rule 433 (expr) State 1038 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 439 | expr '>' expr . - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 432 | expr '+' expr . + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 439 (expr) + $default reduce using rule 432 (expr) State 1039 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 434 | expr '-' expr . - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 434 | expr '*' expr . + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + '.' shift, and go to state 779 + '[' shift, and go to state 780 $default reduce using rule 434 (expr) State 1040 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 433 | expr '+' expr . - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 435 | expr '/' expr . + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 433 (expr) + $default reduce using rule 435 (expr) State 1041 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 435 | expr '*' expr . - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 436 | expr '%' expr . + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 435 (expr) + $default reduce using rule 436 (expr) State 1042 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 436 | expr '/' expr . - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 460 expr: expr '.' "?." . "name" + 509 expr_mtag: expr '.' "?." . "$f" '(' expr ')' - $default reduce using rule 436 (expr) + "$f" shift, and go to state 1232 + "name" shift, and go to state 1233 State 1043 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 437 | expr '%' expr . - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - - $default reduce using rule 437 (expr) + 458 expr: expr '.' "?[" . expr ']' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1234 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1044 - 461 expr: expr '.' "?." . "name" - 510 expr_mtag: expr '.' "?." . "$f" '(' expr ')' + 506 expr_mtag: expr '.' "$f" . '(' expr ')' - "$f" shift, and go to state 1234 - "name" shift, and go to state 1235 + '(' shift, and go to state 1235 State 1045 - 459 expr: expr '.' "?[" . expr ']' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1236 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 402 expr_field: expr '.' "name" . + 404 | expr '.' "name" . '(' ')' + 405 | expr '.' "name" . '(' expr_list ')' + '(' shift, and go to state 1236 -State 1046 + '(' [reduce using rule 402 (expr_field)] + $default reduce using rule 402 (expr_field) - 507 expr_mtag: expr '.' "$f" . '(' expr ')' - '(' shift, and go to state 1237 +State 1046 + 403 expr_field: expr '.' '.' . "name" + 508 expr_mtag: expr '.' '.' . "$f" '(' expr ')' -State 1047 + "$f" shift, and go to state 1237 + "name" shift, and go to state 1238 - 403 expr_field: expr '.' "name" . - 405 | expr '.' "name" . '(' ')' - 406 | expr '.' "name" . '(' expr_list ')' - '(' shift, and go to state 1238 +State 1047 - '(' [reduce using rule 403 (expr_field)] - $default reduce using rule 403 (expr_field) + 456 expr: expr '.' '[' . expr ']' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1239 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1048 - 404 expr_field: expr '.' '.' . "name" - 509 expr_mtag: expr '.' '.' . "$f" '(' expr ')' + 408 expr_field: expr '.' $@26 . error $@27 - "$f" shift, and go to state 1239 - "name" shift, and go to state 1240 + error shift, and go to state 1240 State 1049 - 457 expr: expr '.' '[' . expr ']' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1241 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 455 | expr '[' expr . ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + ']' shift, and go to state 1241 State 1050 - 409 expr_field: expr '.' $@26 . error $@27 + 412 expr_call: basic_type_declaration '(' ')' . - error shift, and go to state 1242 + $default reduce using rule 412 (expr_call) State 1051 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 456 | expr '[' expr . ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - ']' shift, and go to state 1243 + 322 expr_list: expr_list . ',' expr + 413 expr_call: basic_type_declaration '(' expr_list . ')' + ',' shift, and go to state 856 + ')' shift, and go to state 1242 -State 1052 - 413 expr_call: basic_type_declaration '(' ')' . +State 1052 - $default reduce using rule 413 (expr_call) + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 590 enum_list: enum_list "name" '=' expr . "end of expression" + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + "end of expression" shift, and go to state 1243 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 State 1053 - 323 expr_list: expr_list . ',' expr - 414 expr_call: basic_type_declaration '(' expr_list . ')' + 610 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 . "end of code block" - ',' shift, and go to state 858 - ')' shift, and go to state 1244 + "end of code block" shift, and go to state 1244 State 1054 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 591 enum_list: enum_list "name" '=' expr . "end of expression" - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - "end of expression" shift, and go to state 1245 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 118 annotation_list: annotation_list . ',' annotation_declaration + 120 optional_annotation_list: '[' annotation_list . ']' + 535 struct_variable_declaration_list: struct_variable_declaration_list '[' annotation_list . ']' "end of expression" + + ',' shift, and go to state 105 + ']' shift, and go to state 1245 State 1055 - 611 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 . "end of code block" + 532 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" . optional_public_or_private_member_variable "abstract" optional_constant $@35 function_declaration_header "end of expression" + 534 | struct_variable_declaration_list optional_annotation_list "def" . optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@36 function_declaration_header expression_block - "end of code block" shift, and go to state 1246 + "public" shift, and go to state 1246 + "private" shift, and go to state 1247 + $default reduce using rule 522 (optional_public_or_private_member_variable) -State 1056 + optional_public_or_private_member_variable go to state 1248 - 118 annotation_list: annotation_list . ',' annotation_declaration - 120 optional_annotation_list: '[' annotation_list . ']' - 536 struct_variable_declaration_list: struct_variable_declaration_list '[' annotation_list . ']' "end of expression" - ',' shift, and go to state 107 - ']' shift, and go to state 1247 +State 1056 + 527 structure_variable_declaration: optional_field_annotation . optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration -State 1057 + "static" shift, and go to state 1249 - 533 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" . optional_public_or_private_member_variable "abstract" optional_constant $@35 function_declaration_header "end of expression" - 535 | struct_variable_declaration_list optional_annotation_list "def" . optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@36 function_declaration_header expression_block + $default reduce using rule 525 (optional_static_member_variable) - "public" shift, and go to state 1248 - "private" shift, and go to state 1249 + optional_static_member_variable go to state 1250 - $default reduce using rule 523 (optional_public_or_private_member_variable) - optional_public_or_private_member_variable go to state 1250 +State 1057 + 530 struct_variable_declaration_list: struct_variable_declaration_list $@34 structure_variable_declaration . "end of expression" -State 1058 + "end of expression" shift, and go to state 1251 - 528 structure_variable_declaration: optional_field_annotation . optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration - "static" shift, and go to state 1251 +State 1058 - $default reduce using rule 526 (optional_static_member_variable) + 570 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" "aka" "name" . - optional_static_member_variable go to state 1252 + $default reduce using rule 570 (let_variable_name_with_pos_list) State 1059 - 531 struct_variable_declaration_list: struct_variable_declaration_list $@34 structure_variable_declaration . "end of expression" + 573 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr_pipe . - "end of expression" shift, and go to state 1253 + $default reduce using rule 573 (let_variable_declaration) State 1060 - 571 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" "aka" "name" . - - $default reduce using rule 571 (let_variable_name_with_pos_list) + 220 expr_call_pipe: expr . expr_full_block_assumed_piped + 349 expr_assign: expr . + 350 | expr . '=' expr + 351 | expr . "<-" expr + 352 | expr . ":=" expr + 353 | expr . "&=" expr + 354 | expr . "|=" expr + 355 | expr . "^=" expr + 356 | expr . "&&=" expr + 357 | expr . "||=" expr + 358 | expr . "^^=" expr + 359 | expr . "+=" expr + 360 | expr . "-=" expr + 361 | expr . "*=" expr + 362 | expr . "/=" expr + 363 | expr . "%=" expr + 364 | expr . "<<=" expr + 365 | expr . ">>=" expr + 366 | expr . "<<<=" expr + 367 | expr . ">>>=" expr + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 572 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr . "end of expression" + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "+=" shift, and go to state 857 + "-=" shift, and go to state 858 + "/=" shift, and go to state 859 + "*=" shift, and go to state 860 + "%=" shift, and go to state 861 + "&=" shift, and go to state 862 + "|=" shift, and go to state 863 + "^=" shift, and go to state 864 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + "<<=" shift, and go to state 865 + ">>=" shift, and go to state 866 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "<-" shift, and go to state 867 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + ":=" shift, and go to state 755 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "<<<=" shift, and go to state 868 + ">>>=" shift, and go to state 869 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + "&&=" shift, and go to state 870 + "||=" shift, and go to state 871 + "^^=" shift, and go to state 872 + ".." shift, and go to state 766 + "end of expression" shift, and go to state 1252 + '=' shift, and go to state 873 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + '$' shift, and go to state 501 + '@' shift, and go to state 671 + + $default reduce using rule 349 (expr_assign) + + block_or_lambda go to state 714 + expr_full_block_assumed_piped go to state 781 State 1061 - 574 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr_pipe . + 574 let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr "end of expression" . $default reduce using rule 574 (let_variable_declaration) State 1062 - 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 350 expr_assign: expr . - 351 | expr . '=' expr - 352 | expr . "<-" expr - 353 | expr . ":=" expr - 354 | expr . "&=" expr - 355 | expr . "|=" expr - 356 | expr . "^=" expr - 357 | expr . "&&=" expr - 358 | expr . "||=" expr - 359 | expr . "^^=" expr - 360 | expr . "+=" expr - 361 | expr . "-=" expr - 362 | expr . "*=" expr - 363 | expr . "/=" expr - 364 | expr . "%=" expr - 365 | expr . "<<=" expr - 366 | expr . ">>=" expr - 367 | expr . "<<<=" expr - 368 | expr . ">>>=" expr - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 573 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr . "end of expression" - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "+=" shift, and go to state 859 - "-=" shift, and go to state 860 - "/=" shift, and go to state 861 - "*=" shift, and go to state 862 - "%=" shift, and go to state 863 - "&=" shift, and go to state 864 - "|=" shift, and go to state 865 - "^=" shift, and go to state 866 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - "<<=" shift, and go to state 867 - ">>=" shift, and go to state 868 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "<-" shift, and go to state 869 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - ":=" shift, and go to state 757 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "<<<=" shift, and go to state 870 - ">>>=" shift, and go to state 871 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - "&&=" shift, and go to state 872 - "||=" shift, and go to state 873 - "^^=" shift, and go to state 874 - ".." shift, and go to state 768 - "end of expression" shift, and go to state 1254 - '=' shift, and go to state 875 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - '$' shift, and go to state 503 - '@' shift, and go to state 673 + 690 type_declaration_no_options: "type" '<' $@49 type_declaration '>' . $@50 - $default reduce using rule 350 (expr_assign) + $default reduce using rule 689 ($@50) - block_or_lambda go to state 716 - expr_full_block_assumed_piped go to state 783 + $@50 go to state 1253 State 1063 - 575 let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr "end of expression" . + 713 type_declaration_no_options: "array" '<' $@54 type_declaration '>' . $@55 - $default reduce using rule 575 (let_variable_declaration) + $default reduce using rule 712 ($@55) + + $@55 go to state 1254 State 1064 - 691 type_declaration_no_options: "type" '<' $@49 type_declaration '>' . $@50 + 716 type_declaration_no_options: "table" '<' $@56 table_type_pair '>' . $@57 - $default reduce using rule 690 ($@50) + $default reduce using rule 715 ($@57) - $@50 go to state 1255 + $@57 go to state 1255 State 1065 - 714 type_declaration_no_options: "array" '<' $@54 type_declaration '>' . $@55 - - $default reduce using rule 713 ($@55) - - $@55 go to state 1256 + 679 table_type_pair: type_declaration "end of expression" . type_declaration + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 354 + type_declaration go to state 1256 State 1066 - 717 type_declaration_no_options: "table" '<' $@56 table_type_pair '>' . $@57 + 719 type_declaration_no_options: "iterator" '<' $@58 type_declaration '>' . $@59 - $default reduce using rule 716 ($@57) + $default reduce using rule 718 ($@59) - $@57 go to state 1257 + $@59 go to state 1257 State 1067 - 680 table_type_pair: type_declaration "end of expression" . type_declaration - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 356 - type_declaration go to state 1258 + 709 type_declaration_no_options: "smart_ptr" '<' $@52 type_declaration '>' . $@53 + $default reduce using rule 708 ($@53) + + $@53 go to state 1258 -State 1068 - 720 type_declaration_no_options: "iterator" '<' $@58 type_declaration '>' . $@59 +State 1068 - $default reduce using rule 719 ($@59) + 671 bitfield_bits: bitfield_bits "end of expression" . "name" - $@59 go to state 1259 + "name" shift, and go to state 1259 State 1069 - 710 type_declaration_no_options: "smart_ptr" '<' $@52 type_declaration '>' . $@53 + 677 bitfield_type_declaration: "bitfield" '<' $@47 bitfield_bits '>' . $@48 - $default reduce using rule 709 ($@53) + $default reduce using rule 676 ($@48) - $@53 go to state 1260 + $@48 go to state 1260 State 1070 - 672 bitfield_bits: bitfield_bits "end of expression" . "name" + 723 type_declaration_no_options: "block" '<' $@60 type_declaration '>' . $@61 - "name" shift, and go to state 1261 + $default reduce using rule 722 ($@61) + $@61 go to state 1261 -State 1071 - 678 bitfield_type_declaration: "bitfield" '<' $@47 bitfield_bits '>' . $@48 +State 1071 - $default reduce using rule 677 ($@48) + 726 type_declaration_no_options: "block" '<' $@62 optional_function_argument_list optional_function_type . '>' $@63 - $@48 go to state 1262 + '>' shift, and go to state 1262 State 1072 - 724 type_declaration_no_options: "block" '<' $@60 type_declaration '>' . $@61 + 730 type_declaration_no_options: "function" '<' $@64 type_declaration '>' . $@65 - $default reduce using rule 723 ($@61) + $default reduce using rule 729 ($@65) - $@61 go to state 1263 + $@65 go to state 1263 State 1073 - 727 type_declaration_no_options: "block" '<' $@62 optional_function_argument_list optional_function_type . '>' $@63 + 733 type_declaration_no_options: "function" '<' $@66 optional_function_argument_list optional_function_type . '>' $@67 '>' shift, and go to state 1264 State 1074 - 731 type_declaration_no_options: "function" '<' $@64 type_declaration '>' . $@65 + 737 type_declaration_no_options: "lambda" '<' $@68 type_declaration '>' . $@69 - $default reduce using rule 730 ($@65) + $default reduce using rule 736 ($@69) - $@65 go to state 1265 + $@69 go to state 1265 State 1075 - 734 type_declaration_no_options: "function" '<' $@66 optional_function_argument_list optional_function_type . '>' $@67 + 740 type_declaration_no_options: "lambda" '<' $@70 optional_function_argument_list optional_function_type . '>' $@71 '>' shift, and go to state 1266 State 1076 - 738 type_declaration_no_options: "lambda" '<' $@68 type_declaration '>' . $@69 - - $default reduce using rule 737 ($@69) - - $@69 go to state 1267 + 543 tuple_type_list: tuple_type_list "end of expression" . tuple_type + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 606 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + tuple_type go to state 1267 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 354 + type_declaration go to state 609 State 1077 - 741 type_declaration_no_options: "lambda" '<' $@70 optional_function_argument_list optional_function_type . '>' $@71 + 743 type_declaration_no_options: "tuple" '<' $@72 tuple_type_list '>' . $@73 + + $default reduce using rule 742 ($@73) - '>' shift, and go to state 1268 + $@73 go to state 1268 State 1078 - 544 tuple_type_list: tuple_type_list "end of expression" . tuple_type - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 608 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - tuple_type go to state 1269 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 356 - type_declaration go to state 611 + 549 variant_type_list: variant_type_list "end of expression" . variant_type + + "name" shift, and go to state 611 + + variant_type go to state 1269 State 1079 - 744 type_declaration_no_options: "tuple" '<' $@72 tuple_type_list '>' . $@73 + 746 type_declaration_no_options: "variant" '<' $@74 variant_type_list '>' . $@75 - $default reduce using rule 743 ($@73) + $default reduce using rule 745 ($@75) - $@73 go to state 1270 + $@75 go to state 1270 State 1080 - 550 variant_type_list: variant_type_list "end of expression" . variant_type - - "name" shift, and go to state 613 + 252 type_declaration_no_options_list: type_declaration_no_options_list . "end of expression" type_declaration + 694 type_declaration_no_options: '$' name_in_namespace '<' $@51 type_declaration_no_options_list . '>' '(' optional_expr_list ')' - variant_type go to state 1271 + "end of expression" shift, and go to state 1271 + '>' shift, and go to state 1272 State 1081 - 747 type_declaration_no_options: "variant" '<' $@74 variant_type_list '>' . $@75 + 251 type_declaration_no_options_list: type_declaration . + 748 type_declaration: type_declaration . '|' type_declaration_no_options + 749 | type_declaration . '|' '#' - $default reduce using rule 746 ($@75) + '|' shift, and go to state 415 - $@75 go to state 1272 + $default reduce using rule 251 (type_declaration_no_options_list) State 1082 - 252 type_declaration_no_options_list: type_declaration_no_options_list . "end of expression" type_declaration - 695 type_declaration_no_options: '$' name_in_namespace '<' $@51 type_declaration_no_options_list . '>' '(' optional_expr_list ')' + 692 type_declaration_no_options: '$' name_in_namespace '(' optional_expr_list ')' . - "end of expression" shift, and go to state 1273 - '>' shift, and go to state 1274 + $default reduce using rule 692 (type_declaration_no_options) State 1083 - 251 type_declaration_no_options_list: type_declaration . - 749 type_declaration: type_declaration . '|' type_declaration_no_options - 750 | type_declaration . '|' '#' - - '|' shift, and go to state 417 + 681 dim_list: dim_list '[' expr ']' . - $default reduce using rule 251 (type_declaration_no_options_list) + $default reduce using rule 681 (dim_list) State 1084 - 693 type_declaration_no_options: '$' name_in_namespace '(' optional_expr_list ')' . + 541 tuple_type: "name" ':' type_declaration . + 748 type_declaration: type_declaration . '|' type_declaration_no_options + 749 | type_declaration . '|' '#' - $default reduce using rule 693 (type_declaration_no_options) + '|' shift, and go to state 415 + $default reduce using rule 541 (tuple_type) -State 1085 - 682 dim_list: dim_list '[' expr ']' . +State 1085 - $default reduce using rule 682 (dim_list) + 547 variant_type: "name" ':' type_declaration . + 748 type_declaration: type_declaration . '|' type_declaration_no_options + 749 | type_declaration . '|' '#' + '|' shift, and go to state 415 -State 1086 + $default reduce using rule 547 (variant_type) - 542 tuple_type: "name" ':' type_declaration . - 749 type_declaration: type_declaration . '|' type_declaration_no_options - 750 | type_declaration . '|' '#' - '|' shift, and go to state 417 +State 1086 - $default reduce using rule 542 (tuple_type) + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 627 variable_name_with_pos_list: "$i" '(' expr . ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + ')' shift, and go to state 1273 State 1087 - 548 variant_type: "name" ':' type_declaration . - 749 type_declaration: type_declaration . '|' type_declaration_no_options - 750 | type_declaration . '|' '#' - - '|' shift, and go to state 417 + 628 variable_name_with_pos_list: "name" "aka" "name" . - $default reduce using rule 548 (variant_type) + $default reduce using rule 628 (variable_name_with_pos_list) State 1088 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 628 variable_name_with_pos_list: "$i" '(' expr . ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - ')' shift, and go to state 1275 + 629 variable_name_with_pos_list: variable_name_with_pos_list ',' "name" . + 630 | variable_name_with_pos_list ',' "name" . "aka" "name" + "aka" shift, and go to state 1274 -State 1089 + $default reduce using rule 629 (variable_name_with_pos_list) - 629 variable_name_with_pos_list: "name" "aka" "name" . - $default reduce using rule 629 (variable_name_with_pos_list) +State 1089 + 557 variable_declaration: variable_name_with_pos_list ':' type_declaration . + 558 | variable_name_with_pos_list ':' type_declaration . copy_or_move expr + 748 type_declaration: type_declaration . '|' type_declaration_no_options + 749 | type_declaration . '|' '#' -State 1090 + "<-" shift, and go to state 835 + '=' shift, and go to state 837 + '|' shift, and go to state 415 - 630 variable_name_with_pos_list: variable_name_with_pos_list ',' "name" . - 631 | variable_name_with_pos_list ',' "name" . "aka" "name" + $default reduce using rule 557 (variable_declaration) - "aka" shift, and go to state 1276 + copy_or_move go to state 1275 - $default reduce using rule 630 (variable_name_with_pos_list) +State 1090 -State 1091 + 560 variable_declaration: variable_name_with_pos_list copy_or_move expr_pipe . - 558 variable_declaration: variable_name_with_pos_list ':' type_declaration . - 559 | variable_name_with_pos_list ':' type_declaration . copy_or_move expr - 749 type_declaration: type_declaration . '|' type_declaration_no_options - 750 | type_declaration . '|' '#' + $default reduce using rule 560 (variable_declaration) - "<-" shift, and go to state 837 - '=' shift, and go to state 839 - '|' shift, and go to state 417 - $default reduce using rule 558 (variable_declaration) +State 1091 + + 220 expr_call_pipe: expr . expr_full_block_assumed_piped + 349 expr_assign: expr . + 350 | expr . '=' expr + 351 | expr . "<-" expr + 352 | expr . ":=" expr + 353 | expr . "&=" expr + 354 | expr . "|=" expr + 355 | expr . "^=" expr + 356 | expr . "&&=" expr + 357 | expr . "||=" expr + 358 | expr . "^^=" expr + 359 | expr . "+=" expr + 360 | expr . "-=" expr + 361 | expr . "*=" expr + 362 | expr . "/=" expr + 363 | expr . "%=" expr + 364 | expr . "<<=" expr + 365 | expr . ">>=" expr + 366 | expr . "<<<=" expr + 367 | expr . ">>>=" expr + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 559 variable_declaration: variable_name_with_pos_list copy_or_move expr . + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "+=" shift, and go to state 857 + "-=" shift, and go to state 858 + "/=" shift, and go to state 859 + "*=" shift, and go to state 860 + "%=" shift, and go to state 861 + "&=" shift, and go to state 862 + "|=" shift, and go to state 863 + "^=" shift, and go to state 864 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + "<<=" shift, and go to state 865 + ">>=" shift, and go to state 866 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "<-" shift, and go to state 867 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + ":=" shift, and go to state 755 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "<<<=" shift, and go to state 868 + ">>>=" shift, and go to state 869 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + "&&=" shift, and go to state 870 + "||=" shift, and go to state 871 + "^^=" shift, and go to state 872 + ".." shift, and go to state 766 + '=' shift, and go to state 873 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + '$' shift, and go to state 501 + '@' shift, and go to state 671 + + " <|" reduce using rule 349 (expr_assign) + $default reduce using rule 559 (variable_declaration) - copy_or_move go to state 1277 + block_or_lambda go to state 714 + expr_full_block_assumed_piped go to state 781 State 1092 - 561 variable_declaration: variable_name_with_pos_list copy_or_move expr_pipe . - - $default reduce using rule 561 (variable_declaration) + 686 type_declaration_no_options: type_declaration_no_options . dim_list + 687 | type_declaration_no_options . '[' ']' + 695 | type_declaration_no_options . '-' '[' ']' + 696 | type_declaration_no_options . "explicit" + 697 | type_declaration_no_options . "const" + 698 | type_declaration_no_options . '-' "const" + 699 | type_declaration_no_options . '&' + 700 | type_declaration_no_options . '-' '&' + 701 | type_declaration_no_options . '#' + 702 | type_declaration_no_options . "implicit" + 703 | type_declaration_no_options . '-' '#' + 704 | type_declaration_no_options . "==" "const" + 705 | type_declaration_no_options . "==" '&' + 706 | type_declaration_no_options . '?' + 710 | type_declaration_no_options . "??" + 805 make_struct_decl: "struct" '<' $@88 type_declaration_no_options . '>' $@89 '(' use_initializer make_struct_dim ')' + + "const" shift, and go to state 404 + "implicit" shift, and go to state 405 + "explicit" shift, and go to state 406 + "==" shift, and go to state 407 + "??" shift, and go to state 408 + '?' shift, and go to state 409 + '&' shift, and go to state 410 + '>' shift, and go to state 1276 + '-' shift, and go to state 411 + '[' shift, and go to state 412 + '#' shift, and go to state 413 + + dim_list go to state 414 State 1093 - 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 350 expr_assign: expr . - 351 | expr . '=' expr - 352 | expr . "<-" expr - 353 | expr . ":=" expr - 354 | expr . "&=" expr - 355 | expr . "|=" expr - 356 | expr . "^=" expr - 357 | expr . "&&=" expr - 358 | expr . "||=" expr - 359 | expr . "^^=" expr - 360 | expr . "+=" expr - 361 | expr . "-=" expr - 362 | expr . "*=" expr - 363 | expr . "/=" expr - 364 | expr . "%=" expr - 365 | expr . "<<=" expr - 366 | expr . ">>=" expr - 367 | expr . "<<<=" expr - 368 | expr . ">>>=" expr - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 560 variable_declaration: variable_name_with_pos_list copy_or_move expr . - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "+=" shift, and go to state 859 - "-=" shift, and go to state 860 - "/=" shift, and go to state 861 - "*=" shift, and go to state 862 - "%=" shift, and go to state 863 - "&=" shift, and go to state 864 - "|=" shift, and go to state 865 - "^=" shift, and go to state 866 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - "<<=" shift, and go to state 867 - ">>=" shift, and go to state 868 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "<-" shift, and go to state 869 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - ":=" shift, and go to state 757 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "<<<=" shift, and go to state 870 - ">>>=" shift, and go to state 871 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - "&&=" shift, and go to state 872 - "||=" shift, and go to state 873 - "^^=" shift, and go to state 874 - ".." shift, and go to state 768 - '=' shift, and go to state 875 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - '$' shift, and go to state 503 - '@' shift, and go to state 673 - - " <|" reduce using rule 350 (expr_assign) - $default reduce using rule 560 (variable_declaration) - - block_or_lambda go to state 716 - expr_full_block_assumed_piped go to state 783 + 686 type_declaration_no_options: type_declaration_no_options . dim_list + 687 | type_declaration_no_options . '[' ']' + 695 | type_declaration_no_options . '-' '[' ']' + 696 | type_declaration_no_options . "explicit" + 697 | type_declaration_no_options . "const" + 698 | type_declaration_no_options . '-' "const" + 699 | type_declaration_no_options . '&' + 700 | type_declaration_no_options . '-' '&' + 701 | type_declaration_no_options . '#' + 702 | type_declaration_no_options . "implicit" + 703 | type_declaration_no_options . '-' '#' + 704 | type_declaration_no_options . "==" "const" + 705 | type_declaration_no_options . "==" '&' + 706 | type_declaration_no_options . '?' + 710 | type_declaration_no_options . "??" + 808 make_struct_decl: "class" '<' $@90 type_declaration_no_options . '>' $@91 '(' use_initializer make_struct_dim ')' + + "const" shift, and go to state 404 + "implicit" shift, and go to state 405 + "explicit" shift, and go to state 406 + "==" shift, and go to state 407 + "??" shift, and go to state 408 + '?' shift, and go to state 409 + '&' shift, and go to state 410 + '>' shift, and go to state 1277 + '-' shift, and go to state 411 + '[' shift, and go to state 412 + '#' shift, and go to state 413 + + dim_list go to state 414 State 1094 - 687 type_declaration_no_options: type_declaration_no_options . dim_list - 688 | type_declaration_no_options . '[' ']' - 696 | type_declaration_no_options . '-' '[' ']' - 697 | type_declaration_no_options . "explicit" - 698 | type_declaration_no_options . "const" - 699 | type_declaration_no_options . '-' "const" - 700 | type_declaration_no_options . '&' - 701 | type_declaration_no_options . '-' '&' - 702 | type_declaration_no_options . '#' - 703 | type_declaration_no_options . "implicit" - 704 | type_declaration_no_options . '-' '#' - 705 | type_declaration_no_options . "==" "const" - 706 | type_declaration_no_options . "==" '&' - 707 | type_declaration_no_options . '?' - 711 | type_declaration_no_options . "??" - 806 make_struct_decl: "struct" '<' $@88 type_declaration_no_options . '>' $@89 '(' use_initializer make_struct_dim ')' - - "const" shift, and go to state 406 - "implicit" shift, and go to state 407 - "explicit" shift, and go to state 408 - "==" shift, and go to state 409 - "??" shift, and go to state 410 - '?' shift, and go to state 411 - '&' shift, and go to state 412 - '>' shift, and go to state 1278 - '-' shift, and go to state 413 - '[' shift, and go to state 414 - '#' shift, and go to state 415 - - dim_list go to state 416 + 76 expression_for_loop: "for" $@4 variable_name_with_pos_list "in" . expr_list expression_block + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + expr_list go to state 1278 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 707 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1095 - 687 type_declaration_no_options: type_declaration_no_options . dim_list - 688 | type_declaration_no_options . '[' ']' - 696 | type_declaration_no_options . '-' '[' ']' - 697 | type_declaration_no_options . "explicit" - 698 | type_declaration_no_options . "const" - 699 | type_declaration_no_options . '-' "const" - 700 | type_declaration_no_options . '&' - 701 | type_declaration_no_options . '-' '&' - 702 | type_declaration_no_options . '#' - 703 | type_declaration_no_options . "implicit" - 704 | type_declaration_no_options . '-' '#' - 705 | type_declaration_no_options . "==" "const" - 706 | type_declaration_no_options . "==" '&' - 707 | type_declaration_no_options . '?' - 711 | type_declaration_no_options . "??" - 809 make_struct_decl: "class" '<' $@90 type_declaration_no_options . '>' $@91 '(' use_initializer make_struct_dim ')' - - "const" shift, and go to state 406 - "implicit" shift, and go to state 407 - "explicit" shift, and go to state 408 - "==" shift, and go to state 409 - "??" shift, and go to state 410 - '?' shift, and go to state 411 - '&' shift, and go to state 412 - '>' shift, and go to state 1279 - '-' shift, and go to state 413 - '[' shift, and go to state 414 - '#' shift, and go to state 415 - - dim_list go to state 416 + 270 new_type_declaration: '<' $@11 type_declaration . '>' $@12 + 748 type_declaration: type_declaration . '|' type_declaration_no_options + 749 | type_declaration . '|' '#' + + '|' shift, and go to state 415 + '>' shift, and go to state 1279 State 1096 - 76 expression_for_loop: "for" $@4 variable_name_with_pos_list "in" . expr_list expression_block + 796 use_initializer: "uninitialized" . - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - expr_list go to state 1280 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 709 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + $default reduce using rule 796 (use_initializer) State 1097 - 271 new_type_declaration: '<' $@11 type_declaration . '>' $@12 - 749 type_declaration: type_declaration . '|' type_declaration_no_options - 750 | type_declaration . '|' '#' + 274 expr_new: "new" new_type_declaration '(' expr_list . ')' + 322 expr_list: expr_list . ',' expr - '|' shift, and go to state 417 - '>' shift, and go to state 1281 + ',' shift, and go to state 856 + ')' shift, and go to state 1280 State 1098 - 797 use_initializer: "uninitialized" . + 273 expr_new: "new" new_type_declaration '(' use_initializer . ')' + 275 | "new" new_type_declaration '(' use_initializer . make_struct_single ')' + + "$f" shift, and go to state 907 + "name" shift, and go to state 1281 + ')' shift, and go to state 1282 - $default reduce using rule 797 (use_initializer) + make_struct_fields go to state 954 + make_struct_single go to state 1283 State 1099 - 275 expr_new: "new" new_type_declaration '(' expr_list . ')' - 323 expr_list: expr_list . ',' expr + 319 expr_type_info: "typeinfo" '(' name_in_namespace '<' . "name" '>' expr ')' + 320 | "typeinfo" '(' name_in_namespace '<' . "name" "end of expression" "name" '>' expr ')' - ',' shift, and go to state 858 - ')' shift, and go to state 1282 + "name" shift, and go to state 1284 State 1100 - 274 expr_new: "new" new_type_declaration '(' use_initializer . ')' - 276 | "new" new_type_declaration '(' use_initializer . make_struct_single ')' - - "$f" shift, and go to state 909 - "name" shift, and go to state 1283 - ')' shift, and go to state 1284 - - make_struct_fields go to state 956 - make_struct_single go to state 1285 + 318 expr_type_info: "typeinfo" '(' name_in_namespace expr . ')' + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + ')' shift, and go to state 1285 State 1101 - 320 expr_type_info: "typeinfo" '(' name_in_namespace '<' . "name" '>' expr ')' - 321 | "typeinfo" '(' name_in_namespace '<' . "name" "end of expression" "name" '>' expr ')' + 317 expr_type_decl: "type" '<' $@19 type_declaration . '>' $@20 + 748 type_declaration: type_declaration . '|' type_declaration_no_options + 749 | type_declaration . '|' '#' - "name" shift, and go to state 1286 + '|' shift, and go to state 415 + '>' shift, and go to state 1286 State 1102 - 319 expr_type_info: "typeinfo" '(' name_in_namespace expr . ')' - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - ')' shift, and go to state 1287 + 831 make_dim_decl: "array" "struct" '<' $@98 . type_declaration_no_options '>' $@99 '(' use_initializer make_struct_dim ')' + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 1287 State 1103 - 318 expr_type_decl: "type" '<' $@19 type_declaration . '>' $@20 - 749 type_declaration: type_declaration . '|' type_declaration_no_options - 750 | type_declaration . '|' '#' - - '|' shift, and go to state 417 - '>' shift, and go to state 1288 + 834 make_dim_decl: "array" "tuple" '<' $@100 . type_declaration_no_options '>' $@101 '(' use_initializer make_struct_dim ')' + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 1288 State 1104 - 832 make_dim_decl: "array" "struct" '<' $@98 . type_declaration_no_options '>' $@99 '(' use_initializer make_struct_dim ')' - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 + 837 make_dim_decl: "array" "variant" '<' $@102 . type_declaration_no_options '>' $@103 '(' make_struct_dim ')' + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 type_declaration_no_options go to state 1289 State 1105 - 835 make_dim_decl: "array" "tuple" '<' $@100 . type_declaration_no_options '>' $@101 '(' use_initializer make_struct_dim ')' - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 1290 + 686 type_declaration_no_options: type_declaration_no_options . dim_list + 687 | type_declaration_no_options . '[' ']' + 695 | type_declaration_no_options . '-' '[' ']' + 696 | type_declaration_no_options . "explicit" + 697 | type_declaration_no_options . "const" + 698 | type_declaration_no_options . '-' "const" + 699 | type_declaration_no_options . '&' + 700 | type_declaration_no_options . '-' '&' + 701 | type_declaration_no_options . '#' + 702 | type_declaration_no_options . "implicit" + 703 | type_declaration_no_options . '-' '#' + 704 | type_declaration_no_options . "==" "const" + 705 | type_declaration_no_options . "==" '&' + 706 | type_declaration_no_options . '?' + 710 | type_declaration_no_options . "??" + 841 make_dim_decl: "array" '<' $@104 type_declaration_no_options . '>' $@105 '(' expr_list optional_comma ')' + + "const" shift, and go to state 404 + "implicit" shift, and go to state 405 + "explicit" shift, and go to state 406 + "==" shift, and go to state 407 + "??" shift, and go to state 408 + '?' shift, and go to state 409 + '&' shift, and go to state 410 + '>' shift, and go to state 1290 + '-' shift, and go to state 411 + '[' shift, and go to state 412 + '#' shift, and go to state 413 + + dim_list go to state 414 State 1106 - 838 make_dim_decl: "array" "variant" '<' $@102 . type_declaration_no_options '>' $@103 '(' make_struct_dim ')' - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 1291 + 838 make_dim_decl: "array" '(' expr_list optional_comma . ')' + + ')' shift, and go to state 1291 State 1107 - 687 type_declaration_no_options: type_declaration_no_options . dim_list - 688 | type_declaration_no_options . '[' ']' - 696 | type_declaration_no_options . '-' '[' ']' - 697 | type_declaration_no_options . "explicit" - 698 | type_declaration_no_options . "const" - 699 | type_declaration_no_options . '-' "const" - 700 | type_declaration_no_options . '&' - 701 | type_declaration_no_options . '-' '&' - 702 | type_declaration_no_options . '#' - 703 | type_declaration_no_options . "implicit" - 704 | type_declaration_no_options . '-' '#' - 705 | type_declaration_no_options . "==" "const" - 706 | type_declaration_no_options . "==" '&' - 707 | type_declaration_no_options . '?' - 711 | type_declaration_no_options . "??" - 842 make_dim_decl: "array" '<' $@104 type_declaration_no_options . '>' $@105 '(' expr_list optional_comma ')' - - "const" shift, and go to state 406 - "implicit" shift, and go to state 407 - "explicit" shift, and go to state 408 - "==" shift, and go to state 409 - "??" shift, and go to state 410 - '?' shift, and go to state 411 - '&' shift, and go to state 412 - '>' shift, and go to state 1292 - '-' shift, and go to state 413 - '[' shift, and go to state 414 - '#' shift, and go to state 415 - - dim_list go to state 416 + 322 expr_list: expr_list ',' expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + + $default reduce using rule 322 (expr_list) State 1108 - 839 make_dim_decl: "array" '(' expr_list optional_comma . ')' + 359 expr_assign: expr "+=" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - ')' shift, and go to state 1293 + $default reduce using rule 359 (expr_assign) State 1109 - 323 expr_list: expr_list ',' expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - - $default reduce using rule 323 (expr_list) + 360 expr_assign: expr "-=" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + + $default reduce using rule 360 (expr_assign) State 1110 - 360 expr_assign: expr "+=" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 362 expr_assign: expr "/=" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 360 (expr_assign) + $default reduce using rule 362 (expr_assign) State 1111 - 361 expr_assign: expr "-=" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 361 expr_assign: expr "*=" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 $default reduce using rule 361 (expr_assign) State 1112 - 363 expr_assign: expr "/=" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 363 expr_assign: expr "%=" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 $default reduce using rule 363 (expr_assign) State 1113 - 362 expr_assign: expr "*=" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 353 expr_assign: expr "&=" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 362 (expr_assign) + $default reduce using rule 353 (expr_assign) State 1114 - 364 expr_assign: expr "%=" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 354 expr_assign: expr "|=" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 364 (expr_assign) + $default reduce using rule 354 (expr_assign) State 1115 - 354 expr_assign: expr "&=" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 355 expr_assign: expr "^=" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 354 (expr_assign) + $default reduce using rule 355 (expr_assign) State 1116 - 355 expr_assign: expr "|=" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 364 expr_assign: expr "<<=" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 355 (expr_assign) + $default reduce using rule 364 (expr_assign) State 1117 - 356 expr_assign: expr "^=" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 365 expr_assign: expr ">>=" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 356 (expr_assign) + $default reduce using rule 365 (expr_assign) State 1118 - 365 expr_assign: expr "<<=" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 351 expr_assign: expr "<-" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 365 (expr_assign) + $default reduce using rule 351 (expr_assign) State 1119 - 366 expr_assign: expr ">>=" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 366 expr_assign: expr "<<<=" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 $default reduce using rule 366 (expr_assign) State 1120 - 352 expr_assign: expr "<-" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 367 expr_assign: expr ">>>=" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 352 (expr_assign) + $default reduce using rule 367 (expr_assign) State 1121 - 367 expr_assign: expr "<<<=" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 356 expr_assign: expr "&&=" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 367 (expr_assign) + $default reduce using rule 356 (expr_assign) State 1122 - 368 expr_assign: expr ">>>=" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - - $default reduce using rule 368 (expr_assign) + 357 expr_assign: expr "||=" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + + $default reduce using rule 357 (expr_assign) State 1123 - 357 expr_assign: expr "&&=" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 358 expr_assign: expr "^^=" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 357 (expr_assign) + $default reduce using rule 358 (expr_assign) State 1124 - 358 expr_assign: expr "||=" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 350 expr_assign: expr '=' expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 358 (expr_assign) + $default reduce using rule 350 (expr_assign) State 1125 - 359 expr_assign: expr "^^=" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 290 expression_try_catch: "try" expression_block "recover" expression_block . - $default reduce using rule 359 (expr_assign) + $default reduce using rule 290 (expression_try_catch) State 1126 - 351 expr_assign: expr '=' expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - - $default reduce using rule 351 (expr_assign) + 854 make_table_decl: "table" '<' type_declaration_no_options "end of expression" . type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 1292 State 1127 - 291 expression_try_catch: "try" expression_block "recover" expression_block . + 853 make_table_decl: "table" '<' type_declaration_no_options '>' . '(' expr_map_tuple_list optional_comma ')' - $default reduce using rule 291 (expression_try_catch) + '(' shift, and go to state 1293 State 1128 - 855 make_table_decl: "table" '<' type_declaration_no_options "end of expression" . type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 1294 + 852 make_table_decl: "table" '(' expr_map_tuple_list optional_comma . ')' + + ')' shift, and go to state 1294 State 1129 - 854 make_table_decl: "table" '<' type_declaration_no_options '>' . '(' expr_map_tuple_list optional_comma ')' + 464 expr: "deref" '(' expr ')' . - '(' shift, and go to state 1295 + $default reduce using rule 464 (expr) State 1130 - 853 make_table_decl: "table" '(' expr_map_tuple_list optional_comma . ')' + 81 expression_with_alias: "assume" "name" '=' $@5 . expr - ')' shift, and go to state 1296 + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1295 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1131 - 465 expr: "deref" '(' expr ')' . - - $default reduce using rule 465 (expr) + 308 expr_cast: "cast" '<' $@13 type_declaration_no_options . '>' $@14 expr + 686 type_declaration_no_options: type_declaration_no_options . dim_list + 687 | type_declaration_no_options . '[' ']' + 695 | type_declaration_no_options . '-' '[' ']' + 696 | type_declaration_no_options . "explicit" + 697 | type_declaration_no_options . "const" + 698 | type_declaration_no_options . '-' "const" + 699 | type_declaration_no_options . '&' + 700 | type_declaration_no_options . '-' '&' + 701 | type_declaration_no_options . '#' + 702 | type_declaration_no_options . "implicit" + 703 | type_declaration_no_options . '-' '#' + 704 | type_declaration_no_options . "==" "const" + 705 | type_declaration_no_options . "==" '&' + 706 | type_declaration_no_options . '?' + 710 | type_declaration_no_options . "??" + + "const" shift, and go to state 404 + "implicit" shift, and go to state 405 + "explicit" shift, and go to state 406 + "==" shift, and go to state 407 + "??" shift, and go to state 408 + '?' shift, and go to state 409 + '&' shift, and go to state 410 + '>' shift, and go to state 1296 + '-' shift, and go to state 411 + '[' shift, and go to state 412 + '#' shift, and go to state 413 + + dim_list go to state 414 State 1132 - 81 expression_with_alias: "assume" "name" '=' $@5 . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1297 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 311 expr_cast: "upcast" '<' $@15 type_declaration_no_options . '>' $@16 expr + 686 type_declaration_no_options: type_declaration_no_options . dim_list + 687 | type_declaration_no_options . '[' ']' + 695 | type_declaration_no_options . '-' '[' ']' + 696 | type_declaration_no_options . "explicit" + 697 | type_declaration_no_options . "const" + 698 | type_declaration_no_options . '-' "const" + 699 | type_declaration_no_options . '&' + 700 | type_declaration_no_options . '-' '&' + 701 | type_declaration_no_options . '#' + 702 | type_declaration_no_options . "implicit" + 703 | type_declaration_no_options . '-' '#' + 704 | type_declaration_no_options . "==" "const" + 705 | type_declaration_no_options . "==" '&' + 706 | type_declaration_no_options . '?' + 710 | type_declaration_no_options . "??" + + "const" shift, and go to state 404 + "implicit" shift, and go to state 405 + "explicit" shift, and go to state 406 + "==" shift, and go to state 407 + "??" shift, and go to state 408 + '?' shift, and go to state 409 + '&' shift, and go to state 410 + '>' shift, and go to state 1297 + '-' shift, and go to state 411 + '[' shift, and go to state 412 + '#' shift, and go to state 413 + + dim_list go to state 414 State 1133 - 309 expr_cast: "cast" '<' $@13 type_declaration_no_options . '>' $@14 expr - 687 type_declaration_no_options: type_declaration_no_options . dim_list - 688 | type_declaration_no_options . '[' ']' - 696 | type_declaration_no_options . '-' '[' ']' - 697 | type_declaration_no_options . "explicit" - 698 | type_declaration_no_options . "const" - 699 | type_declaration_no_options . '-' "const" - 700 | type_declaration_no_options . '&' - 701 | type_declaration_no_options . '-' '&' - 702 | type_declaration_no_options . '#' - 703 | type_declaration_no_options . "implicit" - 704 | type_declaration_no_options . '-' '#' - 705 | type_declaration_no_options . "==" "const" - 706 | type_declaration_no_options . "==" '&' - 707 | type_declaration_no_options . '?' - 711 | type_declaration_no_options . "??" - - "const" shift, and go to state 406 - "implicit" shift, and go to state 407 - "explicit" shift, and go to state 408 - "==" shift, and go to state 409 - "??" shift, and go to state 410 - '?' shift, and go to state 411 - '&' shift, and go to state 412 - '>' shift, and go to state 1298 - '-' shift, and go to state 413 - '[' shift, and go to state 414 - '#' shift, and go to state 415 + 465 expr: "addr" '(' expr ')' . - dim_list go to state 416 + $default reduce using rule 465 (expr) State 1134 - 312 expr_cast: "upcast" '<' $@15 type_declaration_no_options . '>' $@16 expr - 687 type_declaration_no_options: type_declaration_no_options . dim_list - 688 | type_declaration_no_options . '[' ']' - 696 | type_declaration_no_options . '-' '[' ']' - 697 | type_declaration_no_options . "explicit" - 698 | type_declaration_no_options . "const" - 699 | type_declaration_no_options . '-' "const" - 700 | type_declaration_no_options . '&' - 701 | type_declaration_no_options . '-' '&' - 702 | type_declaration_no_options . '#' - 703 | type_declaration_no_options . "implicit" - 704 | type_declaration_no_options . '-' '#' - 705 | type_declaration_no_options . "==" "const" - 706 | type_declaration_no_options . "==" '&' - 707 | type_declaration_no_options . '?' - 711 | type_declaration_no_options . "??" - - "const" shift, and go to state 406 - "implicit" shift, and go to state 407 - "explicit" shift, and go to state 408 - "==" shift, and go to state 409 - "??" shift, and go to state 410 - '?' shift, and go to state 411 - '&' shift, and go to state 412 - '>' shift, and go to state 1299 - '-' shift, and go to state 413 - '[' shift, and go to state 414 - '#' shift, and go to state 415 + 314 expr_cast: "reinterpret" '<' $@17 type_declaration_no_options . '>' $@18 expr + 686 type_declaration_no_options: type_declaration_no_options . dim_list + 687 | type_declaration_no_options . '[' ']' + 695 | type_declaration_no_options . '-' '[' ']' + 696 | type_declaration_no_options . "explicit" + 697 | type_declaration_no_options . "const" + 698 | type_declaration_no_options . '-' "const" + 699 | type_declaration_no_options . '&' + 700 | type_declaration_no_options . '-' '&' + 701 | type_declaration_no_options . '#' + 702 | type_declaration_no_options . "implicit" + 703 | type_declaration_no_options . '-' '#' + 704 | type_declaration_no_options . "==" "const" + 705 | type_declaration_no_options . "==" '&' + 706 | type_declaration_no_options . '?' + 710 | type_declaration_no_options . "??" + + "const" shift, and go to state 404 + "implicit" shift, and go to state 405 + "explicit" shift, and go to state 406 + "==" shift, and go to state 407 + "??" shift, and go to state 408 + '?' shift, and go to state 409 + '&' shift, and go to state 410 + '>' shift, and go to state 1298 + '-' shift, and go to state 411 + '[' shift, and go to state 412 + '#' shift, and go to state 413 - dim_list go to state 416 + dim_list go to state 414 State 1135 - 466 expr: "addr" '(' expr ')' . + 496 expr: "unsafe" '(' expr ')' . - $default reduce using rule 466 (expr) + $default reduce using rule 496 (expr) State 1136 - 315 expr_cast: "reinterpret" '<' $@17 type_declaration_no_options . '>' $@18 expr - 687 type_declaration_no_options: type_declaration_no_options . dim_list - 688 | type_declaration_no_options . '[' ']' - 696 | type_declaration_no_options . '-' '[' ']' - 697 | type_declaration_no_options . "explicit" - 698 | type_declaration_no_options . "const" - 699 | type_declaration_no_options . '-' "const" - 700 | type_declaration_no_options . '&' - 701 | type_declaration_no_options . '-' '&' - 702 | type_declaration_no_options . '#' - 703 | type_declaration_no_options . "implicit" - 704 | type_declaration_no_options . '-' '#' - 705 | type_declaration_no_options . "==" "const" - 706 | type_declaration_no_options . "==" '&' - 707 | type_declaration_no_options . '?' - 711 | type_declaration_no_options . "??" - - "const" shift, and go to state 406 - "implicit" shift, and go to state 407 - "explicit" shift, and go to state 408 - "==" shift, and go to state 409 - "??" shift, and go to state 410 - '?' shift, and go to state 411 - '&' shift, and go to state 412 - '>' shift, and go to state 1300 - '-' shift, and go to state 413 - '[' shift, and go to state 414 - '#' shift, and go to state 415 - - dim_list go to state 416 + 686 type_declaration_no_options: type_declaration_no_options . dim_list + 687 | type_declaration_no_options . '[' ']' + 695 | type_declaration_no_options . '-' '[' ']' + 696 | type_declaration_no_options . "explicit" + 697 | type_declaration_no_options . "const" + 698 | type_declaration_no_options . '-' "const" + 699 | type_declaration_no_options . '&' + 700 | type_declaration_no_options . '-' '&' + 701 | type_declaration_no_options . '#' + 702 | type_declaration_no_options . "implicit" + 703 | type_declaration_no_options . '-' '#' + 704 | type_declaration_no_options . "==" "const" + 705 | type_declaration_no_options . "==" '&' + 706 | type_declaration_no_options . '?' + 710 | type_declaration_no_options . "??" + 845 make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options . '>' $@107 '(' expr_list optional_comma ')' + + "const" shift, and go to state 404 + "implicit" shift, and go to state 405 + "explicit" shift, and go to state 406 + "==" shift, and go to state 407 + "??" shift, and go to state 408 + '?' shift, and go to state 409 + '&' shift, and go to state 410 + '>' shift, and go to state 1299 + '-' shift, and go to state 411 + '[' shift, and go to state 412 + '#' shift, and go to state 413 + + dim_list go to state 414 State 1137 - 497 expr: "unsafe" '(' expr ')' . + 842 make_dim_decl: "fixed_array" '(' expr_list optional_comma . ')' - $default reduce using rule 497 (expr) + ')' shift, and go to state 1300 State 1138 - 687 type_declaration_no_options: type_declaration_no_options . dim_list - 688 | type_declaration_no_options . '[' ']' - 696 | type_declaration_no_options . '-' '[' ']' - 697 | type_declaration_no_options . "explicit" - 698 | type_declaration_no_options . "const" - 699 | type_declaration_no_options . '-' "const" - 700 | type_declaration_no_options . '&' - 701 | type_declaration_no_options . '-' '&' - 702 | type_declaration_no_options . '#' - 703 | type_declaration_no_options . "implicit" - 704 | type_declaration_no_options . '-' '#' - 705 | type_declaration_no_options . "==" "const" - 706 | type_declaration_no_options . "==" '&' - 707 | type_declaration_no_options . '?' - 711 | type_declaration_no_options . "??" - 846 make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options . '>' $@107 '(' expr_list optional_comma ')' - - "const" shift, and go to state 406 - "implicit" shift, and go to state 407 - "explicit" shift, and go to state 408 - "==" shift, and go to state 409 - "??" shift, and go to state 410 - '?' shift, and go to state 411 - '&' shift, and go to state 412 + 686 type_declaration_no_options: type_declaration_no_options . dim_list + 687 | type_declaration_no_options . '[' ']' + 695 | type_declaration_no_options . '-' '[' ']' + 696 | type_declaration_no_options . "explicit" + 697 | type_declaration_no_options . "const" + 698 | type_declaration_no_options . '-' "const" + 699 | type_declaration_no_options . '&' + 700 | type_declaration_no_options . '-' '&' + 701 | type_declaration_no_options . '#' + 702 | type_declaration_no_options . "implicit" + 703 | type_declaration_no_options . '-' '#' + 704 | type_declaration_no_options . "==" "const" + 705 | type_declaration_no_options . "==" '&' + 706 | type_declaration_no_options . '?' + 710 | type_declaration_no_options . "??" + 814 make_struct_decl: "default" '<' $@94 type_declaration_no_options . '>' $@95 use_initializer + + "const" shift, and go to state 404 + "implicit" shift, and go to state 405 + "explicit" shift, and go to state 406 + "==" shift, and go to state 407 + "??" shift, and go to state 408 + '?' shift, and go to state 409 + '&' shift, and go to state 410 '>' shift, and go to state 1301 - '-' shift, and go to state 413 - '[' shift, and go to state 414 - '#' shift, and go to state 415 + '-' shift, and go to state 411 + '[' shift, and go to state 412 + '#' shift, and go to state 413 - dim_list go to state 416 + dim_list go to state 414 State 1139 - 843 make_dim_decl: "fixed_array" '(' expr_list optional_comma . ')' - - ')' shift, and go to state 1302 + 686 type_declaration_no_options: type_declaration_no_options . dim_list + 687 | type_declaration_no_options . '[' ']' + 695 | type_declaration_no_options . '-' '[' ']' + 696 | type_declaration_no_options . "explicit" + 697 | type_declaration_no_options . "const" + 698 | type_declaration_no_options . '-' "const" + 699 | type_declaration_no_options . '&' + 700 | type_declaration_no_options . '-' '&' + 701 | type_declaration_no_options . '#' + 702 | type_declaration_no_options . "implicit" + 703 | type_declaration_no_options . '-' '#' + 704 | type_declaration_no_options . "==" "const" + 705 | type_declaration_no_options . "==" '&' + 706 | type_declaration_no_options . '?' + 710 | type_declaration_no_options . "??" + 823 make_tuple_call: "tuple" '<' $@96 type_declaration_no_options . '>' $@97 '(' use_initializer make_struct_dim ')' + + "const" shift, and go to state 404 + "implicit" shift, and go to state 405 + "explicit" shift, and go to state 406 + "==" shift, and go to state 407 + "??" shift, and go to state 408 + '?' shift, and go to state 409 + '&' shift, and go to state 410 + '>' shift, and go to state 1302 + '-' shift, and go to state 411 + '[' shift, and go to state 412 + '#' shift, and go to state 413 + + dim_list go to state 414 State 1140 - 687 type_declaration_no_options: type_declaration_no_options . dim_list - 688 | type_declaration_no_options . '[' ']' - 696 | type_declaration_no_options . '-' '[' ']' - 697 | type_declaration_no_options . "explicit" - 698 | type_declaration_no_options . "const" - 699 | type_declaration_no_options . '-' "const" - 700 | type_declaration_no_options . '&' - 701 | type_declaration_no_options . '-' '&' - 702 | type_declaration_no_options . '#' - 703 | type_declaration_no_options . "implicit" - 704 | type_declaration_no_options . '-' '#' - 705 | type_declaration_no_options . "==" "const" - 706 | type_declaration_no_options . "==" '&' - 707 | type_declaration_no_options . '?' - 711 | type_declaration_no_options . "??" - 815 make_struct_decl: "default" '<' $@94 type_declaration_no_options . '>' $@95 use_initializer - - "const" shift, and go to state 406 - "implicit" shift, and go to state 407 - "explicit" shift, and go to state 408 - "==" shift, and go to state 409 - "??" shift, and go to state 410 - '?' shift, and go to state 411 - '&' shift, and go to state 412 - '>' shift, and go to state 1303 - '-' shift, and go to state 413 - '[' shift, and go to state 414 - '#' shift, and go to state 415 - - dim_list go to state 416 + 820 make_tuple_call: "tuple" '(' expr_list optional_comma . ')' + + ')' shift, and go to state 1303 State 1141 - 687 type_declaration_no_options: type_declaration_no_options . dim_list - 688 | type_declaration_no_options . '[' ']' - 696 | type_declaration_no_options . '-' '[' ']' - 697 | type_declaration_no_options . "explicit" - 698 | type_declaration_no_options . "const" - 699 | type_declaration_no_options . '-' "const" - 700 | type_declaration_no_options . '&' - 701 | type_declaration_no_options . '-' '&' - 702 | type_declaration_no_options . '#' - 703 | type_declaration_no_options . "implicit" - 704 | type_declaration_no_options . '-' '#' - 705 | type_declaration_no_options . "==" "const" - 706 | type_declaration_no_options . "==" '&' - 707 | type_declaration_no_options . '?' - 711 | type_declaration_no_options . "??" - 824 make_tuple_call: "tuple" '<' $@96 type_declaration_no_options . '>' $@97 '(' use_initializer make_struct_dim ')' - - "const" shift, and go to state 406 - "implicit" shift, and go to state 407 - "explicit" shift, and go to state 408 - "==" shift, and go to state 409 - "??" shift, and go to state 410 - '?' shift, and go to state 411 - '&' shift, and go to state 412 + 686 type_declaration_no_options: type_declaration_no_options . dim_list + 687 | type_declaration_no_options . '[' ']' + 695 | type_declaration_no_options . '-' '[' ']' + 696 | type_declaration_no_options . "explicit" + 697 | type_declaration_no_options . "const" + 698 | type_declaration_no_options . '-' "const" + 699 | type_declaration_no_options . '&' + 700 | type_declaration_no_options . '-' '&' + 701 | type_declaration_no_options . '#' + 702 | type_declaration_no_options . "implicit" + 703 | type_declaration_no_options . '-' '#' + 704 | type_declaration_no_options . "==" "const" + 705 | type_declaration_no_options . "==" '&' + 706 | type_declaration_no_options . '?' + 710 | type_declaration_no_options . "??" + 811 make_struct_decl: "variant" '<' $@92 type_declaration_no_options . '>' $@93 '(' make_struct_dim ')' + + "const" shift, and go to state 404 + "implicit" shift, and go to state 405 + "explicit" shift, and go to state 406 + "==" shift, and go to state 407 + "??" shift, and go to state 408 + '?' shift, and go to state 409 + '&' shift, and go to state 410 '>' shift, and go to state 1304 - '-' shift, and go to state 413 - '[' shift, and go to state 414 - '#' shift, and go to state 415 + '-' shift, and go to state 411 + '[' shift, and go to state 412 + '#' shift, and go to state 413 - dim_list go to state 416 + dim_list go to state 414 State 1142 - 821 make_tuple_call: "tuple" '(' expr_list optional_comma . ')' + 466 expr: "generator" '<' type_declaration_no_options '>' . optional_capture_list '(' ')' + 467 | "generator" '<' type_declaration_no_options '>' . optional_capture_list '(' expr ')' - ')' shift, and go to state 1305 + "[[" shift, and go to state 960 + $default reduce using rule 335 (optional_capture_list) + + optional_capture_list go to state 1305 -State 1143 - 687 type_declaration_no_options: type_declaration_no_options . dim_list - 688 | type_declaration_no_options . '[' ']' - 696 | type_declaration_no_options . '-' '[' ']' - 697 | type_declaration_no_options . "explicit" - 698 | type_declaration_no_options . "const" - 699 | type_declaration_no_options . '-' "const" - 700 | type_declaration_no_options . '&' - 701 | type_declaration_no_options . '-' '&' - 702 | type_declaration_no_options . '#' - 703 | type_declaration_no_options . "implicit" - 704 | type_declaration_no_options . '-' '#' - 705 | type_declaration_no_options . "==" "const" - 706 | type_declaration_no_options . "==" '&' - 707 | type_declaration_no_options . '?' - 711 | type_declaration_no_options . "??" - 812 make_struct_decl: "variant" '<' $@92 type_declaration_no_options . '>' $@93 '(' make_struct_dim ')' - - "const" shift, and go to state 406 - "implicit" shift, and go to state 407 - "explicit" shift, and go to state 408 - "==" shift, and go to state 409 - "??" shift, and go to state 410 - '?' shift, and go to state 411 - '&' shift, and go to state 412 - '>' shift, and go to state 1306 - '-' shift, and go to state 413 - '[' shift, and go to state 414 - '#' shift, and go to state 415 - - dim_list go to state 416 +State 1143 + 338 expr_block: block_or_lambda optional_annotation_list optional_capture_list . optional_function_argument_list optional_function_type block_or_simple_block -State 1144 + '(' shift, and go to state 282 - 467 expr: "generator" '<' type_declaration_no_options '>' . optional_capture_list '(' ')' - 468 | "generator" '<' type_declaration_no_options '>' . optional_capture_list '(' expr ')' + $default reduce using rule 121 (optional_function_argument_list) - "[[" shift, and go to state 962 + optional_function_argument_list go to state 1306 - $default reduce using rule 336 (optional_capture_list) - optional_capture_list go to state 1307 +State 1144 + 498 expr_mtag: "$$" '(' expr ')' . -State 1145 + $default reduce using rule 498 (expr_mtag) - 339 expr_block: block_or_lambda optional_annotation_list optional_capture_list . optional_function_argument_list optional_function_type block_or_simple_block - '(' shift, and go to state 284 +State 1145 - $default reduce using rule 121 (optional_function_argument_list) + 499 expr_mtag: "$i" '(' expr ')' . - optional_function_argument_list go to state 1308 + $default reduce using rule 499 (expr_mtag) State 1146 - 499 expr_mtag: "$$" '(' expr ')' . + 500 expr_mtag: "$v" '(' expr ')' . - $default reduce using rule 499 (expr_mtag) + $default reduce using rule 500 (expr_mtag) State 1147 - 500 expr_mtag: "$i" '(' expr ')' . + 501 expr_mtag: "$b" '(' expr ')' . - $default reduce using rule 500 (expr_mtag) + $default reduce using rule 501 (expr_mtag) State 1148 - 501 expr_mtag: "$v" '(' expr ')' . + 502 expr_mtag: "$a" '(' expr ')' . - $default reduce using rule 501 (expr_mtag) + $default reduce using rule 502 (expr_mtag) State 1149 - 502 expr_mtag: "$b" '(' expr ')' . + 504 expr_mtag: "$c" '(' expr ')' . '(' ')' + 505 | "$c" '(' expr ')' . '(' expr_list ')' - $default reduce using rule 502 (expr_mtag) + '(' shift, and go to state 1307 State 1150 - 503 expr_mtag: "$a" '(' expr ')' . - - $default reduce using rule 503 (expr_mtag) + 861 array_comprehension: "[[" "for" variable_name_with_pos_list "in" . expr_list "end of expression" expr array_comprehension_where ']' ']' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + expr_list go to state 1308 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 707 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1151 - 505 expr_mtag: "$c" '(' expr ')' . '(' ')' - 506 | "$c" '(' expr ')' . '(' expr_list ')' + 782 optional_block: "where" expr_block . - '(' shift, and go to state 1309 + $default reduce using rule 782 (optional_block) State 1152 - 862 array_comprehension: "[[" "for" variable_name_with_pos_list "in" . expr_list "end of expression" expr array_comprehension_where ']' ']' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 774 make_struct_fields: "$f" '(' . expr ')' copy_or_move expr + 775 | "$f" '(' . expr ')' ":=" expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - expr_list go to state 1310 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 709 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1309 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1153 - 783 optional_block: "where" expr_block . - - $default reduce using rule 783 (optional_block) + 771 make_struct_fields: "name" ":=" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1310 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1154 - 775 make_struct_fields: "$f" '(' . expr ')' copy_or_move expr - 776 | "$f" '(' . expr ')' ":=" expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 770 make_struct_fields: "name" copy_or_move . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1311 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1155 - 772 make_struct_fields: "name" ":=" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 695 type_declaration_no_options: type_declaration_no_options '-' '[' . ']' + 826 make_dim_decl: '[' . expr_list optional_comma ']' + 859 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 860 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "for" shift, and go to state 704 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "iterator" shift, and go to state 705 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1312 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + ']' shift, and go to state 821 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + expr_list go to state 706 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 707 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1156 - 771 make_struct_fields: "name" copy_or_move . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1313 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 321 expr_list: expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 680 dim_list: '[' expr . ']' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + ']' shift, and go to state 822 + + ']' [reduce using rule 321 (expr_list)] + $default reduce using rule 321 (expr_list) State 1157 - 696 type_declaration_no_options: type_declaration_no_options '-' '[' . ']' - 827 make_dim_decl: '[' . expr_list optional_comma ']' - 860 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - 861 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "for" shift, and go to state 706 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "iterator" shift, and go to state 707 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - ']' shift, and go to state 823 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - expr_list go to state 708 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 709 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 799 make_struct_decl: "[[" type_declaration_no_options '(' ')' . optional_block optional_trailing_delim_sqr_sqr + 800 | "[[" type_declaration_no_options '(' ')' . make_struct_dim optional_block optional_trailing_delim_sqr_sqr + + "where" shift, and go to state 906 + "$f" shift, and go to state 907 + "name" shift, and go to state 1281 + + $default reduce using rule 781 (optional_block) + + make_struct_fields go to state 913 + make_struct_dim go to state 1312 + optional_block go to state 1313 State 1158 - 322 expr_list: expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 681 dim_list: '[' expr . ']' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - ']' shift, and go to state 824 - - ']' [reduce using rule 322 (expr_list)] - $default reduce using rule 322 (expr_list) + 816 make_tuple: expr "=>" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1314 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1159 - 800 make_struct_decl: "[[" type_declaration_no_options '(' ')' . optional_block optional_trailing_delim_sqr_sqr - 801 | "[[" type_declaration_no_options '(' ')' . make_struct_dim optional_block optional_trailing_delim_sqr_sqr + 772 make_struct_fields: make_struct_fields ',' . "name" copy_or_move expr + 773 | make_struct_fields ',' . "name" ":=" expr + 776 | make_struct_fields ',' . "$f" '(' expr ')' copy_or_move expr + 777 | make_struct_fields ',' . "$f" '(' expr ')' ":=" expr - "where" shift, and go to state 908 - "$f" shift, and go to state 909 - "name" shift, and go to state 1283 + "$f" shift, and go to state 1315 + "name" shift, and go to state 1316 - $default reduce using rule 782 (optional_block) - make_struct_fields go to state 915 - make_struct_dim go to state 1314 - optional_block go to state 1315 +State 1160 + 780 make_struct_dim: make_struct_dim "end of expression" . make_struct_fields -State 1160 + "$f" shift, and go to state 907 + "name" shift, and go to state 1281 - 817 make_tuple: expr "=>" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1316 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + make_struct_fields go to state 1317 State 1161 - 773 make_struct_fields: make_struct_fields ',' . "name" copy_or_move expr - 774 | make_struct_fields ',' . "name" ":=" expr - 777 | make_struct_fields ',' . "$f" '(' expr ')' copy_or_move expr - 778 | make_struct_fields ',' . "$f" '(' expr ')' ":=" expr + 797 make_struct_decl: "[[" type_declaration_no_options make_struct_dim optional_block . optional_trailing_delim_sqr_sqr - "$f" shift, and go to state 1317 - "name" shift, and go to state 1318 + ";]]" shift, and go to state 1162 + ",]]" shift, and go to state 1163 + ']' shift, and go to state 1164 + optional_trailing_delim_sqr_sqr go to state 1318 -State 1162 - 781 make_struct_dim: make_struct_dim "end of expression" . make_struct_fields +State 1162 - "$f" shift, and go to state 909 - "name" shift, and go to state 1283 + 790 optional_trailing_delim_sqr_sqr: ";]]" . - make_struct_fields go to state 1319 + $default reduce using rule 790 (optional_trailing_delim_sqr_sqr) State 1163 - 798 make_struct_decl: "[[" type_declaration_no_options make_struct_dim optional_block . optional_trailing_delim_sqr_sqr - - ";]]" shift, and go to state 1164 - ",]]" shift, and go to state 1165 - ']' shift, and go to state 1166 + 791 optional_trailing_delim_sqr_sqr: ",]]" . - optional_trailing_delim_sqr_sqr go to state 1320 + $default reduce using rule 791 (optional_trailing_delim_sqr_sqr) State 1164 - 791 optional_trailing_delim_sqr_sqr: ";]]" . + 789 optional_trailing_delim_sqr_sqr: ']' . ']' - $default reduce using rule 791 (optional_trailing_delim_sqr_sqr) + ']' shift, and go to state 1319 State 1165 - 792 optional_trailing_delim_sqr_sqr: ",]]" . + 798 make_struct_decl: "[[" type_declaration_no_options optional_block optional_trailing_delim_sqr_sqr . - $default reduce using rule 792 (optional_trailing_delim_sqr_sqr) + $default reduce using rule 798 (make_struct_decl) State 1166 - 790 optional_trailing_delim_sqr_sqr: ']' . ']' - - ']' shift, and go to state 1321 + 817 make_tuple: make_tuple ',' . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1320 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1167 - 799 make_struct_decl: "[[" type_declaration_no_options optional_block optional_trailing_delim_sqr_sqr . - - $default reduce using rule 799 (make_struct_decl) + 825 make_dim: make_dim "end of expression" . make_tuple + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 912 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple go to state 1321 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1168 - 818 make_tuple: make_tuple ',' . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1322 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 788 optional_trailing_semicolon_sqr_sqr: ";]]" . + + $default reduce using rule 788 (optional_trailing_semicolon_sqr_sqr) State 1169 - 826 make_dim: make_dim "end of expression" . make_tuple - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 914 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple go to state 1323 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 787 optional_trailing_semicolon_sqr_sqr: ']' . ']' + + ']' shift, and go to state 1322 State 1170 - 789 optional_trailing_semicolon_sqr_sqr: ";]]" . + 827 make_dim_decl: "[[" type_declaration_no_options make_dim optional_trailing_semicolon_sqr_sqr . - $default reduce using rule 789 (optional_trailing_semicolon_sqr_sqr) + $default reduce using rule 827 (make_dim_decl) State 1171 - 788 optional_trailing_semicolon_sqr_sqr: ']' . ']' - - ']' shift, and go to state 1324 + 862 array_comprehension: "[{" "for" variable_name_with_pos_list "in" . expr_list "end of expression" expr array_comprehension_where "end of code block" ']' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + expr_list go to state 1323 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 707 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1172 - 828 make_dim_decl: "[[" type_declaration_no_options make_dim optional_trailing_semicolon_sqr_sqr . + 802 make_struct_decl: "[{" type_declaration_no_options '(' ')' . make_struct_dim optional_block optional_trailing_delim_cur_sqr - $default reduce using rule 828 (make_dim_decl) + "$f" shift, and go to state 907 + "name" shift, and go to state 1281 + + make_struct_fields go to state 913 + make_struct_dim go to state 1324 State 1173 - 863 array_comprehension: "[{" "for" variable_name_with_pos_list "in" . expr_list "end of expression" expr array_comprehension_where "end of code block" ']' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - expr_list go to state 1325 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 709 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 801 make_struct_decl: "[{" type_declaration_no_options make_struct_dim optional_block . optional_trailing_delim_cur_sqr + "end of code block" shift, and go to state 1325 + ";}]" shift, and go to state 1326 + ",}]" shift, and go to state 1327 -State 1174 + optional_trailing_delim_cur_sqr go to state 1328 - 803 make_struct_decl: "[{" type_declaration_no_options '(' ')' . make_struct_dim optional_block optional_trailing_delim_cur_sqr - "$f" shift, and go to state 909 - "name" shift, and go to state 1283 +State 1174 - make_struct_fields go to state 915 - make_struct_dim go to state 1326 + 785 optional_trailing_semicolon_cur_sqr: "end of code block" . ']' + ']' shift, and go to state 1329 -State 1175 - 802 make_struct_decl: "[{" type_declaration_no_options make_struct_dim optional_block . optional_trailing_delim_cur_sqr +State 1175 - "end of code block" shift, and go to state 1327 - ";}]" shift, and go to state 1328 - ",}]" shift, and go to state 1329 + 786 optional_trailing_semicolon_cur_sqr: ";}]" . - optional_trailing_delim_cur_sqr go to state 1330 + $default reduce using rule 786 (optional_trailing_semicolon_cur_sqr) State 1176 - 786 optional_trailing_semicolon_cur_sqr: "end of code block" . ']' + 828 make_dim_decl: "[{" type_declaration_no_options make_dim optional_trailing_semicolon_cur_sqr . - ']' shift, and go to state 1331 + $default reduce using rule 828 (make_dim_decl) State 1177 - 787 optional_trailing_semicolon_cur_sqr: ";}]" . - - $default reduce using rule 787 (optional_trailing_semicolon_cur_sqr) + 864 array_comprehension: "{{" "for" variable_name_with_pos_list "in" . expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" "end of code block" + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + expr_list go to state 1330 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 707 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1178 - 829 make_dim_decl: "[{" type_declaration_no_options make_dim optional_trailing_semicolon_cur_sqr . - - $default reduce using rule 829 (make_dim_decl) + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 818 make_map_tuple: expr "=>" expr . + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + + $default reduce using rule 818 (make_map_tuple) State 1179 - 865 array_comprehension: "{{" "for" variable_name_with_pos_list "in" . expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" "end of code block" - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - expr_list go to state 1332 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 709 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 783 optional_trailing_semicolon_cur_cur: "end of code block" "end of code block" . + + $default reduce using rule 783 (optional_trailing_semicolon_cur_cur) State 1180 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 819 make_map_tuple: expr "=>" expr . - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 847 make_table: make_table "end of expression" make_map_tuple . - $default reduce using rule 819 (make_map_tuple) + $default reduce using rule 847 (make_table) State 1181 - 784 optional_trailing_semicolon_cur_cur: "end of code block" "end of code block" . - - $default reduce using rule 784 (optional_trailing_semicolon_cur_cur) - - -State 1182 - - 848 make_table: make_table "end of expression" make_map_tuple . - - $default reduce using rule 848 (make_table) - - -State 1183 - 252 type_declaration_no_options_list: type_declaration_no_options_list . "end of expression" type_declaration 255 expression_keyword: "keyword" '<' $@7 type_declaration_no_options_list . '>' $@8 expr - "end of expression" shift, and go to state 1273 - '>' shift, and go to state 1333 + "end of expression" shift, and go to state 1271 + '>' shift, and go to state 1331 -State 1184 +State 1182 252 type_declaration_no_options_list: type_declaration_no_options_list . "end of expression" type_declaration 258 expression_keyword: "type function" '<' $@9 type_declaration_no_options_list . '>' $@10 optional_expr_list_in_braces - "end of expression" shift, and go to state 1273 - '>' shift, and go to state 1334 + "end of expression" shift, and go to state 1271 + '>' shift, and go to state 1332 -State 1185 +State 1183 30 string_builder_body: string_builder_body "{" expr . "}" - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - "}" shift, and go to state 1335 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + "}" shift, and go to state 1333 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 -State 1186 +State 1184 - 864 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" . expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 863 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" . expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - expr_list go to state 1336 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 709 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + expr_list go to state 1334 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 707 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 -State 1187 +State 1185 - 850 expr_map_tuple_list: expr_map_tuple_list ',' make_map_tuple . + 849 expr_map_tuple_list: expr_map_tuple_list ',' make_map_tuple . - $default reduce using rule 850 (expr_map_tuple_list) + $default reduce using rule 849 (expr_map_tuple_list) -State 1188 +State 1186 - 851 make_table_decl: "begin of code block" expr_map_tuple_list optional_comma "end of code block" . + 850 make_table_decl: "begin of code block" expr_map_tuple_list optional_comma "end of code block" . - $default reduce using rule 851 (make_table_decl) + $default reduce using rule 850 (make_table_decl) -State 1189 +State 1187 219 expression_block: "begin of code block" expressions "end of code block" "finally" "begin of code block" expressions . "end of code block" 244 expressions: expressions . expression_any 245 | expressions . error - error shift, and go to state 430 - "struct" shift, and go to state 431 - "class" shift, and go to state 432 + error shift, and go to state 428 + "struct" shift, and go to state 429 + "class" shift, and go to state 430 "let" shift, and go to state 3 - "while" shift, and go to state 433 - "if" shift, and go to state 434 - "static_if" shift, and go to state 435 - "for" shift, and go to state 436 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "return" shift, and go to state 443 - "null" shift, and go to state 444 - "break" shift, and go to state 445 - "try" shift, and go to state 446 - "table" shift, and go to state 447 - "delete" shift, and go to state 448 - "deref" shift, and go to state 449 - "with" shift, and go to state 450 - "assume" shift, and go to state 451 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 + "while" shift, and go to state 431 + "if" shift, and go to state 432 + "static_if" shift, and go to state 433 + "for" shift, and go to state 434 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "return" shift, and go to state 441 + "null" shift, and go to state 442 + "break" shift, and go to state 443 + "try" shift, and go to state 444 + "table" shift, and go to state 445 + "delete" shift, and go to state 446 + "deref" shift, and go to state 447 + "with" shift, and go to state 448 + "assume" shift, and go to state 449 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 "var" shift, and go to state 8 - "addr" shift, and go to state 454 - "continue" shift, and go to state 455 - "pass" shift, and go to state 456 - "reinterpret" shift, and go to state 457 - "label" shift, and go to state 458 - "goto" shift, and go to state 459 - "unsafe" shift, and go to state 460 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "yield" shift, and go to state 467 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "$ <|" shift, and go to state 470 - "@ <|" shift, and go to state 471 - "@@ <|" shift, and go to state 472 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 490 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - "end of code block" shift, and go to state 1337 - "end of expression" shift, and go to state 495 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + "addr" shift, and go to state 452 + "continue" shift, and go to state 453 + "pass" shift, and go to state 454 + "reinterpret" shift, and go to state 455 + "label" shift, and go to state 456 + "goto" shift, and go to state 457 + "unsafe" shift, and go to state 458 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "yield" shift, and go to state 465 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$ <|" shift, and go to state 468 + "@ <|" shift, and go to state 469 + "@@ <|" shift, and go to state 470 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 488 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + "end of code block" shift, and go to state 1335 + "end of expression" shift, and go to state 493 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_label go to state 507 - expression_goto go to state 508 - if_or_static_if go to state 509 - expression_if_one_liner go to state 510 - expression_if_then_else go to state 511 - expression_for_loop go to state 512 - expression_unsafe go to state 513 - expression_while_loop go to state 514 - expression_with go to state 515 - expression_with_alias go to state 516 - expr_call_pipe go to state 517 - expression_any go to state 518 - expr_keyword go to state 519 - expression_keyword go to state 520 - expr_pipe go to state 521 - name_in_namespace go to state 522 - expression_delete go to state 523 - expr_new go to state 524 - expression_break go to state 525 - expression_continue go to state 526 - expression_return_no_pipe go to state 527 - expression_return go to state 528 - expression_yield_no_pipe go to state 529 - expression_yield go to state 530 - expression_try_catch go to state 531 - kwd_let go to state 532 - expression_let go to state 533 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_assign go to state 540 - expr_assign_pipe go to state 541 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 547 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_label go to state 505 + expression_goto go to state 506 + if_or_static_if go to state 507 + expression_if_one_liner go to state 508 + expression_if_then_else go to state 509 + expression_for_loop go to state 510 + expression_unsafe go to state 511 + expression_while_loop go to state 512 + expression_with go to state 513 + expression_with_alias go to state 514 + expr_call_pipe go to state 515 + expression_any go to state 516 + expr_keyword go to state 517 + expression_keyword go to state 518 + expr_pipe go to state 519 + name_in_namespace go to state 520 + expression_delete go to state 521 + expr_new go to state 522 + expression_break go to state 523 + expression_continue go to state 524 + expression_return_no_pipe go to state 525 + expression_return go to state 526 + expression_yield_no_pipe go to state 527 + expression_yield go to state 528 + expression_try_catch go to state 529 + kwd_let go to state 530 + expression_let go to state 531 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_assign go to state 538 + expr_assign_pipe go to state 539 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 545 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 -State 1190 +State 1188 - 860 array_comprehension: '[' "for" variable_name_with_pos_list "in" . expr_list "end of expression" expr array_comprehension_where ']' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 859 array_comprehension: '[' "for" variable_name_with_pos_list "in" . expr_list "end of expression" expr array_comprehension_where ']' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - expr_list go to state 1338 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 709 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + expr_list go to state 1336 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 707 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 -State 1191 +State 1189 - 630 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" - 631 | variable_name_with_pos_list . ',' "name" "aka" "name" - 861 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list . "in" expr_list "end of expression" expr array_comprehension_where ']' + 629 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" + 630 | variable_name_with_pos_list . ',' "name" "aka" "name" + 860 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list . "in" expr_list "end of expression" expr array_comprehension_where ']' - "in" shift, and go to state 1339 - ',' shift, and go to state 838 + "in" shift, and go to state 1337 + ',' shift, and go to state 836 -State 1192 +State 1190 - 827 make_dim_decl: '[' expr_list optional_comma ']' . + 826 make_dim_decl: '[' expr_list optional_comma ']' . - $default reduce using rule 827 (make_dim_decl) + $default reduce using rule 826 (make_dim_decl) -State 1193 +State 1191 - 455 expr: '(' expr_list optional_comma ')' . + 454 expr: '(' expr_list optional_comma ')' . - $default reduce using rule 455 (expr) + $default reduce using rule 454 (expr) -State 1194 +State 1192 - 395 func_addr_name: "$i" '(' . expr ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 394 func_addr_name: "$i" '(' . expr ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1340 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1338 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 -State 1195 +State 1193 - 514 expr_mtag: '@' '@' "$c" '(' . expr ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 513 expr_mtag: '@' '@' "$c" '(' . expr ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1341 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1339 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 -State 1196 +State 1194 - 399 func_addr_expr: '@' '@' '<' $@22 . type_declaration_no_options '>' $@23 func_addr_name - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 1342 + 398 func_addr_expr: '@' '@' '<' $@22 . type_declaration_no_options '>' $@23 func_addr_name + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 1340 -State 1197 +State 1195 - 402 func_addr_expr: '@' '@' '<' $@24 . optional_function_argument_list optional_function_type '>' $@25 func_addr_name + 401 func_addr_expr: '@' '@' '<' $@24 . optional_function_argument_list optional_function_type '>' $@25 func_addr_name - '(' shift, and go to state 284 + '(' shift, and go to state 282 $default reduce using rule 121 (optional_function_argument_list) - optional_function_argument_list go to state 1343 + optional_function_argument_list go to state 1341 -State 1198 +State 1196 60 expression_else: "else" . expression_block - "begin of code block" shift, and go to state 286 + "begin of code block" shift, and go to state 284 - expression_block go to state 1344 + expression_block go to state 1342 -State 1199 +State 1197 57 elif_or_static_elif: "elif" . $default reduce using rule 57 (elif_or_static_elif) -State 1200 +State 1198 58 elif_or_static_elif: "static_elif" . $default reduce using rule 58 (elif_or_static_elif) -State 1201 +State 1199 61 expression_else: elif_or_static_elif . expr expression_block expression_else - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1345 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1343 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 -State 1202 +State 1200 72 expression_if_then_else: if_or_static_if expr expression_block expression_else . $default reduce using rule 72 (expression_if_then_else) -State 1203 +State 1201 74 expression_if_then_else: expression_if_one_liner "if" $@3 expr . expression_else_one_liner "end of expression" - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "else" shift, and go to state 1346 - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "else" shift, and go to state 1344 + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 $default reduce using rule 64 (expression_else_one_liner) - expression_else_one_liner go to state 1347 + expression_else_one_liner go to state 1345 -State 1204 +State 1202 - 342 expr_full_block_assumed_piped: block_or_lambda $@21 optional_annotation_list . optional_capture_list optional_function_argument_list optional_function_type expression_block + 341 expr_full_block_assumed_piped: block_or_lambda $@21 optional_annotation_list . optional_capture_list optional_function_argument_list optional_function_type expression_block - "[[" shift, and go to state 962 + "[[" shift, and go to state 960 - $default reduce using rule 336 (optional_capture_list) + $default reduce using rule 335 (optional_capture_list) + + optional_capture_list go to state 1346 - optional_capture_list go to state 1348 + +State 1203 + + 389 expr_named_call: name_in_namespace '(' '[' make_struct_fields . ']' ')' + 772 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr + 773 | make_struct_fields . ',' "name" ":=" expr + 776 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr + 777 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr + + ',' shift, and go to state 1159 + ']' shift, and go to state 1347 + + +State 1204 + + 322 expr_list: expr_list ',' . expr + 390 expr_named_call: name_in_namespace '(' expr_list ',' . '[' make_struct_fields ']' ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 1348 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1107 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1205 - 390 expr_named_call: name_in_namespace '(' '[' make_struct_fields . ']' ')' - 773 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr - 774 | make_struct_fields . ',' "name" ":=" expr - 777 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr - 778 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr + 411 expr_call: name_in_namespace '(' expr_list ')' . - ',' shift, and go to state 1161 - ']' shift, and go to state 1349 + $default reduce using rule 411 (expr_call) State 1206 - 323 expr_list: expr_list ',' . expr - 391 expr_named_call: name_in_namespace '(' expr_list ',' . '[' make_struct_fields ']' ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 1350 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1109 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 410 expr_call: name_in_namespace '(' make_struct_single ')' . + + $default reduce using rule 410 (expr_call) State 1207 - 412 expr_call: name_in_namespace '(' expr_list ')' . + 298 tuple_expansion: "name" . - $default reduce using rule 412 (expr_call) + $default reduce using rule 298 (tuple_expansion) State 1208 - 411 expr_call: name_in_namespace '(' make_struct_single ')' . + 299 tuple_expansion: tuple_expansion . ',' "name" + 300 tuple_expansion_variable_declaration: "[[" tuple_expansion . ']' ']' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 302 | "[[" tuple_expansion . ']' ']' optional_ref copy_or_move_or_clone expr "end of expression" - $default reduce using rule 411 (expr_call) + ',' shift, and go to state 1349 + ']' shift, and go to state 1350 State 1209 - 299 tuple_expansion: "name" . + 299 tuple_expansion: tuple_expansion . ',' "name" + 301 tuple_expansion_variable_declaration: '(' tuple_expansion . ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 303 | '(' tuple_expansion . ')' optional_ref copy_or_move_or_clone expr "end of expression" - $default reduce using rule 299 (tuple_expansion) + ',' shift, and go to state 1349 + ')' shift, and go to state 1351 State 1210 - 300 tuple_expansion: tuple_expansion . ',' "name" - 301 tuple_expansion_variable_declaration: "[[" tuple_expansion . ']' ']' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 303 | "[[" tuple_expansion . ']' ']' optional_ref copy_or_move_or_clone expr "end of expression" + 331 capture_entry: "<-" . "name" - ',' shift, and go to state 1351 - ']' shift, and go to state 1352 + "name" shift, and go to state 1352 State 1211 - 300 tuple_expansion: tuple_expansion . ',' "name" - 302 tuple_expansion_variable_declaration: '(' tuple_expansion . ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 304 | '(' tuple_expansion . ')' optional_ref copy_or_move_or_clone expr "end of expression" + 332 capture_entry: ":=" . "name" - ',' shift, and go to state 1351 - ')' shift, and go to state 1353 + "name" shift, and go to state 1353 State 1212 - 332 capture_entry: "<-" . "name" + 330 capture_entry: '=' . "name" "name" shift, and go to state 1354 State 1213 - 333 capture_entry: ":=" . "name" + 329 capture_entry: '&' . "name" "name" shift, and go to state 1355 State 1214 - 331 capture_entry: '=' . "name" + 333 capture_list: capture_entry . - "name" shift, and go to state 1356 + $default reduce using rule 333 (capture_list) State 1215 - 330 capture_entry: '&' . "name" + 334 capture_list: capture_list . ',' capture_entry + 336 optional_capture_list: "[[" capture_list . ']' ']' - "name" shift, and go to state 1357 + ',' shift, and go to state 1356 + ']' shift, and go to state 1357 State 1216 - 334 capture_list: capture_entry . + 339 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list . optional_function_type block_or_simple_block - $default reduce using rule 334 (capture_list) + ':' shift, and go to state 371 + $default reduce using rule 124 (optional_function_type) -State 1217 + optional_function_type go to state 1358 - 335 capture_list: capture_list . ',' capture_entry - 337 optional_capture_list: "[[" capture_list . ']' ']' - ',' shift, and go to state 1358 - ']' shift, and go to state 1359 +State 1217 + 472 expr: expr "is" "type" '<' . $@28 type_declaration_no_options '>' $@29 -State 1218 + $default reduce using rule 470 ($@28) - 340 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list . optional_function_type block_or_simple_block + $@28 go to state 1359 - ':' shift, and go to state 373 - $default reduce using rule 124 (optional_function_type) +State 1218 - optional_function_type go to state 1360 + 512 expr_mtag: expr "is" "$f" '(' . expr ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1360 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1219 - 473 expr: expr "is" "type" '<' . $@28 type_declaration_no_options '>' $@29 + 478 expr: expr "as" "type" '<' . $@30 type_declaration '>' $@31 - $default reduce using rule 471 ($@28) + $default reduce using rule 476 ($@30) - $@28 go to state 1361 + $@30 go to state 1361 State 1220 - 513 expr_mtag: expr "is" "$f" '(' . expr ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 510 expr_mtag: expr "as" "$f" '(' . expr ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1362 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1221 - 479 expr: expr "as" "type" '<' . $@30 type_declaration '>' $@31 - - $default reduce using rule 477 ($@30) + 370 expr_assign_pipe_right: "$ <|" expr_block . - $@30 go to state 1363 + $default reduce using rule 370 (expr_assign_pipe_right) State 1222 - 511 expr_mtag: expr "as" "$f" '(' . expr ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1364 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 368 expr_assign_pipe_right: "@ <|" expr_block . + + $default reduce using rule 368 (expr_assign_pipe_right) State 1223 - 371 expr_assign_pipe_right: "$ <|" expr_block . + 369 expr_assign_pipe_right: "@@ <|" expr_block . - $default reduce using rule 371 (expr_assign_pipe_right) + $default reduce using rule 369 (expr_assign_pipe_right) State 1224 - 369 expr_assign_pipe_right: "@ <|" expr_block . - - $default reduce using rule 369 (expr_assign_pipe_right) + 391 expr_method_call: expr "->" "name" '(' . ')' + 392 | expr "->" "name" '(' . expr_list ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + ')' shift, and go to state 1363 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + expr_list go to state 1364 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 707 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1225 - 370 expr_assign_pipe_right: "@@ <|" expr_block . - - $default reduce using rule 370 (expr_assign_pipe_right) + 507 expr_mtag: expr "?." "$f" '(' . expr ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1365 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1226 - 392 expr_method_call: expr "->" "name" '(' . ')' - 393 | expr "->" "name" '(' . expr_list ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - ')' shift, and go to state 1365 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - expr_list go to state 1366 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 709 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 457 expr: expr "?[" expr ']' . + + $default reduce using rule 457 (expr) State 1227 - 508 expr_mtag: expr "?." "$f" '(' . expr ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1367 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 483 expr: expr '?' "as" "type" . '<' $@32 type_declaration '>' $@33 + + '<' shift, and go to state 1366 State 1228 - 458 expr: expr "?[" expr ']' . + 511 expr_mtag: expr '?' "as" "$f" . '(' expr ')' - $default reduce using rule 458 (expr) + '(' shift, and go to state 1367 State 1229 - 484 expr: expr '?' "as" "type" . '<' $@32 type_declaration '>' $@33 + 480 expr: expr '?' "as" "name" . - '<' shift, and go to state 1368 + $default reduce using rule 480 (expr) State 1230 - 512 expr_mtag: expr '?' "as" "$f" . '(' expr ')' + 484 expr: expr '?' "as" basic_type_declaration . - '(' shift, and go to state 1369 + $default reduce using rule 484 (expr) State 1231 - 481 expr: expr '?' "as" "name" . - - $default reduce using rule 481 (expr) + 469 expr: expr '?' expr ':' . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1368 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1232 - 485 expr: expr '?' "as" basic_type_declaration . + 509 expr_mtag: expr '.' "?." "$f" . '(' expr ')' - $default reduce using rule 485 (expr) + '(' shift, and go to state 1369 State 1233 - 470 expr: expr '?' expr ':' . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1370 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 460 expr: expr '.' "?." "name" . + + $default reduce using rule 460 (expr) State 1234 - 510 expr_mtag: expr '.' "?." "$f" . '(' expr ')' - - '(' shift, and go to state 1371 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 458 | expr '.' "?[" expr . ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + ']' shift, and go to state 1370 State 1235 - 461 expr: expr '.' "?." "name" . - - $default reduce using rule 461 (expr) + 506 expr_mtag: expr '.' "$f" '(' . expr ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1371 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1236 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 459 | expr '.' "?[" expr . ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - ']' shift, and go to state 1372 + 404 expr_field: expr '.' "name" '(' . ')' + 405 | expr '.' "name" '(' . expr_list ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + ')' shift, and go to state 1372 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + expr_list go to state 1373 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 707 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1237 - 507 expr_mtag: expr '.' "$f" '(' . expr ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1373 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 508 expr_mtag: expr '.' '.' "$f" . '(' expr ')' + + '(' shift, and go to state 1374 State 1238 - 405 expr_field: expr '.' "name" '(' . ')' - 406 | expr '.' "name" '(' . expr_list ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - ')' shift, and go to state 1374 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - expr_list go to state 1375 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 709 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 403 expr_field: expr '.' '.' "name" . + + $default reduce using rule 403 (expr_field) State 1239 - 509 expr_mtag: expr '.' '.' "$f" . '(' expr ')' - - '(' shift, and go to state 1376 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 456 | expr '.' '[' expr . ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + ']' shift, and go to state 1375 State 1240 - 404 expr_field: expr '.' '.' "name" . + 408 expr_field: expr '.' $@26 error . $@27 - $default reduce using rule 404 (expr_field) + $default reduce using rule 407 ($@27) + + $@27 go to state 1376 State 1241 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 457 | expr '.' '[' expr . ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - ']' shift, and go to state 1377 + 455 expr: expr '[' expr ']' . + $default reduce using rule 455 (expr) -State 1242 - 409 expr_field: expr '.' $@26 error . $@27 +State 1242 - $default reduce using rule 408 ($@27) + 413 expr_call: basic_type_declaration '(' expr_list ')' . - $@27 go to state 1378 + $default reduce using rule 413 (expr_call) State 1243 - 456 expr: expr '[' expr ']' . + 590 enum_list: enum_list "name" '=' expr "end of expression" . - $default reduce using rule 456 (expr) + $default reduce using rule 590 (enum_list) State 1244 - 414 expr_call: basic_type_declaration '(' expr_list ')' . + 610 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 "end of code block" . - $default reduce using rule 414 (expr_call) + $default reduce using rule 610 (enum_declaration) State 1245 - 591 enum_list: enum_list "name" '=' expr "end of expression" . + 120 optional_annotation_list: '[' annotation_list ']' . + 535 struct_variable_declaration_list: struct_variable_declaration_list '[' annotation_list ']' . "end of expression" + + "end of expression" shift, and go to state 1377 - $default reduce using rule 591 (enum_list) + $default reduce using rule 120 (optional_annotation_list) State 1246 - 611 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 "end of code block" . + 523 optional_public_or_private_member_variable: "public" . - $default reduce using rule 611 (enum_declaration) + $default reduce using rule 523 (optional_public_or_private_member_variable) State 1247 - 120 optional_annotation_list: '[' annotation_list ']' . - 536 struct_variable_declaration_list: struct_variable_declaration_list '[' annotation_list ']' . "end of expression" - - "end of expression" shift, and go to state 1379 + 524 optional_public_or_private_member_variable: "private" . - $default reduce using rule 120 (optional_annotation_list) + $default reduce using rule 524 (optional_public_or_private_member_variable) State 1248 - 524 optional_public_or_private_member_variable: "public" . + 532 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable . "abstract" optional_constant $@35 function_declaration_header "end of expression" + 534 | struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable . optional_static_member_variable optional_override optional_constant $@36 function_declaration_header expression_block - $default reduce using rule 524 (optional_public_or_private_member_variable) + "abstract" shift, and go to state 1378 + "static" shift, and go to state 1249 + + $default reduce using rule 525 (optional_static_member_variable) + + optional_static_member_variable go to state 1379 State 1249 - 525 optional_public_or_private_member_variable: "private" . + 526 optional_static_member_variable: "static" . - $default reduce using rule 525 (optional_public_or_private_member_variable) + $default reduce using rule 526 (optional_static_member_variable) State 1250 - 533 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable . "abstract" optional_constant $@35 function_declaration_header "end of expression" - 535 | struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable . optional_static_member_variable optional_override optional_constant $@36 function_declaration_header expression_block + 527 structure_variable_declaration: optional_field_annotation optional_static_member_variable . optional_override optional_public_or_private_member_variable variable_declaration - "abstract" shift, and go to state 1380 - "static" shift, and go to state 1251 + "override" shift, and go to state 1380 + "sealed" shift, and go to state 1381 - $default reduce using rule 526 (optional_static_member_variable) + $default reduce using rule 517 (optional_override) - optional_static_member_variable go to state 1381 + optional_override go to state 1382 State 1251 - 527 optional_static_member_variable: "static" . + 530 struct_variable_declaration_list: struct_variable_declaration_list $@34 structure_variable_declaration "end of expression" . - $default reduce using rule 527 (optional_static_member_variable) + $default reduce using rule 530 (struct_variable_declaration_list) State 1252 - 528 structure_variable_declaration: optional_field_annotation optional_static_member_variable . optional_override optional_public_or_private_member_variable variable_declaration - - "override" shift, and go to state 1382 - "sealed" shift, and go to state 1383 - - $default reduce using rule 518 (optional_override) + 572 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" . - optional_override go to state 1384 + $default reduce using rule 572 (let_variable_declaration) State 1253 - 531 struct_variable_declaration_list: struct_variable_declaration_list $@34 structure_variable_declaration "end of expression" . + 690 type_declaration_no_options: "type" '<' $@49 type_declaration '>' $@50 . - $default reduce using rule 531 (struct_variable_declaration_list) + $default reduce using rule 690 (type_declaration_no_options) State 1254 - 573 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" . + 713 type_declaration_no_options: "array" '<' $@54 type_declaration '>' $@55 . - $default reduce using rule 573 (let_variable_declaration) + $default reduce using rule 713 (type_declaration_no_options) State 1255 - 691 type_declaration_no_options: "type" '<' $@49 type_declaration '>' $@50 . + 716 type_declaration_no_options: "table" '<' $@56 table_type_pair '>' $@57 . - $default reduce using rule 691 (type_declaration_no_options) + $default reduce using rule 716 (type_declaration_no_options) State 1256 - 714 type_declaration_no_options: "array" '<' $@54 type_declaration '>' $@55 . + 679 table_type_pair: type_declaration "end of expression" type_declaration . + 748 type_declaration: type_declaration . '|' type_declaration_no_options + 749 | type_declaration . '|' '#' + + '|' shift, and go to state 415 - $default reduce using rule 714 (type_declaration_no_options) + $default reduce using rule 679 (table_type_pair) State 1257 - 717 type_declaration_no_options: "table" '<' $@56 table_type_pair '>' $@57 . + 719 type_declaration_no_options: "iterator" '<' $@58 type_declaration '>' $@59 . - $default reduce using rule 717 (type_declaration_no_options) + $default reduce using rule 719 (type_declaration_no_options) State 1258 - 680 table_type_pair: type_declaration "end of expression" type_declaration . - 749 type_declaration: type_declaration . '|' type_declaration_no_options - 750 | type_declaration . '|' '#' - - '|' shift, and go to state 417 + 709 type_declaration_no_options: "smart_ptr" '<' $@52 type_declaration '>' $@53 . - $default reduce using rule 680 (table_type_pair) + $default reduce using rule 709 (type_declaration_no_options) State 1259 - 720 type_declaration_no_options: "iterator" '<' $@58 type_declaration '>' $@59 . + 671 bitfield_bits: bitfield_bits "end of expression" "name" . - $default reduce using rule 720 (type_declaration_no_options) + $default reduce using rule 671 (bitfield_bits) State 1260 - 710 type_declaration_no_options: "smart_ptr" '<' $@52 type_declaration '>' $@53 . + 677 bitfield_type_declaration: "bitfield" '<' $@47 bitfield_bits '>' $@48 . - $default reduce using rule 710 (type_declaration_no_options) + $default reduce using rule 677 (bitfield_type_declaration) State 1261 - 672 bitfield_bits: bitfield_bits "end of expression" "name" . + 723 type_declaration_no_options: "block" '<' $@60 type_declaration '>' $@61 . - $default reduce using rule 672 (bitfield_bits) + $default reduce using rule 723 (type_declaration_no_options) State 1262 - 678 bitfield_type_declaration: "bitfield" '<' $@47 bitfield_bits '>' $@48 . + 726 type_declaration_no_options: "block" '<' $@62 optional_function_argument_list optional_function_type '>' . $@63 + + $default reduce using rule 725 ($@63) - $default reduce using rule 678 (bitfield_type_declaration) + $@63 go to state 1383 State 1263 - 724 type_declaration_no_options: "block" '<' $@60 type_declaration '>' $@61 . + 730 type_declaration_no_options: "function" '<' $@64 type_declaration '>' $@65 . - $default reduce using rule 724 (type_declaration_no_options) + $default reduce using rule 730 (type_declaration_no_options) State 1264 - 727 type_declaration_no_options: "block" '<' $@62 optional_function_argument_list optional_function_type '>' . $@63 + 733 type_declaration_no_options: "function" '<' $@66 optional_function_argument_list optional_function_type '>' . $@67 - $default reduce using rule 726 ($@63) + $default reduce using rule 732 ($@67) - $@63 go to state 1385 + $@67 go to state 1384 State 1265 - 731 type_declaration_no_options: "function" '<' $@64 type_declaration '>' $@65 . + 737 type_declaration_no_options: "lambda" '<' $@68 type_declaration '>' $@69 . - $default reduce using rule 731 (type_declaration_no_options) + $default reduce using rule 737 (type_declaration_no_options) State 1266 - 734 type_declaration_no_options: "function" '<' $@66 optional_function_argument_list optional_function_type '>' . $@67 + 740 type_declaration_no_options: "lambda" '<' $@70 optional_function_argument_list optional_function_type '>' . $@71 - $default reduce using rule 733 ($@67) + $default reduce using rule 739 ($@71) - $@67 go to state 1386 + $@71 go to state 1385 State 1267 - 738 type_declaration_no_options: "lambda" '<' $@68 type_declaration '>' $@69 . + 543 tuple_type_list: tuple_type_list "end of expression" tuple_type . - $default reduce using rule 738 (type_declaration_no_options) + $default reduce using rule 543 (tuple_type_list) State 1268 - 741 type_declaration_no_options: "lambda" '<' $@70 optional_function_argument_list optional_function_type '>' . $@71 - - $default reduce using rule 740 ($@71) + 743 type_declaration_no_options: "tuple" '<' $@72 tuple_type_list '>' $@73 . - $@71 go to state 1387 + $default reduce using rule 743 (type_declaration_no_options) State 1269 - 544 tuple_type_list: tuple_type_list "end of expression" tuple_type . + 549 variant_type_list: variant_type_list "end of expression" variant_type . - $default reduce using rule 544 (tuple_type_list) + $default reduce using rule 549 (variant_type_list) State 1270 - 744 type_declaration_no_options: "tuple" '<' $@72 tuple_type_list '>' $@73 . + 746 type_declaration_no_options: "variant" '<' $@74 variant_type_list '>' $@75 . - $default reduce using rule 744 (type_declaration_no_options) + $default reduce using rule 746 (type_declaration_no_options) State 1271 - 550 variant_type_list: variant_type_list "end of expression" variant_type . + 252 type_declaration_no_options_list: type_declaration_no_options_list "end of expression" . type_declaration - $default reduce using rule 550 (variant_type_list) + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 354 + type_declaration go to state 1386 State 1272 - 747 type_declaration_no_options: "variant" '<' $@74 variant_type_list '>' $@75 . + 694 type_declaration_no_options: '$' name_in_namespace '<' $@51 type_declaration_no_options_list '>' . '(' optional_expr_list ')' - $default reduce using rule 747 (type_declaration_no_options) + '(' shift, and go to state 1387 State 1273 - 252 type_declaration_no_options_list: type_declaration_no_options_list "end of expression" . type_declaration + 627 variable_name_with_pos_list: "$i" '(' expr ')' . - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 356 - type_declaration go to state 1388 + $default reduce using rule 627 (variable_name_with_pos_list) State 1274 - 695 type_declaration_no_options: '$' name_in_namespace '<' $@51 type_declaration_no_options_list '>' . '(' optional_expr_list ')' + 630 variable_name_with_pos_list: variable_name_with_pos_list ',' "name" "aka" . "name" - '(' shift, and go to state 1389 + "name" shift, and go to state 1388 State 1275 - 628 variable_name_with_pos_list: "$i" '(' expr ')' . - - $default reduce using rule 628 (variable_name_with_pos_list) + 558 variable_declaration: variable_name_with_pos_list ':' type_declaration copy_or_move . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1389 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1276 - 631 variable_name_with_pos_list: variable_name_with_pos_list ',' "name" "aka" . "name" + 805 make_struct_decl: "struct" '<' $@88 type_declaration_no_options '>' . $@89 '(' use_initializer make_struct_dim ')' + + $default reduce using rule 804 ($@89) - "name" shift, and go to state 1390 + $@89 go to state 1390 State 1277 - 559 variable_declaration: variable_name_with_pos_list ':' type_declaration copy_or_move . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1391 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 808 make_struct_decl: "class" '<' $@90 type_declaration_no_options '>' . $@91 '(' use_initializer make_struct_dim ')' + + $default reduce using rule 807 ($@91) + + $@91 go to state 1391 State 1278 - 806 make_struct_decl: "struct" '<' $@88 type_declaration_no_options '>' . $@89 '(' use_initializer make_struct_dim ')' + 76 expression_for_loop: "for" $@4 variable_name_with_pos_list "in" expr_list . expression_block + 322 expr_list: expr_list . ',' expr - $default reduce using rule 805 ($@89) + "begin of code block" shift, and go to state 284 + ',' shift, and go to state 856 - $@89 go to state 1392 + expression_block go to state 1392 State 1279 - 809 make_struct_decl: "class" '<' $@90 type_declaration_no_options '>' . $@91 '(' use_initializer make_struct_dim ')' + 270 new_type_declaration: '<' $@11 type_declaration '>' . $@12 - $default reduce using rule 808 ($@91) + $default reduce using rule 269 ($@12) - $@91 go to state 1393 + $@12 go to state 1393 State 1280 - 76 expression_for_loop: "for" $@4 variable_name_with_pos_list "in" expr_list . expression_block - 323 expr_list: expr_list . ',' expr - - "begin of code block" shift, and go to state 286 - ',' shift, and go to state 858 + 274 expr_new: "new" new_type_declaration '(' expr_list ')' . - expression_block go to state 1394 + $default reduce using rule 274 (expr_new) State 1281 - 271 new_type_declaration: '<' $@11 type_declaration '>' . $@12 + 770 make_struct_fields: "name" . copy_or_move expr + 771 | "name" . ":=" expr - $default reduce using rule 270 ($@12) + "<-" shift, and go to state 835 + ":=" shift, and go to state 1153 + '=' shift, and go to state 837 - $@12 go to state 1395 + copy_or_move go to state 1154 State 1282 - 275 expr_new: "new" new_type_declaration '(' expr_list ')' . + 273 expr_new: "new" new_type_declaration '(' use_initializer ')' . - $default reduce using rule 275 (expr_new) + $default reduce using rule 273 (expr_new) State 1283 - 771 make_struct_fields: "name" . copy_or_move expr - 772 | "name" . ":=" expr - - "<-" shift, and go to state 837 - ":=" shift, and go to state 1155 - '=' shift, and go to state 839 + 275 expr_new: "new" new_type_declaration '(' use_initializer make_struct_single . ')' - copy_or_move go to state 1156 + ')' shift, and go to state 1394 State 1284 - 274 expr_new: "new" new_type_declaration '(' use_initializer ')' . + 319 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" . '>' expr ')' + 320 | "typeinfo" '(' name_in_namespace '<' "name" . "end of expression" "name" '>' expr ')' - $default reduce using rule 274 (expr_new) + "end of expression" shift, and go to state 1395 + '>' shift, and go to state 1396 State 1285 - 276 expr_new: "new" new_type_declaration '(' use_initializer make_struct_single . ')' + 318 expr_type_info: "typeinfo" '(' name_in_namespace expr ')' . - ')' shift, and go to state 1396 + $default reduce using rule 318 (expr_type_info) State 1286 - 320 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" . '>' expr ')' - 321 | "typeinfo" '(' name_in_namespace '<' "name" . "end of expression" "name" '>' expr ')' + 317 expr_type_decl: "type" '<' $@19 type_declaration '>' . $@20 - "end of expression" shift, and go to state 1397 - '>' shift, and go to state 1398 + $default reduce using rule 316 ($@20) + $@20 go to state 1397 -State 1287 - 319 expr_type_info: "typeinfo" '(' name_in_namespace expr ')' . +State 1287 - $default reduce using rule 319 (expr_type_info) + 686 type_declaration_no_options: type_declaration_no_options . dim_list + 687 | type_declaration_no_options . '[' ']' + 695 | type_declaration_no_options . '-' '[' ']' + 696 | type_declaration_no_options . "explicit" + 697 | type_declaration_no_options . "const" + 698 | type_declaration_no_options . '-' "const" + 699 | type_declaration_no_options . '&' + 700 | type_declaration_no_options . '-' '&' + 701 | type_declaration_no_options . '#' + 702 | type_declaration_no_options . "implicit" + 703 | type_declaration_no_options . '-' '#' + 704 | type_declaration_no_options . "==" "const" + 705 | type_declaration_no_options . "==" '&' + 706 | type_declaration_no_options . '?' + 710 | type_declaration_no_options . "??" + 831 make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options . '>' $@99 '(' use_initializer make_struct_dim ')' + + "const" shift, and go to state 404 + "implicit" shift, and go to state 405 + "explicit" shift, and go to state 406 + "==" shift, and go to state 407 + "??" shift, and go to state 408 + '?' shift, and go to state 409 + '&' shift, and go to state 410 + '>' shift, and go to state 1398 + '-' shift, and go to state 411 + '[' shift, and go to state 412 + '#' shift, and go to state 413 + + dim_list go to state 414 State 1288 - 318 expr_type_decl: "type" '<' $@19 type_declaration '>' . $@20 - - $default reduce using rule 317 ($@20) - - $@20 go to state 1399 + 686 type_declaration_no_options: type_declaration_no_options . dim_list + 687 | type_declaration_no_options . '[' ']' + 695 | type_declaration_no_options . '-' '[' ']' + 696 | type_declaration_no_options . "explicit" + 697 | type_declaration_no_options . "const" + 698 | type_declaration_no_options . '-' "const" + 699 | type_declaration_no_options . '&' + 700 | type_declaration_no_options . '-' '&' + 701 | type_declaration_no_options . '#' + 702 | type_declaration_no_options . "implicit" + 703 | type_declaration_no_options . '-' '#' + 704 | type_declaration_no_options . "==" "const" + 705 | type_declaration_no_options . "==" '&' + 706 | type_declaration_no_options . '?' + 710 | type_declaration_no_options . "??" + 834 make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options . '>' $@101 '(' use_initializer make_struct_dim ')' + + "const" shift, and go to state 404 + "implicit" shift, and go to state 405 + "explicit" shift, and go to state 406 + "==" shift, and go to state 407 + "??" shift, and go to state 408 + '?' shift, and go to state 409 + '&' shift, and go to state 410 + '>' shift, and go to state 1399 + '-' shift, and go to state 411 + '[' shift, and go to state 412 + '#' shift, and go to state 413 + + dim_list go to state 414 State 1289 - 687 type_declaration_no_options: type_declaration_no_options . dim_list - 688 | type_declaration_no_options . '[' ']' - 696 | type_declaration_no_options . '-' '[' ']' - 697 | type_declaration_no_options . "explicit" - 698 | type_declaration_no_options . "const" - 699 | type_declaration_no_options . '-' "const" - 700 | type_declaration_no_options . '&' - 701 | type_declaration_no_options . '-' '&' - 702 | type_declaration_no_options . '#' - 703 | type_declaration_no_options . "implicit" - 704 | type_declaration_no_options . '-' '#' - 705 | type_declaration_no_options . "==" "const" - 706 | type_declaration_no_options . "==" '&' - 707 | type_declaration_no_options . '?' - 711 | type_declaration_no_options . "??" - 832 make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options . '>' $@99 '(' use_initializer make_struct_dim ')' - - "const" shift, and go to state 406 - "implicit" shift, and go to state 407 - "explicit" shift, and go to state 408 - "==" shift, and go to state 409 - "??" shift, and go to state 410 - '?' shift, and go to state 411 - '&' shift, and go to state 412 + 686 type_declaration_no_options: type_declaration_no_options . dim_list + 687 | type_declaration_no_options . '[' ']' + 695 | type_declaration_no_options . '-' '[' ']' + 696 | type_declaration_no_options . "explicit" + 697 | type_declaration_no_options . "const" + 698 | type_declaration_no_options . '-' "const" + 699 | type_declaration_no_options . '&' + 700 | type_declaration_no_options . '-' '&' + 701 | type_declaration_no_options . '#' + 702 | type_declaration_no_options . "implicit" + 703 | type_declaration_no_options . '-' '#' + 704 | type_declaration_no_options . "==" "const" + 705 | type_declaration_no_options . "==" '&' + 706 | type_declaration_no_options . '?' + 710 | type_declaration_no_options . "??" + 837 make_dim_decl: "array" "variant" '<' $@102 type_declaration_no_options . '>' $@103 '(' make_struct_dim ')' + + "const" shift, and go to state 404 + "implicit" shift, and go to state 405 + "explicit" shift, and go to state 406 + "==" shift, and go to state 407 + "??" shift, and go to state 408 + '?' shift, and go to state 409 + '&' shift, and go to state 410 '>' shift, and go to state 1400 - '-' shift, and go to state 413 - '[' shift, and go to state 414 - '#' shift, and go to state 415 + '-' shift, and go to state 411 + '[' shift, and go to state 412 + '#' shift, and go to state 413 - dim_list go to state 416 + dim_list go to state 414 State 1290 - 687 type_declaration_no_options: type_declaration_no_options . dim_list - 688 | type_declaration_no_options . '[' ']' - 696 | type_declaration_no_options . '-' '[' ']' - 697 | type_declaration_no_options . "explicit" - 698 | type_declaration_no_options . "const" - 699 | type_declaration_no_options . '-' "const" - 700 | type_declaration_no_options . '&' - 701 | type_declaration_no_options . '-' '&' - 702 | type_declaration_no_options . '#' - 703 | type_declaration_no_options . "implicit" - 704 | type_declaration_no_options . '-' '#' - 705 | type_declaration_no_options . "==" "const" - 706 | type_declaration_no_options . "==" '&' - 707 | type_declaration_no_options . '?' - 711 | type_declaration_no_options . "??" - 835 make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options . '>' $@101 '(' use_initializer make_struct_dim ')' - - "const" shift, and go to state 406 - "implicit" shift, and go to state 407 - "explicit" shift, and go to state 408 - "==" shift, and go to state 409 - "??" shift, and go to state 410 - '?' shift, and go to state 411 - '&' shift, and go to state 412 - '>' shift, and go to state 1401 - '-' shift, and go to state 413 - '[' shift, and go to state 414 - '#' shift, and go to state 415 - - dim_list go to state 416 + 841 make_dim_decl: "array" '<' $@104 type_declaration_no_options '>' . $@105 '(' expr_list optional_comma ')' + + $default reduce using rule 840 ($@105) + + $@105 go to state 1401 State 1291 - 687 type_declaration_no_options: type_declaration_no_options . dim_list - 688 | type_declaration_no_options . '[' ']' - 696 | type_declaration_no_options . '-' '[' ']' - 697 | type_declaration_no_options . "explicit" - 698 | type_declaration_no_options . "const" - 699 | type_declaration_no_options . '-' "const" - 700 | type_declaration_no_options . '&' - 701 | type_declaration_no_options . '-' '&' - 702 | type_declaration_no_options . '#' - 703 | type_declaration_no_options . "implicit" - 704 | type_declaration_no_options . '-' '#' - 705 | type_declaration_no_options . "==" "const" - 706 | type_declaration_no_options . "==" '&' - 707 | type_declaration_no_options . '?' - 711 | type_declaration_no_options . "??" - 838 make_dim_decl: "array" "variant" '<' $@102 type_declaration_no_options . '>' $@103 '(' make_struct_dim ')' - - "const" shift, and go to state 406 - "implicit" shift, and go to state 407 - "explicit" shift, and go to state 408 - "==" shift, and go to state 409 - "??" shift, and go to state 410 - '?' shift, and go to state 411 - '&' shift, and go to state 412 - '>' shift, and go to state 1402 - '-' shift, and go to state 413 - '[' shift, and go to state 414 - '#' shift, and go to state 415 + 838 make_dim_decl: "array" '(' expr_list optional_comma ')' . - dim_list go to state 416 + $default reduce using rule 838 (make_dim_decl) State 1292 - 842 make_dim_decl: "array" '<' $@104 type_declaration_no_options '>' . $@105 '(' expr_list optional_comma ')' - - $default reduce using rule 841 ($@105) + 686 type_declaration_no_options: type_declaration_no_options . dim_list + 687 | type_declaration_no_options . '[' ']' + 695 | type_declaration_no_options . '-' '[' ']' + 696 | type_declaration_no_options . "explicit" + 697 | type_declaration_no_options . "const" + 698 | type_declaration_no_options . '-' "const" + 699 | type_declaration_no_options . '&' + 700 | type_declaration_no_options . '-' '&' + 701 | type_declaration_no_options . '#' + 702 | type_declaration_no_options . "implicit" + 703 | type_declaration_no_options . '-' '#' + 704 | type_declaration_no_options . "==" "const" + 705 | type_declaration_no_options . "==" '&' + 706 | type_declaration_no_options . '?' + 710 | type_declaration_no_options . "??" + 854 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options . '>' '(' expr_map_tuple_list optional_comma ')' + + "const" shift, and go to state 404 + "implicit" shift, and go to state 405 + "explicit" shift, and go to state 406 + "==" shift, and go to state 407 + "??" shift, and go to state 408 + '?' shift, and go to state 409 + '&' shift, and go to state 410 + '>' shift, and go to state 1402 + '-' shift, and go to state 411 + '[' shift, and go to state 412 + '#' shift, and go to state 413 - $@105 go to state 1403 + dim_list go to state 414 State 1293 - 839 make_dim_decl: "array" '(' expr_list optional_comma ')' . - - $default reduce using rule 839 (make_dim_decl) + 853 make_table_decl: "table" '<' type_declaration_no_options '>' '(' . expr_map_tuple_list optional_comma ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 688 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_map_tuple go to state 696 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + expr_map_tuple_list go to state 1403 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1294 - 687 type_declaration_no_options: type_declaration_no_options . dim_list - 688 | type_declaration_no_options . '[' ']' - 696 | type_declaration_no_options . '-' '[' ']' - 697 | type_declaration_no_options . "explicit" - 698 | type_declaration_no_options . "const" - 699 | type_declaration_no_options . '-' "const" - 700 | type_declaration_no_options . '&' - 701 | type_declaration_no_options . '-' '&' - 702 | type_declaration_no_options . '#' - 703 | type_declaration_no_options . "implicit" - 704 | type_declaration_no_options . '-' '#' - 705 | type_declaration_no_options . "==" "const" - 706 | type_declaration_no_options . "==" '&' - 707 | type_declaration_no_options . '?' - 711 | type_declaration_no_options . "??" - 855 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options . '>' '(' expr_map_tuple_list optional_comma ')' - - "const" shift, and go to state 406 - "implicit" shift, and go to state 407 - "explicit" shift, and go to state 408 - "==" shift, and go to state 409 - "??" shift, and go to state 410 - '?' shift, and go to state 411 - '&' shift, and go to state 412 - '>' shift, and go to state 1404 - '-' shift, and go to state 413 - '[' shift, and go to state 414 - '#' shift, and go to state 415 - - dim_list go to state 416 + 852 make_table_decl: "table" '(' expr_map_tuple_list optional_comma ')' . + + $default reduce using rule 852 (make_table_decl) State 1295 - 854 make_table_decl: "table" '<' type_declaration_no_options '>' '(' . expr_map_tuple_list optional_comma ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 690 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_map_tuple go to state 698 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - expr_map_tuple_list go to state 1405 - make_table_decl go to state 554 - array_comprehension go to state 555 + 81 expression_with_alias: "assume" "name" '=' $@5 expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + + $default reduce using rule 81 (expression_with_alias) State 1296 - 853 make_table_decl: "table" '(' expr_map_tuple_list optional_comma ')' . + 308 expr_cast: "cast" '<' $@13 type_declaration_no_options '>' . $@14 expr - $default reduce using rule 853 (make_table_decl) + $default reduce using rule 307 ($@14) + + $@14 go to state 1404 State 1297 - 81 expression_with_alias: "assume" "name" '=' $@5 expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 311 expr_cast: "upcast" '<' $@15 type_declaration_no_options '>' . $@16 expr - $default reduce using rule 81 (expression_with_alias) + $default reduce using rule 310 ($@16) + + $@16 go to state 1405 State 1298 - 309 expr_cast: "cast" '<' $@13 type_declaration_no_options '>' . $@14 expr + 314 expr_cast: "reinterpret" '<' $@17 type_declaration_no_options '>' . $@18 expr - $default reduce using rule 308 ($@14) + $default reduce using rule 313 ($@18) - $@14 go to state 1406 + $@18 go to state 1406 State 1299 - 312 expr_cast: "upcast" '<' $@15 type_declaration_no_options '>' . $@16 expr + 845 make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options '>' . $@107 '(' expr_list optional_comma ')' - $default reduce using rule 311 ($@16) + $default reduce using rule 844 ($@107) - $@16 go to state 1407 + $@107 go to state 1407 State 1300 - 315 expr_cast: "reinterpret" '<' $@17 type_declaration_no_options '>' . $@18 expr - - $default reduce using rule 314 ($@18) + 842 make_dim_decl: "fixed_array" '(' expr_list optional_comma ')' . - $@18 go to state 1408 + $default reduce using rule 842 (make_dim_decl) State 1301 - 846 make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options '>' . $@107 '(' expr_list optional_comma ')' + 814 make_struct_decl: "default" '<' $@94 type_declaration_no_options '>' . $@95 use_initializer - $default reduce using rule 845 ($@107) + $default reduce using rule 813 ($@95) - $@107 go to state 1409 + $@95 go to state 1408 State 1302 - 843 make_dim_decl: "fixed_array" '(' expr_list optional_comma ')' . + 823 make_tuple_call: "tuple" '<' $@96 type_declaration_no_options '>' . $@97 '(' use_initializer make_struct_dim ')' - $default reduce using rule 843 (make_dim_decl) + $default reduce using rule 822 ($@97) + $@97 go to state 1409 -State 1303 - 815 make_struct_decl: "default" '<' $@94 type_declaration_no_options '>' . $@95 use_initializer +State 1303 - $default reduce using rule 814 ($@95) + 820 make_tuple_call: "tuple" '(' expr_list optional_comma ')' . - $@95 go to state 1410 + $default reduce using rule 820 (make_tuple_call) State 1304 - 824 make_tuple_call: "tuple" '<' $@96 type_declaration_no_options '>' . $@97 '(' use_initializer make_struct_dim ')' + 811 make_struct_decl: "variant" '<' $@92 type_declaration_no_options '>' . $@93 '(' make_struct_dim ')' - $default reduce using rule 823 ($@97) + $default reduce using rule 810 ($@93) - $@97 go to state 1411 + $@93 go to state 1410 State 1305 - 821 make_tuple_call: "tuple" '(' expr_list optional_comma ')' . + 466 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list . '(' ')' + 467 | "generator" '<' type_declaration_no_options '>' optional_capture_list . '(' expr ')' - $default reduce using rule 821 (make_tuple_call) + '(' shift, and go to state 1411 State 1306 - 812 make_struct_decl: "variant" '<' $@92 type_declaration_no_options '>' . $@93 '(' make_struct_dim ')' + 338 expr_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list . optional_function_type block_or_simple_block + + ':' shift, and go to state 371 - $default reduce using rule 811 ($@93) + $default reduce using rule 124 (optional_function_type) - $@93 go to state 1412 + optional_function_type go to state 1412 State 1307 - 467 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list . '(' ')' - 468 | "generator" '<' type_declaration_no_options '>' optional_capture_list . '(' expr ')' - - '(' shift, and go to state 1413 + 504 expr_mtag: "$c" '(' expr ')' '(' . ')' + 505 | "$c" '(' expr ')' '(' . expr_list ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + ')' shift, and go to state 1413 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + expr_list go to state 1414 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 707 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1308 - 339 expr_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list . optional_function_type block_or_simple_block - - ':' shift, and go to state 373 + 322 expr_list: expr_list . ',' expr + 861 array_comprehension: "[[" "for" variable_name_with_pos_list "in" expr_list . "end of expression" expr array_comprehension_where ']' ']' - $default reduce using rule 124 (optional_function_type) - - optional_function_type go to state 1414 + "end of expression" shift, and go to state 1415 + ',' shift, and go to state 856 State 1309 - 505 expr_mtag: "$c" '(' expr ')' '(' . ')' - 506 | "$c" '(' expr ')' '(' . expr_list ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - ')' shift, and go to state 1415 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - expr_list go to state 1416 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 709 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 774 make_struct_fields: "$f" '(' expr . ')' copy_or_move expr + 775 | "$f" '(' expr . ')' ":=" expr + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + ')' shift, and go to state 1416 State 1310 - 323 expr_list: expr_list . ',' expr - 862 array_comprehension: "[[" "for" variable_name_with_pos_list "in" expr_list . "end of expression" expr array_comprehension_where ']' ']' + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 771 make_struct_fields: "name" ":=" expr . + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - "end of expression" shift, and go to state 1417 - ',' shift, and go to state 858 + $default reduce using rule 771 (make_struct_fields) State 1311 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 775 make_struct_fields: "$f" '(' expr . ')' copy_or_move expr - 776 | "$f" '(' expr . ')' ":=" expr - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - ')' shift, and go to state 1418 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 770 make_struct_fields: "name" copy_or_move expr . + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + + $default reduce using rule 770 (make_struct_fields) State 1312 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 772 make_struct_fields: "name" ":=" expr . - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 780 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 800 make_struct_decl: "[[" type_declaration_no_options '(' ')' make_struct_dim . optional_block optional_trailing_delim_sqr_sqr - $default reduce using rule 772 (make_struct_fields) + "where" shift, and go to state 906 + "end of expression" shift, and go to state 1160 + $default reduce using rule 781 (optional_block) -State 1313 + optional_block go to state 1417 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 771 make_struct_fields: "name" copy_or_move expr . - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - $default reduce using rule 771 (make_struct_fields) +State 1313 + 799 make_struct_decl: "[[" type_declaration_no_options '(' ')' optional_block . optional_trailing_delim_sqr_sqr -State 1314 + ";]]" shift, and go to state 1162 + ",]]" shift, and go to state 1163 + ']' shift, and go to state 1164 - 781 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 801 make_struct_decl: "[[" type_declaration_no_options '(' ')' make_struct_dim . optional_block optional_trailing_delim_sqr_sqr + optional_trailing_delim_sqr_sqr go to state 1418 - "where" shift, and go to state 908 - "end of expression" shift, and go to state 1162 - $default reduce using rule 782 (optional_block) +State 1314 + + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 816 make_tuple: expr "=>" expr . + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - optional_block go to state 1419 + $default reduce using rule 816 (make_tuple) State 1315 - 800 make_struct_decl: "[[" type_declaration_no_options '(' ')' optional_block . optional_trailing_delim_sqr_sqr - - ";]]" shift, and go to state 1164 - ",]]" shift, and go to state 1165 - ']' shift, and go to state 1166 + 776 make_struct_fields: make_struct_fields ',' "$f" . '(' expr ')' copy_or_move expr + 777 | make_struct_fields ',' "$f" . '(' expr ')' ":=" expr - optional_trailing_delim_sqr_sqr go to state 1420 + '(' shift, and go to state 1419 State 1316 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 817 make_tuple: expr "=>" expr . - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 772 make_struct_fields: make_struct_fields ',' "name" . copy_or_move expr + 773 | make_struct_fields ',' "name" . ":=" expr - $default reduce using rule 817 (make_tuple) + "<-" shift, and go to state 835 + ":=" shift, and go to state 1420 + '=' shift, and go to state 837 + + copy_or_move go to state 1421 State 1317 - 777 make_struct_fields: make_struct_fields ',' "$f" . '(' expr ')' copy_or_move expr - 778 | make_struct_fields ',' "$f" . '(' expr ')' ":=" expr + 772 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr + 773 | make_struct_fields . ',' "name" ":=" expr + 776 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr + 777 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr + 780 make_struct_dim: make_struct_dim "end of expression" make_struct_fields . - '(' shift, and go to state 1421 + ',' shift, and go to state 1159 + $default reduce using rule 780 (make_struct_dim) -State 1318 - 773 make_struct_fields: make_struct_fields ',' "name" . copy_or_move expr - 774 | make_struct_fields ',' "name" . ":=" expr +State 1318 - "<-" shift, and go to state 837 - ":=" shift, and go to state 1422 - '=' shift, and go to state 839 + 797 make_struct_decl: "[[" type_declaration_no_options make_struct_dim optional_block optional_trailing_delim_sqr_sqr . - copy_or_move go to state 1423 + $default reduce using rule 797 (make_struct_decl) State 1319 - 773 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr - 774 | make_struct_fields . ',' "name" ":=" expr - 777 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr - 778 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr - 781 make_struct_dim: make_struct_dim "end of expression" make_struct_fields . - - ',' shift, and go to state 1161 + 789 optional_trailing_delim_sqr_sqr: ']' ']' . - $default reduce using rule 781 (make_struct_dim) + $default reduce using rule 789 (optional_trailing_delim_sqr_sqr) State 1320 - 798 make_struct_decl: "[[" type_declaration_no_options make_struct_dim optional_block optional_trailing_delim_sqr_sqr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 817 make_tuple: make_tuple ',' expr . + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 798 (make_struct_decl) + $default reduce using rule 817 (make_tuple) State 1321 - 790 optional_trailing_delim_sqr_sqr: ']' ']' . + 817 make_tuple: make_tuple . ',' expr + 825 make_dim: make_dim "end of expression" make_tuple . - $default reduce using rule 790 (optional_trailing_delim_sqr_sqr) + ',' shift, and go to state 1166 + + $default reduce using rule 825 (make_dim) State 1322 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 818 make_tuple: make_tuple ',' expr . - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - - $default reduce using rule 818 (make_tuple) + 787 optional_trailing_semicolon_sqr_sqr: ']' ']' . + $default reduce using rule 787 (optional_trailing_semicolon_sqr_sqr) -State 1323 - 818 make_tuple: make_tuple . ',' expr - 826 make_dim: make_dim "end of expression" make_tuple . +State 1323 - ',' shift, and go to state 1168 + 322 expr_list: expr_list . ',' expr + 862 array_comprehension: "[{" "for" variable_name_with_pos_list "in" expr_list . "end of expression" expr array_comprehension_where "end of code block" ']' - $default reduce using rule 826 (make_dim) + "end of expression" shift, and go to state 1422 + ',' shift, and go to state 856 State 1324 - 788 optional_trailing_semicolon_sqr_sqr: ']' ']' . + 780 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 802 make_struct_decl: "[{" type_declaration_no_options '(' ')' make_struct_dim . optional_block optional_trailing_delim_cur_sqr - $default reduce using rule 788 (optional_trailing_semicolon_sqr_sqr) + "where" shift, and go to state 906 + "end of expression" shift, and go to state 1160 + $default reduce using rule 781 (optional_block) -State 1325 + optional_block go to state 1423 - 323 expr_list: expr_list . ',' expr - 863 array_comprehension: "[{" "for" variable_name_with_pos_list "in" expr_list . "end of expression" expr array_comprehension_where "end of code block" ']' - "end of expression" shift, and go to state 1424 - ',' shift, and go to state 858 +State 1325 + 792 optional_trailing_delim_cur_sqr: "end of code block" . ']' -State 1326 + ']' shift, and go to state 1424 - 781 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 803 make_struct_decl: "[{" type_declaration_no_options '(' ')' make_struct_dim . optional_block optional_trailing_delim_cur_sqr - "where" shift, and go to state 908 - "end of expression" shift, and go to state 1162 +State 1326 - $default reduce using rule 782 (optional_block) + 793 optional_trailing_delim_cur_sqr: ";}]" . - optional_block go to state 1425 + $default reduce using rule 793 (optional_trailing_delim_cur_sqr) State 1327 - 793 optional_trailing_delim_cur_sqr: "end of code block" . ']' + 794 optional_trailing_delim_cur_sqr: ",}]" . - ']' shift, and go to state 1426 + $default reduce using rule 794 (optional_trailing_delim_cur_sqr) State 1328 - 794 optional_trailing_delim_cur_sqr: ";}]" . + 801 make_struct_decl: "[{" type_declaration_no_options make_struct_dim optional_block optional_trailing_delim_cur_sqr . - $default reduce using rule 794 (optional_trailing_delim_cur_sqr) + $default reduce using rule 801 (make_struct_decl) State 1329 - 795 optional_trailing_delim_cur_sqr: ",}]" . + 785 optional_trailing_semicolon_cur_sqr: "end of code block" ']' . - $default reduce using rule 795 (optional_trailing_delim_cur_sqr) + $default reduce using rule 785 (optional_trailing_semicolon_cur_sqr) State 1330 - 802 make_struct_decl: "[{" type_declaration_no_options make_struct_dim optional_block optional_trailing_delim_cur_sqr . + 322 expr_list: expr_list . ',' expr + 864 array_comprehension: "{{" "for" variable_name_with_pos_list "in" expr_list . "end of expression" make_map_tuple array_comprehension_where "end of code block" "end of code block" - $default reduce using rule 802 (make_struct_decl) + "end of expression" shift, and go to state 1425 + ',' shift, and go to state 856 State 1331 - 786 optional_trailing_semicolon_cur_sqr: "end of code block" ']' . - - $default reduce using rule 786 (optional_trailing_semicolon_cur_sqr) - - -State 1332 - - 323 expr_list: expr_list . ',' expr - 865 array_comprehension: "{{" "for" variable_name_with_pos_list "in" expr_list . "end of expression" make_map_tuple array_comprehension_where "end of code block" "end of code block" - - "end of expression" shift, and go to state 1427 - ',' shift, and go to state 858 - - -State 1333 - 255 expression_keyword: "keyword" '<' $@7 type_declaration_no_options_list '>' . $@8 expr $default reduce using rule 254 ($@8) - $@8 go to state 1428 + $@8 go to state 1426 -State 1334 +State 1332 258 expression_keyword: "type function" '<' $@9 type_declaration_no_options_list '>' . $@10 optional_expr_list_in_braces $default reduce using rule 257 ($@10) - $@10 go to state 1429 + $@10 go to state 1427 -State 1335 +State 1333 30 string_builder_body: string_builder_body "{" expr "}" . $default reduce using rule 30 (string_builder_body) -State 1336 +State 1334 - 323 expr_list: expr_list . ',' expr - 864 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list . "end of expression" make_map_tuple array_comprehension_where "end of code block" + 322 expr_list: expr_list . ',' expr + 863 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list . "end of expression" make_map_tuple array_comprehension_where "end of code block" - "end of expression" shift, and go to state 1430 - ',' shift, and go to state 858 + "end of expression" shift, and go to state 1428 + ',' shift, and go to state 856 -State 1337 +State 1335 219 expression_block: "begin of code block" expressions "end of code block" "finally" "begin of code block" expressions "end of code block" . $default reduce using rule 219 (expression_block) -State 1338 +State 1336 - 323 expr_list: expr_list . ',' expr - 860 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list . "end of expression" expr array_comprehension_where ']' + 322 expr_list: expr_list . ',' expr + 859 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list . "end of expression" expr array_comprehension_where ']' - "end of expression" shift, and go to state 1431 - ',' shift, and go to state 858 + "end of expression" shift, and go to state 1429 + ',' shift, and go to state 856 -State 1339 +State 1337 - 861 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" . expr_list "end of expression" expr array_comprehension_where ']' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 860 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" . expr_list "end of expression" expr array_comprehension_where ']' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - expr_list go to state 1432 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 709 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + expr_list go to state 1430 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 707 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 -State 1340 +State 1338 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 395 func_addr_name: "$i" '(' expr . ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - ')' shift, and go to state 1433 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 394 func_addr_name: "$i" '(' expr . ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + ')' shift, and go to state 1431 -State 1341 +State 1339 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 514 | '@' '@' "$c" '(' expr . ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - ')' shift, and go to state 1434 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 513 | '@' '@' "$c" '(' expr . ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + ')' shift, and go to state 1432 -State 1342 +State 1340 - 399 func_addr_expr: '@' '@' '<' $@22 type_declaration_no_options . '>' $@23 func_addr_name - 687 type_declaration_no_options: type_declaration_no_options . dim_list - 688 | type_declaration_no_options . '[' ']' - 696 | type_declaration_no_options . '-' '[' ']' - 697 | type_declaration_no_options . "explicit" - 698 | type_declaration_no_options . "const" - 699 | type_declaration_no_options . '-' "const" - 700 | type_declaration_no_options . '&' - 701 | type_declaration_no_options . '-' '&' - 702 | type_declaration_no_options . '#' - 703 | type_declaration_no_options . "implicit" - 704 | type_declaration_no_options . '-' '#' - 705 | type_declaration_no_options . "==" "const" - 706 | type_declaration_no_options . "==" '&' - 707 | type_declaration_no_options . '?' - 711 | type_declaration_no_options . "??" - - "const" shift, and go to state 406 - "implicit" shift, and go to state 407 - "explicit" shift, and go to state 408 - "==" shift, and go to state 409 - "??" shift, and go to state 410 - '?' shift, and go to state 411 - '&' shift, and go to state 412 - '>' shift, and go to state 1435 - '-' shift, and go to state 413 - '[' shift, and go to state 414 - '#' shift, and go to state 415 - - dim_list go to state 416 + 398 func_addr_expr: '@' '@' '<' $@22 type_declaration_no_options . '>' $@23 func_addr_name + 686 type_declaration_no_options: type_declaration_no_options . dim_list + 687 | type_declaration_no_options . '[' ']' + 695 | type_declaration_no_options . '-' '[' ']' + 696 | type_declaration_no_options . "explicit" + 697 | type_declaration_no_options . "const" + 698 | type_declaration_no_options . '-' "const" + 699 | type_declaration_no_options . '&' + 700 | type_declaration_no_options . '-' '&' + 701 | type_declaration_no_options . '#' + 702 | type_declaration_no_options . "implicit" + 703 | type_declaration_no_options . '-' '#' + 704 | type_declaration_no_options . "==" "const" + 705 | type_declaration_no_options . "==" '&' + 706 | type_declaration_no_options . '?' + 710 | type_declaration_no_options . "??" + + "const" shift, and go to state 404 + "implicit" shift, and go to state 405 + "explicit" shift, and go to state 406 + "==" shift, and go to state 407 + "??" shift, and go to state 408 + '?' shift, and go to state 409 + '&' shift, and go to state 410 + '>' shift, and go to state 1433 + '-' shift, and go to state 411 + '[' shift, and go to state 412 + '#' shift, and go to state 413 + + dim_list go to state 414 -State 1343 +State 1341 - 402 func_addr_expr: '@' '@' '<' $@24 optional_function_argument_list . optional_function_type '>' $@25 func_addr_name + 401 func_addr_expr: '@' '@' '<' $@24 optional_function_argument_list . optional_function_type '>' $@25 func_addr_name - ':' shift, and go to state 373 + ':' shift, and go to state 371 $default reduce using rule 124 (optional_function_type) - optional_function_type go to state 1436 + optional_function_type go to state 1434 -State 1344 +State 1342 60 expression_else: "else" expression_block . $default reduce using rule 60 (expression_else) -State 1345 +State 1343 61 expression_else: elif_or_static_elif expr . expression_block expression_else - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - "begin of code block" shift, and go to state 286 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - - expression_block go to state 1437 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + "begin of code block" shift, and go to state 284 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + + expression_block go to state 1435 -State 1346 +State 1344 66 expression_else_one_liner: "else" . $@2 expression_if_one_liner $default reduce using rule 65 ($@2) - $@2 go to state 1438 + $@2 go to state 1436 -State 1347 +State 1345 74 expression_if_then_else: expression_if_one_liner "if" $@3 expr expression_else_one_liner . "end of expression" - "end of expression" shift, and go to state 1439 + "end of expression" shift, and go to state 1437 -State 1348 +State 1346 + + 341 expr_full_block_assumed_piped: block_or_lambda $@21 optional_annotation_list optional_capture_list . optional_function_argument_list optional_function_type expression_block + + '(' shift, and go to state 282 + + $default reduce using rule 121 (optional_function_argument_list) + + optional_function_argument_list go to state 1438 + + +State 1347 + + 389 expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' . ')' - 342 expr_full_block_assumed_piped: block_or_lambda $@21 optional_annotation_list optional_capture_list . optional_function_argument_list optional_function_type expression_block + ')' shift, and go to state 1439 - '(' shift, and go to state 284 - $default reduce using rule 121 (optional_function_argument_list) +State 1348 - optional_function_argument_list go to state 1440 + 390 expr_named_call: name_in_namespace '(' expr_list ',' '[' . make_struct_fields ']' ')' + 826 make_dim_decl: '[' . expr_list optional_comma ']' + 859 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 860 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "for" shift, and go to state 704 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "iterator" shift, and go to state 705 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "$f" shift, and go to state 907 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 908 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + expr_list go to state 706 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 707 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_fields go to state 1440 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1349 - 390 expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' . ')' + 299 tuple_expansion: tuple_expansion ',' . "name" - ')' shift, and go to state 1441 + "name" shift, and go to state 1441 State 1350 - 391 expr_named_call: name_in_namespace '(' expr_list ',' '[' . make_struct_fields ']' ')' - 827 make_dim_decl: '[' . expr_list optional_comma ']' - 860 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - 861 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "for" shift, and go to state 706 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "iterator" shift, and go to state 707 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "$f" shift, and go to state 909 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 910 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - expr_list go to state 708 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 709 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_fields go to state 1442 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 300 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' . ']' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 302 | "[[" tuple_expansion ']' . ']' optional_ref copy_or_move_or_clone expr "end of expression" + + ']' shift, and go to state 1442 State 1351 - 300 tuple_expansion: tuple_expansion ',' . "name" + 301 tuple_expansion_variable_declaration: '(' tuple_expansion ')' . ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 303 | '(' tuple_expansion ')' . optional_ref copy_or_move_or_clone expr "end of expression" - "name" shift, and go to state 1443 + ':' shift, and go to state 1443 + '&' shift, and go to state 387 + $default reduce using rule 564 (optional_ref) -State 1352 + optional_ref go to state 1444 - 301 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' . ']' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 303 | "[[" tuple_expansion ']' . ']' optional_ref copy_or_move_or_clone expr "end of expression" - ']' shift, and go to state 1444 +State 1352 + 331 capture_entry: "<-" "name" . -State 1353 + $default reduce using rule 331 (capture_entry) - 302 tuple_expansion_variable_declaration: '(' tuple_expansion ')' . ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 304 | '(' tuple_expansion ')' . optional_ref copy_or_move_or_clone expr "end of expression" - ':' shift, and go to state 1445 - '&' shift, and go to state 389 +State 1353 - $default reduce using rule 565 (optional_ref) + 332 capture_entry: ":=" "name" . - optional_ref go to state 1446 + $default reduce using rule 332 (capture_entry) State 1354 - 332 capture_entry: "<-" "name" . + 330 capture_entry: '=' "name" . - $default reduce using rule 332 (capture_entry) + $default reduce using rule 330 (capture_entry) State 1355 - 333 capture_entry: ":=" "name" . + 329 capture_entry: '&' "name" . - $default reduce using rule 333 (capture_entry) + $default reduce using rule 329 (capture_entry) State 1356 - 331 capture_entry: '=' "name" . + 334 capture_list: capture_list ',' . capture_entry - $default reduce using rule 331 (capture_entry) + "<-" shift, and go to state 1210 + ":=" shift, and go to state 1211 + '=' shift, and go to state 1212 + '&' shift, and go to state 1213 + + capture_entry go to state 1445 State 1357 - 330 capture_entry: '&' "name" . + 336 optional_capture_list: "[[" capture_list ']' . ']' - $default reduce using rule 330 (capture_entry) + ']' shift, and go to state 1446 State 1358 - 335 capture_list: capture_list ',' . capture_entry + 339 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type . block_or_simple_block - "<-" shift, and go to state 1212 - ":=" shift, and go to state 1213 - '=' shift, and go to state 1214 - '&' shift, and go to state 1215 + "=>" shift, and go to state 1447 + "begin of code block" shift, and go to state 284 - capture_entry go to state 1447 + expression_block go to state 1448 + block_or_simple_block go to state 1449 State 1359 - 337 optional_capture_list: "[[" capture_list ']' . ']' - - ']' shift, and go to state 1448 + 472 expr: expr "is" "type" '<' $@28 . type_declaration_no_options '>' $@29 + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 1450 State 1360 - 340 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type . block_or_simple_block - - "=>" shift, and go to state 1449 - "begin of code block" shift, and go to state 286 - - expression_block go to state 1450 - block_or_simple_block go to state 1451 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 512 | expr "is" "$f" '(' expr . ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + ')' shift, and go to state 1451 State 1361 - 473 expr: expr "is" "type" '<' $@28 . type_declaration_no_options '>' $@29 - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 1452 + 478 expr: expr "as" "type" '<' $@30 . type_declaration '>' $@31 + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 354 + type_declaration go to state 1452 State 1362 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 513 | expr "is" "$f" '(' expr . ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 510 | expr "as" "$f" '(' expr . ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 ')' shift, and go to state 1453 State 1363 - 479 expr: expr "as" "type" '<' $@30 . type_declaration '>' $@31 - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 356 - type_declaration go to state 1454 + 391 expr_method_call: expr "->" "name" '(' ')' . + + $default reduce using rule 391 (expr_method_call) State 1364 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 511 | expr "as" "$f" '(' expr . ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - ')' shift, and go to state 1455 + 322 expr_list: expr_list . ',' expr + 392 expr_method_call: expr "->" "name" '(' expr_list . ')' + ',' shift, and go to state 856 + ')' shift, and go to state 1454 -State 1365 - 392 expr_method_call: expr "->" "name" '(' ')' . +State 1365 - $default reduce using rule 392 (expr_method_call) + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 507 | expr "?." "$f" '(' expr . ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + ')' shift, and go to state 1455 State 1366 - 323 expr_list: expr_list . ',' expr - 393 expr_method_call: expr "->" "name" '(' expr_list . ')' + 483 expr: expr '?' "as" "type" '<' . $@32 type_declaration '>' $@33 + + $default reduce using rule 481 ($@32) - ',' shift, and go to state 858 - ')' shift, and go to state 1456 + $@32 go to state 1456 State 1367 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 508 | expr "?." "$f" '(' expr . ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - ')' shift, and go to state 1457 + 511 expr_mtag: expr '?' "as" "$f" '(' . expr ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1457 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1368 - 484 expr: expr '?' "as" "type" '<' . $@32 type_declaration '>' $@33 - - $default reduce using rule 482 ($@32) + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 469 | expr '?' expr ':' expr . + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $@32 go to state 1458 + $default reduce using rule 469 (expr) State 1369 - 512 expr_mtag: expr '?' "as" "$f" '(' . expr ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 509 expr_mtag: expr '.' "?." "$f" '(' . expr ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1459 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1458 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1370 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 470 | expr '?' expr ':' expr . - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - - $default reduce using rule 470 (expr) + 458 expr: expr '.' "?[" expr ']' . + + $default reduce using rule 458 (expr) State 1371 - 510 expr_mtag: expr '.' "?." "$f" '(' . expr ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1460 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 506 | expr '.' "$f" '(' expr . ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + ')' shift, and go to state 1459 State 1372 - 459 expr: expr '.' "?[" expr ']' . + 404 expr_field: expr '.' "name" '(' ')' . - $default reduce using rule 459 (expr) + $default reduce using rule 404 (expr_field) State 1373 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr '.' "$f" '(' expr . ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - ')' shift, and go to state 1461 + 322 expr_list: expr_list . ',' expr + 405 expr_field: expr '.' "name" '(' expr_list . ')' + ',' shift, and go to state 856 + ')' shift, and go to state 1460 -State 1374 - 405 expr_field: expr '.' "name" '(' ')' . +State 1374 - $default reduce using rule 405 (expr_field) + 508 expr_mtag: expr '.' '.' "$f" '(' . expr ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1461 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1375 - 323 expr_list: expr_list . ',' expr - 406 expr_field: expr '.' "name" '(' expr_list . ')' + 456 expr: expr '.' '[' expr ']' . - ',' shift, and go to state 858 - ')' shift, and go to state 1462 + $default reduce using rule 456 (expr) State 1376 - 509 expr_mtag: expr '.' '.' "$f" '(' . expr ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1463 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 408 expr_field: expr '.' $@26 error $@27 . + + $default reduce using rule 408 (expr_field) State 1377 - 457 expr: expr '.' '[' expr ']' . + 535 struct_variable_declaration_list: struct_variable_declaration_list '[' annotation_list ']' "end of expression" . - $default reduce using rule 457 (expr) + $default reduce using rule 535 (struct_variable_declaration_list) State 1378 - 409 expr_field: expr '.' $@26 error $@27 . + 532 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" . optional_constant $@35 function_declaration_header "end of expression" + + "const" shift, and go to state 1462 - $default reduce using rule 409 (expr_field) + $default reduce using rule 520 (optional_constant) + + optional_constant go to state 1463 State 1379 - 536 struct_variable_declaration_list: struct_variable_declaration_list '[' annotation_list ']' "end of expression" . + 534 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable . optional_override optional_constant $@36 function_declaration_header expression_block - $default reduce using rule 536 (struct_variable_declaration_list) + "override" shift, and go to state 1380 + "sealed" shift, and go to state 1381 + $default reduce using rule 517 (optional_override) -State 1380 + optional_override go to state 1464 - 533 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" . optional_constant $@35 function_declaration_header "end of expression" - "const" shift, and go to state 1464 +State 1380 - $default reduce using rule 521 (optional_constant) + 518 optional_override: "override" . - optional_constant go to state 1465 + $default reduce using rule 518 (optional_override) State 1381 - 535 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable . optional_override optional_constant $@36 function_declaration_header expression_block + 519 optional_override: "sealed" . - "override" shift, and go to state 1382 - "sealed" shift, and go to state 1383 + $default reduce using rule 519 (optional_override) - $default reduce using rule 518 (optional_override) - optional_override go to state 1466 +State 1382 + 527 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override . optional_public_or_private_member_variable variable_declaration -State 1382 + "public" shift, and go to state 1246 + "private" shift, and go to state 1247 - 519 optional_override: "override" . + $default reduce using rule 522 (optional_public_or_private_member_variable) - $default reduce using rule 519 (optional_override) + optional_public_or_private_member_variable go to state 1465 State 1383 - 520 optional_override: "sealed" . + 726 type_declaration_no_options: "block" '<' $@62 optional_function_argument_list optional_function_type '>' $@63 . - $default reduce using rule 520 (optional_override) + $default reduce using rule 726 (type_declaration_no_options) State 1384 - 528 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override . optional_public_or_private_member_variable variable_declaration + 733 type_declaration_no_options: "function" '<' $@66 optional_function_argument_list optional_function_type '>' $@67 . - "public" shift, and go to state 1248 - "private" shift, and go to state 1249 - - $default reduce using rule 523 (optional_public_or_private_member_variable) - - optional_public_or_private_member_variable go to state 1467 + $default reduce using rule 733 (type_declaration_no_options) State 1385 - 727 type_declaration_no_options: "block" '<' $@62 optional_function_argument_list optional_function_type '>' $@63 . + 740 type_declaration_no_options: "lambda" '<' $@70 optional_function_argument_list optional_function_type '>' $@71 . - $default reduce using rule 727 (type_declaration_no_options) + $default reduce using rule 740 (type_declaration_no_options) State 1386 - 734 type_declaration_no_options: "function" '<' $@66 optional_function_argument_list optional_function_type '>' $@67 . + 252 type_declaration_no_options_list: type_declaration_no_options_list "end of expression" type_declaration . + 748 type_declaration: type_declaration . '|' type_declaration_no_options + 749 | type_declaration . '|' '#' - $default reduce using rule 734 (type_declaration_no_options) + '|' shift, and go to state 415 + + $default reduce using rule 252 (type_declaration_no_options_list) State 1387 - 741 type_declaration_no_options: "lambda" '<' $@70 optional_function_argument_list optional_function_type '>' $@71 . + 694 type_declaration_no_options: '$' name_in_namespace '<' $@51 type_declaration_no_options_list '>' '(' . optional_expr_list ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 - $default reduce using rule 741 (type_declaration_no_options) + $default reduce using rule 247 (optional_expr_list) + string_builder go to state 503 + expr_reader go to state 504 + optional_expr_list go to state 1466 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + expr_list go to state 820 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 707 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 -State 1388 - 252 type_declaration_no_options_list: type_declaration_no_options_list "end of expression" type_declaration . - 749 type_declaration: type_declaration . '|' type_declaration_no_options - 750 | type_declaration . '|' '#' +State 1388 - '|' shift, and go to state 417 + 630 variable_name_with_pos_list: variable_name_with_pos_list ',' "name" "aka" "name" . - $default reduce using rule 252 (type_declaration_no_options_list) + $default reduce using rule 630 (variable_name_with_pos_list) State 1389 - 695 type_declaration_no_options: '$' name_in_namespace '<' $@51 type_declaration_no_options_list '>' '(' . optional_expr_list ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - $default reduce using rule 247 (optional_expr_list) + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 558 variable_declaration: variable_name_with_pos_list ':' type_declaration copy_or_move expr . + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - string_builder go to state 505 - expr_reader go to state 506 - optional_expr_list go to state 1468 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - expr_list go to state 822 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 709 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + $default reduce using rule 558 (variable_declaration) State 1390 - 631 variable_name_with_pos_list: variable_name_with_pos_list ',' "name" "aka" "name" . + 805 make_struct_decl: "struct" '<' $@88 type_declaration_no_options '>' $@89 . '(' use_initializer make_struct_dim ')' - $default reduce using rule 631 (variable_name_with_pos_list) + '(' shift, and go to state 1467 State 1391 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 559 variable_declaration: variable_name_with_pos_list ':' type_declaration copy_or_move expr . - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 808 make_struct_decl: "class" '<' $@90 type_declaration_no_options '>' $@91 . '(' use_initializer make_struct_dim ')' - $default reduce using rule 559 (variable_declaration) + '(' shift, and go to state 1468 State 1392 - 806 make_struct_decl: "struct" '<' $@88 type_declaration_no_options '>' $@89 . '(' use_initializer make_struct_dim ')' + 76 expression_for_loop: "for" $@4 variable_name_with_pos_list "in" expr_list expression_block . - '(' shift, and go to state 1469 + $default reduce using rule 76 (expression_for_loop) State 1393 - 809 make_struct_decl: "class" '<' $@90 type_declaration_no_options '>' $@91 . '(' use_initializer make_struct_dim ')' + 270 new_type_declaration: '<' $@11 type_declaration '>' $@12 . - '(' shift, and go to state 1470 + $default reduce using rule 270 (new_type_declaration) State 1394 - 76 expression_for_loop: "for" $@4 variable_name_with_pos_list "in" expr_list expression_block . + 275 expr_new: "new" new_type_declaration '(' use_initializer make_struct_single ')' . - $default reduce using rule 76 (expression_for_loop) + $default reduce using rule 275 (expr_new) State 1395 - 271 new_type_declaration: '<' $@11 type_declaration '>' $@12 . + 320 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" . "name" '>' expr ')' - $default reduce using rule 271 (new_type_declaration) + "name" shift, and go to state 1469 State 1396 - 276 expr_new: "new" new_type_declaration '(' use_initializer make_struct_single ')' . - - $default reduce using rule 276 (expr_new) + 319 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' . expr ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1470 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1397 - 321 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" . "name" '>' expr ')' + 317 expr_type_decl: "type" '<' $@19 type_declaration '>' $@20 . - "name" shift, and go to state 1471 + $default reduce using rule 317 (expr_type_decl) State 1398 - 320 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' . expr ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1472 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 831 make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options '>' . $@99 '(' use_initializer make_struct_dim ')' + + $default reduce using rule 830 ($@99) + + $@99 go to state 1471 State 1399 - 318 expr_type_decl: "type" '<' $@19 type_declaration '>' $@20 . + 834 make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options '>' . $@101 '(' use_initializer make_struct_dim ')' - $default reduce using rule 318 (expr_type_decl) + $default reduce using rule 833 ($@101) + + $@101 go to state 1472 State 1400 - 832 make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options '>' . $@99 '(' use_initializer make_struct_dim ')' + 837 make_dim_decl: "array" "variant" '<' $@102 type_declaration_no_options '>' . $@103 '(' make_struct_dim ')' - $default reduce using rule 831 ($@99) + $default reduce using rule 836 ($@103) - $@99 go to state 1473 + $@103 go to state 1473 State 1401 - 835 make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options '>' . $@101 '(' use_initializer make_struct_dim ')' - - $default reduce using rule 834 ($@101) + 841 make_dim_decl: "array" '<' $@104 type_declaration_no_options '>' $@105 . '(' expr_list optional_comma ')' - $@101 go to state 1474 + '(' shift, and go to state 1474 State 1402 - 838 make_dim_decl: "array" "variant" '<' $@102 type_declaration_no_options '>' . $@103 '(' make_struct_dim ')' + 854 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' . '(' expr_map_tuple_list optional_comma ')' - $default reduce using rule 837 ($@103) - - $@103 go to state 1475 + '(' shift, and go to state 1475 State 1403 - 842 make_dim_decl: "array" '<' $@104 type_declaration_no_options '>' $@105 . '(' expr_list optional_comma ')' - - '(' shift, and go to state 1476 + 849 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple + 853 make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list . optional_comma ')' + ',' shift, and go to state 935 -State 1404 - - 855 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' . '(' expr_map_tuple_list optional_comma ')' + $default reduce using rule 857 (optional_comma) - '(' shift, and go to state 1477 + optional_comma go to state 1476 -State 1405 +State 1404 - 850 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple - 854 make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list . optional_comma ')' + 308 expr_cast: "cast" '<' $@13 type_declaration_no_options '>' $@14 . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1477 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 - ',' shift, and go to state 937 - $default reduce using rule 858 (optional_comma) +State 1405 - optional_comma go to state 1478 + 311 expr_cast: "upcast" '<' $@15 type_declaration_no_options '>' $@16 . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1478 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1406 - 309 expr_cast: "cast" '<' $@13 type_declaration_no_options '>' $@14 . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 314 expr_cast: "reinterpret" '<' $@17 type_declaration_no_options '>' $@18 . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1479 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1407 - 312 expr_cast: "upcast" '<' $@15 type_declaration_no_options '>' $@16 . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1480 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 845 make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options '>' $@107 . '(' expr_list optional_comma ')' + + '(' shift, and go to state 1480 State 1408 - 315 expr_cast: "reinterpret" '<' $@17 type_declaration_no_options '>' $@18 . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1481 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 814 make_struct_decl: "default" '<' $@94 type_declaration_no_options '>' $@95 . use_initializer + + "uninitialized" shift, and go to state 1096 + + $default reduce using rule 795 (use_initializer) + + use_initializer go to state 1481 State 1409 - 846 make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options '>' $@107 . '(' expr_list optional_comma ')' + 823 make_tuple_call: "tuple" '<' $@96 type_declaration_no_options '>' $@97 . '(' use_initializer make_struct_dim ')' '(' shift, and go to state 1482 State 1410 - 815 make_struct_decl: "default" '<' $@94 type_declaration_no_options '>' $@95 . use_initializer - - "uninitialized" shift, and go to state 1098 - - $default reduce using rule 796 (use_initializer) + 811 make_struct_decl: "variant" '<' $@92 type_declaration_no_options '>' $@93 . '(' make_struct_dim ')' - use_initializer go to state 1483 + '(' shift, and go to state 1483 State 1411 - 824 make_tuple_call: "tuple" '<' $@96 type_declaration_no_options '>' $@97 . '(' use_initializer make_struct_dim ')' - - '(' shift, and go to state 1484 + 466 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' . ')' + 467 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' . expr ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + ')' shift, and go to state 1484 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1485 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1412 - 812 make_struct_decl: "variant" '<' $@92 type_declaration_no_options '>' $@93 . '(' make_struct_dim ')' + 338 expr_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type . block_or_simple_block + + "=>" shift, and go to state 1447 + "begin of code block" shift, and go to state 284 - '(' shift, and go to state 1485 + expression_block go to state 1448 + block_or_simple_block go to state 1486 State 1413 - 467 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' . ')' - 468 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' . expr ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - ')' shift, and go to state 1486 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1487 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 504 expr_mtag: "$c" '(' expr ')' '(' ')' . + + $default reduce using rule 504 (expr_mtag) State 1414 - 339 expr_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type . block_or_simple_block - - "=>" shift, and go to state 1449 - "begin of code block" shift, and go to state 286 + 322 expr_list: expr_list . ',' expr + 505 expr_mtag: "$c" '(' expr ')' '(' expr_list . ')' - expression_block go to state 1450 - block_or_simple_block go to state 1488 + ',' shift, and go to state 856 + ')' shift, and go to state 1487 State 1415 - 505 expr_mtag: "$c" '(' expr ')' '(' ')' . - - $default reduce using rule 505 (expr_mtag) + 861 array_comprehension: "[[" "for" variable_name_with_pos_list "in" expr_list "end of expression" . expr array_comprehension_where ']' ']' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1488 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1416 - 323 expr_list: expr_list . ',' expr - 506 expr_mtag: "$c" '(' expr ')' '(' expr_list . ')' + 774 make_struct_fields: "$f" '(' expr ')' . copy_or_move expr + 775 | "$f" '(' expr ')' . ":=" expr - ',' shift, and go to state 858 - ')' shift, and go to state 1489 + "<-" shift, and go to state 835 + ":=" shift, and go to state 1489 + '=' shift, and go to state 837 + copy_or_move go to state 1490 -State 1417 - 862 array_comprehension: "[[" "for" variable_name_with_pos_list "in" expr_list "end of expression" . expr array_comprehension_where ']' ']' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1490 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 +State 1417 + 800 make_struct_decl: "[[" type_declaration_no_options '(' ')' make_struct_dim optional_block . optional_trailing_delim_sqr_sqr -State 1418 + ";]]" shift, and go to state 1162 + ",]]" shift, and go to state 1163 + ']' shift, and go to state 1164 - 775 make_struct_fields: "$f" '(' expr ')' . copy_or_move expr - 776 | "$f" '(' expr ')' . ":=" expr + optional_trailing_delim_sqr_sqr go to state 1491 - "<-" shift, and go to state 837 - ":=" shift, and go to state 1491 - '=' shift, and go to state 839 - copy_or_move go to state 1492 +State 1418 + 799 make_struct_decl: "[[" type_declaration_no_options '(' ')' optional_block optional_trailing_delim_sqr_sqr . -State 1419 + $default reduce using rule 799 (make_struct_decl) - 801 make_struct_decl: "[[" type_declaration_no_options '(' ')' make_struct_dim optional_block . optional_trailing_delim_sqr_sqr - ";]]" shift, and go to state 1164 - ",]]" shift, and go to state 1165 - ']' shift, and go to state 1166 +State 1419 - optional_trailing_delim_sqr_sqr go to state 1493 + 776 make_struct_fields: make_struct_fields ',' "$f" '(' . expr ')' copy_or_move expr + 777 | make_struct_fields ',' "$f" '(' . expr ')' ":=" expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1492 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1420 - 800 make_struct_decl: "[[" type_declaration_no_options '(' ')' optional_block optional_trailing_delim_sqr_sqr . - - $default reduce using rule 800 (make_struct_decl) + 773 make_struct_fields: make_struct_fields ',' "name" ":=" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1493 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1421 - 777 make_struct_fields: make_struct_fields ',' "$f" '(' . expr ')' copy_or_move expr - 778 | make_struct_fields ',' "$f" '(' . expr ')' ":=" expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 772 make_struct_fields: make_struct_fields ',' "name" copy_or_move . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1494 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1422 - 774 make_struct_fields: make_struct_fields ',' "name" ":=" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 862 array_comprehension: "[{" "for" variable_name_with_pos_list "in" expr_list "end of expression" . expr array_comprehension_where "end of code block" ']' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1495 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1423 - 773 make_struct_fields: make_struct_fields ',' "name" copy_or_move . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1496 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 - - -State 1424 - - 863 array_comprehension: "[{" "for" variable_name_with_pos_list "in" expr_list "end of expression" . expr array_comprehension_where "end of code block" ']' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1497 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 - - -State 1425 + 802 make_struct_decl: "[{" type_declaration_no_options '(' ')' make_struct_dim optional_block . optional_trailing_delim_cur_sqr - 803 make_struct_decl: "[{" type_declaration_no_options '(' ')' make_struct_dim optional_block . optional_trailing_delim_cur_sqr + "end of code block" shift, and go to state 1325 + ";}]" shift, and go to state 1326 + ",}]" shift, and go to state 1327 - "end of code block" shift, and go to state 1327 - ";}]" shift, and go to state 1328 - ",}]" shift, and go to state 1329 + optional_trailing_delim_cur_sqr go to state 1496 - optional_trailing_delim_cur_sqr go to state 1498 +State 1424 -State 1426 - - 793 optional_trailing_delim_cur_sqr: "end of code block" ']' . + 792 optional_trailing_delim_cur_sqr: "end of code block" ']' . - $default reduce using rule 793 (optional_trailing_delim_cur_sqr) + $default reduce using rule 792 (optional_trailing_delim_cur_sqr) -State 1427 +State 1425 - 865 array_comprehension: "{{" "for" variable_name_with_pos_list "in" expr_list "end of expression" . make_map_tuple array_comprehension_where "end of code block" "end of code block" - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 864 array_comprehension: "{{" "for" variable_name_with_pos_list "in" expr_list "end of expression" . make_map_tuple array_comprehension_where "end of code block" "end of code block" + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 690 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_map_tuple go to state 1499 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 688 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_map_tuple go to state 1497 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 -State 1428 +State 1426 255 expression_keyword: "keyword" '<' $@7 type_declaration_no_options_list '>' $@8 . expr - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1500 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1498 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 -State 1429 +State 1427 258 expression_keyword: "type function" '<' $@9 type_declaration_no_options_list '>' $@10 . optional_expr_list_in_braces - '(' shift, and go to state 1501 + '(' shift, and go to state 1499 '(' [reduce using rule 249 (optional_expr_list_in_braces)] $default reduce using rule 249 (optional_expr_list_in_braces) - optional_expr_list_in_braces go to state 1502 + optional_expr_list_in_braces go to state 1500 -State 1430 +State 1428 - 864 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" . make_map_tuple array_comprehension_where "end of code block" - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 863 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" . make_map_tuple array_comprehension_where "end of code block" + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 690 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_map_tuple go to state 1503 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 688 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_map_tuple go to state 1501 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 -State 1431 +State 1429 - 860 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" . expr array_comprehension_where ']' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 859 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" . expr array_comprehension_where ']' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1504 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1502 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 -State 1432 +State 1430 - 323 expr_list: expr_list . ',' expr - 861 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list . "end of expression" expr array_comprehension_where ']' + 322 expr_list: expr_list . ',' expr + 860 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list . "end of expression" expr array_comprehension_where ']' - "end of expression" shift, and go to state 1505 - ',' shift, and go to state 858 + "end of expression" shift, and go to state 1503 + ',' shift, and go to state 856 -State 1433 +State 1431 - 395 func_addr_name: "$i" '(' expr ')' . + 394 func_addr_name: "$i" '(' expr ')' . - $default reduce using rule 395 (func_addr_name) + $default reduce using rule 394 (func_addr_name) -State 1434 +State 1432 - 514 expr_mtag: '@' '@' "$c" '(' expr ')' . + 513 expr_mtag: '@' '@' "$c" '(' expr ')' . - $default reduce using rule 514 (expr_mtag) + $default reduce using rule 513 (expr_mtag) -State 1435 +State 1433 - 399 func_addr_expr: '@' '@' '<' $@22 type_declaration_no_options '>' . $@23 func_addr_name + 398 func_addr_expr: '@' '@' '<' $@22 type_declaration_no_options '>' . $@23 func_addr_name - $default reduce using rule 398 ($@23) + $default reduce using rule 397 ($@23) - $@23 go to state 1506 + $@23 go to state 1504 -State 1436 +State 1434 - 402 func_addr_expr: '@' '@' '<' $@24 optional_function_argument_list optional_function_type . '>' $@25 func_addr_name + 401 func_addr_expr: '@' '@' '<' $@24 optional_function_argument_list optional_function_type . '>' $@25 func_addr_name - '>' shift, and go to state 1507 + '>' shift, and go to state 1505 -State 1437 +State 1435 61 expression_else: elif_or_static_elif expr expression_block . expression_else - "else" shift, and go to state 1198 - "elif" shift, and go to state 1199 - "static_elif" shift, and go to state 1200 + "else" shift, and go to state 1196 + "elif" shift, and go to state 1197 + "static_elif" shift, and go to state 1198 $default reduce using rule 59 (expression_else) - elif_or_static_elif go to state 1201 - expression_else go to state 1508 + elif_or_static_elif go to state 1199 + expression_else go to state 1506 -State 1438 +State 1436 66 expression_else_one_liner: "else" $@2 . expression_if_one_liner - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "return" shift, and go to state 1509 - "null" shift, and go to state 444 - "break" shift, and go to state 445 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "continue" shift, and go to state 455 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "yield" shift, and go to state 1510 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "return" shift, and go to state 1507 + "null" shift, and go to state 442 + "break" shift, and go to state 443 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "continue" shift, and go to state 453 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "yield" shift, and go to state 1508 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_if_one_liner go to state 1511 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expression_break go to state 1512 - expression_continue go to state 1513 - expression_return_no_pipe go to state 1514 - expression_yield_no_pipe go to state 1515 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1516 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_if_one_liner go to state 1509 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expression_break go to state 1510 + expression_continue go to state 1511 + expression_return_no_pipe go to state 1512 + expression_yield_no_pipe go to state 1513 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1514 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 -State 1439 +State 1437 74 expression_if_then_else: expression_if_one_liner "if" $@3 expr expression_else_one_liner "end of expression" . $default reduce using rule 74 (expression_if_then_else) -State 1440 +State 1438 - 342 expr_full_block_assumed_piped: block_or_lambda $@21 optional_annotation_list optional_capture_list optional_function_argument_list . optional_function_type expression_block + 341 expr_full_block_assumed_piped: block_or_lambda $@21 optional_annotation_list optional_capture_list optional_function_argument_list . optional_function_type expression_block - ':' shift, and go to state 373 + ':' shift, and go to state 371 $default reduce using rule 124 (optional_function_type) - optional_function_type go to state 1517 + optional_function_type go to state 1515 + + +State 1439 + + 389 expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' ')' . + + $default reduce using rule 389 (expr_named_call) + + +State 1440 + + 390 expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields . ']' ')' + 772 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr + 773 | make_struct_fields . ',' "name" ":=" expr + 776 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr + 777 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr + + ',' shift, and go to state 1159 + ']' shift, and go to state 1516 State 1441 - 390 expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' ')' . + 299 tuple_expansion: tuple_expansion ',' "name" . - $default reduce using rule 390 (expr_named_call) + $default reduce using rule 299 (tuple_expansion) State 1442 - 391 expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields . ']' ')' - 773 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr - 774 | make_struct_fields . ',' "name" ":=" expr - 777 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr - 778 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr + 300 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' . ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 302 | "[[" tuple_expansion ']' ']' . optional_ref copy_or_move_or_clone expr "end of expression" - ',' shift, and go to state 1161 - ']' shift, and go to state 1518 + ':' shift, and go to state 1517 + '&' shift, and go to state 387 + $default reduce using rule 564 (optional_ref) + + optional_ref go to state 1518 -State 1443 - 300 tuple_expansion: tuple_expansion ',' "name" . +State 1443 - $default reduce using rule 300 (tuple_expansion) + 301 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' . type_declaration_no_options copy_or_move_or_clone expr "end of expression" + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 1519 State 1444 - 301 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' . ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 303 | "[[" tuple_expansion ']' ']' . optional_ref copy_or_move_or_clone expr "end of expression" - - ':' shift, and go to state 1519 - '&' shift, and go to state 389 + 303 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref . copy_or_move_or_clone expr "end of expression" - $default reduce using rule 565 (optional_ref) + "<-" shift, and go to state 569 + ":=" shift, and go to state 570 + '=' shift, and go to state 571 - optional_ref go to state 1520 + copy_or_move_or_clone go to state 1520 State 1445 - 302 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' . type_declaration_no_options copy_or_move_or_clone expr "end of expression" - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 1521 + 334 capture_list: capture_list ',' capture_entry . + + $default reduce using rule 334 (capture_list) State 1446 - 304 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref . copy_or_move_or_clone expr "end of expression" - - "<-" shift, and go to state 571 - ":=" shift, and go to state 572 - '=' shift, and go to state 573 + 336 optional_capture_list: "[[" capture_list ']' ']' . - copy_or_move_or_clone go to state 1522 + $default reduce using rule 336 (optional_capture_list) State 1447 - 335 capture_list: capture_list ',' capture_entry . - - $default reduce using rule 335 (capture_list) + 324 block_or_simple_block: "=>" . expr + 325 | "=>" . "<-" expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "<-" shift, and go to state 1521 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1522 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1448 - 337 optional_capture_list: "[[" capture_list ']' ']' . + 323 block_or_simple_block: expression_block . - $default reduce using rule 337 (optional_capture_list) + $default reduce using rule 323 (block_or_simple_block) State 1449 - 325 block_or_simple_block: "=>" . expr - 326 | "=>" . "<-" expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "<-" shift, and go to state 1523 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1524 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 339 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block . + $default reduce using rule 339 (expr_full_block) -State 1450 - 324 block_or_simple_block: expression_block . +State 1450 - $default reduce using rule 324 (block_or_simple_block) + 472 expr: expr "is" "type" '<' $@28 type_declaration_no_options . '>' $@29 + 686 type_declaration_no_options: type_declaration_no_options . dim_list + 687 | type_declaration_no_options . '[' ']' + 695 | type_declaration_no_options . '-' '[' ']' + 696 | type_declaration_no_options . "explicit" + 697 | type_declaration_no_options . "const" + 698 | type_declaration_no_options . '-' "const" + 699 | type_declaration_no_options . '&' + 700 | type_declaration_no_options . '-' '&' + 701 | type_declaration_no_options . '#' + 702 | type_declaration_no_options . "implicit" + 703 | type_declaration_no_options . '-' '#' + 704 | type_declaration_no_options . "==" "const" + 705 | type_declaration_no_options . "==" '&' + 706 | type_declaration_no_options . '?' + 710 | type_declaration_no_options . "??" + + "const" shift, and go to state 404 + "implicit" shift, and go to state 405 + "explicit" shift, and go to state 406 + "==" shift, and go to state 407 + "??" shift, and go to state 408 + '?' shift, and go to state 409 + '&' shift, and go to state 410 + '>' shift, and go to state 1523 + '-' shift, and go to state 411 + '[' shift, and go to state 412 + '#' shift, and go to state 413 + + dim_list go to state 414 State 1451 - 340 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block . + 512 expr_mtag: expr "is" "$f" '(' expr ')' . - $default reduce using rule 340 (expr_full_block) + $default reduce using rule 512 (expr_mtag) State 1452 - 473 expr: expr "is" "type" '<' $@28 type_declaration_no_options . '>' $@29 - 687 type_declaration_no_options: type_declaration_no_options . dim_list - 688 | type_declaration_no_options . '[' ']' - 696 | type_declaration_no_options . '-' '[' ']' - 697 | type_declaration_no_options . "explicit" - 698 | type_declaration_no_options . "const" - 699 | type_declaration_no_options . '-' "const" - 700 | type_declaration_no_options . '&' - 701 | type_declaration_no_options . '-' '&' - 702 | type_declaration_no_options . '#' - 703 | type_declaration_no_options . "implicit" - 704 | type_declaration_no_options . '-' '#' - 705 | type_declaration_no_options . "==" "const" - 706 | type_declaration_no_options . "==" '&' - 707 | type_declaration_no_options . '?' - 711 | type_declaration_no_options . "??" - - "const" shift, and go to state 406 - "implicit" shift, and go to state 407 - "explicit" shift, and go to state 408 - "==" shift, and go to state 409 - "??" shift, and go to state 410 - '?' shift, and go to state 411 - '&' shift, and go to state 412 - '>' shift, and go to state 1525 - '-' shift, and go to state 413 - '[' shift, and go to state 414 - '#' shift, and go to state 415 - - dim_list go to state 416 + 478 expr: expr "as" "type" '<' $@30 type_declaration . '>' $@31 + 748 type_declaration: type_declaration . '|' type_declaration_no_options + 749 | type_declaration . '|' '#' + + '|' shift, and go to state 415 + '>' shift, and go to state 1524 State 1453 - 513 expr_mtag: expr "is" "$f" '(' expr ')' . + 510 expr_mtag: expr "as" "$f" '(' expr ')' . - $default reduce using rule 513 (expr_mtag) + $default reduce using rule 510 (expr_mtag) State 1454 - 479 expr: expr "as" "type" '<' $@30 type_declaration . '>' $@31 - 749 type_declaration: type_declaration . '|' type_declaration_no_options - 750 | type_declaration . '|' '#' + 392 expr_method_call: expr "->" "name" '(' expr_list ')' . - '|' shift, and go to state 417 - '>' shift, and go to state 1526 + $default reduce using rule 392 (expr_method_call) State 1455 - 511 expr_mtag: expr "as" "$f" '(' expr ')' . + 507 expr_mtag: expr "?." "$f" '(' expr ')' . - $default reduce using rule 511 (expr_mtag) + $default reduce using rule 507 (expr_mtag) State 1456 - 393 expr_method_call: expr "->" "name" '(' expr_list ')' . - - $default reduce using rule 393 (expr_method_call) + 483 expr: expr '?' "as" "type" '<' $@32 . type_declaration '>' $@33 + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 354 + type_declaration go to state 1525 State 1457 - 508 expr_mtag: expr "?." "$f" '(' expr ')' . - - $default reduce using rule 508 (expr_mtag) + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 511 | expr '?' "as" "$f" '(' expr . ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + ')' shift, and go to state 1526 State 1458 - 484 expr: expr '?' "as" "type" '<' $@32 . type_declaration '>' $@33 - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 356 - type_declaration go to state 1527 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 509 | expr '.' "?." "$f" '(' expr . ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + ')' shift, and go to state 1527 State 1459 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr '?' "as" "$f" '(' expr . ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - ')' shift, and go to state 1528 + 506 expr_mtag: expr '.' "$f" '(' expr ')' . + + $default reduce using rule 506 (expr_mtag) State 1460 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr '.' "?." "$f" '(' expr . ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - ')' shift, and go to state 1529 + 405 expr_field: expr '.' "name" '(' expr_list ')' . + $default reduce using rule 405 (expr_field) -State 1461 - 507 expr_mtag: expr '.' "$f" '(' expr ')' . +State 1461 - $default reduce using rule 507 (expr_mtag) + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 508 | expr '.' '.' "$f" '(' expr . ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + ')' shift, and go to state 1528 State 1462 - 406 expr_field: expr '.' "name" '(' expr_list ')' . + 521 optional_constant: "const" . - $default reduce using rule 406 (expr_field) + $default reduce using rule 521 (optional_constant) State 1463 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr '.' '.' "$f" '(' expr . ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - ')' shift, and go to state 1530 + 532 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant . $@35 function_declaration_header "end of expression" + + $default reduce using rule 531 ($@35) + + $@35 go to state 1529 State 1464 - 522 optional_constant: "const" . + 534 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override . optional_constant $@36 function_declaration_header expression_block - $default reduce using rule 522 (optional_constant) + "const" shift, and go to state 1462 + $default reduce using rule 520 (optional_constant) -State 1465 + optional_constant go to state 1530 - 533 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant . $@35 function_declaration_header "end of expression" - $default reduce using rule 532 ($@35) +State 1465 - $@35 go to state 1531 + 527 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable . variable_declaration + "$i" shift, and go to state 616 + "name" shift, and go to state 617 -State 1466 + variable_declaration go to state 1531 + variable_name_with_pos_list go to state 619 - 535 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override . optional_constant $@36 function_declaration_header expression_block - "const" shift, and go to state 1464 +State 1466 - $default reduce using rule 521 (optional_constant) + 694 type_declaration_no_options: '$' name_in_namespace '<' $@51 type_declaration_no_options_list '>' '(' optional_expr_list . ')' - optional_constant go to state 1532 + ')' shift, and go to state 1532 State 1467 - 528 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable . variable_declaration + 805 make_struct_decl: "struct" '<' $@88 type_declaration_no_options '>' $@89 '(' . use_initializer make_struct_dim ')' + + "uninitialized" shift, and go to state 1096 - "$i" shift, and go to state 618 - "name" shift, and go to state 619 + $default reduce using rule 795 (use_initializer) - variable_declaration go to state 1533 - variable_name_with_pos_list go to state 621 + use_initializer go to state 1533 State 1468 - 695 type_declaration_no_options: '$' name_in_namespace '<' $@51 type_declaration_no_options_list '>' '(' optional_expr_list . ')' + 808 make_struct_decl: "class" '<' $@90 type_declaration_no_options '>' $@91 '(' . use_initializer make_struct_dim ')' - ')' shift, and go to state 1534 + "uninitialized" shift, and go to state 1096 + $default reduce using rule 795 (use_initializer) -State 1469 + use_initializer go to state 1534 - 806 make_struct_decl: "struct" '<' $@88 type_declaration_no_options '>' $@89 '(' . use_initializer make_struct_dim ')' - "uninitialized" shift, and go to state 1098 +State 1469 - $default reduce using rule 796 (use_initializer) + 320 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" . '>' expr ')' - use_initializer go to state 1535 + '>' shift, and go to state 1535 State 1470 - 809 make_struct_decl: "class" '<' $@90 type_declaration_no_options '>' $@91 '(' . use_initializer make_struct_dim ')' - - "uninitialized" shift, and go to state 1098 - - $default reduce using rule 796 (use_initializer) - - use_initializer go to state 1536 + 319 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' expr . ')' + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + ')' shift, and go to state 1536 State 1471 - 321 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" . '>' expr ')' + 831 make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options '>' $@99 . '(' use_initializer make_struct_dim ')' - '>' shift, and go to state 1537 + '(' shift, and go to state 1537 State 1472 - 320 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' expr . ')' - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - ')' shift, and go to state 1538 + 834 make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options '>' $@101 . '(' use_initializer make_struct_dim ')' + + '(' shift, and go to state 1538 State 1473 - 832 make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options '>' $@99 . '(' use_initializer make_struct_dim ')' + 837 make_dim_decl: "array" "variant" '<' $@102 type_declaration_no_options '>' $@103 . '(' make_struct_dim ')' '(' shift, and go to state 1539 State 1474 - 835 make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options '>' $@101 . '(' use_initializer make_struct_dim ')' - - '(' shift, and go to state 1540 + 841 make_dim_decl: "array" '<' $@104 type_declaration_no_options '>' $@105 '(' . expr_list optional_comma ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + expr_list go to state 1540 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 707 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1475 - 838 make_dim_decl: "array" "variant" '<' $@102 type_declaration_no_options '>' $@103 . '(' make_struct_dim ')' - - '(' shift, and go to state 1541 + 854 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' . expr_map_tuple_list optional_comma ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 688 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_map_tuple go to state 696 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + expr_map_tuple_list go to state 1541 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1476 - 842 make_dim_decl: "array" '<' $@104 type_declaration_no_options '>' $@105 '(' . expr_list optional_comma ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - expr_list go to state 1542 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 709 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 853 make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma . ')' + + ')' shift, and go to state 1542 State 1477 - 855 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' . expr_map_tuple_list optional_comma ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 690 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_map_tuple go to state 698 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - expr_map_tuple_list go to state 1543 - make_table_decl go to state 554 - array_comprehension go to state 555 + 308 expr_cast: "cast" '<' $@13 type_declaration_no_options '>' $@14 expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + + $default reduce using rule 308 (expr_cast) State 1478 - 854 make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma . ')' - - ')' shift, and go to state 1544 + 311 expr_cast: "upcast" '<' $@15 type_declaration_no_options '>' $@16 expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + + $default reduce using rule 311 (expr_cast) State 1479 - 309 expr_cast: "cast" '<' $@13 type_declaration_no_options '>' $@14 expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - - $default reduce using rule 309 (expr_cast) + 314 expr_cast: "reinterpret" '<' $@17 type_declaration_no_options '>' $@18 expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + + $default reduce using rule 314 (expr_cast) State 1480 - 312 expr_cast: "upcast" '<' $@15 type_declaration_no_options '>' $@16 expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - - $default reduce using rule 312 (expr_cast) + 845 make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options '>' $@107 '(' . expr_list optional_comma ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + expr_list go to state 1543 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 707 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1481 - 315 expr_cast: "reinterpret" '<' $@17 type_declaration_no_options '>' $@18 expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - - $default reduce using rule 315 (expr_cast) + 814 make_struct_decl: "default" '<' $@94 type_declaration_no_options '>' $@95 use_initializer . + + $default reduce using rule 814 (make_struct_decl) State 1482 - 846 make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options '>' $@107 '(' . expr_list optional_comma ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - expr_list go to state 1545 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 709 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 823 make_tuple_call: "tuple" '<' $@96 type_declaration_no_options '>' $@97 '(' . use_initializer make_struct_dim ')' + "uninitialized" shift, and go to state 1096 -State 1483 + $default reduce using rule 795 (use_initializer) - 815 make_struct_decl: "default" '<' $@94 type_declaration_no_options '>' $@95 use_initializer . + use_initializer go to state 1544 - $default reduce using rule 815 (make_struct_decl) +State 1483 -State 1484 + 811 make_struct_decl: "variant" '<' $@92 type_declaration_no_options '>' $@93 '(' . make_struct_dim ')' - 824 make_tuple_call: "tuple" '<' $@96 type_declaration_no_options '>' $@97 '(' . use_initializer make_struct_dim ')' + "$f" shift, and go to state 907 + "name" shift, and go to state 1281 - "uninitialized" shift, and go to state 1098 + make_struct_fields go to state 913 + make_struct_dim go to state 1545 - $default reduce using rule 796 (use_initializer) - use_initializer go to state 1546 +State 1484 + 466 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' ')' . -State 1485 + $default reduce using rule 466 (expr) - 812 make_struct_decl: "variant" '<' $@92 type_declaration_no_options '>' $@93 '(' . make_struct_dim ')' - "$f" shift, and go to state 909 - "name" shift, and go to state 1283 +State 1485 - make_struct_fields go to state 915 - make_struct_dim go to state 1547 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 467 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr . ')' + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + ')' shift, and go to state 1546 State 1486 - 467 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' ')' . + 338 expr_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block . - $default reduce using rule 467 (expr) + $default reduce using rule 338 (expr_block) State 1487 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 468 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr . ')' - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - ')' shift, and go to state 1548 + 505 expr_mtag: "$c" '(' expr ')' '(' expr_list ')' . + + $default reduce using rule 505 (expr_mtag) State 1488 - 339 expr_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block . - - $default reduce using rule 339 (expr_block) + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 861 array_comprehension: "[[" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr . array_comprehension_where ']' ']' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + "end of expression" shift, and go to state 1547 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + + $default reduce using rule 855 (array_comprehension_where) + + array_comprehension_where go to state 1548 State 1489 - 506 expr_mtag: "$c" '(' expr ')' '(' expr_list ')' . - - $default reduce using rule 506 (expr_mtag) + 775 make_struct_fields: "$f" '(' expr ')' ":=" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1549 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1490 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 862 array_comprehension: "[[" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr . array_comprehension_where ']' ']' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - "end of expression" shift, and go to state 1549 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - - $default reduce using rule 856 (array_comprehension_where) - - array_comprehension_where go to state 1550 + 774 make_struct_fields: "$f" '(' expr ')' copy_or_move . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1550 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1491 - 776 make_struct_fields: "$f" '(' expr ')' ":=" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1551 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 800 make_struct_decl: "[[" type_declaration_no_options '(' ')' make_struct_dim optional_block optional_trailing_delim_sqr_sqr . + + $default reduce using rule 800 (make_struct_decl) State 1492 - 775 make_struct_fields: "$f" '(' expr ')' copy_or_move . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1552 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 776 make_struct_fields: make_struct_fields ',' "$f" '(' expr . ')' copy_or_move expr + 777 | make_struct_fields ',' "$f" '(' expr . ')' ":=" expr + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + ')' shift, and go to state 1551 State 1493 - 801 make_struct_decl: "[[" type_declaration_no_options '(' ')' make_struct_dim optional_block optional_trailing_delim_sqr_sqr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 773 make_struct_fields: make_struct_fields ',' "name" ":=" expr . + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 801 (make_struct_decl) + $default reduce using rule 773 (make_struct_fields) State 1494 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 777 make_struct_fields: make_struct_fields ',' "$f" '(' expr . ')' copy_or_move expr - 778 | make_struct_fields ',' "$f" '(' expr . ')' ":=" expr - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - ')' shift, and go to state 1553 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 772 make_struct_fields: make_struct_fields ',' "name" copy_or_move expr . + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + + $default reduce using rule 772 (make_struct_fields) State 1495 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 774 make_struct_fields: make_struct_fields ',' "name" ":=" expr . - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - - $default reduce using rule 774 (make_struct_fields) + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 862 array_comprehension: "[{" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr . array_comprehension_where "end of code block" ']' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + "end of expression" shift, and go to state 1547 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + + $default reduce using rule 855 (array_comprehension_where) + + array_comprehension_where go to state 1552 State 1496 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 773 make_struct_fields: make_struct_fields ',' "name" copy_or_move expr . - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 802 make_struct_decl: "[{" type_declaration_no_options '(' ')' make_struct_dim optional_block optional_trailing_delim_cur_sqr . - $default reduce using rule 773 (make_struct_fields) + $default reduce using rule 802 (make_struct_decl) State 1497 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 863 array_comprehension: "[{" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr . array_comprehension_where "end of code block" ']' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - "end of expression" shift, and go to state 1549 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - - $default reduce using rule 856 (array_comprehension_where) - - array_comprehension_where go to state 1554 - - -State 1498 - - 803 make_struct_decl: "[{" type_declaration_no_options '(' ')' make_struct_dim optional_block optional_trailing_delim_cur_sqr . - - $default reduce using rule 803 (make_struct_decl) - + 864 array_comprehension: "{{" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple . array_comprehension_where "end of code block" "end of code block" -State 1499 - - 865 array_comprehension: "{{" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple . array_comprehension_where "end of code block" "end of code block" + "end of expression" shift, and go to state 1547 - "end of expression" shift, and go to state 1549 - - $default reduce using rule 856 (array_comprehension_where) + $default reduce using rule 855 (array_comprehension_where) - array_comprehension_where go to state 1555 + array_comprehension_where go to state 1553 -State 1500 +State 1498 255 expression_keyword: "keyword" '<' $@7 type_declaration_no_options_list '>' $@8 expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 $default reduce using rule 255 (expression_keyword) -State 1501 +State 1499 250 optional_expr_list_in_braces: '(' . optional_expr_list ')' - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 $default reduce using rule 247 (optional_expr_list) - string_builder go to state 505 - expr_reader go to state 506 - optional_expr_list go to state 1556 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - expr_list go to state 822 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 709 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + string_builder go to state 503 + expr_reader go to state 504 + optional_expr_list go to state 1554 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + expr_list go to state 820 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 707 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 -State 1502 +State 1500 258 expression_keyword: "type function" '<' $@9 type_declaration_no_options_list '>' $@10 optional_expr_list_in_braces . $default reduce using rule 258 (expression_keyword) -State 1503 - - 864 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple . array_comprehension_where "end of code block" - - "end of expression" shift, and go to state 1549 +State 1501 - $default reduce using rule 856 (array_comprehension_where) + 863 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple . array_comprehension_where "end of code block" - array_comprehension_where go to state 1557 + "end of expression" shift, and go to state 1547 + $default reduce using rule 855 (array_comprehension_where) -State 1504 + array_comprehension_where go to state 1555 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 860 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr . array_comprehension_where ']' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - "end of expression" shift, and go to state 1549 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - $default reduce using rule 856 (array_comprehension_where) +State 1502 - array_comprehension_where go to state 1558 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 859 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr . array_comprehension_where ']' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + "end of expression" shift, and go to state 1547 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + + $default reduce using rule 855 (array_comprehension_where) + + array_comprehension_where go to state 1556 -State 1505 +State 1503 - 861 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" . expr array_comprehension_where ']' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 860 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" . expr array_comprehension_where ']' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1559 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1557 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 -State 1506 +State 1504 - 399 func_addr_expr: '@' '@' '<' $@22 type_declaration_no_options '>' $@23 . func_addr_name + 398 func_addr_expr: '@' '@' '<' $@22 type_declaration_no_options '>' $@23 . func_addr_name - "::" shift, and go to state 58 - "$i" shift, and go to state 945 - "name" shift, and go to state 59 + "$i" shift, and go to state 943 + "name" shift, and go to state 58 - name_in_namespace go to state 948 - func_addr_name go to state 1560 + name_in_namespace go to state 946 + func_addr_name go to state 1558 -State 1507 +State 1505 - 402 func_addr_expr: '@' '@' '<' $@24 optional_function_argument_list optional_function_type '>' . $@25 func_addr_name + 401 func_addr_expr: '@' '@' '<' $@24 optional_function_argument_list optional_function_type '>' . $@25 func_addr_name - $default reduce using rule 401 ($@25) + $default reduce using rule 400 ($@25) - $@25 go to state 1561 + $@25 go to state 1559 -State 1508 +State 1506 61 expression_else: elif_or_static_elif expr expression_block expression_else . $default reduce using rule 61 (expression_else) -State 1509 +State 1507 - 280 expression_return_no_pipe: "return" . - 281 | "return" . expr_list - 282 | "return" . "<-" expr_list - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "<-" shift, and go to state 1562 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 279 expression_return_no_pipe: "return" . + 280 | "return" . expr_list + 281 | "return" . "<-" expr_list + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "<-" shift, and go to state 1560 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - $default reduce using rule 280 (expression_return_no_pipe) + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + $default reduce using rule 279 (expression_return_no_pipe) + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + expr_list go to state 638 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 707 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - expr_list go to state 640 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 709 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 +State 1508 -State 1510 - - 286 expression_yield_no_pipe: "yield" . expr - 287 | "yield" . "<-" expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "<-" shift, and go to state 1563 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 285 expression_yield_no_pipe: "yield" . expr + 286 | "yield" . "<-" expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "<-" shift, and go to state 1561 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1564 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1562 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 -State 1511 +State 1509 66 expression_else_one_liner: "else" $@2 expression_if_one_liner . $default reduce using rule 66 (expression_else_one_liner) -State 1512 +State 1510 70 expression_if_one_liner: expression_break . $default reduce using rule 70 (expression_if_one_liner) -State 1513 +State 1511 71 expression_if_one_liner: expression_continue . $default reduce using rule 71 (expression_if_one_liner) -State 1514 +State 1512 68 expression_if_one_liner: expression_return_no_pipe . $default reduce using rule 68 (expression_if_one_liner) -State 1515 +State 1513 69 expression_if_one_liner: expression_yield_no_pipe . $default reduce using rule 69 (expression_if_one_liner) -State 1516 +State 1514 67 expression_if_one_liner: expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 $default reduce using rule 67 (expression_if_one_liner) -State 1517 +State 1515 + + 341 expr_full_block_assumed_piped: block_or_lambda $@21 optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type . expression_block + + "begin of code block" shift, and go to state 284 + + expression_block go to state 1563 + + +State 1516 + + 390 expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' . ')' - 342 expr_full_block_assumed_piped: block_or_lambda $@21 optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type . expression_block + ')' shift, and go to state 1564 - "begin of code block" shift, and go to state 286 - expression_block go to state 1565 +State 1517 + + 300 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' ':' . type_declaration_no_options copy_or_move_or_clone expr "end of expression" + + "type" shift, and go to state 308 + "array" shift, and go to state 309 + "table" shift, and go to state 310 + "typedecl" shift, and go to state 311 + "iterator" shift, and go to state 312 + "smart_ptr" shift, and go to state 313 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "auto" shift, and go to state 317 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 323 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "block" shift, and go to state 335 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "function" shift, and go to state 339 + "lambda" shift, and go to state 340 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 345 + "variant" shift, and go to state 346 + "$t" shift, and go to state 347 + "name" shift, and go to state 58 + '$' shift, and go to state 348 + + name_in_namespace go to state 349 + basic_type_declaration go to state 350 + structure_type_declaration go to state 351 + auto_type_declaration go to state 352 + bitfield_type_declaration go to state 353 + type_declaration_no_options go to state 1565 State 1518 - 391 expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' . ')' + 302 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' optional_ref . copy_or_move_or_clone expr "end of expression" - ')' shift, and go to state 1566 + "<-" shift, and go to state 569 + ":=" shift, and go to state 570 + '=' shift, and go to state 571 + + copy_or_move_or_clone go to state 1566 State 1519 - 301 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' ':' . type_declaration_no_options copy_or_move_or_clone expr "end of expression" - - "type" shift, and go to state 310 - "array" shift, and go to state 311 - "table" shift, and go to state 312 - "typedecl" shift, and go to state 313 - "iterator" shift, and go to state 314 - "smart_ptr" shift, and go to state 315 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "auto" shift, and go to state 319 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 325 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "block" shift, and go to state 337 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "function" shift, and go to state 341 - "lambda" shift, and go to state 342 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 347 - "variant" shift, and go to state 348 - "::" shift, and go to state 58 - "$t" shift, and go to state 349 - "name" shift, and go to state 59 - '$' shift, and go to state 350 - - name_in_namespace go to state 351 - basic_type_declaration go to state 352 - structure_type_declaration go to state 353 - auto_type_declaration go to state 354 - bitfield_type_declaration go to state 355 - type_declaration_no_options go to state 1567 + 301 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options . copy_or_move_or_clone expr "end of expression" + 686 type_declaration_no_options: type_declaration_no_options . dim_list + 687 | type_declaration_no_options . '[' ']' + 695 | type_declaration_no_options . '-' '[' ']' + 696 | type_declaration_no_options . "explicit" + 697 | type_declaration_no_options . "const" + 698 | type_declaration_no_options . '-' "const" + 699 | type_declaration_no_options . '&' + 700 | type_declaration_no_options . '-' '&' + 701 | type_declaration_no_options . '#' + 702 | type_declaration_no_options . "implicit" + 703 | type_declaration_no_options . '-' '#' + 704 | type_declaration_no_options . "==" "const" + 705 | type_declaration_no_options . "==" '&' + 706 | type_declaration_no_options . '?' + 710 | type_declaration_no_options . "??" + + "const" shift, and go to state 404 + "implicit" shift, and go to state 405 + "explicit" shift, and go to state 406 + "==" shift, and go to state 407 + "<-" shift, and go to state 569 + "??" shift, and go to state 408 + ":=" shift, and go to state 570 + '=' shift, and go to state 571 + '?' shift, and go to state 409 + '&' shift, and go to state 410 + '-' shift, and go to state 411 + '[' shift, and go to state 412 + '#' shift, and go to state 413 + + copy_or_move_or_clone go to state 1567 + dim_list go to state 414 State 1520 - 303 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' optional_ref . copy_or_move_or_clone expr "end of expression" - - "<-" shift, and go to state 571 - ":=" shift, and go to state 572 - '=' shift, and go to state 573 - - copy_or_move_or_clone go to state 1568 + 303 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone . expr "end of expression" + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1568 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1521 - 302 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options . copy_or_move_or_clone expr "end of expression" - 687 type_declaration_no_options: type_declaration_no_options . dim_list - 688 | type_declaration_no_options . '[' ']' - 696 | type_declaration_no_options . '-' '[' ']' - 697 | type_declaration_no_options . "explicit" - 698 | type_declaration_no_options . "const" - 699 | type_declaration_no_options . '-' "const" - 700 | type_declaration_no_options . '&' - 701 | type_declaration_no_options . '-' '&' - 702 | type_declaration_no_options . '#' - 703 | type_declaration_no_options . "implicit" - 704 | type_declaration_no_options . '-' '#' - 705 | type_declaration_no_options . "==" "const" - 706 | type_declaration_no_options . "==" '&' - 707 | type_declaration_no_options . '?' - 711 | type_declaration_no_options . "??" - - "const" shift, and go to state 406 - "implicit" shift, and go to state 407 - "explicit" shift, and go to state 408 - "==" shift, and go to state 409 - "<-" shift, and go to state 571 - "??" shift, and go to state 410 - ":=" shift, and go to state 572 - '=' shift, and go to state 573 - '?' shift, and go to state 411 - '&' shift, and go to state 412 - '-' shift, and go to state 413 - '[' shift, and go to state 414 - '#' shift, and go to state 415 - - copy_or_move_or_clone go to state 1569 - dim_list go to state 416 + 325 block_or_simple_block: "=>" "<-" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1569 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1522 - 304 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone . expr "end of expression" - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1570 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 324 block_or_simple_block: "=>" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + + ".." error (nonassociative) + + $default reduce using rule 324 (block_or_simple_block) State 1523 - 326 block_or_simple_block: "=>" "<-" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1571 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 472 expr: expr "is" "type" '<' $@28 type_declaration_no_options '>' . $@29 + + $default reduce using rule 471 ($@29) + + $@29 go to state 1570 State 1524 - 325 block_or_simple_block: "=>" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 478 expr: expr "as" "type" '<' $@30 type_declaration '>' . $@31 - ".." error (nonassociative) + $default reduce using rule 477 ($@31) - $default reduce using rule 325 (block_or_simple_block) + $@31 go to state 1571 State 1525 - 473 expr: expr "is" "type" '<' $@28 type_declaration_no_options '>' . $@29 - - $default reduce using rule 472 ($@29) + 483 expr: expr '?' "as" "type" '<' $@32 type_declaration . '>' $@33 + 748 type_declaration: type_declaration . '|' type_declaration_no_options + 749 | type_declaration . '|' '#' - $@29 go to state 1572 + '|' shift, and go to state 415 + '>' shift, and go to state 1572 State 1526 - 479 expr: expr "as" "type" '<' $@30 type_declaration '>' . $@31 + 511 expr_mtag: expr '?' "as" "$f" '(' expr ')' . - $default reduce using rule 478 ($@31) - - $@31 go to state 1573 + $default reduce using rule 511 (expr_mtag) State 1527 - 484 expr: expr '?' "as" "type" '<' $@32 type_declaration . '>' $@33 - 749 type_declaration: type_declaration . '|' type_declaration_no_options - 750 | type_declaration . '|' '#' + 509 expr_mtag: expr '.' "?." "$f" '(' expr ')' . - '|' shift, and go to state 417 - '>' shift, and go to state 1574 + $default reduce using rule 509 (expr_mtag) State 1528 - 512 expr_mtag: expr '?' "as" "$f" '(' expr ')' . + 508 expr_mtag: expr '.' '.' "$f" '(' expr ')' . - $default reduce using rule 512 (expr_mtag) + $default reduce using rule 508 (expr_mtag) State 1529 - 510 expr_mtag: expr '.' "?." "$f" '(' expr ')' . - - $default reduce using rule 510 (expr_mtag) + 532 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@35 . function_declaration_header "end of expression" + + "operator" shift, and go to state 179 + "bool" shift, and go to state 180 + "string" shift, and go to state 181 + "int" shift, and go to state 182 + "int2" shift, and go to state 183 + "int3" shift, and go to state 184 + "int4" shift, and go to state 185 + "uint" shift, and go to state 186 + "uint2" shift, and go to state 187 + "uint3" shift, and go to state 188 + "uint4" shift, and go to state 189 + "float" shift, and go to state 190 + "float2" shift, and go to state 191 + "float3" shift, and go to state 192 + "float4" shift, and go to state 193 + "range" shift, and go to state 194 + "urange" shift, and go to state 195 + "range64" shift, and go to state 196 + "urange64" shift, and go to state 197 + "int64" shift, and go to state 198 + "uint64" shift, and go to state 199 + "double" shift, and go to state 200 + "int8" shift, and go to state 201 + "uint8" shift, and go to state 202 + "int16" shift, and go to state 203 + "uint16" shift, and go to state 204 + "++" shift, and go to state 205 + "--" shift, and go to state 206 + "name" shift, and go to state 207 + + function_name go to state 208 + function_declaration_header go to state 1573 State 1530 - 509 expr_mtag: expr '.' '.' "$f" '(' expr ')' . + 534 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant . $@36 function_declaration_header expression_block - $default reduce using rule 509 (expr_mtag) + $default reduce using rule 533 ($@36) + + $@36 go to state 1574 State 1531 - 533 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@35 . function_declaration_header "end of expression" - - "operator" shift, and go to state 181 - "bool" shift, and go to state 182 - "string" shift, and go to state 183 - "int" shift, and go to state 184 - "int2" shift, and go to state 185 - "int3" shift, and go to state 186 - "int4" shift, and go to state 187 - "uint" shift, and go to state 188 - "uint2" shift, and go to state 189 - "uint3" shift, and go to state 190 - "uint4" shift, and go to state 191 - "float" shift, and go to state 192 - "float2" shift, and go to state 193 - "float3" shift, and go to state 194 - "float4" shift, and go to state 195 - "range" shift, and go to state 196 - "urange" shift, and go to state 197 - "range64" shift, and go to state 198 - "urange64" shift, and go to state 199 - "int64" shift, and go to state 200 - "uint64" shift, and go to state 201 - "double" shift, and go to state 202 - "int8" shift, and go to state 203 - "uint8" shift, and go to state 204 - "int16" shift, and go to state 205 - "uint16" shift, and go to state 206 - "++" shift, and go to state 207 - "--" shift, and go to state 208 - "name" shift, and go to state 209 - - function_name go to state 210 - function_declaration_header go to state 1575 + 527 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration . + $default reduce using rule 527 (structure_variable_declaration) -State 1532 - 535 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant . $@36 function_declaration_header expression_block +State 1532 - $default reduce using rule 534 ($@36) + 694 type_declaration_no_options: '$' name_in_namespace '<' $@51 type_declaration_no_options_list '>' '(' optional_expr_list ')' . - $@36 go to state 1576 + $default reduce using rule 694 (type_declaration_no_options) State 1533 - 528 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration . + 805 make_struct_decl: "struct" '<' $@88 type_declaration_no_options '>' $@89 '(' use_initializer . make_struct_dim ')' + + "$f" shift, and go to state 907 + "name" shift, and go to state 1281 - $default reduce using rule 528 (structure_variable_declaration) + make_struct_fields go to state 913 + make_struct_dim go to state 1575 State 1534 - 695 type_declaration_no_options: '$' name_in_namespace '<' $@51 type_declaration_no_options_list '>' '(' optional_expr_list ')' . + 808 make_struct_decl: "class" '<' $@90 type_declaration_no_options '>' $@91 '(' use_initializer . make_struct_dim ')' - $default reduce using rule 695 (type_declaration_no_options) + "$f" shift, and go to state 907 + "name" shift, and go to state 1281 + + make_struct_fields go to state 913 + make_struct_dim go to state 1576 State 1535 - 806 make_struct_decl: "struct" '<' $@88 type_declaration_no_options '>' $@89 '(' use_initializer . make_struct_dim ')' + 320 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' . expr ')' + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1577 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 - "$f" shift, and go to state 909 - "name" shift, and go to state 1283 - make_struct_fields go to state 915 - make_struct_dim go to state 1577 +State 1536 + 319 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' expr ')' . -State 1536 + $default reduce using rule 319 (expr_type_info) - 809 make_struct_decl: "class" '<' $@90 type_declaration_no_options '>' $@91 '(' use_initializer . make_struct_dim ')' - "$f" shift, and go to state 909 - "name" shift, and go to state 1283 +State 1537 - make_struct_fields go to state 915 - make_struct_dim go to state 1578 + 831 make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options '>' $@99 '(' . use_initializer make_struct_dim ')' + "uninitialized" shift, and go to state 1096 -State 1537 + $default reduce using rule 795 (use_initializer) - 321 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' . expr ')' - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1579 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + use_initializer go to state 1578 State 1538 - 320 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' expr ')' . + 834 make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options '>' $@101 '(' . use_initializer make_struct_dim ')' - $default reduce using rule 320 (expr_type_info) + "uninitialized" shift, and go to state 1096 + $default reduce using rule 795 (use_initializer) + + use_initializer go to state 1579 -State 1539 - 832 make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options '>' $@99 '(' . use_initializer make_struct_dim ')' +State 1539 - "uninitialized" shift, and go to state 1098 + 837 make_dim_decl: "array" "variant" '<' $@102 type_declaration_no_options '>' $@103 '(' . make_struct_dim ')' - $default reduce using rule 796 (use_initializer) + "$f" shift, and go to state 907 + "name" shift, and go to state 1281 - use_initializer go to state 1580 + make_struct_fields go to state 913 + make_struct_dim go to state 1580 State 1540 - 835 make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options '>' $@101 '(' . use_initializer make_struct_dim ')' + 322 expr_list: expr_list . ',' expr + 841 make_dim_decl: "array" '<' $@104 type_declaration_no_options '>' $@105 '(' expr_list . optional_comma ')' - "uninitialized" shift, and go to state 1098 + ',' shift, and go to state 940 - $default reduce using rule 796 (use_initializer) + $default reduce using rule 857 (optional_comma) - use_initializer go to state 1581 + optional_comma go to state 1581 State 1541 - 838 make_dim_decl: "array" "variant" '<' $@102 type_declaration_no_options '>' $@103 '(' . make_struct_dim ')' - - "$f" shift, and go to state 909 - "name" shift, and go to state 1283 + 849 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple + 854 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list . optional_comma ')' - make_struct_fields go to state 915 - make_struct_dim go to state 1582 + ',' shift, and go to state 935 + $default reduce using rule 857 (optional_comma) -State 1542 + optional_comma go to state 1582 - 323 expr_list: expr_list . ',' expr - 842 make_dim_decl: "array" '<' $@104 type_declaration_no_options '>' $@105 '(' expr_list . optional_comma ')' - ',' shift, and go to state 942 +State 1542 - $default reduce using rule 858 (optional_comma) + 853 make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' . - optional_comma go to state 1583 + $default reduce using rule 853 (make_table_decl) State 1543 - 850 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple - 855 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list . optional_comma ')' + 322 expr_list: expr_list . ',' expr + 845 make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options '>' $@107 '(' expr_list . optional_comma ')' - ',' shift, and go to state 937 + ',' shift, and go to state 940 - $default reduce using rule 858 (optional_comma) + $default reduce using rule 857 (optional_comma) - optional_comma go to state 1584 + optional_comma go to state 1583 State 1544 - 854 make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' . - - $default reduce using rule 854 (make_table_decl) + 823 make_tuple_call: "tuple" '<' $@96 type_declaration_no_options '>' $@97 '(' use_initializer . make_struct_dim ')' + "$f" shift, and go to state 907 + "name" shift, and go to state 1281 -State 1545 + make_struct_fields go to state 913 + make_struct_dim go to state 1584 - 323 expr_list: expr_list . ',' expr - 846 make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options '>' $@107 '(' expr_list . optional_comma ')' - ',' shift, and go to state 942 +State 1545 - $default reduce using rule 858 (optional_comma) + 780 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 811 make_struct_decl: "variant" '<' $@92 type_declaration_no_options '>' $@93 '(' make_struct_dim . ')' - optional_comma go to state 1585 + "end of expression" shift, and go to state 1160 + ')' shift, and go to state 1585 State 1546 - 824 make_tuple_call: "tuple" '<' $@96 type_declaration_no_options '>' $@97 '(' use_initializer . make_struct_dim ')' + 467 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' . - "$f" shift, and go to state 909 - "name" shift, and go to state 1283 - - make_struct_fields go to state 915 - make_struct_dim go to state 1586 + $default reduce using rule 467 (expr) State 1547 - 781 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 812 make_struct_decl: "variant" '<' $@92 type_declaration_no_options '>' $@93 '(' make_struct_dim . ')' + 856 array_comprehension_where: "end of expression" . "where" expr - "end of expression" shift, and go to state 1162 - ')' shift, and go to state 1587 + "where" shift, and go to state 1586 State 1548 - 468 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' . + 861 array_comprehension: "[[" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where . ']' ']' - $default reduce using rule 468 (expr) + ']' shift, and go to state 1587 State 1549 - 857 array_comprehension_where: "end of expression" . "where" expr + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 775 make_struct_fields: "$f" '(' expr ')' ":=" expr . + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - "where" shift, and go to state 1588 + $default reduce using rule 775 (make_struct_fields) State 1550 - 862 array_comprehension: "[[" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where . ']' ']' + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 774 make_struct_fields: "$f" '(' expr ')' copy_or_move expr . + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - ']' shift, and go to state 1589 + $default reduce using rule 774 (make_struct_fields) State 1551 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 776 make_struct_fields: "$f" '(' expr ')' ":=" expr . - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 776 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' . copy_or_move expr + 777 | make_struct_fields ',' "$f" '(' expr ')' . ":=" expr - $default reduce using rule 776 (make_struct_fields) + "<-" shift, and go to state 835 + ":=" shift, and go to state 1588 + '=' shift, and go to state 837 + + copy_or_move go to state 1589 State 1552 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 775 make_struct_fields: "$f" '(' expr ')' copy_or_move expr . - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 862 array_comprehension: "[{" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where . "end of code block" ']' - $default reduce using rule 775 (make_struct_fields) + "end of code block" shift, and go to state 1590 State 1553 - 777 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' . copy_or_move expr - 778 | make_struct_fields ',' "$f" '(' expr ')' . ":=" expr + 864 array_comprehension: "{{" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where . "end of code block" "end of code block" - "<-" shift, and go to state 837 - ":=" shift, and go to state 1590 - '=' shift, and go to state 839 - - copy_or_move go to state 1591 + "end of code block" shift, and go to state 1591 State 1554 - 863 array_comprehension: "[{" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where . "end of code block" ']' + 250 optional_expr_list_in_braces: '(' optional_expr_list . ')' - "end of code block" shift, and go to state 1592 + ')' shift, and go to state 1592 State 1555 - 865 array_comprehension: "{{" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where . "end of code block" "end of code block" + 863 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where . "end of code block" "end of code block" shift, and go to state 1593 State 1556 - 250 optional_expr_list_in_braces: '(' optional_expr_list . ')' + 859 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where . ']' - ')' shift, and go to state 1594 + ']' shift, and go to state 1594 State 1557 - 864 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where . "end of code block" - - "end of code block" shift, and go to state 1595 + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 860 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr . array_comprehension_where ']' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + "end of expression" shift, and go to state 1547 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + + $default reduce using rule 855 (array_comprehension_where) + + array_comprehension_where go to state 1595 State 1558 - 860 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where . ']' + 398 func_addr_expr: '@' '@' '<' $@22 type_declaration_no_options '>' $@23 func_addr_name . - ']' shift, and go to state 1596 + $default reduce using rule 398 (func_addr_expr) State 1559 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 861 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr . array_comprehension_where ']' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - "end of expression" shift, and go to state 1549 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 401 func_addr_expr: '@' '@' '<' $@24 optional_function_argument_list optional_function_type '>' $@25 . func_addr_name - $default reduce using rule 856 (array_comprehension_where) + "$i" shift, and go to state 943 + "name" shift, and go to state 58 - array_comprehension_where go to state 1597 + name_in_namespace go to state 946 + func_addr_name go to state 1596 State 1560 - 399 func_addr_expr: '@' '@' '<' $@22 type_declaration_no_options '>' $@23 func_addr_name . - - $default reduce using rule 399 (func_addr_expr) + 281 expression_return_no_pipe: "return" "<-" . expr_list + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + expr_list go to state 855 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 707 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1561 - 402 func_addr_expr: '@' '@' '<' $@24 optional_function_argument_list optional_function_type '>' $@25 . func_addr_name - - "::" shift, and go to state 58 - "$i" shift, and go to state 945 - "name" shift, and go to state 59 - - name_in_namespace go to state 948 - func_addr_name go to state 1598 + 286 expression_yield_no_pipe: "yield" "<-" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1597 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1562 - 282 expression_return_no_pipe: "return" "<-" . expr_list - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - expr_list go to state 857 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 709 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 285 expression_yield_no_pipe: "yield" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + + $default reduce using rule 285 (expression_yield_no_pipe) State 1563 - 287 expression_yield_no_pipe: "yield" "<-" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1599 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 341 expr_full_block_assumed_piped: block_or_lambda $@21 optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block . + + $default reduce using rule 341 (expr_full_block_assumed_piped) State 1564 - 286 expression_yield_no_pipe: "yield" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 390 expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' ')' . - $default reduce using rule 286 (expression_yield_no_pipe) + $default reduce using rule 390 (expr_named_call) State 1565 - 342 expr_full_block_assumed_piped: block_or_lambda $@21 optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block . - - $default reduce using rule 342 (expr_full_block_assumed_piped) + 300 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' ':' type_declaration_no_options . copy_or_move_or_clone expr "end of expression" + 686 type_declaration_no_options: type_declaration_no_options . dim_list + 687 | type_declaration_no_options . '[' ']' + 695 | type_declaration_no_options . '-' '[' ']' + 696 | type_declaration_no_options . "explicit" + 697 | type_declaration_no_options . "const" + 698 | type_declaration_no_options . '-' "const" + 699 | type_declaration_no_options . '&' + 700 | type_declaration_no_options . '-' '&' + 701 | type_declaration_no_options . '#' + 702 | type_declaration_no_options . "implicit" + 703 | type_declaration_no_options . '-' '#' + 704 | type_declaration_no_options . "==" "const" + 705 | type_declaration_no_options . "==" '&' + 706 | type_declaration_no_options . '?' + 710 | type_declaration_no_options . "??" + + "const" shift, and go to state 404 + "implicit" shift, and go to state 405 + "explicit" shift, and go to state 406 + "==" shift, and go to state 407 + "<-" shift, and go to state 569 + "??" shift, and go to state 408 + ":=" shift, and go to state 570 + '=' shift, and go to state 571 + '?' shift, and go to state 409 + '&' shift, and go to state 410 + '-' shift, and go to state 411 + '[' shift, and go to state 412 + '#' shift, and go to state 413 + + copy_or_move_or_clone go to state 1598 + dim_list go to state 414 State 1566 - 391 expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' ')' . - - $default reduce using rule 391 (expr_named_call) + 302 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' optional_ref copy_or_move_or_clone . expr "end of expression" + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1599 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1567 - 301 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' ':' type_declaration_no_options . copy_or_move_or_clone expr "end of expression" - 687 type_declaration_no_options: type_declaration_no_options . dim_list - 688 | type_declaration_no_options . '[' ']' - 696 | type_declaration_no_options . '-' '[' ']' - 697 | type_declaration_no_options . "explicit" - 698 | type_declaration_no_options . "const" - 699 | type_declaration_no_options . '-' "const" - 700 | type_declaration_no_options . '&' - 701 | type_declaration_no_options . '-' '&' - 702 | type_declaration_no_options . '#' - 703 | type_declaration_no_options . "implicit" - 704 | type_declaration_no_options . '-' '#' - 705 | type_declaration_no_options . "==" "const" - 706 | type_declaration_no_options . "==" '&' - 707 | type_declaration_no_options . '?' - 711 | type_declaration_no_options . "??" - - "const" shift, and go to state 406 - "implicit" shift, and go to state 407 - "explicit" shift, and go to state 408 - "==" shift, and go to state 409 - "<-" shift, and go to state 571 - "??" shift, and go to state 410 - ":=" shift, and go to state 572 - '=' shift, and go to state 573 - '?' shift, and go to state 411 - '&' shift, and go to state 412 - '-' shift, and go to state 413 - '[' shift, and go to state 414 - '#' shift, and go to state 415 - - copy_or_move_or_clone go to state 1600 - dim_list go to state 416 + 301 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone . expr "end of expression" + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1600 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1568 - 303 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' optional_ref copy_or_move_or_clone . expr "end of expression" - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1601 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 303 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr . "end of expression" + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + "end of expression" shift, and go to state 1601 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 State 1569 - 302 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone . expr "end of expression" - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1602 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 325 block_or_simple_block: "=>" "<-" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + + $default reduce using rule 325 (block_or_simple_block) State 1570 - 304 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr . "end of expression" - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - "end of expression" shift, and go to state 1603 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 472 expr: expr "is" "type" '<' $@28 type_declaration_no_options '>' $@29 . + + $default reduce using rule 472 (expr) State 1571 - 326 block_or_simple_block: "=>" "<-" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - - $default reduce using rule 326 (block_or_simple_block) + 478 expr: expr "as" "type" '<' $@30 type_declaration '>' $@31 . + + $default reduce using rule 478 (expr) State 1572 - 473 expr: expr "is" "type" '<' $@28 type_declaration_no_options '>' $@29 . + 483 expr: expr '?' "as" "type" '<' $@32 type_declaration '>' . $@33 - $default reduce using rule 473 (expr) + $default reduce using rule 482 ($@33) + + $@33 go to state 1602 State 1573 - 479 expr: expr "as" "type" '<' $@30 type_declaration '>' $@31 . + 532 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@35 function_declaration_header . "end of expression" - $default reduce using rule 479 (expr) + "end of expression" shift, and go to state 1603 State 1574 - 484 expr: expr '?' "as" "type" '<' $@32 type_declaration '>' . $@33 - - $default reduce using rule 483 ($@33) - - $@33 go to state 1604 + 534 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@36 . function_declaration_header expression_block + + "operator" shift, and go to state 179 + "bool" shift, and go to state 180 + "string" shift, and go to state 181 + "int" shift, and go to state 182 + "int2" shift, and go to state 183 + "int3" shift, and go to state 184 + "int4" shift, and go to state 185 + "uint" shift, and go to state 186 + "uint2" shift, and go to state 187 + "uint3" shift, and go to state 188 + "uint4" shift, and go to state 189 + "float" shift, and go to state 190 + "float2" shift, and go to state 191 + "float3" shift, and go to state 192 + "float4" shift, and go to state 193 + "range" shift, and go to state 194 + "urange" shift, and go to state 195 + "range64" shift, and go to state 196 + "urange64" shift, and go to state 197 + "int64" shift, and go to state 198 + "uint64" shift, and go to state 199 + "double" shift, and go to state 200 + "int8" shift, and go to state 201 + "uint8" shift, and go to state 202 + "int16" shift, and go to state 203 + "uint16" shift, and go to state 204 + "++" shift, and go to state 205 + "--" shift, and go to state 206 + "name" shift, and go to state 207 + + function_name go to state 208 + function_declaration_header go to state 1604 State 1575 - 533 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@35 function_declaration_header . "end of expression" + 780 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 805 make_struct_decl: "struct" '<' $@88 type_declaration_no_options '>' $@89 '(' use_initializer make_struct_dim . ')' - "end of expression" shift, and go to state 1605 + "end of expression" shift, and go to state 1160 + ')' shift, and go to state 1605 State 1576 - 535 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@36 . function_declaration_header expression_block - - "operator" shift, and go to state 181 - "bool" shift, and go to state 182 - "string" shift, and go to state 183 - "int" shift, and go to state 184 - "int2" shift, and go to state 185 - "int3" shift, and go to state 186 - "int4" shift, and go to state 187 - "uint" shift, and go to state 188 - "uint2" shift, and go to state 189 - "uint3" shift, and go to state 190 - "uint4" shift, and go to state 191 - "float" shift, and go to state 192 - "float2" shift, and go to state 193 - "float3" shift, and go to state 194 - "float4" shift, and go to state 195 - "range" shift, and go to state 196 - "urange" shift, and go to state 197 - "range64" shift, and go to state 198 - "urange64" shift, and go to state 199 - "int64" shift, and go to state 200 - "uint64" shift, and go to state 201 - "double" shift, and go to state 202 - "int8" shift, and go to state 203 - "uint8" shift, and go to state 204 - "int16" shift, and go to state 205 - "uint16" shift, and go to state 206 - "++" shift, and go to state 207 - "--" shift, and go to state 208 - "name" shift, and go to state 209 - - function_name go to state 210 - function_declaration_header go to state 1606 + 780 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 808 make_struct_decl: "class" '<' $@90 type_declaration_no_options '>' $@91 '(' use_initializer make_struct_dim . ')' + "end of expression" shift, and go to state 1160 + ')' shift, and go to state 1606 -State 1577 - 781 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 806 make_struct_decl: "struct" '<' $@88 type_declaration_no_options '>' $@89 '(' use_initializer make_struct_dim . ')' +State 1577 - "end of expression" shift, and go to state 1162 - ')' shift, and go to state 1607 + 320 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr . ')' + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + ')' shift, and go to state 1607 State 1578 - 781 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 809 make_struct_decl: "class" '<' $@90 type_declaration_no_options '>' $@91 '(' use_initializer make_struct_dim . ')' + 831 make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options '>' $@99 '(' use_initializer . make_struct_dim ')' + + "$f" shift, and go to state 907 + "name" shift, and go to state 1281 - "end of expression" shift, and go to state 1162 - ')' shift, and go to state 1608 + make_struct_fields go to state 913 + make_struct_dim go to state 1608 State 1579 - 321 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr . ')' - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - ')' shift, and go to state 1609 + 834 make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options '>' $@101 '(' use_initializer . make_struct_dim ')' + "$f" shift, and go to state 907 + "name" shift, and go to state 1281 + + make_struct_fields go to state 913 + make_struct_dim go to state 1609 -State 1580 - 832 make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options '>' $@99 '(' use_initializer . make_struct_dim ')' +State 1580 - "$f" shift, and go to state 909 - "name" shift, and go to state 1283 + 780 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 837 make_dim_decl: "array" "variant" '<' $@102 type_declaration_no_options '>' $@103 '(' make_struct_dim . ')' - make_struct_fields go to state 915 - make_struct_dim go to state 1610 + "end of expression" shift, and go to state 1160 + ')' shift, and go to state 1610 State 1581 - 835 make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options '>' $@101 '(' use_initializer . make_struct_dim ')' - - "$f" shift, and go to state 909 - "name" shift, and go to state 1283 + 841 make_dim_decl: "array" '<' $@104 type_declaration_no_options '>' $@105 '(' expr_list optional_comma . ')' - make_struct_fields go to state 915 - make_struct_dim go to state 1611 + ')' shift, and go to state 1611 State 1582 - 781 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 838 make_dim_decl: "array" "variant" '<' $@102 type_declaration_no_options '>' $@103 '(' make_struct_dim . ')' + 854 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma . ')' - "end of expression" shift, and go to state 1162 - ')' shift, and go to state 1612 + ')' shift, and go to state 1612 State 1583 - 842 make_dim_decl: "array" '<' $@104 type_declaration_no_options '>' $@105 '(' expr_list optional_comma . ')' + 845 make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options '>' $@107 '(' expr_list optional_comma . ')' ')' shift, and go to state 1613 State 1584 - 855 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma . ')' + 780 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 823 make_tuple_call: "tuple" '<' $@96 type_declaration_no_options '>' $@97 '(' use_initializer make_struct_dim . ')' - ')' shift, and go to state 1614 + "end of expression" shift, and go to state 1160 + ')' shift, and go to state 1614 State 1585 - 846 make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options '>' $@107 '(' expr_list optional_comma . ')' + 811 make_struct_decl: "variant" '<' $@92 type_declaration_no_options '>' $@93 '(' make_struct_dim ')' . - ')' shift, and go to state 1615 + $default reduce using rule 811 (make_struct_decl) State 1586 - 781 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 824 make_tuple_call: "tuple" '<' $@96 type_declaration_no_options '>' $@97 '(' use_initializer make_struct_dim . ')' - - "end of expression" shift, and go to state 1162 - ')' shift, and go to state 1616 + 856 array_comprehension_where: "end of expression" "where" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1615 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1587 - 812 make_struct_decl: "variant" '<' $@92 type_declaration_no_options '>' $@93 '(' make_struct_dim ')' . + 861 array_comprehension: "[[" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' . ']' - $default reduce using rule 812 (make_struct_decl) + ']' shift, and go to state 1616 State 1588 - 857 array_comprehension_where: "end of expression" "where" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 + 777 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' ":=" . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 expr go to state 1617 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1589 - 862 array_comprehension: "[[" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' . ']' - - ']' shift, and go to state 1618 + 776 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' copy_or_move . expr + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1618 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1590 - 778 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' ":=" . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1619 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 862 array_comprehension: "[{" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where "end of code block" . ']' + + ']' shift, and go to state 1619 State 1591 - 777 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' copy_or_move . expr - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1620 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 864 array_comprehension: "{{" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" . "end of code block" + + "end of code block" shift, and go to state 1620 State 1592 - 863 array_comprehension: "[{" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where "end of code block" . ']' + 250 optional_expr_list_in_braces: '(' optional_expr_list ')' . - ']' shift, and go to state 1621 + $default reduce using rule 250 (optional_expr_list_in_braces) State 1593 - 865 array_comprehension: "{{" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" . "end of code block" + 863 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" . - "end of code block" shift, and go to state 1622 + $default reduce using rule 863 (array_comprehension) State 1594 - 250 optional_expr_list_in_braces: '(' optional_expr_list ')' . + 859 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' . - $default reduce using rule 250 (optional_expr_list_in_braces) + $default reduce using rule 859 (array_comprehension) State 1595 - 864 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" . + 860 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where . ']' - $default reduce using rule 864 (array_comprehension) + ']' shift, and go to state 1621 State 1596 - 860 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' . + 401 func_addr_expr: '@' '@' '<' $@24 optional_function_argument_list optional_function_type '>' $@25 func_addr_name . - $default reduce using rule 860 (array_comprehension) + $default reduce using rule 401 (func_addr_expr) State 1597 - 861 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where . ']' + 286 expression_yield_no_pipe: "yield" "<-" expr . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - ']' shift, and go to state 1623 + $default reduce using rule 286 (expression_yield_no_pipe) State 1598 - 402 func_addr_expr: '@' '@' '<' $@24 optional_function_argument_list optional_function_type '>' $@25 func_addr_name . - - $default reduce using rule 402 (func_addr_expr) + 300 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' ':' type_declaration_no_options copy_or_move_or_clone . expr "end of expression" + + "struct" shift, and go to state 429 + "class" shift, and go to state 430 + "true" shift, and go to state 435 + "false" shift, and go to state 436 + "new" shift, and go to state 437 + "typeinfo" shift, and go to state 438 + "type" shift, and go to state 439 + "array" shift, and go to state 440 + "null" shift, and go to state 442 + "table" shift, and go to state 445 + "deref" shift, and go to state 447 + "cast" shift, and go to state 450 + "upcast" shift, and go to state 451 + "addr" shift, and go to state 452 + "reinterpret" shift, and go to state 455 + "unsafe" shift, and go to state 562 + "fixed_array" shift, and go to state 459 + "default" shift, and go to state 460 + "bool" shift, and go to state 314 + "void" shift, and go to state 315 + "string" shift, and go to state 316 + "int" shift, and go to state 318 + "int2" shift, and go to state 319 + "int3" shift, and go to state 320 + "int4" shift, and go to state 321 + "uint" shift, and go to state 322 + "bitfield" shift, and go to state 461 + "uint2" shift, and go to state 324 + "uint3" shift, and go to state 325 + "uint4" shift, and go to state 326 + "float" shift, and go to state 327 + "float2" shift, and go to state 328 + "float3" shift, and go to state 329 + "float4" shift, and go to state 330 + "range" shift, and go to state 331 + "urange" shift, and go to state 332 + "range64" shift, and go to state 333 + "urange64" shift, and go to state 334 + "int64" shift, and go to state 336 + "uint64" shift, and go to state 337 + "double" shift, and go to state 338 + "int8" shift, and go to state 341 + "uint8" shift, and go to state 342 + "int16" shift, and go to state 343 + "uint16" shift, and go to state 344 + "tuple" shift, and go to state 462 + "variant" shift, and go to state 463 + "generator" shift, and go to state 464 + "++" shift, and go to state 466 + "--" shift, and go to state 467 + "$$" shift, and go to state 471 + "$i" shift, and go to state 472 + "$v" shift, and go to state 473 + "$b" shift, and go to state 474 + "$a" shift, and go to state 475 + "$c" shift, and go to state 476 + "..." shift, and go to state 477 + "[[" shift, and go to state 478 + "[{" shift, and go to state 479 + "{{" shift, and go to state 480 + "integer constant" shift, and go to state 481 + "long integer constant" shift, and go to state 482 + "unsigned integer constant" shift, and go to state 483 + "unsigned long integer constant" shift, and go to state 484 + "unsigned int8 constant" shift, and go to state 485 + "floating point constant" shift, and go to state 486 + "double constant" shift, and go to state 487 + "name" shift, and go to state 58 + "keyword" shift, and go to state 563 + "type function" shift, and go to state 489 + "start of the string" shift, and go to state 490 + "begin of code block" shift, and go to state 491 + '-' shift, and go to state 494 + '+' shift, and go to state 495 + '*' shift, and go to state 496 + '%' shift, and go to state 14 + '~' shift, and go to state 497 + '!' shift, and go to state 498 + '[' shift, and go to state 499 + '(' shift, and go to state 500 + '$' shift, and go to state 501 + '@' shift, and go to state 502 + + string_builder go to state 503 + expr_reader go to state 504 + expression_keyword go to state 564 + name_in_namespace go to state 520 + expr_new go to state 522 + expr_cast go to state 532 + expr_type_decl go to state 533 + expr_type_info go to state 534 + block_or_lambda go to state 535 + expr_full_block go to state 536 + expr_numeric_const go to state 537 + expr_named_call go to state 540 + expr_method_call go to state 541 + func_addr_expr go to state 542 + expr_field go to state 543 + expr_call go to state 544 + expr go to state 1622 + expr_mtag go to state 546 + basic_type_declaration go to state 547 + make_decl go to state 548 + make_struct_decl go to state 549 + make_tuple_call go to state 550 + make_dim_decl go to state 551 + make_table_decl go to state 552 + array_comprehension go to state 553 State 1599 - 287 expression_yield_no_pipe: "yield" "<-" expr . - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - - $default reduce using rule 287 (expression_yield_no_pipe) + 302 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' optional_ref copy_or_move_or_clone expr . "end of expression" + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + "end of expression" shift, and go to state 1623 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 State 1600 - 301 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' ':' type_declaration_no_options copy_or_move_or_clone . expr "end of expression" - - "struct" shift, and go to state 431 - "class" shift, and go to state 432 - "true" shift, and go to state 437 - "false" shift, and go to state 438 - "new" shift, and go to state 439 - "typeinfo" shift, and go to state 440 - "type" shift, and go to state 441 - "array" shift, and go to state 442 - "null" shift, and go to state 444 - "table" shift, and go to state 447 - "deref" shift, and go to state 449 - "cast" shift, and go to state 452 - "upcast" shift, and go to state 453 - "addr" shift, and go to state 454 - "reinterpret" shift, and go to state 457 - "unsafe" shift, and go to state 564 - "fixed_array" shift, and go to state 461 - "default" shift, and go to state 462 - "bool" shift, and go to state 316 - "void" shift, and go to state 317 - "string" shift, and go to state 318 - "int" shift, and go to state 320 - "int2" shift, and go to state 321 - "int3" shift, and go to state 322 - "int4" shift, and go to state 323 - "uint" shift, and go to state 324 - "bitfield" shift, and go to state 463 - "uint2" shift, and go to state 326 - "uint3" shift, and go to state 327 - "uint4" shift, and go to state 328 - "float" shift, and go to state 329 - "float2" shift, and go to state 330 - "float3" shift, and go to state 331 - "float4" shift, and go to state 332 - "range" shift, and go to state 333 - "urange" shift, and go to state 334 - "range64" shift, and go to state 335 - "urange64" shift, and go to state 336 - "int64" shift, and go to state 338 - "uint64" shift, and go to state 339 - "double" shift, and go to state 340 - "int8" shift, and go to state 343 - "uint8" shift, and go to state 344 - "int16" shift, and go to state 345 - "uint16" shift, and go to state 346 - "tuple" shift, and go to state 464 - "variant" shift, and go to state 465 - "generator" shift, and go to state 466 - "++" shift, and go to state 468 - "--" shift, and go to state 469 - "::" shift, and go to state 58 - "$$" shift, and go to state 473 - "$i" shift, and go to state 474 - "$v" shift, and go to state 475 - "$b" shift, and go to state 476 - "$a" shift, and go to state 477 - "$c" shift, and go to state 478 - "..." shift, and go to state 479 - "[[" shift, and go to state 480 - "[{" shift, and go to state 481 - "{{" shift, and go to state 482 - "integer constant" shift, and go to state 483 - "long integer constant" shift, and go to state 484 - "unsigned integer constant" shift, and go to state 485 - "unsigned long integer constant" shift, and go to state 486 - "unsigned int8 constant" shift, and go to state 487 - "floating point constant" shift, and go to state 488 - "double constant" shift, and go to state 489 - "name" shift, and go to state 59 - "keyword" shift, and go to state 565 - "type function" shift, and go to state 491 - "start of the string" shift, and go to state 492 - "begin of code block" shift, and go to state 493 - '-' shift, and go to state 496 - '+' shift, and go to state 497 - '*' shift, and go to state 498 - '%' shift, and go to state 14 - '~' shift, and go to state 499 - '!' shift, and go to state 500 - '[' shift, and go to state 501 - '(' shift, and go to state 502 - '$' shift, and go to state 503 - '@' shift, and go to state 504 - - string_builder go to state 505 - expr_reader go to state 506 - expression_keyword go to state 566 - name_in_namespace go to state 522 - expr_new go to state 524 - expr_cast go to state 534 - expr_type_decl go to state 535 - expr_type_info go to state 536 - block_or_lambda go to state 537 - expr_full_block go to state 538 - expr_numeric_const go to state 539 - expr_named_call go to state 542 - expr_method_call go to state 543 - func_addr_expr go to state 544 - expr_field go to state 545 - expr_call go to state 546 - expr go to state 1624 - expr_mtag go to state 548 - basic_type_declaration go to state 549 - make_decl go to state 550 - make_struct_decl go to state 551 - make_tuple_call go to state 552 - make_dim_decl go to state 553 - make_table_decl go to state 554 - array_comprehension go to state 555 + 301 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr . "end of expression" + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + "end of expression" shift, and go to state 1624 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 State 1601 - 303 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' optional_ref copy_or_move_or_clone expr . "end of expression" - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - "end of expression" shift, and go to state 1625 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 303 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" . + + $default reduce using rule 303 (tuple_expansion_variable_declaration) State 1602 - 302 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr . "end of expression" - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - "end of expression" shift, and go to state 1626 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 483 expr: expr '?' "as" "type" '<' $@32 type_declaration '>' $@33 . + + $default reduce using rule 483 (expr) State 1603 - 304 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" . + 532 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@35 function_declaration_header "end of expression" . - $default reduce using rule 304 (tuple_expansion_variable_declaration) + $default reduce using rule 532 (struct_variable_declaration_list) State 1604 - 484 expr: expr '?' "as" "type" '<' $@32 type_declaration '>' $@33 . + 534 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@36 function_declaration_header . expression_block - $default reduce using rule 484 (expr) + "begin of code block" shift, and go to state 284 + + expression_block go to state 1625 State 1605 - 533 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@35 function_declaration_header "end of expression" . + 805 make_struct_decl: "struct" '<' $@88 type_declaration_no_options '>' $@89 '(' use_initializer make_struct_dim ')' . - $default reduce using rule 533 (struct_variable_declaration_list) + $default reduce using rule 805 (make_struct_decl) State 1606 - 535 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@36 function_declaration_header . expression_block + 808 make_struct_decl: "class" '<' $@90 type_declaration_no_options '>' $@91 '(' use_initializer make_struct_dim ')' . - "begin of code block" shift, and go to state 286 - - expression_block go to state 1627 + $default reduce using rule 808 (make_struct_decl) State 1607 - 806 make_struct_decl: "struct" '<' $@88 type_declaration_no_options '>' $@89 '(' use_initializer make_struct_dim ')' . + 320 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' . - $default reduce using rule 806 (make_struct_decl) + $default reduce using rule 320 (expr_type_info) State 1608 - 809 make_struct_decl: "class" '<' $@90 type_declaration_no_options '>' $@91 '(' use_initializer make_struct_dim ')' . + 780 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 831 make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options '>' $@99 '(' use_initializer make_struct_dim . ')' - $default reduce using rule 809 (make_struct_decl) + "end of expression" shift, and go to state 1160 + ')' shift, and go to state 1626 State 1609 - 321 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' . + 780 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 834 make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options '>' $@101 '(' use_initializer make_struct_dim . ')' - $default reduce using rule 321 (expr_type_info) + "end of expression" shift, and go to state 1160 + ')' shift, and go to state 1627 State 1610 - 781 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 832 make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options '>' $@99 '(' use_initializer make_struct_dim . ')' + 837 make_dim_decl: "array" "variant" '<' $@102 type_declaration_no_options '>' $@103 '(' make_struct_dim ')' . - "end of expression" shift, and go to state 1162 - ')' shift, and go to state 1628 + $default reduce using rule 837 (make_dim_decl) State 1611 - 781 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 835 make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options '>' $@101 '(' use_initializer make_struct_dim . ')' + 841 make_dim_decl: "array" '<' $@104 type_declaration_no_options '>' $@105 '(' expr_list optional_comma ')' . - "end of expression" shift, and go to state 1162 - ')' shift, and go to state 1629 + $default reduce using rule 841 (make_dim_decl) State 1612 - 838 make_dim_decl: "array" "variant" '<' $@102 type_declaration_no_options '>' $@103 '(' make_struct_dim ')' . + 854 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' . - $default reduce using rule 838 (make_dim_decl) + $default reduce using rule 854 (make_table_decl) State 1613 - 842 make_dim_decl: "array" '<' $@104 type_declaration_no_options '>' $@105 '(' expr_list optional_comma ')' . + 845 make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options '>' $@107 '(' expr_list optional_comma ')' . - $default reduce using rule 842 (make_dim_decl) + $default reduce using rule 845 (make_dim_decl) State 1614 - 855 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' . + 823 make_tuple_call: "tuple" '<' $@96 type_declaration_no_options '>' $@97 '(' use_initializer make_struct_dim ')' . - $default reduce using rule 855 (make_table_decl) + $default reduce using rule 823 (make_tuple_call) State 1615 - 846 make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options '>' $@107 '(' expr_list optional_comma ')' . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 856 array_comprehension_where: "end of expression" "where" expr . + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 846 (make_dim_decl) + $default reduce using rule 856 (array_comprehension_where) State 1616 - 824 make_tuple_call: "tuple" '<' $@96 type_declaration_no_options '>' $@97 '(' use_initializer make_struct_dim ')' . + 861 array_comprehension: "[[" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' ']' . - $default reduce using rule 824 (make_tuple_call) + $default reduce using rule 861 (array_comprehension) State 1617 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 857 array_comprehension_where: "end of expression" "where" expr . - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - - $default reduce using rule 857 (array_comprehension_where) + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 777 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' ":=" expr . + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 + + $default reduce using rule 777 (make_struct_fields) State 1618 - 862 array_comprehension: "[[" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' ']' . + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + 776 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' copy_or_move expr . + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 - $default reduce using rule 862 (array_comprehension) + $default reduce using rule 776 (make_struct_fields) State 1619 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 778 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' ":=" expr . - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 - - $default reduce using rule 778 (make_struct_fields) + 862 array_comprehension: "[{" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where "end of code block" ']' . + + $default reduce using rule 862 (array_comprehension) State 1620 - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - 777 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' copy_or_move expr . - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 864 array_comprehension: "{{" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" "end of code block" . - $default reduce using rule 777 (make_struct_fields) + $default reduce using rule 864 (array_comprehension) State 1621 - 863 array_comprehension: "[{" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where "end of code block" ']' . + 860 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' . - $default reduce using rule 863 (array_comprehension) + $default reduce using rule 860 (array_comprehension) State 1622 - 865 array_comprehension: "{{" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" "end of code block" . - - $default reduce using rule 865 (array_comprehension) + 300 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' ':' type_declaration_no_options copy_or_move_or_clone expr . "end of expression" + 391 expr_method_call: expr . "->" "name" '(' ')' + 392 | expr . "->" "name" '(' expr_list ')' + 402 expr_field: expr . '.' "name" + 403 | expr . '.' '.' "name" + 404 | expr . '.' "name" '(' ')' + 405 | expr . '.' "name" '(' expr_list ')' + 408 | expr . '.' $@26 error $@27 + 428 expr: expr . "<<" expr + 429 | expr . ">>" expr + 430 | expr . "<<<" expr + 431 | expr . ">>>" expr + 432 | expr . '+' expr + 433 | expr . '-' expr + 434 | expr . '*' expr + 435 | expr . '/' expr + 436 | expr . '%' expr + 437 | expr . '<' expr + 438 | expr . '>' expr + 439 | expr . "==" expr + 440 | expr . "!=" expr + 441 | expr . "<=" expr + 442 | expr . ">=" expr + 443 | expr . '&' expr + 444 | expr . '|' expr + 445 | expr . '^' expr + 446 | expr . "&&" expr + 447 | expr . "||" expr + 448 | expr . "^^" expr + 449 | expr . ".." expr + 452 | expr . "++" + 453 | expr . "--" + 455 | expr . '[' expr ']' + 456 | expr . '.' '[' expr ']' + 457 | expr . "?[" expr ']' + 458 | expr . '.' "?[" expr ']' + 459 | expr . "?." "name" + 460 | expr . '.' "?." "name" + 468 | expr . "??" expr + 469 | expr . '?' expr ':' expr + 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 473 | expr . "is" basic_type_declaration + 474 | expr . "is" "name" + 475 | expr . "as" "name" + 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 479 | expr . "as" basic_type_declaration + 480 | expr . '?' "as" "name" + 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 484 | expr . '?' "as" basic_type_declaration + 492 | expr . "<|" expr + 493 | expr . "|>" expr + 494 | expr . "|>" basic_type_declaration + 506 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr . "?." "$f" '(' expr ')' + 508 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr . "as" "$f" '(' expr ')' + 511 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 728 + "as" shift, and go to state 729 + "<<" shift, and go to state 738 + ">>" shift, and go to state 739 + "++" shift, and go to state 740 + "--" shift, and go to state 741 + "<=" shift, and go to state 742 + ">=" shift, and go to state 745 + "==" shift, and go to state 746 + "!=" shift, and go to state 747 + "->" shift, and go to state 748 + "??" shift, and go to state 750 + "?." shift, and go to state 751 + "?[" shift, and go to state 752 + "<|" shift, and go to state 753 + "|>" shift, and go to state 754 + "<<<" shift, and go to state 756 + ">>>" shift, and go to state 757 + "&&" shift, and go to state 760 + "||" shift, and go to state 761 + "^^" shift, and go to state 762 + ".." shift, and go to state 766 + "end of expression" shift, and go to state 1628 + '?' shift, and go to state 768 + '|' shift, and go to state 769 + '^' shift, and go to state 770 + '&' shift, and go to state 771 + '<' shift, and go to state 772 + '>' shift, and go to state 773 + '-' shift, and go to state 774 + '+' shift, and go to state 775 + '*' shift, and go to state 776 + '/' shift, and go to state 777 + '%' shift, and go to state 778 + '.' shift, and go to state 779 + '[' shift, and go to state 780 State 1623 - 861 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' . + 302 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' optional_ref copy_or_move_or_clone expr "end of expression" . - $default reduce using rule 861 (array_comprehension) + $default reduce using rule 302 (tuple_expansion_variable_declaration) State 1624 - 301 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' ':' type_declaration_no_options copy_or_move_or_clone expr . "end of expression" - 392 expr_method_call: expr . "->" "name" '(' ')' - 393 | expr . "->" "name" '(' expr_list ')' - 403 expr_field: expr . '.' "name" - 404 | expr . '.' '.' "name" - 405 | expr . '.' "name" '(' ')' - 406 | expr . '.' "name" '(' expr_list ')' - 409 | expr . '.' $@26 error $@27 - 429 expr: expr . "<<" expr - 430 | expr . ">>" expr - 431 | expr . "<<<" expr - 432 | expr . ">>>" expr - 433 | expr . '+' expr - 434 | expr . '-' expr - 435 | expr . '*' expr - 436 | expr . '/' expr - 437 | expr . '%' expr - 438 | expr . '<' expr - 439 | expr . '>' expr - 440 | expr . "==" expr - 441 | expr . "!=" expr - 442 | expr . "<=" expr - 443 | expr . ">=" expr - 444 | expr . '&' expr - 445 | expr . '|' expr - 446 | expr . '^' expr - 447 | expr . "&&" expr - 448 | expr . "||" expr - 449 | expr . "^^" expr - 450 | expr . ".." expr - 453 | expr . "++" - 454 | expr . "--" - 456 | expr . '[' expr ']' - 457 | expr . '.' '[' expr ']' - 458 | expr . "?[" expr ']' - 459 | expr . '.' "?[" expr ']' - 460 | expr . "?." "name" - 461 | expr . '.' "?." "name" - 469 | expr . "??" expr - 470 | expr . '?' expr ':' expr - 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 474 | expr . "is" basic_type_declaration - 475 | expr . "is" "name" - 476 | expr . "as" "name" - 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 480 | expr . "as" basic_type_declaration - 481 | expr . '?' "as" "name" - 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 485 | expr . '?' "as" basic_type_declaration - 493 | expr . "<|" expr - 494 | expr . "|>" expr - 495 | expr . "|>" basic_type_declaration - 507 expr_mtag: expr . '.' "$f" '(' expr ')' - 508 | expr . "?." "$f" '(' expr ')' - 509 | expr . '.' '.' "$f" '(' expr ')' - 510 | expr . '.' "?." "$f" '(' expr ')' - 511 | expr . "as" "$f" '(' expr ')' - 512 | expr . '?' "as" "$f" '(' expr ')' - 513 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 730 - "as" shift, and go to state 731 - "<<" shift, and go to state 740 - ">>" shift, and go to state 741 - "++" shift, and go to state 742 - "--" shift, and go to state 743 - "<=" shift, and go to state 744 - ">=" shift, and go to state 747 - "==" shift, and go to state 748 - "!=" shift, and go to state 749 - "->" shift, and go to state 750 - "??" shift, and go to state 752 - "?." shift, and go to state 753 - "?[" shift, and go to state 754 - "<|" shift, and go to state 755 - "|>" shift, and go to state 756 - "<<<" shift, and go to state 758 - ">>>" shift, and go to state 759 - "&&" shift, and go to state 762 - "||" shift, and go to state 763 - "^^" shift, and go to state 764 - ".." shift, and go to state 768 - "end of expression" shift, and go to state 1630 - '?' shift, and go to state 770 - '|' shift, and go to state 771 - '^' shift, and go to state 772 - '&' shift, and go to state 773 - '<' shift, and go to state 774 - '>' shift, and go to state 775 - '-' shift, and go to state 776 - '+' shift, and go to state 777 - '*' shift, and go to state 778 - '/' shift, and go to state 779 - '%' shift, and go to state 780 - '.' shift, and go to state 781 - '[' shift, and go to state 782 + 301 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" . + + $default reduce using rule 301 (tuple_expansion_variable_declaration) State 1625 - 303 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' optional_ref copy_or_move_or_clone expr "end of expression" . + 534 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@36 function_declaration_header expression_block . - $default reduce using rule 303 (tuple_expansion_variable_declaration) + $default reduce using rule 534 (struct_variable_declaration_list) State 1626 - 302 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" . + 831 make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options '>' $@99 '(' use_initializer make_struct_dim ')' . - $default reduce using rule 302 (tuple_expansion_variable_declaration) + $default reduce using rule 831 (make_dim_decl) State 1627 - 535 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@36 function_declaration_header expression_block . + 834 make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options '>' $@101 '(' use_initializer make_struct_dim ')' . - $default reduce using rule 535 (struct_variable_declaration_list) + $default reduce using rule 834 (make_dim_decl) State 1628 - 832 make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options '>' $@99 '(' use_initializer make_struct_dim ')' . - - $default reduce using rule 832 (make_dim_decl) + 300 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" . - -State 1629 - - 835 make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options '>' $@101 '(' use_initializer make_struct_dim ')' . - - $default reduce using rule 835 (make_dim_decl) - - -State 1630 - - 301 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" . - - $default reduce using rule 301 (tuple_expansion_variable_declaration) + $default reduce using rule 300 (tuple_expansion_variable_declaration) diff --git a/src/parser/ds_parser.ypp b/src/parser/ds_parser.ypp index 5ea6c0219..2c462c9b8 100644 --- a/src/parser/ds_parser.ypp +++ b/src/parser/ds_parser.ypp @@ -1392,7 +1392,6 @@ name_in_namespace delete $name; $$ = $namespace; } - | COLCOL NAME[name] { *$name = "::" + *$name; $$ = $name; } ; expression_delete diff --git a/src/parser/parser_impl.cpp b/src/parser/parser_impl.cpp index bd19c7dac..e45b9e906 100644 --- a/src/parser/parser_impl.cpp +++ b/src/parser/parser_impl.cpp @@ -29,16 +29,21 @@ namespace das { } void appendDimExpr ( TypeDecl * typeDecl, Expression * dimExpr ) { - int32_t dI = TypeDecl::dimConst; - if ( dimExpr->rtti_isConstant() ) { // note: this shortcut is here so we don`t get extra infer pass on every array - auto cI = (ExprConst *) dimExpr; - auto bt = cI->baseType; - if ( bt==Type::tInt || bt==Type::tUInt ) { - dI = cast::to(cI->value); + if ( dimExpr ) { + int32_t dI = TypeDecl::dimConst; + if ( dimExpr->rtti_isConstant() ) { // note: this shortcut is here so we don`t get extra infer pass on every array + auto cI = (ExprConst *) dimExpr; + auto bt = cI->baseType; + if ( bt==Type::tInt || bt==Type::tUInt ) { + dI = cast::to(cI->value); + } } + typeDecl->dim.push_back(dI); + typeDecl->dimExpr.push_back(ExpressionPtr(dimExpr)); + } else { + typeDecl->dim.push_back(TypeDecl::dimAuto); + typeDecl->dimExpr.push_back(nullptr); } - typeDecl->dim.push_back(dI); - typeDecl->dimExpr.push_back(ExpressionPtr(dimExpr)); typeDecl->removeDim = false; } From 9affc4248f22992ba76c3e426c429cf7ea8df9cc Mon Sep 17 00:00:00 2001 From: Boris Batkin Date: Tue, 29 Oct 2024 16:56:03 -0700 Subject: [PATCH 2/5] ups --- src/parser/ds2_parser.output | 485 +++++++++++++++++++++++++++++++++++ src/parser/ds2_parser.ypp | 1 + src/parser/ds_parser.ypp | 1 + 3 files changed, 487 insertions(+) diff --git a/src/parser/ds2_parser.output b/src/parser/ds2_parser.output index bcafff7e1..f3aa7f185 100644 --- a/src/parser/ds2_parser.output +++ b/src/parser/ds2_parser.output @@ -8103,6 +8103,157 @@ State 457 '(' [reduce using rule 359 (expr)] $default reduce using rule 359 (expr) + shift/reduce conflict on token '(': + 359 expr: name_in_namespace . + 333 expr_named_call: name_in_namespace . '(' '[' make_struct_fields ']' ')' + First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' name_in_namespace . '(' '[' make_struct_fields ']' ')' expression_any "end of code block" $end + Shift derivation + $accept + `-> 0: program $end + `-> 6: program global_function_declaration + `-> 204: optional_annotation_list "def" function_declaration + `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block + `-> 211: "begin of code block" expressions "end of code block" + `-> 233: expressions expression_any + `-> 233: expressions expression_with_alias + `-> 74: "assume" "name" '=' expr + `-> 434: expr_named_call + `-> 333: name_in_namespace . '(' '[' make_struct_fields ']' ')' + Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' name_in_namespace . '(' expr_list optional_comma ')' "end of expression" "end of code block" $end + Reduce derivation + $accept + `-> 0: program $end + `-> 6: program global_function_declaration + `-> 204: optional_annotation_list "def" function_declaration + `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block + `-> 211: "begin of code block" expressions "end of code block" + `-> 233: expressions expression_any + `-> 233: expressions expression_any `-> 215: expr_assign "end of expression" + `-> 221: expression_with_alias `-> 314: expr + `-> 74: "assume" "name" '=' expr `-> 398: '(' expr_list optional_comma ')' + `-> 359: name_in_namespace . + + shift/reduce conflict on token '(': + 359 expr: name_in_namespace . + 334 expr_named_call: name_in_namespace . '(' expr_list ',' '[' make_struct_fields ']' ')' + First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' name_in_namespace . '(' expr_list ',' '[' make_struct_fields ']' ')' expression_any "end of code block" $end + Shift derivation + $accept + `-> 0: program $end + `-> 6: program global_function_declaration + `-> 204: optional_annotation_list "def" function_declaration + `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block + `-> 211: "begin of code block" expressions "end of code block" + `-> 233: expressions expression_any + `-> 233: expressions expression_with_alias + `-> 74: "assume" "name" '=' expr + `-> 434: expr_named_call + `-> 334: name_in_namespace . '(' expr_list ',' '[' make_struct_fields ']' ')' + Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' name_in_namespace . '(' expr_list optional_comma ')' "end of expression" "end of code block" $end + Reduce derivation + $accept + `-> 0: program $end + `-> 6: program global_function_declaration + `-> 204: optional_annotation_list "def" function_declaration + `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block + `-> 211: "begin of code block" expressions "end of code block" + `-> 233: expressions expression_any + `-> 233: expressions expression_any `-> 215: expr_assign "end of expression" + `-> 221: expression_with_alias `-> 314: expr + `-> 74: "assume" "name" '=' expr `-> 398: '(' expr_list optional_comma ')' + `-> 359: name_in_namespace . + + shift/reduce conflict on token '(': + 359 expr: name_in_namespace . + 353 expr_call: name_in_namespace . '(' ')' + First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' name_in_namespace . '(' ')' expression_any "end of code block" $end + Shift derivation + $accept + `-> 0: program $end + `-> 6: program global_function_declaration + `-> 204: optional_annotation_list "def" function_declaration + `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block + `-> 211: "begin of code block" expressions "end of code block" + `-> 233: expressions expression_any + `-> 233: expressions expression_with_alias + `-> 74: "assume" "name" '=' expr + `-> 406: expr_call + `-> 353: name_in_namespace . '(' ')' + Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' name_in_namespace . '(' expr_list optional_comma ')' "end of expression" "end of code block" $end + Reduce derivation + $accept + `-> 0: program $end + `-> 6: program global_function_declaration + `-> 204: optional_annotation_list "def" function_declaration + `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block + `-> 211: "begin of code block" expressions "end of code block" + `-> 233: expressions expression_any + `-> 233: expressions expression_any `-> 215: expr_assign "end of expression" + `-> 221: expression_with_alias `-> 314: expr + `-> 74: "assume" "name" '=' expr `-> 398: '(' expr_list optional_comma ')' + `-> 359: name_in_namespace . + + shift/reduce conflict on token '(': + 359 expr: name_in_namespace . + 354 expr_call: name_in_namespace . '(' make_struct_single ')' + First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' name_in_namespace . '(' make_struct_single ')' expression_any "end of code block" $end + Shift derivation + $accept + `-> 0: program $end + `-> 6: program global_function_declaration + `-> 204: optional_annotation_list "def" function_declaration + `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block + `-> 211: "begin of code block" expressions "end of code block" + `-> 233: expressions expression_any + `-> 233: expressions expression_with_alias + `-> 74: "assume" "name" '=' expr + `-> 406: expr_call + `-> 354: name_in_namespace . '(' make_struct_single ')' + Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' name_in_namespace . '(' expr_list optional_comma ')' "end of expression" "end of code block" $end + Reduce derivation + $accept + `-> 0: program $end + `-> 6: program global_function_declaration + `-> 204: optional_annotation_list "def" function_declaration + `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block + `-> 211: "begin of code block" expressions "end of code block" + `-> 233: expressions expression_any + `-> 233: expressions expression_any `-> 215: expr_assign "end of expression" + `-> 221: expression_with_alias `-> 314: expr + `-> 74: "assume" "name" '=' expr `-> 398: '(' expr_list optional_comma ')' + `-> 359: name_in_namespace . + + shift/reduce conflict on token '(': + 359 expr: name_in_namespace . + 355 expr_call: name_in_namespace . '(' expr_list ')' + First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' name_in_namespace . '(' expr_list ')' expression_any "end of code block" $end + Shift derivation + $accept + `-> 0: program $end + `-> 6: program global_function_declaration + `-> 204: optional_annotation_list "def" function_declaration + `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block + `-> 211: "begin of code block" expressions "end of code block" + `-> 233: expressions expression_any + `-> 233: expressions expression_with_alias + `-> 74: "assume" "name" '=' expr + `-> 406: expr_call + `-> 355: name_in_namespace . '(' expr_list ')' + Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' name_in_namespace . '(' expr_list optional_comma ')' "end of expression" "end of code block" $end + Reduce derivation + $accept + `-> 0: program $end + `-> 6: program global_function_declaration + `-> 204: optional_annotation_list "def" function_declaration + `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block + `-> 211: "begin of code block" expressions "end of code block" + `-> 233: expressions expression_any + `-> 233: expressions expression_any `-> 215: expr_assign "end of expression" + `-> 221: expression_with_alias `-> 314: expr + `-> 74: "assume" "name" '=' expr `-> 398: '(' expr_list optional_comma ')' + `-> 359: name_in_namespace . + + State 458 @@ -8143,6 +8294,32 @@ State 462 optional_annotation_list go to state 636 + shift/reduce conflict on token '[': + 112 optional_annotation_list: %empty . + 113 optional_annotation_list: . '[' annotation_list ']' + First example: program kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation "$i" '(' block_or_lambda . '[' annotation_list ']' optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block ')' ':' type_declaration_no_options "end of expression" $end + Shift derivation + $accept + `-> 0: program $end + `-> 5: program global_let + `-> 523: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration + `-> 510: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" + `-> 506: "$i" '(' expr_full_block ')' + `-> 304: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block + `-> 113: . '[' annotation_list ']' + Second example: program kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation "$i" '(' block_or_lambda . '[' '[' capture_list ']' ']' optional_function_argument_list optional_function_type block_or_simple_block ')' ':' type_declaration_no_options "end of expression" $end + Reduce derivation + $accept + `-> 0: program $end + `-> 5: program global_let + `-> 523: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration + `-> 510: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" + `-> 506: "$i" '(' expr ')' + `-> 435: expr_full_block + `-> 304: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block + `-> 112: %empty . `-> 303: '[' '[' capture_list ']' ']' + + State 463 @@ -8203,6 +8380,133 @@ State 469 block_or_lambda go to state 639 expr_full_block_assumed_piped go to state 640 + shift/reduce conflict on token '$': + 406 expr: expr_call . + 293 block_or_lambda: . '$' + First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' expr_call . '$' optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block expression_any "end of code block" $end + Shift derivation + $accept + `-> 0: program $end + `-> 6: program global_function_declaration + `-> 204: optional_annotation_list "def" function_declaration + `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block + `-> 211: "begin of code block" expressions "end of code block" + `-> 233: expressions expression_any + `-> 233: expressions expression_with_alias + `-> 74: "assume" "name" '=' expr + `-> 439: expr_call_pipe + `-> 213: expr_call expr_full_block_assumed_piped + `-> 305: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block + `-> 293: . '$' + Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' expr_call . '$' optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block "end of expression" "end of code block" $end + Reduce derivation + $accept + `-> 0: program $end + `-> 6: program global_function_declaration + `-> 204: optional_annotation_list "def" function_declaration + `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block + `-> 211: "begin of code block" expressions "end of code block" + `-> 233: expressions expression_any + `-> 233: expressions expression_any `-> 215: expr_assign "end of expression" + `-> 221: expression_with_alias `-> 314: expr + `-> 74: "assume" "name" '=' expr `-> 435: expr_full_block + `-> 406: expr_call . `-> 304: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block + `-> 293: '$' + + shift/reduce conflict on token '@': + 406 expr: expr_call . + 294 block_or_lambda: . '@' + First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' expr_call . '@' optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block expression_any "end of code block" $end + Shift derivation + $accept + `-> 0: program $end + `-> 6: program global_function_declaration + `-> 204: optional_annotation_list "def" function_declaration + `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block + `-> 211: "begin of code block" expressions "end of code block" + `-> 233: expressions expression_any + `-> 233: expressions expression_with_alias + `-> 74: "assume" "name" '=' expr + `-> 439: expr_call_pipe + `-> 213: expr_call expr_full_block_assumed_piped + `-> 305: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block + `-> 294: . '@' + Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' expr_call . '@' '@' "$c" '(' expr ')' "end of expression" "end of code block" $end + Reduce derivation + $accept + `-> 0: program $end + `-> 6: program global_function_declaration + `-> 204: optional_annotation_list "def" function_declaration + `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block + `-> 211: "begin of code block" expressions "end of code block" + `-> 233: expressions expression_any + `-> 233: expressions expression_any `-> 215: expr_assign "end of expression" + `-> 221: expression_with_alias `-> 314: expr + `-> 74: "assume" "name" '=' expr `-> 367: expr_mtag + `-> 406: expr_call . `-> 455: '@' '@' "$c" '(' expr ')' + + shift/reduce conflict on token '@': + 406 expr: expr_call . + 295 block_or_lambda: . '@' '@' + First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' expr_call . '@' '@' optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block expression_any "end of code block" $end + Shift derivation + $accept + `-> 0: program $end + `-> 6: program global_function_declaration + `-> 204: optional_annotation_list "def" function_declaration + `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block + `-> 211: "begin of code block" expressions "end of code block" + `-> 233: expressions expression_any + `-> 233: expressions expression_with_alias + `-> 74: "assume" "name" '=' expr + `-> 439: expr_call_pipe + `-> 213: expr_call expr_full_block_assumed_piped + `-> 305: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block + `-> 295: . '@' '@' + Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' expr_call . '@' '@' "$c" '(' expr ')' "end of expression" "end of code block" $end + Reduce derivation + $accept + `-> 0: program $end + `-> 6: program global_function_declaration + `-> 204: optional_annotation_list "def" function_declaration + `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block + `-> 211: "begin of code block" expressions "end of code block" + `-> 233: expressions expression_any + `-> 233: expressions expression_any `-> 215: expr_assign "end of expression" + `-> 221: expression_with_alias `-> 314: expr + `-> 74: "assume" "name" '=' expr `-> 367: expr_mtag + `-> 406: expr_call . `-> 455: '@' '@' "$c" '(' expr ')' + + shift/reduce conflict on token "begin of code block": + 406 expr: expr_call . + 306 expr_full_block_assumed_piped: . "begin of code block" expressions "end of code block" + First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "while" expr_call . "begin of code block" expressions "end of code block" expression_block "end of code block" $end + Shift derivation + $accept + `-> 0: program $end + `-> 6: program global_function_declaration + `-> 204: optional_annotation_list "def" function_declaration + `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block + `-> 211: "begin of code block" expressions "end of code block" + `-> 233: expressions expression_while_loop + `-> 72: "while" expr expression_block + `-> 439: expr_call_pipe + `-> 213: expr_call expr_full_block_assumed_piped + `-> 306: . "begin of code block" expressions "end of code block" + Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "while" expr_call . "begin of code block" expressions "end of code block" "end of code block" $end + Reduce derivation + $accept + `-> 0: program $end + `-> 6: program global_function_declaration + `-> 204: optional_annotation_list "def" function_declaration + `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block + `-> 211: "begin of code block" expressions "end of code block" + `-> 233: expressions expression_any + `-> 218: expression_while_loop + `-> 72: "while" expr expression_block + `-> 406: expr_call . `-> 211: "begin of code block" expressions "end of code block" + + State 470 @@ -10992,6 +11296,38 @@ State 588 '(' [reduce using rule 246 (expr_new)] $default reduce using rule 246 (expr_new) + shift/reduce conflict on token '(': + 246 expr_new: "new" structure_type_declaration . + 247 expr_new: "new" structure_type_declaration . '(' optional_expr_list ')' + First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' "new" structure_type_declaration . '(' optional_expr_list ')' expression_any "end of code block" $end + Shift derivation + $accept + `-> 0: program $end + `-> 6: program global_function_declaration + `-> 204: optional_annotation_list "def" function_declaration + `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block + `-> 211: "begin of code block" expressions "end of code block" + `-> 233: expressions expression_any + `-> 233: expressions expression_with_alias + `-> 74: "assume" "name" '=' expr + `-> 432: expr_new + `-> 247: "new" structure_type_declaration . '(' optional_expr_list ')' + Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' "new" structure_type_declaration . '(' expr_list optional_comma ')' "end of expression" "end of code block" $end + Reduce derivation + $accept + `-> 0: program $end + `-> 6: program global_function_declaration + `-> 204: optional_annotation_list "def" function_declaration + `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block + `-> 211: "begin of code block" expressions "end of code block" + `-> 233: expressions expression_any + `-> 233: expressions expression_any `-> 215: expr_assign "end of expression" + `-> 221: expression_with_alias `-> 314: expr + `-> 74: "assume" "name" '=' expr `-> 398: '(' expr_list optional_comma ')' + `-> 432: expr_new + `-> 246: "new" structure_type_declaration . + + State 589 @@ -13526,6 +13862,35 @@ State 639 optional_annotation_list go to state 837 + shift/reduce conflict on token '[': + 112 optional_annotation_list: %empty . + 113 optional_annotation_list: . '[' annotation_list ']' + First example: program kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation "$i" '(' block_or_lambda . '[' annotation_list ']' optional_capture_list optional_function_argument_list optional_function_type expression_block expr_full_block_assumed_piped ')' ':' type_declaration_no_options "end of expression" $end + Shift derivation + $accept + `-> 0: program $end + `-> 5: program global_let + `-> 523: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration + `-> 510: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" + `-> 506: "$i" '(' expr ')' + `-> 439: expr_call_pipe + `-> 213: expr_full_block_assumed_piped expr_full_block_assumed_piped + `-> 305: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block + `-> 113: . '[' annotation_list ']' + Second example: program kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation "$i" '(' expr_call block_or_lambda . '[' '[' capture_list ']' ']' optional_function_argument_list optional_function_type expression_block ')' ':' type_declaration_no_options "end of expression" $end + Reduce derivation + $accept + `-> 0: program $end + `-> 5: program global_let + `-> 523: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration + `-> 510: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" + `-> 506: "$i" '(' expr ')' + `-> 439: expr_call_pipe + `-> 213: expr_call expr_full_block_assumed_piped + `-> 305: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block + `-> 112: %empty . `-> 303: '[' '[' capture_list ']' ']' + + State 640 @@ -22997,6 +23362,63 @@ State 811 STRING_CHARACTER_ESC [reduce using rule 29 (string_builder_body)] $default reduce using rule 29 (string_builder_body) + shift/reduce conflict on token STRING_CHARACTER: + 29 string_builder_body: string_builder_body character_sequence . + 25 character_sequence: character_sequence . STRING_CHARACTER + First example: program kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation "$i" '(' "start of the string" string_builder_body character_sequence . STRING_CHARACTER "end of the string" ')' ':' type_declaration_no_options "end of expression" $end + Shift derivation + $accept + `-> 0: program $end + `-> 5: program global_let + `-> 523: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration + `-> 510: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" + `-> 506: "$i" '(' expr ')' + `-> 362: string_builder + `-> 31: "start of the string" string_builder_body "end of the string" + `-> 29: string_builder_body character_sequence + `-> 25: character_sequence . STRING_CHARACTER + Second example: program kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation "$i" '(' "start of the string" string_builder_body character_sequence . STRING_CHARACTER "end of the string" ')' ':' type_declaration_no_options "end of expression" $end + Reduce derivation + $accept + `-> 0: program $end + `-> 5: program global_let + `-> 523: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration + `-> 510: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" + `-> 506: "$i" '(' expr ')' + `-> 362: string_builder + `-> 31: "start of the string" string_builder_body "end of the string" + `-> 29: string_builder_body character_sequence + `-> 29: string_builder_body character_sequence . `-> 23: STRING_CHARACTER + + shift/reduce conflict on token STRING_CHARACTER_ESC: + 29 string_builder_body: string_builder_body character_sequence . + 26 character_sequence: character_sequence . STRING_CHARACTER_ESC + First example: program kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation "$i" '(' "start of the string" string_builder_body character_sequence . STRING_CHARACTER_ESC "end of the string" ')' ':' type_declaration_no_options "end of expression" $end + Shift derivation + $accept + `-> 0: program $end + `-> 5: program global_let + `-> 523: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration + `-> 510: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" + `-> 506: "$i" '(' expr ')' + `-> 362: string_builder + `-> 31: "start of the string" string_builder_body "end of the string" + `-> 29: string_builder_body character_sequence + `-> 26: character_sequence . STRING_CHARACTER_ESC + Second example: program kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation "$i" '(' "start of the string" string_builder_body character_sequence . STRING_CHARACTER_ESC "end of the string" ')' ':' type_declaration_no_options "end of expression" $end + Reduce derivation + $accept + `-> 0: program $end + `-> 5: program global_let + `-> 523: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration + `-> 510: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" + `-> 506: "$i" '(' expr ')' + `-> 362: string_builder + `-> 31: "start of the string" string_builder_body "end of the string" + `-> 29: string_builder_body character_sequence + `-> 29: string_builder_body character_sequence . `-> 24: STRING_CHARACTER_ESC + + State 812 @@ -26406,6 +26828,69 @@ State 881 '(' [reduce using rule 346 (expr_field)] $default reduce using rule 346 (expr_field) + shift/reduce conflict on token '(': + 346 expr_field: expr '.' "name" . + 348 expr_field: expr '.' "name" . '(' ')' + First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' expr '.' "name" . '(' ')' expression_any "end of code block" $end + Shift derivation + $accept + `-> 0: program $end + `-> 6: program global_function_declaration + `-> 204: optional_annotation_list "def" function_declaration + `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block + `-> 211: "begin of code block" expressions "end of code block" + `-> 233: expressions expression_any + `-> 233: expressions expression_with_alias + `-> 74: "assume" "name" '=' expr + `-> 366: expr_field + `-> 348: expr '.' "name" . '(' ')' + Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' expr '.' "name" . '(' expr_list optional_comma ')' "end of expression" "end of code block" $end + Reduce derivation + $accept + `-> 0: program $end + `-> 6: program global_function_declaration + `-> 204: optional_annotation_list "def" function_declaration + `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block + `-> 211: "begin of code block" expressions "end of code block" + `-> 233: expressions expression_any + `-> 233: expressions expression_any `-> 215: expr_assign "end of expression" + `-> 221: expression_with_alias `-> 314: expr + `-> 74: "assume" "name" '=' expr `-> 398: '(' expr_list optional_comma ')' + `-> 366: expr_field + `-> 346: expr '.' "name" . + + shift/reduce conflict on token '(': + 346 expr_field: expr '.' "name" . + 349 expr_field: expr '.' "name" . '(' expr_list ')' + First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' expr '.' "name" . '(' expr_list ')' expression_any "end of code block" $end + Shift derivation + $accept + `-> 0: program $end + `-> 6: program global_function_declaration + `-> 204: optional_annotation_list "def" function_declaration + `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block + `-> 211: "begin of code block" expressions "end of code block" + `-> 233: expressions expression_any + `-> 233: expressions expression_with_alias + `-> 74: "assume" "name" '=' expr + `-> 366: expr_field + `-> 349: expr '.' "name" . '(' expr_list ')' + Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' expr '.' "name" . '(' expr_list optional_comma ')' "end of expression" "end of code block" $end + Reduce derivation + $accept + `-> 0: program $end + `-> 6: program global_function_declaration + `-> 204: optional_annotation_list "def" function_declaration + `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block + `-> 211: "begin of code block" expressions "end of code block" + `-> 233: expressions expression_any + `-> 233: expressions expression_any `-> 215: expr_assign "end of expression" + `-> 221: expression_with_alias `-> 314: expr + `-> 74: "assume" "name" '=' expr `-> 398: '(' expr_list optional_comma ')' + `-> 366: expr_field + `-> 346: expr '.' "name" . + + State 882 diff --git a/src/parser/ds2_parser.ypp b/src/parser/ds2_parser.ypp index 2a1e169f4..c30c82928 100644 --- a/src/parser/ds2_parser.ypp +++ b/src/parser/ds2_parser.ypp @@ -1274,6 +1274,7 @@ name_in_namespace delete $name; $$ = $namespace; } + | COLCOL NAME[name] { *$name = "::" + *$name; $$ = $name; } ; expression_delete diff --git a/src/parser/ds_parser.ypp b/src/parser/ds_parser.ypp index 2c462c9b8..5ea6c0219 100644 --- a/src/parser/ds_parser.ypp +++ b/src/parser/ds_parser.ypp @@ -1392,6 +1392,7 @@ name_in_namespace delete $name; $$ = $namespace; } + | COLCOL NAME[name] { *$name = "::" + *$name; $$ = $name; } ; expression_delete From 6608cd0874250979421445c9b313aa6c2d43e6df Mon Sep 17 00:00:00 2001 From: Boris Batkin Date: Tue, 29 Oct 2024 17:05:19 -0700 Subject: [PATCH 3/5] more upsie --- src/parser/ds2_parser.cpp | 5263 +- src/parser/ds2_parser.output | 71250 ++++++++++++------------- src/parser/ds_parser.cpp | 7027 +-- src/parser/ds_parser.output | 92403 +++++++++++++++++---------------- 4 files changed, 88294 insertions(+), 87649 deletions(-) diff --git a/src/parser/ds2_parser.cpp b/src/parser/ds2_parser.cpp index 9672722d5..9f8fb8c8c 100644 --- a/src/parser/ds2_parser.cpp +++ b/src/parser/ds2_parser.cpp @@ -931,16 +931,16 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 2 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 10581 +#define YYLAST 10696 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 209 /* YYNNTS -- Number of nonterminals. */ #define YYNNTS 257 /* YYNRULES -- Number of rules. */ -#define YYNRULES 764 +#define YYNRULES 765 /* YYNSTATES -- Number of states. */ -#define YYNSTATES 1390 +#define YYNSTATES 1392 /* YYMAXUTOK -- Last valid token kind. */ #define YYMAXUTOK 436 @@ -1031,59 +1031,59 @@ static const yytype_int16 yyrline[] = 1166, 1166, 1183, 1187, 1198, 1211, 1212, 1213, 1214, 1215, 1216, 1217, 1218, 1219, 1220, 1221, 1222, 1223, 1224, 1225, 1226, 1227, 1228, 1232, 1237, 1243, 1249, 1250, 1254, 1258, - 1265, 1266, 1280, 1283, 1291, 1291, 1291, 1297, 1300, 1304, - 1308, 1315, 1321, 1325, 1329, 1332, 1335, 1343, 1346, 1354, - 1360, 1366, 1367, 1368, 1372, 1373, 1377, 1378, 1382, 1387, - 1395, 1401, 1413, 1416, 1422, 1422, 1422, 1425, 1425, 1425, - 1430, 1430, 1430, 1438, 1438, 1438, 1444, 1454, 1465, 1480, - 1483, 1489, 1490, 1497, 1508, 1509, 1510, 1514, 1515, 1516, - 1517, 1521, 1526, 1534, 1535, 1539, 1546, 1550, 1556, 1557, - 1558, 1559, 1560, 1561, 1562, 1566, 1567, 1568, 1569, 1570, + 1265, 1266, 1277, 1281, 1284, 1292, 1292, 1292, 1298, 1301, + 1305, 1309, 1316, 1322, 1326, 1330, 1333, 1336, 1344, 1347, + 1355, 1361, 1367, 1368, 1369, 1373, 1374, 1378, 1379, 1383, + 1388, 1396, 1402, 1414, 1417, 1423, 1423, 1423, 1426, 1426, + 1426, 1431, 1431, 1431, 1439, 1439, 1439, 1445, 1455, 1466, + 1481, 1484, 1490, 1491, 1498, 1509, 1510, 1511, 1515, 1516, + 1517, 1518, 1522, 1527, 1535, 1536, 1540, 1547, 1551, 1557, + 1558, 1559, 1560, 1561, 1562, 1563, 1567, 1568, 1569, 1570, 1571, 1572, 1573, 1574, 1575, 1576, 1577, 1578, 1579, 1580, - 1581, 1582, 1583, 1584, 1588, 1595, 1607, 1612, 1622, 1626, - 1633, 1636, 1636, 1636, 1641, 1641, 1641, 1654, 1658, 1662, - 1667, 1674, 1674, 1674, 1681, 1685, 1694, 1698, 1701, 1707, + 1581, 1582, 1583, 1584, 1585, 1589, 1596, 1608, 1613, 1623, + 1627, 1634, 1637, 1637, 1637, 1642, 1642, 1642, 1655, 1659, + 1663, 1668, 1675, 1675, 1675, 1682, 1686, 1695, 1699, 1702, 1708, 1709, 1710, 1711, 1712, 1713, 1714, 1715, 1716, 1717, 1718, 1719, 1720, 1721, 1722, 1723, 1724, 1725, 1726, 1727, 1728, 1729, 1730, 1731, 1732, 1733, 1734, 1735, 1736, 1737, - 1738, 1739, 1740, 1741, 1742, 1748, 1749, 1750, 1751, 1752, - 1765, 1766, 1767, 1768, 1769, 1770, 1771, 1772, 1773, 1774, - 1775, 1776, 1779, 1782, 1783, 1786, 1786, 1786, 1789, 1794, - 1798, 1802, 1802, 1802, 1807, 1810, 1814, 1814, 1814, 1819, - 1822, 1823, 1824, 1825, 1826, 1827, 1828, 1829, 1830, 1832, - 1836, 1840, 1841, 1842, 1843, 1844, 1845, 1846, 1850, 1854, - 1858, 1862, 1866, 1870, 1874, 1878, 1882, 1889, 1890, 1894, - 1895, 1896, 1900, 1901, 1905, 1906, 1907, 1911, 1912, 1916, - 1927, 1930, 1930, 1949, 1948, 1962, 1961, 1977, 1986, 1996, - 1997, 2001, 2004, 2013, 2014, 2018, 2021, 2024, 2040, 2049, - 2050, 2054, 2057, 2060, 2074, 2075, 2079, 2085, 2091, 2094, - 2098, 2107, 2108, 2109, 2113, 2114, 2118, 2125, 2130, 2139, - 2145, 2156, 2159, 2164, 2175, 2178, 2178, 2198, 2199, 2203, - 2204, 2205, 2209, 2212, 2212, 2230, 2234, 2241, 2244, 2257, - 2274, 2275, 2276, 2281, 2281, 2307, 2311, 2312, 2313, 2317, - 2327, 2330, 2336, 2341, 2336, 2356, 2357, 2361, 2362, 2366, - 2372, 2373, 2377, 2378, 2379, 2383, 2386, 2392, 2397, 2392, - 2411, 2418, 2423, 2432, 2438, 2449, 2450, 2451, 2452, 2453, + 1738, 1739, 1740, 1741, 1742, 1743, 1749, 1750, 1751, 1752, + 1753, 1766, 1767, 1768, 1769, 1770, 1771, 1772, 1773, 1774, + 1775, 1776, 1777, 1780, 1783, 1784, 1787, 1787, 1787, 1790, + 1795, 1799, 1803, 1803, 1803, 1808, 1811, 1815, 1815, 1815, + 1820, 1823, 1824, 1825, 1826, 1827, 1828, 1829, 1830, 1831, + 1833, 1837, 1841, 1842, 1843, 1844, 1845, 1846, 1847, 1851, + 1855, 1859, 1863, 1867, 1871, 1875, 1879, 1883, 1890, 1891, + 1895, 1896, 1897, 1901, 1902, 1906, 1907, 1908, 1912, 1913, + 1917, 1928, 1931, 1931, 1950, 1949, 1963, 1962, 1978, 1987, + 1997, 1998, 2002, 2005, 2014, 2015, 2019, 2022, 2025, 2041, + 2050, 2051, 2055, 2058, 2061, 2075, 2076, 2080, 2086, 2092, + 2095, 2099, 2108, 2109, 2110, 2114, 2115, 2119, 2126, 2131, + 2140, 2146, 2157, 2160, 2165, 2176, 2179, 2179, 2199, 2200, + 2204, 2205, 2206, 2210, 2213, 2213, 2231, 2235, 2242, 2245, + 2258, 2275, 2276, 2277, 2282, 2282, 2308, 2312, 2313, 2314, + 2318, 2328, 2331, 2337, 2342, 2337, 2357, 2358, 2362, 2363, + 2367, 2373, 2374, 2378, 2379, 2380, 2384, 2387, 2393, 2398, + 2393, 2412, 2419, 2424, 2433, 2439, 2450, 2451, 2452, 2453, 2454, 2455, 2456, 2457, 2458, 2459, 2460, 2461, 2462, 2463, 2464, 2465, 2466, 2467, 2468, 2469, 2470, 2471, 2472, 2473, - 2474, 2475, 2479, 2480, 2481, 2482, 2483, 2484, 2485, 2486, - 2490, 2501, 2505, 2512, 2524, 2531, 2540, 2545, 2555, 2568, - 2568, 2568, 2581, 2585, 2592, 2596, 2600, 2604, 2611, 2614, - 2632, 2633, 2634, 2635, 2636, 2636, 2636, 2640, 2645, 2652, - 2652, 2659, 2663, 2667, 2672, 2677, 2682, 2687, 2691, 2695, - 2700, 2704, 2708, 2713, 2713, 2713, 2719, 2726, 2726, 2726, - 2731, 2731, 2731, 2737, 2737, 2737, 2742, 2746, 2746, 2746, - 2751, 2751, 2751, 2760, 2764, 2764, 2764, 2769, 2769, 2769, - 2778, 2782, 2782, 2782, 2787, 2787, 2787, 2796, 2796, 2796, - 2802, 2802, 2802, 2811, 2814, 2825, 2841, 2846, 2851, 2841, - 2876, 2881, 2887, 2876, 2912, 2917, 2922, 2912, 2952, 2953, - 2954, 2955, 2956, 2960, 2967, 2974, 2980, 2986, 2993, 3000, - 3006, 3016, 3024, 3029, 3036, 3037, 3041, 3041, 3041, 3049, - 3049, 3049, 3056, 3056, 3056, 3063, 3063, 3063, 3074, 3080, - 3086, 3092, 3092, 3092, 3102, 3110, 3110, 3110, 3120, 3120, - 3120, 3130, 3130, 3130, 3140, 3148, 3148, 3148, 3156, 3163, - 3163, 3163, 3173, 3176, 3182, 3190, 3198, 3206, 3219, 3220, - 3224, 3225, 3230, 3233, 3236 + 2474, 2475, 2476, 2480, 2481, 2482, 2483, 2484, 2485, 2486, + 2487, 2491, 2502, 2506, 2513, 2525, 2532, 2541, 2546, 2556, + 2569, 2569, 2569, 2582, 2586, 2593, 2597, 2601, 2605, 2612, + 2615, 2633, 2634, 2635, 2636, 2637, 2637, 2637, 2641, 2646, + 2653, 2653, 2660, 2664, 2668, 2673, 2678, 2683, 2688, 2692, + 2696, 2701, 2705, 2709, 2714, 2714, 2714, 2720, 2727, 2727, + 2727, 2732, 2732, 2732, 2738, 2738, 2738, 2743, 2747, 2747, + 2747, 2752, 2752, 2752, 2761, 2765, 2765, 2765, 2770, 2770, + 2770, 2779, 2783, 2783, 2783, 2788, 2788, 2788, 2797, 2797, + 2797, 2803, 2803, 2803, 2812, 2815, 2826, 2842, 2847, 2852, + 2842, 2877, 2882, 2888, 2877, 2913, 2918, 2923, 2913, 2953, + 2954, 2955, 2956, 2957, 2961, 2968, 2975, 2981, 2987, 2994, + 3001, 3007, 3017, 3025, 3030, 3037, 3038, 3042, 3042, 3042, + 3050, 3050, 3050, 3057, 3057, 3057, 3064, 3064, 3064, 3075, + 3081, 3087, 3093, 3093, 3093, 3103, 3111, 3111, 3111, 3121, + 3121, 3121, 3131, 3131, 3131, 3141, 3149, 3149, 3149, 3157, + 3164, 3164, 3164, 3174, 3177, 3183, 3191, 3199, 3207, 3220, + 3221, 3225, 3226, 3231, 3234, 3237 }; #endif @@ -1221,12 +1221,12 @@ yysymbol_name (yysymbol_kind_t yysymbol) } #endif -#define YYPACT_NINF (-1229) +#define YYPACT_NINF (-1245) #define yypact_value_is_default(Yyn) \ ((Yyn) == YYPACT_NINF) -#define YYTABLE_NINF (-675) +#define YYTABLE_NINF (-676) #define yytable_value_is_error(Yyn) \ ((Yyn) == YYTABLE_NINF) @@ -1235,145 +1235,146 @@ yysymbol_name (yysymbol_kind_t yysymbol) STATE-NUM. */ static const yytype_int16 yypact[] = { - -1229, 27, -1229, -1229, 25, -97, 151, 159, -1229, -42, - 159, 159, 159, -1229, -96, 80, -1229, -1229, -98, -1229, - -1229, -1229, 331, -1229, 20, -1229, -1229, -1229, -1229, -1229, - -1229, -1229, -1229, -1229, -1229, 13, -1229, 50, 65, 92, - -1229, -1229, 151, 19, -1229, -1229, -1229, 156, 271, -1229, - -1229, 20, 181, 244, 313, 348, -1229, -1229, -1229, 80, - 80, 80, 283, -1229, 465, -38, -1229, -1229, -1229, -1229, - 214, 466, 467, -1229, 481, 21, 25, 336, -97, 291, - 344, -1229, 347, 363, -1229, -1229, -1229, 493, -1229, -1229, - -1229, 378, 383, -1229, -1229, -51, 25, 80, 80, 80, - 80, -1229, -1229, -1229, -1229, -1229, -1229, -1229, 407, -1229, - -1229, -1229, -1229, -1229, 406, -1229, -1229, -1229, -1229, -1229, - 267, 76, -1229, -1229, -1229, -1229, 516, -1229, -1229, 408, - -1229, -1229, -1229, 431, 440, 450, -1229, -1229, 458, -1229, - 122, -1229, 254, 489, 465, 10420, -1229, 448, 525, -1229, - 426, -1229, -1229, 443, -1229, -1229, -1229, -1229, -1229, -1229, - -1229, 160, -1229, 1527, -1229, -1229, -1229, -1229, -1229, 9239, - -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, - -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, - -1229, -1229, -1229, -1229, -1229, 607, 610, -1229, 441, 477, - 335, 478, -1229, 487, -1229, 484, 25, 449, 265, -1229, - -1229, -1229, 76, -1229, 471, 473, 474, 456, 479, 483, - -1229, -1229, -1229, 457, -1229, -1229, -1229, -1229, -1229, 485, - -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, - -1229, 486, -1229, -1229, -1229, 488, 490, -1229, -1229, -1229, - -1229, 495, 498, 464, -96, -1229, -1229, -1229, -1229, -1229, - -1229, 48, 492, 501, -1229, -1229, 510, 522, -1229, -1229, - -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, - -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, 523, 482, - -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, - -1229, -1229, 666, -1229, -1229, -1229, -1229, -1229, -1229, -1229, - -1229, -1229, -1229, -1229, -1229, 527, 496, -1229, -1229, -112, - 511, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, - -1229, -1229, -1229, 513, 526, -1229, 426, -1229, 25, 499, - 654, 361, -1229, -1229, -1229, -1229, -1229, 6112, -1229, -1229, - 536, -1229, 208, 234, 235, -1229, -1229, 6112, -143, -1229, - -1229, -1229, 35, -1229, -1229, -6, -1229, 3200, -1229, 500, - 1258, -1229, 521, 1355, 53, -1229, -1229, -1229, -1229, 543, - 575, -1229, 503, -1229, 117, -1229, -37, 1527, -1229, 1818, - 547, -96, -1229, -1229, -1229, 265, -1229, 6112, 548, 551, - 1527, -1229, -26, 1527, 1527, 1527, 529, 531, -1229, -1229, - 44, 512, 533, 15, -1229, 165, 514, 535, 537, 518, - 539, 198, 540, -1229, 219, 544, 545, 6112, 6112, 530, - 532, 534, 538, 541, 542, -1229, -1229, -1229, -1229, -1229, - -1229, -1229, -1229, -1229, 3396, 6112, 6112, 6112, 6112, 6112, - 2812, 6112, -1229, 520, -1229, -1229, -1229, 546, -1229, -1229, - -1229, -1229, 549, -1229, -1229, -1229, -1229, -1229, -1229, -66, - 1535, -1229, 550, -1229, -1229, -1229, -1229, -1229, -1229, 1527, - 1527, 515, 570, 1527, 441, 1527, 441, 1527, 441, 6455, - 574, 6449, -1229, 6112, -1229, -1229, -1229, -1229, 553, -1229, - -1229, 8682, 3590, -1229, -1229, 578, -1229, 1, -1229, 569, - 492, 571, 563, -1229, 573, 577, -1229, -1229, 6112, -1229, - -1229, 276, -111, -1229, 492, -1229, 6112, -1229, -1229, 554, - 3784, -1229, 477, 3978, 6112, 587, -1229, 581, 595, 4172, - 477, 4366, 717, -1229, 586, 588, 556, 752, -1229, -1229, - -1229, -1229, -1229, -1229, -1229, 596, 597, 599, 600, 603, - -1229, -1229, 701, -1229, 604, 9123, 594, -1229, 606, -1229, - 14, -1229, 6485, -1229, 735, 135, -1229, -1229, -1229, 6112, - 322, 325, 605, 163, -1229, -1229, -1229, 576, 582, -1229, - -96, -1229, 608, 609, 615, -1229, 6112, 1527, 6112, 6112, - -1229, -1229, 6112, -1229, -1229, 6112, -1229, -1229, 6112, -1229, - 1527, 173, 173, 6112, 6112, 6112, 6112, 6112, 6112, 396, - 276, 9270, -1229, 623, 173, 173, -58, 173, 173, 276, - 793, 634, 9895, 634, 170, 3006, 618, -1229, 616, 549, - -1229, 1397, 10301, 6112, 6112, -1229, -1229, 6112, 6112, 6112, - 6112, 656, 6112, 337, 6112, 6112, 6112, 6112, 6112, 6112, - 6112, 6112, 6112, 4560, 6112, 6112, 6112, 6112, 6112, 6112, - 6112, 6112, 6112, 6112, -30, 6112, -1229, 4754, 384, 386, - -1229, -1229, 216, 389, 511, 397, 511, 400, 511, -1229, - 258, -1229, 270, -1229, 1527, 619, 648, -1229, -1229, -1229, - 8715, -1229, 657, 1527, -1229, -1229, 1527, -1229, -1229, 6577, - 622, 786, -1229, -53, -1229, 9369, 276, 6112, 9895, 826, - 6112, 9895, 9369, 664, -1229, 663, 690, 9895, -1229, 6112, - 9895, 676, -1229, -1229, 6112, 642, -1229, -1229, -1229, -1229, - -1229, -1229, -69, -1229, 6112, 6112, 6112, 6112, 6112, 6112, - 6112, 6112, 6112, 6112, 6112, 6112, 6112, 6112, 6112, 6112, - 6112, 6112, 6112, 547, -1229, -1229, 840, 426, -1229, 688, - -1229, 6112, 9458, -1229, -1229, -1229, 1527, 1527, 1527, 1527, - 781, 6112, 4948, 1527, -1229, -1229, -1229, 1527, 634, 279, - 623, 6676, 1527, 1527, 6707, 1527, 1527, 634, 1527, 1527, - 634, 1527, 668, 6806, 6898, 6931, 7023, 7122, 7153, -1229, - 6112, 461, 10, 6112, 6112, 681, 12, 276, 6112, 651, - 650, 652, 653, 236, -1229, -1229, 655, 142, 2616, -1229, - 171, 683, 667, 669, 441, 2022, -1229, 618, 689, 670, - -1229, -1229, 691, 672, -1229, -1229, 463, 463, 1077, 1077, - 10237, 10237, 673, 31, 674, -1229, 8807, -65, -65, 550, - 463, 463, 930, 330, 680, 9927, 10389, 9494, 10041, 10123, - 10155, 1077, 1077, 705, 705, 31, 31, 31, 369, 6112, - 675, 679, 373, 6112, 884, 8899, -1229, 176, -1229, -1229, - 725, -1229, -1229, 702, -1229, 704, -1229, 706, 6455, -1229, - 574, -1229, 301, 492, -1229, 6112, -1229, -1229, 492, 492, - -1229, 6112, 729, -1229, 731, -1229, 1527, -1229, 6112, -1229, - 23, 9895, 477, 9895, -1229, 6112, -1229, -1229, 9895, -1229, - 7252, 6112, 736, -1229, -1229, 9895, 9895, 9895, 9895, 9895, - 9895, 9895, 9895, 9895, 9895, 9895, 9895, 9895, 9895, 9895, - 9895, 9895, 9895, 9895, -1229, 726, 494, 832, 728, -1229, - 9583, -1229, -1229, -1229, -1229, 492, 715, 716, 403, -1229, - -43, 699, 744, 7344, 413, 1527, 1527, 1527, 723, 707, - 1527, 709, 710, -1229, 724, 732, -1229, 737, 738, 711, - 740, 741, 722, 743, 618, -1229, -1229, -1229, -1229, -1229, - 727, 9665, 6112, 9895, -1229, -1229, 6112, 34, 9895, -1229, - -1229, 6112, 6112, 1527, 441, 6112, 6112, 6112, 130, 6306, - -1229, 374, -1229, -5, 511, -1229, 441, -1229, 6112, -1229, - 6112, 5142, 6112, -1229, 730, 739, -1229, -1229, 6112, 742, - -1229, 8932, 6112, 5336, 745, -1229, 9024, -1229, -1229, -1229, - -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, - -1229, -1229, -1229, -1229, 1527, 748, 7377, -1229, 868, -25, - 9895, 6112, -1229, 9895, 2226, 477, 7469, -1229, 178, -1229, - -1229, -1229, 358, -1229, 9, -1229, -1229, -1229, -1229, -1229, - 126, -1229, 749, -1229, 306, -1229, -1229, 747, 756, 757, - -1229, -1229, 759, 6112, -1229, -1229, -1229, -1229, -1229, -1229, - -1229, -1229, -1229, -1229, 751, 5530, -1229, 376, 380, 6112, - 7568, 7599, 760, 511, 7698, 9895, 9895, 753, 2616, 755, - 127, 750, 768, 769, 772, -1229, 155, 54, 511, 1527, - 7790, 1527, 7823, -1229, 180, 7915, -1229, 6112, 10009, 6112, - -1229, 8014, -1229, 201, 6112, -1229, -1229, -1229, -1229, -1229, - 492, 6112, -1229, 773, 6112, 202, -1229, 264, 909, 787, - 105, 889, 9, -1229, -1229, 494, 761, 763, -1229, -1229, - 792, 6112, -1229, -1229, -1229, -1229, 764, 765, 623, 6112, - 6112, 6112, 766, 781, 767, 770, 5724, -1229, 203, 6112, - 6112, 387, -1229, -1229, -1229, 771, 147, -1229, 207, 6112, - 6112, 6112, -1229, -1229, -1229, -1229, -5, 754, 5918, -1229, - -1229, 477, 775, -1229, 414, -1229, -1229, -1229, 1527, 8045, - 8144, -1229, -1229, 8236, 774, -1229, 9895, 477, 477, -1229, - -1229, 777, -1229, 2420, 801, -1229, 1527, -26, -1229, -1229, - 889, 276, 781, 781, 779, 8269, 778, 780, 782, 6112, - 6112, 783, 1077, 1077, 1077, 6112, -1229, 781, 375, -1229, - 8361, -1229, 802, 9697, 6112, 315, -1229, 6112, 6112, 784, - 8460, 9895, 9895, -1229, -1229, 6112, 9927, -1229, -1229, -1229, - 416, -1229, -1229, -1229, -1229, -1229, -1229, 6112, -1229, -1229, - -1229, -1229, -1229, 9895, -1229, -26, 6112, 10420, -1229, -1229, - 375, 375, 6112, -1229, 781, 781, 375, 634, 623, -1229, - 634, 375, 683, -20, -1229, 923, 806, 788, 9697, -1229, - 315, 9895, 9895, -1229, 152, 10009, -1229, -1229, -1229, 8491, - 6112, 9779, 812, 10420, -8, -2, 8590, 375, 375, 91, - 785, 789, 790, 109, 375, -1229, 6112, -1229, -1229, 794, - -1229, 6112, 6112, -1229, 477, 9813, -1229, -1229, 477, -1229, - -1229, -1229, 110, 124, -1229, -1229, -1229, -1229, -1229, 683, - 9895, -1229, 9895, 9895, 264, -1229, -1229, -1229, -1229, -1229 + -1245, 29, -1245, -1245, 52, -85, 68, 445, -1245, -112, + 445, 445, 445, -1245, 213, 282, -1245, -1245, -32, -1245, + -1245, -1245, 318, -1245, 96, -1245, -1245, -1245, -1245, -1245, + -1245, -1245, -1245, -1245, -1245, -3, -1245, 79, 91, 135, + -1245, -1245, 68, 21, -1245, -1245, -1245, 172, 189, -1245, + -1245, 96, 211, 212, 233, 238, 313, -1245, -1245, -1245, + 282, 282, 282, 274, -1245, 519, -123, -1245, -1245, -1245, + -1245, 490, 497, 498, -1245, 499, 12, 52, 345, -85, + 325, 410, -1245, 418, 423, -1245, -1245, -1245, 501, -1245, + -1245, -1245, -1245, 428, 387, -1245, -1245, -6, 52, 282, + 282, 282, 282, -1245, -1245, -1245, -1245, -1245, -1245, -1245, + 453, -1245, -1245, -1245, -1245, -1245, 393, -1245, -1245, -1245, + -1245, -1245, 413, 78, -1245, -1245, -1245, -1245, 559, -1245, + -1245, 443, -1245, -1245, -1245, 454, 457, 458, -1245, -1245, + 466, -1245, -50, -1245, 162, 492, 519, 10535, -1245, 452, + 530, -1245, 436, -1245, -1245, 507, -1245, -1245, -1245, -1245, + -1245, -1245, -1245, 59, -1245, 6457, -1245, -1245, -1245, -1245, + -1245, 9333, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, + -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, + -1245, -1245, -1245, -1245, -1245, -1245, -1245, 610, 617, -1245, + 451, 504, 430, 506, -1245, 515, -1245, 508, 52, 460, + -82, -1245, -1245, -1245, 78, -1245, 493, 495, 496, 477, + 500, 503, -1245, -1245, -1245, 479, -1245, -1245, -1245, -1245, + -1245, 505, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, + -1245, -1245, -1245, 509, -1245, -1245, -1245, 512, 516, -1245, + -1245, -1245, -1245, 517, 518, 482, 213, -1245, -1245, -1245, + -1245, -1245, -1245, 146, 487, 527, -1245, -1245, 529, 531, + -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, + -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, + 537, 510, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, + -1245, -1245, -1245, -1245, 678, -1245, -1245, -1245, -1245, -1245, + -1245, -1245, -1245, -1245, -1245, -1245, -1245, 542, 511, -1245, + -1245, -98, 524, -1245, -1245, -1245, -1245, -1245, -1245, -1245, + -1245, -1245, -1245, -1245, -1245, 525, 539, -1245, 436, -1245, + 52, 513, 664, 365, -1245, -1245, -1245, -1245, -1245, 6114, + -1245, -1245, 548, -1245, 200, 307, 309, -1245, -1245, 6114, + 180, -1245, -1245, -1245, 8, -1245, -1245, 7, -1245, 3202, + -1245, 520, 1260, -1245, 533, 1399, 116, -1245, -1245, -1245, + -1245, 554, 585, -1245, 522, -1245, 77, -1245, -26, 6457, + -1245, 1820, 557, 213, -1245, -1245, -1245, -82, -1245, 6114, + 558, 560, 6457, -1245, -2, 6457, 6457, 6457, 536, 543, + -1245, -1245, 51, 526, 544, 20, -1245, 203, 532, 545, + 547, 534, 549, 237, 550, -1245, 240, 551, 553, 6114, + 6114, 538, 540, 541, 546, 552, 555, -1245, -1245, -1245, + -1245, -1245, -1245, -1245, -1245, -1245, 3398, 6114, 6114, 6114, + 6114, 6114, 2814, 6114, -1245, 561, -1245, -1245, -1245, 556, + -1245, -1245, -1245, -1245, 521, -1245, -1245, -1245, -1245, -1245, + -1245, 150, 1537, -1245, 566, -1245, -1245, -1245, -1245, -1245, + -1245, 6457, 6457, 535, 580, 6457, 451, 6457, 451, 6457, + 451, 6549, 582, 6543, -1245, 6114, -1245, -1245, -1245, -1245, + 571, -1245, -1245, 8776, 3592, -1245, -1245, 586, -1245, -12, + -1245, 575, 487, 578, 569, -1245, 581, 583, -1245, -1245, + 6114, -1245, -1245, -70, -118, -1245, 487, -1245, 6114, -1245, + -1245, 572, 3786, -1245, 504, 3980, 6114, 590, -1245, 584, + 600, 4174, 504, 4368, 722, -1245, 606, 608, 588, 752, + -1245, -1245, -1245, -1245, -1245, -1245, -1245, 611, 614, 623, + 624, 625, -1245, -1245, 723, -1245, 626, 9217, 620, -1245, + 622, -1245, 25, -1245, 6579, -1245, 758, 165, -1245, -1245, + -1245, 6114, -39, 321, 616, 67, -1245, -1245, -1245, 598, + 599, -1245, 213, -1245, 621, 627, 628, -1245, 6114, 6457, + 6114, 6114, -1245, -1245, 6114, -1245, -1245, 6114, -1245, -1245, + 6114, -1245, 6457, 53, 53, 6114, 6114, 6114, 6114, 6114, + 6114, 484, -70, 9364, -1245, 629, 53, 53, -15, 53, + 53, -70, 792, 630, 9989, 630, 155, 3008, 607, -1245, + 601, 521, -1245, 1106, 1536, 6114, 6114, -1245, -1245, 6114, + 6114, 6114, 6114, 649, 6114, 245, 6114, 6114, 6114, 6114, + 6114, 6114, 6114, 6114, 6114, 4562, 6114, 6114, 6114, 6114, + 6114, 6114, 6114, 6114, 6114, 6114, -17, 6114, -1245, 4756, + 389, 401, -1245, -1245, -35, 402, 524, 414, 524, 415, + 524, -1245, 295, -1245, 303, -1245, 6457, 609, 636, -1245, + -1245, -1245, 8809, -1245, 650, 6457, -1245, -1245, 6457, -1245, + -1245, 6671, 615, 780, -1245, 98, -1245, 9463, -70, 6114, + 9989, 810, 6114, 9989, 9463, 646, -1245, 645, 672, 9989, + -1245, 6114, 9989, 658, -1245, -1245, 6114, 631, -1245, -1245, + -1245, -1245, -1245, -1245, -89, -1245, 6114, 6114, 6114, 6114, + 6114, 6114, 6114, 6114, 6114, 6114, 6114, 6114, 6114, 6114, + 6114, 6114, 6114, 6114, 6114, 557, -1245, -1245, 821, 436, + -1245, 668, -1245, 6114, 9552, -1245, -1245, -1245, 6457, 6457, + 6457, 6457, 761, 6114, 4950, 6457, -1245, -1245, -1245, 6457, + 630, 308, 629, 6770, 6457, 6457, 6801, 6457, 6457, 630, + 6457, 6457, 630, 6457, 647, 6900, 6992, 7025, 7117, 7216, + 7247, -1245, 6114, 441, 15, 6114, 6114, 661, 26, -70, + 6114, 633, 632, 635, 637, 310, -1245, -1245, 639, 157, + 2618, -1245, 185, 656, 640, 642, 451, 2024, -1245, 607, + 662, 643, -1245, -1245, 665, 644, -1245, -1245, 181, 181, + 742, 742, 331, 331, 648, 32, 651, -1245, 8901, -61, + -61, 566, 181, 181, 10217, 933, 10135, 10021, 10504, 9588, + 10249, 10331, 10363, 742, 742, 464, 464, 32, 32, 32, + 301, 6114, 657, 659, 348, 6114, 833, 8993, -1245, 204, + -1245, -1245, 690, -1245, -1245, 677, -1245, 679, -1245, 680, + 6549, -1245, 582, -1245, 320, 487, -1245, 6114, -1245, -1245, + 487, 487, -1245, 6114, 692, -1245, 706, -1245, 6457, -1245, + 6114, -1245, 31, 9989, 504, 9989, -1245, 6114, -1245, -1245, + 9989, -1245, 7346, 6114, 712, -1245, -1245, 9989, 9989, 9989, + 9989, 9989, 9989, 9989, 9989, 9989, 9989, 9989, 9989, 9989, + 9989, 9989, 9989, 9989, 9989, 9989, -1245, 707, 502, 812, + 705, -1245, 9677, -1245, -1245, -1245, -1245, 487, 695, 696, + 416, -1245, -62, 682, 724, 7438, 421, 6457, 6457, 6457, + 698, 683, 6457, 685, 686, -1245, 699, 708, -1245, 709, + 710, 687, 711, 713, 694, 715, 607, -1245, -1245, -1245, + -1245, -1245, 693, 9759, 6114, 9989, -1245, -1245, 6114, 40, + 9989, -1245, -1245, 6114, 6114, 6457, 451, 6114, 6114, 6114, + 44, 6308, -1245, 379, -1245, -11, 524, -1245, 451, -1245, + 6114, -1245, 6114, 5144, 6114, -1245, 717, 702, -1245, -1245, + 6114, 703, -1245, 9026, 6114, 5338, 704, -1245, 9118, -1245, + -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, + -1245, -1245, -1245, -1245, -1245, -1245, 6457, 714, 7471, -1245, + 860, -81, 9989, 6114, -1245, 9989, 2228, 504, 7563, -1245, + 209, -1245, -1245, -1245, 390, -1245, -7, -1245, -1245, -1245, + -1245, -1245, 126, -1245, 718, -1245, 339, -1245, -1245, 725, + 726, 727, -1245, -1245, 729, 6114, -1245, -1245, -1245, -1245, + -1245, -1245, -1245, -1245, -1245, -1245, 720, 5532, -1245, 395, + 396, 6114, 7662, 7693, 730, 524, 7792, 9989, 9989, 728, + 2618, 721, 149, 748, 755, 756, 766, -1245, 92, -41, + 524, 6457, 7884, 6457, 7917, -1245, 218, 8009, -1245, 6114, + 10103, 6114, -1245, 8108, -1245, 228, 6114, -1245, -1245, -1245, + -1245, -1245, 487, 6114, -1245, 773, 6114, 260, -1245, 514, + 892, 774, 358, 890, -7, -1245, -1245, 502, 732, 741, + -1245, -1245, 785, 6114, -1245, -1245, -1245, -1245, 743, 744, + 629, 6114, 6114, 6114, 745, 761, 746, 747, 5726, -1245, + 265, 6114, 6114, 398, -1245, -1245, -1245, 767, 160, -1245, + 186, 6114, 6114, 6114, -1245, -1245, -1245, -1245, -11, 753, + 5920, -1245, -1245, 504, 770, -1245, 422, -1245, -1245, -1245, + 6457, 8139, 8238, -1245, -1245, 8330, 754, -1245, 9989, 504, + 504, -1245, -1245, 757, -1245, 2422, 786, -1245, 6457, -2, + -1245, -1245, 890, -70, 761, 761, 775, 8363, 762, 763, + 765, 6114, 6114, 768, 742, 742, 742, 6114, -1245, 761, + 382, -1245, 8455, -1245, 787, 9791, 6114, 335, -1245, 6114, + 6114, 769, 8554, 9989, 9989, -1245, -1245, 6114, 10021, -1245, + -1245, -1245, 431, -1245, -1245, -1245, -1245, -1245, -1245, 6114, + -1245, -1245, -1245, -1245, -1245, 9989, -1245, -2, 6114, 10535, + -1245, -1245, 382, 382, 6114, -1245, 761, 761, 382, 630, + 629, -1245, 630, 382, 656, -8, -1245, 910, 800, 772, + 9791, -1245, 335, 9989, 9989, -1245, 168, 10103, -1245, -1245, + -1245, 8585, 6114, 9873, 801, 10535, 47, 55, 8684, 382, + 382, 108, 771, 776, 778, 112, 382, -1245, 6114, -1245, + -1245, 781, -1245, 6114, 6114, -1245, 504, 9907, -1245, -1245, + 504, -1245, -1245, -1245, 113, 132, -1245, -1245, -1245, -1245, + -1245, 656, 9989, -1245, 9989, 9989, 514, -1245, -1245, -1245, + -1245, -1245 }; /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM. @@ -1381,207 +1382,208 @@ static const yytype_int16 yypact[] = means the default is an error. */ static const yytype_int16 yydefact[] = { - 2, 113, 1, 264, 0, 0, 0, 530, 265, 0, - 530, 530, 530, 16, 0, 0, 15, 3, 0, 10, - 9, 8, 0, 7, 517, 6, 11, 5, 4, 13, + 2, 113, 1, 265, 0, 0, 0, 531, 266, 0, + 531, 531, 531, 16, 0, 0, 15, 3, 0, 10, + 9, 8, 0, 7, 518, 6, 11, 5, 4, 13, 12, 14, 85, 86, 84, 93, 95, 37, 50, 47, - 48, 39, 0, 45, 38, 532, 531, 0, 0, 22, - 21, 517, 0, 0, 0, 240, 35, 100, 101, 0, - 0, 0, 102, 104, 111, 0, 99, 17, 551, 550, - 206, 536, 552, 518, 519, 0, 0, 0, 0, 40, - 0, 46, 0, 0, 43, 533, 535, 18, 694, 686, - 690, 0, 0, 110, 105, 0, 0, 0, 0, 0, - 0, 114, 208, 207, 210, 205, 538, 537, 0, 554, - 553, 557, 521, 520, 523, 91, 92, 89, 90, 88, - 0, 0, 87, 96, 51, 49, 45, 42, 41, 0, - 19, 20, 23, 0, 0, 0, 241, 33, 36, 109, - 0, 106, 107, 108, 112, 0, 539, 540, 547, 514, - 457, 24, 25, 0, 80, 81, 78, 79, 77, 76, - 82, 0, 44, 0, 695, 687, 691, 34, 103, 0, - 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, 0, 0, 120, 115, 0, - 0, 0, 548, 0, 558, 515, 0, 458, 0, 26, - 27, 28, 0, 94, 0, 0, 0, 0, 0, 0, - 565, 585, 566, 601, 567, 571, 572, 573, 574, 591, - 578, 579, 580, 581, 582, 583, 584, 586, 587, 588, - 589, 656, 570, 577, 590, 663, 670, 568, 575, 569, - 576, 0, 0, 0, 0, 600, 620, 623, 621, 622, - 683, 618, 534, 606, 485, 491, 174, 175, 172, 123, - 124, 126, 125, 127, 128, 129, 130, 156, 157, 154, - 155, 147, 158, 159, 148, 145, 146, 173, 167, 0, - 171, 160, 161, 162, 163, 134, 135, 136, 131, 132, - 133, 144, 0, 150, 151, 149, 142, 143, 138, 137, - 139, 140, 141, 122, 121, 166, 0, 152, 153, 457, - 118, 233, 211, 592, 595, 598, 599, 593, 596, 594, - 597, 541, 542, 545, 555, 522, 457, 97, 0, 0, - 506, 504, 524, 83, 624, 647, 650, 0, 653, 643, - 0, 609, 657, 664, 671, 677, 680, 0, 0, 633, - 638, 632, 0, 646, 635, 0, 642, 0, 637, 619, - 0, 607, 760, 688, 692, 176, 177, 170, 165, 178, - 168, 164, 0, 116, 263, 479, 0, 0, 209, 0, - 527, 0, 549, 470, 559, 0, 98, 0, 0, 0, - 0, 505, 0, 0, 0, 0, 0, 0, 365, 366, - 0, 0, 0, 0, 359, 0, 0, 0, 0, 0, - 0, 0, 0, 591, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 446, 308, 310, 309, 311, - 312, 313, 314, 29, 0, 0, 0, 0, 0, 0, - 0, 0, 294, 295, 363, 362, 440, 360, 433, 432, - 431, 430, 113, 436, 361, 435, 434, 406, 367, 407, - 0, 368, 0, 364, 698, 702, 699, 700, 701, 0, - 0, 0, 0, 0, 115, 0, 115, 0, 115, 0, - 0, 0, 629, 236, 640, 641, 634, 636, 0, 639, - 615, 0, 0, 685, 684, 761, 696, 240, 486, 0, - 481, 0, 0, 492, 0, 0, 179, 169, 0, 261, - 262, 0, 457, 117, 119, 235, 0, 60, 61, 0, - 254, 252, 0, 0, 0, 0, 253, 0, 0, 0, - 0, 0, 212, 215, 0, 0, 0, 0, 228, 223, - 220, 219, 221, 222, 234, 0, 67, 68, 65, 66, - 227, 229, 267, 218, 0, 64, 525, 528, 760, 546, - 471, 516, 0, 508, 509, 0, 502, 503, 501, 0, - 0, 0, 0, 612, 716, 719, 244, 0, 247, 251, - 0, 283, 0, 0, 0, 745, 0, 0, 0, 0, - 274, 277, 0, 280, 749, 0, 725, 731, 0, 722, - 0, 395, 396, 0, 0, 0, 0, 0, 0, 0, - 0, 729, 752, 760, 372, 371, 408, 370, 369, 0, - 0, 760, 289, 760, 296, 0, 303, 233, 295, 113, - 214, 0, 0, 0, 0, 397, 398, 0, 0, 0, + 48, 39, 0, 45, 38, 533, 532, 0, 0, 22, + 21, 518, 0, 0, 0, 0, 240, 35, 100, 101, + 0, 0, 0, 102, 104, 111, 0, 99, 17, 552, + 551, 206, 537, 553, 519, 520, 0, 0, 0, 0, + 40, 0, 46, 0, 0, 43, 534, 536, 18, 695, + 687, 691, 242, 0, 0, 110, 105, 0, 0, 0, + 0, 0, 0, 114, 208, 207, 210, 205, 539, 538, + 0, 555, 554, 558, 522, 521, 524, 91, 92, 89, + 90, 88, 0, 0, 87, 96, 51, 49, 45, 42, + 41, 0, 19, 20, 23, 0, 0, 0, 241, 33, + 36, 109, 0, 106, 107, 108, 112, 0, 540, 541, + 548, 515, 458, 24, 25, 0, 80, 81, 78, 79, + 77, 76, 82, 0, 44, 0, 696, 688, 692, 34, + 103, 0, 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, 0, 0, 120, + 115, 0, 0, 0, 549, 0, 559, 516, 0, 459, + 0, 26, 27, 28, 0, 94, 0, 0, 0, 0, + 0, 0, 566, 586, 567, 602, 568, 572, 573, 574, + 575, 592, 579, 580, 581, 582, 583, 584, 585, 587, + 588, 589, 590, 657, 571, 578, 591, 664, 671, 569, + 576, 570, 577, 0, 0, 0, 0, 601, 621, 624, + 622, 623, 684, 619, 535, 607, 486, 492, 174, 175, + 172, 123, 124, 126, 125, 127, 128, 129, 130, 156, + 157, 154, 155, 147, 158, 159, 148, 145, 146, 173, + 167, 0, 171, 160, 161, 162, 163, 134, 135, 136, + 131, 132, 133, 144, 0, 150, 151, 149, 142, 143, + 138, 137, 139, 140, 141, 122, 121, 166, 0, 152, + 153, 458, 118, 233, 211, 593, 596, 599, 600, 594, + 597, 595, 598, 542, 543, 546, 556, 523, 458, 97, + 0, 0, 507, 505, 525, 83, 625, 648, 651, 0, + 654, 644, 0, 610, 658, 665, 672, 678, 681, 0, + 0, 634, 639, 633, 0, 647, 636, 0, 643, 0, + 638, 620, 0, 608, 761, 689, 693, 176, 177, 170, + 165, 178, 168, 164, 0, 116, 264, 480, 0, 0, + 209, 0, 528, 0, 550, 471, 560, 0, 98, 0, + 0, 0, 0, 506, 0, 0, 0, 0, 0, 0, + 366, 367, 0, 0, 0, 0, 360, 0, 0, 0, + 0, 0, 0, 0, 0, 592, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 447, 309, 311, + 310, 312, 313, 314, 315, 29, 0, 0, 0, 0, + 0, 0, 0, 0, 295, 296, 364, 363, 441, 361, + 434, 433, 432, 431, 113, 437, 362, 436, 435, 407, + 368, 408, 0, 369, 0, 365, 699, 703, 700, 701, + 702, 0, 0, 0, 0, 0, 115, 0, 115, 0, + 115, 0, 0, 0, 630, 236, 641, 642, 635, 637, + 0, 640, 616, 0, 0, 686, 685, 762, 697, 240, + 487, 0, 482, 0, 0, 493, 0, 0, 179, 169, + 0, 262, 263, 0, 458, 117, 119, 235, 0, 60, + 61, 0, 255, 253, 0, 0, 0, 0, 254, 0, + 0, 0, 0, 0, 212, 215, 0, 0, 0, 0, + 228, 223, 220, 219, 221, 222, 234, 0, 67, 68, + 65, 66, 227, 229, 268, 218, 0, 64, 526, 529, + 761, 547, 472, 517, 0, 509, 510, 0, 503, 504, + 502, 0, 0, 0, 0, 613, 717, 720, 245, 0, + 248, 252, 0, 284, 0, 0, 0, 746, 0, 0, + 0, 0, 275, 278, 0, 281, 750, 0, 726, 732, + 0, 723, 0, 396, 397, 0, 0, 0, 0, 0, + 0, 0, 0, 730, 753, 761, 373, 372, 409, 371, + 370, 0, 0, 761, 290, 761, 297, 0, 304, 233, + 296, 113, 214, 0, 0, 0, 0, 398, 399, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 351, 0, 627, 0, 0, 0, - 602, 604, 0, 0, 118, 0, 118, 0, 118, 483, - 0, 489, 0, 603, 0, 0, 237, 631, 614, 617, - 0, 608, 0, 0, 487, 689, 0, 493, 693, 0, - 0, 560, 477, 496, 480, 0, 0, 0, 255, 0, - 0, 242, 0, 0, 232, 0, 0, 54, 72, 0, - 257, 0, 230, 231, 0, 0, 217, 224, 225, 226, - 259, 266, 0, 216, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 352, 0, 628, 0, + 0, 0, 603, 605, 0, 0, 118, 0, 118, 0, + 118, 484, 0, 490, 0, 604, 0, 0, 237, 632, + 615, 618, 0, 609, 0, 0, 488, 690, 0, 494, + 694, 0, 0, 561, 478, 497, 481, 0, 0, 0, + 256, 0, 0, 243, 0, 0, 232, 0, 0, 54, + 72, 0, 258, 0, 230, 231, 0, 0, 217, 224, + 225, 226, 260, 267, 0, 216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 761, 543, 556, 0, 457, 507, 0, - 511, 0, 0, 625, 648, 651, 0, 0, 0, 0, - 714, 236, 0, 0, 735, 738, 741, 0, 760, 0, - 760, 0, 0, 0, 0, 0, 0, 760, 0, 0, - 760, 0, 0, 0, 0, 0, 0, 0, 0, 32, - 0, 30, 0, 0, 761, 0, 0, 0, 761, 0, - 0, 0, 0, 341, 338, 340, 0, 240, 0, 354, - 0, 711, 0, 0, 115, 0, 296, 303, 0, 0, - 419, 418, 0, 0, 420, 424, 373, 374, 386, 387, - 384, 385, 0, 413, 0, 404, 0, 437, 438, 439, - 375, 376, 391, 392, 393, 394, 0, 0, 389, 390, - 388, 382, 383, 378, 377, 379, 380, 381, 0, 0, - 0, 347, 0, 0, 0, 0, 357, 0, 654, 644, - 0, 610, 658, 0, 665, 0, 672, 0, 0, 678, - 0, 681, 0, 238, 628, 0, 616, 697, 482, 488, - 478, 0, 0, 495, 0, 494, 0, 497, 0, 73, - 0, 256, 0, 243, 74, 0, 52, 53, 258, 233, - 0, 0, 0, 273, 272, 325, 326, 328, 327, 329, - 319, 320, 321, 330, 331, 317, 318, 332, 333, 322, - 323, 324, 316, 526, 529, 0, 464, 467, 0, 510, - 0, 513, 626, 649, 652, 613, 0, 0, 0, 715, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 409, 0, 0, 410, 0, 0, 0, - 0, 0, 0, 0, 303, 441, 442, 443, 444, 445, - 0, 0, 0, 728, 753, 754, 0, 0, 290, 734, - 399, 0, 0, 0, 115, 0, 0, 0, 0, 0, - 356, 0, 355, 0, 118, 307, 115, 415, 0, 421, - 0, 0, 0, 402, 0, 0, 425, 429, 0, 0, - 405, 0, 0, 0, 0, 348, 0, 352, 400, 358, - 655, 645, 605, 611, 659, 661, 666, 668, 673, 675, - 484, 679, 490, 682, 0, 0, 0, 562, 563, 498, - 500, 0, 260, 75, 0, 0, 0, 268, 0, 544, - 465, 466, 467, 468, 459, 472, 512, 717, 720, 245, - 0, 249, 0, 248, 0, 286, 284, 0, 0, 0, - 746, 744, 0, 0, 755, 275, 278, 281, 750, 748, - 726, 732, 730, 723, 0, 0, 31, 0, 0, 0, - 0, 0, 0, 118, 0, 704, 703, 0, 0, 0, - 0, 0, 0, 0, 0, 301, 0, 0, 118, 0, - 0, 0, 0, 336, 0, 0, 426, 0, 414, 0, - 403, 0, 349, 0, 0, 401, 353, 662, 669, 676, - 239, 236, 561, 0, 0, 0, 213, 57, 62, 0, - 504, 462, 459, 460, 461, 464, 0, 0, 246, 250, - 0, 0, 285, 736, 739, 742, 0, 0, 760, 0, - 0, 0, 0, 714, 0, 0, 0, 447, 0, 0, - 0, 0, 339, 456, 342, 0, 0, 334, 0, 0, - 0, 0, 299, 300, 298, 297, 0, 0, 0, 291, - 305, 0, 0, 455, 0, 453, 337, 450, 0, 0, - 0, 449, 350, 0, 0, 564, 499, 0, 0, 55, - 56, 0, 69, 0, 0, 269, 0, 0, 463, 473, - 462, 0, 714, 714, 0, 0, 0, 0, 0, 0, - 0, 0, 276, 279, 282, 0, 727, 714, 0, 411, - 0, 448, 758, 758, 0, 0, 345, 0, 0, 0, - 0, 706, 705, 302, 304, 0, 292, 306, 416, 422, - 0, 454, 452, 451, 630, 71, 58, 0, 63, 67, - 68, 65, 66, 64, 70, 0, 0, 0, 475, 469, - 0, 0, 0, 287, 714, 714, 0, 760, 760, 756, - 760, 0, 712, 0, 412, 0, 0, 0, 758, 343, - 0, 708, 707, 335, 0, 293, 417, 423, 427, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 724, 0, 764, 762, 0, - 346, 0, 0, 428, 0, 0, 271, 474, 0, 718, - 721, 288, 0, 0, 743, 747, 757, 751, 733, 713, - 759, 763, 710, 709, 57, 270, 476, 737, 740, 59 + 0, 0, 0, 0, 0, 762, 544, 557, 0, 458, + 508, 0, 512, 0, 0, 626, 649, 652, 0, 0, + 0, 0, 715, 236, 0, 0, 736, 739, 742, 0, + 761, 0, 761, 0, 0, 0, 0, 0, 0, 761, + 0, 0, 761, 0, 0, 0, 0, 0, 0, 0, + 0, 32, 0, 30, 0, 0, 762, 0, 0, 0, + 762, 0, 0, 0, 0, 342, 339, 341, 0, 240, + 0, 355, 0, 712, 0, 0, 115, 0, 297, 304, + 0, 0, 420, 419, 0, 0, 421, 425, 374, 375, + 387, 388, 385, 386, 0, 414, 0, 405, 0, 438, + 439, 440, 376, 377, 392, 393, 394, 395, 0, 0, + 390, 391, 389, 383, 384, 379, 378, 380, 381, 382, + 0, 0, 0, 348, 0, 0, 0, 0, 358, 0, + 655, 645, 0, 611, 659, 0, 666, 0, 673, 0, + 0, 679, 0, 682, 0, 238, 629, 0, 617, 698, + 483, 489, 479, 0, 0, 496, 0, 495, 0, 498, + 0, 73, 0, 257, 0, 244, 74, 0, 52, 53, + 259, 233, 0, 0, 0, 274, 273, 326, 327, 329, + 328, 330, 320, 321, 322, 331, 332, 318, 319, 333, + 334, 323, 324, 325, 317, 527, 530, 0, 465, 468, + 0, 511, 0, 514, 627, 650, 653, 614, 0, 0, + 0, 716, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 410, 0, 0, 411, 0, + 0, 0, 0, 0, 0, 0, 304, 442, 443, 444, + 445, 446, 0, 0, 0, 729, 754, 755, 0, 0, + 291, 735, 400, 0, 0, 0, 115, 0, 0, 0, + 0, 0, 357, 0, 356, 0, 118, 308, 115, 416, + 0, 422, 0, 0, 0, 403, 0, 0, 426, 430, + 0, 0, 406, 0, 0, 0, 0, 349, 0, 353, + 401, 359, 656, 646, 606, 612, 660, 662, 667, 669, + 674, 676, 485, 680, 491, 683, 0, 0, 0, 563, + 564, 499, 501, 0, 261, 75, 0, 0, 0, 269, + 0, 545, 466, 467, 468, 469, 460, 473, 513, 718, + 721, 246, 0, 250, 0, 249, 0, 287, 285, 0, + 0, 0, 747, 745, 0, 0, 756, 276, 279, 282, + 751, 749, 727, 733, 731, 724, 0, 0, 31, 0, + 0, 0, 0, 0, 0, 118, 0, 705, 704, 0, + 0, 0, 0, 0, 0, 0, 0, 302, 0, 0, + 118, 0, 0, 0, 0, 337, 0, 0, 427, 0, + 415, 0, 404, 0, 350, 0, 0, 402, 354, 663, + 670, 677, 239, 236, 562, 0, 0, 0, 213, 57, + 62, 0, 505, 463, 460, 461, 462, 465, 0, 0, + 247, 251, 0, 0, 286, 737, 740, 743, 0, 0, + 761, 0, 0, 0, 0, 715, 0, 0, 0, 448, + 0, 0, 0, 0, 340, 457, 343, 0, 0, 335, + 0, 0, 0, 0, 300, 301, 299, 298, 0, 0, + 0, 292, 306, 0, 0, 456, 0, 454, 338, 451, + 0, 0, 0, 450, 351, 0, 0, 565, 500, 0, + 0, 55, 56, 0, 69, 0, 0, 270, 0, 0, + 464, 474, 463, 0, 715, 715, 0, 0, 0, 0, + 0, 0, 0, 0, 277, 280, 283, 0, 728, 715, + 0, 412, 0, 449, 759, 759, 0, 0, 346, 0, + 0, 0, 0, 707, 706, 303, 305, 0, 293, 307, + 417, 423, 0, 455, 453, 452, 631, 71, 58, 0, + 63, 67, 68, 65, 66, 64, 70, 0, 0, 0, + 476, 470, 0, 0, 0, 288, 715, 715, 0, 761, + 761, 757, 761, 0, 713, 0, 413, 0, 0, 0, + 759, 344, 0, 709, 708, 336, 0, 294, 418, 424, + 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 725, 0, 765, + 763, 0, 347, 0, 0, 429, 0, 0, 272, 475, + 0, 719, 722, 289, 0, 0, 744, 748, 758, 752, + 734, 714, 760, 764, 711, 710, 57, 271, 477, 738, + 741, 59 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -1229, -1229, -1229, -1229, -1229, -1229, 366, 902, -1229, -1229, - -1229, 986, -1229, -1229, -1229, 950, -1229, 870, -1229, -1229, - 920, -1229, -1229, -1229, -384, -1229, -1229, -241, -1229, -1229, - -1229, -1229, -1229, -1229, 791, -1229, -1229, -56, 908, -1229, - -1229, -1229, 194, -1229, -438, -474, -656, -1229, -1229, -1229, - -1228, -1229, -1229, -527, -1229, -1229, -619, -764, -1229, -14, - -1229, -1229, -1229, -1229, -1229, -238, -237, -236, -235, -1229, - -1229, -1229, 1009, -1229, -1229, -1229, -1229, -1229, -1229, -1229, - -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -429, -1229, - 557, -205, -1229, -787, -1229, -1229, -1229, -1229, -1229, -1229, - -1220, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, - 491, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -144, -160, - -234, -162, -68, -1229, -1229, -1229, -1229, -1229, 497, -1229, - -480, -1229, -1229, -483, -1229, -1229, -705, -233, -572, -155, - -1229, -379, -1229, -1229, 969, -1229, -1229, -1229, 259, -1229, - 601, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, - -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -595, - -161, -1229, 613, -1229, -1229, -1229, -1229, -1229, -1229, -1229, - -1229, -299, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, - -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, - -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, - -140, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, - -1229, -1229, -1229, 617, -624, 58, -949, -944, -1229, -1229, - -1229, -1229, -1229, -1229, -1229, -1229, -1229, -799, -1229, -1229, - -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, -1229, - -1229, -1229, -594, -1229, -1195, -529, -1229 + -1245, -1245, -1245, -1245, -1245, -1245, 350, 901, -1245, -1245, + -1245, 977, -1245, -1245, -1245, 937, -1245, 857, -1245, -1245, + 907, -1245, -1245, -1245, -399, -1245, -1245, -257, -1245, -1245, + -1245, -1245, -1245, -1245, 777, -1245, -1245, -54, 891, -1245, + -1245, -1245, 316, -1245, -434, -477, -671, -1245, -1245, -1245, + -1244, -1245, -1245, -528, -1245, -1245, -617, -763, -1245, -14, + -1245, -1245, -1245, -1245, -1245, -255, -253, -252, -251, -1245, + -1245, -1245, 995, -1245, -1245, -1245, -1245, -1245, -1245, -1245, + -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -348, -1245, + 528, -221, -1245, -803, -1245, -1245, -1245, -1245, -1245, -1245, + -1216, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, + 491, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -144, -176, + -250, -177, -80, -1245, -1245, -1245, -1245, -1245, 481, -1245, + -470, -1245, -1245, -480, -1245, -1245, -705, -247, -575, -165, + -1245, -379, -1245, -1245, 957, -1245, -1245, -1245, 244, -1245, + 652, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, + -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -594, + -161, -1245, 602, -1245, -1245, -1245, -1245, -1245, -1245, -1245, + -1245, -369, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, + -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, + -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, + -140, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, + -1245, -1245, -1245, 603, -632, 38, -910, -1152, -1245, -1245, + -1245, -1245, -1245, -1245, -1245, -1245, -1245, -800, -1245, -1245, + -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, + -1245, -1245, -593, -1245, -1193, -529, -1245 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - 0, 1, 16, 132, 51, 17, 153, 159, 619, 454, - 138, 455, 92, 19, 20, 43, 44, 84, 21, 39, - 40, 544, 545, 1241, 1242, 546, 1244, 547, 548, 549, - 550, 551, 552, 553, 160, 161, 35, 36, 37, 207, - 62, 63, 64, 65, 22, 320, 388, 198, 23, 104, - 199, 105, 145, 322, 456, 554, 389, 695, 902, 457, - 555, 587, 779, 1178, 458, 556, 557, 558, 559, 560, - 561, 521, 562, 742, 1078, 933, 563, 459, 792, 1189, - 793, 1190, 795, 1191, 460, 783, 1182, 461, 631, 1220, - 462, 1135, 1136, 834, 463, 640, 464, 564, 465, 466, - 825, 467, 1013, 1275, 1014, 1330, 468, 884, 1156, 469, - 632, 1139, 1336, 1141, 1337, 1228, 1363, 471, 384, 1175, - 1249, 1082, 1084, 958, 570, 767, 1307, 1343, 385, 386, - 509, 690, 373, 514, 692, 374, 1017, 712, 579, 402, - 341, 342, 205, 336, 74, 114, 25, 150, 567, 568, - 47, 48, 129, 26, 108, 147, 201, 27, 390, 955, - 392, 203, 204, 72, 111, 394, 28, 148, 334, 713, - 472, 331, 257, 258, 682, 372, 259, 482, 1053, 582, - 369, 260, 261, 403, 962, 694, 480, 1051, 404, 963, - 405, 964, 479, 1050, 483, 1054, 484, 1157, 485, 1056, - 486, 1158, 487, 1058, 488, 1159, 489, 1061, 490, 1063, - 510, 29, 134, 264, 511, 30, 135, 265, 515, 31, - 133, 263, 702, 473, 1322, 832, 1323, 970, 474, 777, - 1176, 778, 1177, 801, 1195, 798, 1193, 622, 475, 799, - 1194, 476, 975, 1256, 976, 1257, 977, 1258, 787, 1186, - 796, 1192, 623, 477, 1326, 506, 478 + 0, 1, 16, 134, 51, 17, 155, 161, 621, 456, + 140, 457, 94, 19, 20, 43, 44, 85, 21, 39, + 40, 546, 547, 1243, 1244, 548, 1246, 549, 550, 551, + 552, 553, 554, 555, 162, 163, 35, 36, 37, 209, + 63, 64, 65, 66, 22, 322, 390, 200, 23, 106, + 201, 107, 147, 324, 458, 556, 391, 697, 904, 459, + 557, 589, 781, 1180, 460, 558, 559, 560, 561, 562, + 563, 523, 564, 744, 1080, 935, 565, 461, 794, 1191, + 795, 1192, 797, 1193, 462, 785, 1184, 463, 633, 1222, + 464, 1137, 1138, 836, 465, 642, 466, 566, 467, 468, + 827, 469, 1015, 1277, 1016, 1332, 470, 886, 1158, 471, + 634, 1141, 1338, 1143, 1339, 1230, 1365, 473, 386, 1177, + 1251, 1084, 1086, 960, 572, 769, 1309, 1345, 387, 388, + 511, 692, 375, 516, 694, 376, 1019, 714, 581, 404, + 343, 344, 207, 338, 75, 116, 25, 152, 569, 570, + 47, 48, 131, 26, 110, 149, 203, 27, 392, 957, + 394, 205, 206, 73, 113, 396, 28, 150, 336, 715, + 474, 333, 259, 260, 684, 374, 261, 484, 1055, 584, + 371, 262, 263, 405, 964, 696, 482, 1053, 406, 965, + 407, 966, 481, 1052, 485, 1056, 486, 1159, 487, 1058, + 488, 1160, 489, 1060, 490, 1161, 491, 1063, 492, 1065, + 512, 29, 136, 266, 513, 30, 137, 267, 517, 31, + 135, 265, 704, 475, 1324, 834, 1325, 972, 476, 779, + 1178, 780, 1179, 803, 1197, 800, 1195, 624, 477, 801, + 1196, 478, 977, 1258, 978, 1259, 979, 1260, 789, 1188, + 798, 1194, 625, 479, 1328, 508, 480 }; /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If @@ -1589,1255 +1591,1307 @@ static const yytype_int16 yydefgoto[] = number is the opposite. If YYTABLE_NINF, syntax error. */ static const yytype_int16 yytable[] = { - 56, 66, 256, 771, 790, 719, 208, 691, 918, 689, - 684, 831, 686, 728, 688, 1004, 571, 971, 835, 592, - 123, -113, 633, 262, 636, 812, 496, 2, 893, 1002, - 895, 1006, 897, 3, 816, 115, 116, 382, 382, 764, - 80, 492, 1071, 32, 33, 66, 66, 66, 406, 407, - 1026, 641, 642, 1119, 1173, 1329, 4, 38, 5, 651, - 6, 493, 653, 654, 696, 55, 7, 494, 413, 653, - 654, 504, 913, 67, 415, 81, 8, 339, 1327, 1342, - 359, 73, 9, 66, 66, 66, 66, 97, 98, 99, - 154, 155, 340, 383, 815, 206, 206, 878, 879, 576, - 913, 575, 819, 637, 820, 577, 10, 360, 361, 826, - 1360, 421, 422, 57, 1174, 1368, 593, 594, 1090, 49, - 1131, 920, 880, 519, 914, 915, 1132, 916, 11, 12, - 917, 881, 766, 1359, 522, 932, 674, 675, 91, 100, - 452, 638, 58, 674, 675, 424, 425, 645, 646, 255, - 337, 1354, 578, 915, 139, 651, 370, 652, 653, 654, - 655, 656, 1091, 1354, 50, 101, 520, 788, 523, 1354, - 362, 882, 883, 1133, 363, 117, 797, 497, 1134, 800, - 118, 703, 119, 120, 765, 1355, 34, 914, 919, 914, - 1218, 75, 395, 641, 642, 924, 498, 1369, 13, 595, - 914, 837, 499, 1370, 1018, 55, 830, 1114, 82, 256, - 59, 914, 256, 444, 512, 45, 15, 14, 495, 596, - 83, 46, 1007, 321, 513, 121, 256, 76, 586, 15, - 156, 364, 674, 675, 365, 157, 366, 158, 120, 256, - 358, 55, 256, 256, 256, 77, 450, 524, 887, 1266, - 367, 913, 913, 93, 94, 95, 368, 1016, 1210, 979, - 576, 982, 1354, 580, 581, 583, 577, 913, 989, 78, - 102, 992, 913, 1016, 60, 1238, 103, 913, 1277, 91, - 1354, 1354, 396, 1361, 61, 1246, 1239, 1240, 401, 645, - 646, 141, 142, 143, 144, 1354, 1374, 651, 789, 76, - 653, 654, 655, 656, 915, 915, 770, 1021, 1310, 1311, - 1074, 802, 41, 578, 1378, 1387, 821, 85, 256, 256, - 915, 822, 256, 1321, 256, 915, 256, 168, 256, 1388, - 915, 55, 1216, 1127, 776, 68, 69, 212, 70, 678, - 679, 42, 88, 683, 370, 685, 831, 687, 1019, 597, - 641, 642, 696, 905, 823, 1169, 255, 905, 1217, 255, - 1024, 1344, 1345, 934, 1164, 213, 71, 1349, 1137, 598, - 1347, 1348, 1353, 255, 674, 675, 1020, 569, 905, 905, - 905, 1049, 604, 1170, 1021, 1226, 255, 890, -660, 255, - 255, 255, 97, -660, 99, 1072, 255, 1234, 1372, 1373, - 1272, 891, 605, 607, 1171, 89, 1232, 1237, 1271, 323, - 1279, 339, -660, 324, -667, -674, -344, 1062, 1060, -667, - -674, -344, 710, 608, 1083, 1211, 340, 325, 326, 898, - 151, 152, 327, 328, 329, 330, 256, 711, -667, -674, - -344, 900, 86, 899, 643, 644, 645, 646, 647, 256, - 980, 648, 649, 650, 651, 901, 652, 653, 654, 655, - 656, 821, 657, 658, 981, 255, 255, 1205, 659, 255, - 661, 255, 1064, 255, 90, 255, 55, 1180, 966, 967, - 841, 845, 1221, 641, 642, 91, 1065, 96, 978, 854, - 124, 1181, 83, 984, 985, 859, 987, 988, 855, 990, - 991, 1278, 993, 370, 1208, 126, 370, 773, 127, 1188, - 774, 664, 665, 666, 667, 668, 669, 670, 671, 672, - 673, 1039, 106, 109, 128, 1044, 1129, 826, 107, 110, - 1040, 674, 675, 256, 1045, 1130, 1090, 112, 399, 136, - 1123, 400, 256, 113, 401, 256, 137, 1199, 1167, 130, - 1080, 1200, 1138, 905, 903, 131, 1081, 905, 1274, 151, - 152, 809, 810, 908, 905, 370, 909, 370, 146, 888, - 370, 889, 81, 1117, 892, 149, 782, 1118, 370, 645, - 646, 370, 894, 255, 370, 896, 163, 651, 1089, 652, - 653, 654, 655, 656, 370, 370, 255, 370, 1096, 1289, - 164, 1338, 1144, 97, 98, 99, 209, 210, 211, 165, - 1219, 52, 53, 54, 1153, 256, 256, 256, 256, 166, - 824, 167, 256, 957, 209, 210, 256, 97, 200, 1362, - 202, 256, 256, 206, 256, 256, 965, 256, 256, 968, - 256, 317, 1165, 974, 318, 319, 321, 332, 333, 669, - 670, 671, 672, 673, 335, 344, 338, 345, 346, 1261, - 347, 350, 371, 348, 674, 675, 1318, 349, 357, 351, - 352, 375, 353, 370, 354, 1306, 1097, 1098, 1099, 355, - 255, 1102, 356, 376, 377, 378, 1198, 379, 380, 255, - 1201, 387, 255, 391, 1287, 393, 398, 481, 505, 381, - 641, 642, 502, 397, 516, 1037, 517, 518, 566, 573, - 1295, 1296, 574, 584, 1122, 585, 590, 591, 599, 600, - 680, 601, 602, 603, 606, 641, 642, 634, 609, 610, - 1379, 681, 696, 1340, 613, 512, 614, 256, 615, 701, - 704, 705, 616, 706, 707, 617, 618, 708, 723, 725, - 635, 15, 724, 731, 677, 256, 697, 732, 716, 733, - 734, 735, 255, 255, 255, 255, 741, 736, 737, 255, - 738, 739, 762, 255, 740, 743, 1069, 769, 255, 255, - 780, 255, 255, 763, 255, 255, 781, 255, 1350, 1351, - 775, 1352, 784, 785, 643, 644, 645, 646, 647, 786, - 814, 648, 649, 650, 651, 817, 652, 653, 654, 655, - 656, 818, 657, 658, 256, 256, 256, 852, 659, 256, - 833, 645, 646, 836, 904, 905, 911, 907, 912, 651, - 1317, 652, 653, 654, 655, 656, 1320, 1384, 470, 922, - 1222, 1386, 925, 926, 927, 929, 931, 956, 491, 959, - 969, 1005, 256, 994, 1009, 1010, 1011, 1012, 501, 1015, - 1021, 664, 665, 666, 667, 668, 669, 670, 671, 672, - 673, 1023, 1022, 1027, 1028, 1029, 1030, 1031, 1032, 1042, - 565, 674, 675, 1043, 255, 1047, 1052, 1055, 572, 1057, - 1067, 1059, 1068, 671, 672, 673, 1079, 1077, 1083, 1085, - 1087, 1088, 255, 256, 1093, 1094, 674, 675, 1100, 1105, - 1163, 1212, 1101, 1103, 1146, 1104, 1109, 1106, 611, 612, - 1243, 1248, 1107, 1108, 1160, 1110, 1111, 1112, 1113, 1213, - 1214, 1115, 1183, 1215, 1235, 621, 624, 625, 626, 627, - 628, 1184, 1185, 1147, 1187, 1204, 1149, 1305, 1245, 1154, - 641, 642, 1161, 1254, 1179, 1196, 1276, 1284, 1207, 1209, - 1288, 255, 255, 255, 1312, 1252, 255, 1253, 1259, 1260, - 1265, 1267, 1304, 1325, 1268, 1356, 1357, 122, 256, 1294, - 256, 1297, 1314, 1367, 1315, 811, 1316, 18, 1319, 1333, - 1375, 1358, 79, 700, 1376, 1377, 162, 1381, 125, 255, - 1389, 1224, 1298, 343, 140, 1299, 1300, 1301, 1302, 709, - 24, 1283, 1250, 1251, 1172, 1247, 1308, 715, 1309, 714, - 87, 718, 954, 588, 721, 722, 639, 589, 1092, 0, - 727, 0, 730, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 643, 644, 645, 646, 647, 0, - 255, 648, 649, 650, 651, 0, 652, 653, 654, 655, - 656, 0, 657, 658, 0, 0, 0, 256, 0, 0, - 772, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 256, 0, 0, 1290, 621, - 791, 0, 0, 794, 0, 0, 0, 641, 642, 0, - 0, 0, 0, 0, 803, 804, 805, 806, 807, 808, - 0, 664, 665, 666, 667, 668, 669, 670, 671, 672, - 673, 0, 0, 0, 0, 255, 0, 255, 0, 0, - 0, 674, 675, 0, 846, 847, 0, 0, 848, 849, - 850, 851, 0, 853, 0, 856, 857, 858, 860, 861, - 862, 863, 864, 865, 867, 868, 869, 870, 871, 872, - 873, 874, 875, 876, 877, 0, 885, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 643, 644, 645, 646, 0, 0, 0, 0, 0, - 0, 651, 0, 652, 653, 654, 655, 656, 921, 657, - 658, 923, 0, 0, 255, 0, 0, 0, 0, 0, - 928, 0, 0, 0, 0, 930, 0, 0, 0, 0, - 0, 0, 255, 0, 0, 935, 936, 937, 938, 939, + 57, 67, 773, 506, 258, 833, 721, 792, 210, 686, + 920, 688, 693, 690, 730, 895, 1006, 897, 573, 899, + 973, 691, 837, 125, 594, 264, 117, 118, 814, 2, + 638, 384, -113, 577, 1004, 3, 1028, 818, 1175, 498, + 496, 766, 81, 1268, 915, 1008, 67, 67, 67, 49, + 1073, 384, 643, 644, 102, 408, 409, 341, 4, 1121, + 5, 1331, 6, 653, 341, 1344, 655, 656, 7, 38, + 32, 33, 342, 643, 644, 415, 712, 82, 8, 342, + 103, 417, 1329, 521, 9, 67, 67, 67, 67, 208, + 828, 713, 156, 157, 50, 1220, 817, 917, 1176, 1092, + 372, 1370, 1312, 1313, 821, 635, 822, 385, 10, 208, + 880, 881, 655, 656, 1133, 934, 1362, 1323, 423, 424, + 1134, 595, 596, 578, 922, 93, 522, 77, 323, 579, + 11, 12, 99, 100, 101, 882, 892, 1361, 768, 68, + 676, 677, 372, 1093, 883, 524, 775, 698, 647, 648, + 893, 257, 426, 427, 339, 170, 653, 74, 654, 655, + 656, 657, 658, 1356, 1349, 1350, 119, 1135, 705, 647, + 648, 120, 1136, 121, 122, 76, 580, 653, 361, 525, + 655, 656, 657, 658, 884, 885, 676, 677, 55, 921, + 499, 497, 916, 1116, 397, 767, 926, 1357, 1020, 141, + 13, 643, 644, 916, 597, 362, 363, 839, 916, 500, + 83, 258, 56, 34, 258, 501, 123, 916, 1356, 14, + 446, 1023, 84, 915, 598, 1009, 1356, 15, 258, 41, + 791, 15, 158, 676, 677, 588, 214, 159, 778, 160, + 122, 258, 360, 804, 258, 258, 258, 1129, 372, 526, + 790, 915, 1371, 452, 676, 677, 77, 1018, 42, 799, + 1372, 981, 802, 984, 215, 582, 583, 585, 364, 1218, + 991, 78, 365, 994, 915, 916, 917, 514, 918, 1356, + 1212, 919, 915, 1356, 1356, 915, 398, 515, 1018, 832, + 578, 1279, 55, 915, 93, 1219, 579, 647, 648, 1363, + 99, 823, 101, 1356, 917, 653, 824, 654, 655, 656, + 657, 658, 79, 1376, 1076, 58, 56, 1380, 1389, 639, + 258, 258, 69, 70, 258, 71, 258, 917, 258, 366, + 258, 889, 367, 86, 368, 917, 772, 1390, 917, 825, + 833, 680, 681, 580, 59, 685, 917, 687, 369, 689, + 55, 643, 644, 72, 370, 1139, 454, 640, 257, 1026, + 87, 257, 1021, 1023, 494, 936, 1166, 671, 672, 673, + 674, 675, 89, 90, 56, 257, 95, 96, 97, 571, + -661, 907, 676, 677, 495, -661, 1171, 599, 257, 1281, + 1022, 257, 257, 257, 91, 907, 1074, 856, 257, 92, + 1236, 1274, 1346, 1347, -661, 907, 857, 600, 1351, 1051, + 968, 969, 60, 1355, 1172, 143, 144, 145, 146, 55, + 980, 606, 1064, 1228, 609, 986, 987, 1213, 989, 990, + 1062, 992, 993, 1234, 995, 698, 1173, 907, 258, 1374, + 1375, 607, 907, 56, 610, 645, 646, 647, 648, 649, + 93, 258, 650, 1041, 1207, 653, 1085, 654, 655, 656, + 657, 658, 1042, 659, 660, 1239, 900, 257, 257, 1223, + 1273, 257, 55, 257, 902, 257, 61, 257, 98, 982, + 901, 823, 843, 847, 643, 644, 62, -668, 903, -675, + -345, 1066, -668, 983, -675, -345, 56, 861, 1210, 126, + 1046, 45, 372, 1280, 325, 1067, 776, 46, 326, 1047, + 1182, -668, 1190, -675, -345, 669, 670, 671, 672, 673, + 674, 675, 327, 328, 1183, 1240, 84, 329, 330, 331, + 332, 1131, 676, 677, 828, 258, 1241, 1242, 1248, 1125, + 1132, 403, 401, 1092, 258, 402, 104, 258, 403, 1169, + 139, 1140, 105, 108, 111, 114, 905, 132, 1082, 109, + 112, 115, 151, 133, 1083, 910, 1201, 1202, 911, 1276, + 372, 128, 907, 907, 890, 907, 153, 154, 784, 129, + 647, 648, 372, 372, 130, 257, 891, 894, 653, 138, + 654, 655, 656, 657, 658, 372, 372, 372, 257, 896, + 898, 1091, 372, 372, 211, 212, 1098, 1291, 1099, 1100, + 1101, 1221, 372, 1104, 148, 82, 1340, 258, 258, 258, + 258, 165, 826, 166, 258, 959, 167, 168, 258, 169, + 99, 1364, 202, 258, 258, 204, 258, 258, 967, 258, + 258, 970, 258, 208, 319, 976, 1124, 153, 154, 811, + 812, 320, 673, 674, 675, 321, 1119, 99, 100, 101, + 1120, 1263, 52, 53, 54, 676, 677, 340, 372, 1320, + 211, 212, 213, 323, 1308, 334, 335, 346, 337, 347, + 348, 349, 257, 352, 350, 1146, 359, 351, 373, 353, + 377, 257, 378, 354, 257, 1289, 355, 1155, 379, 381, + 356, 357, 358, 382, 389, 393, 400, 1039, 395, 483, + 507, 1297, 1298, 380, 383, 518, 519, 399, 568, 575, + 586, 576, 504, 15, 1381, 1167, 520, 587, 593, 602, + 592, 603, 1342, 605, 608, 611, 601, 612, 604, 258, + 682, 683, 615, 514, 616, 617, 706, 703, 707, 708, + 618, 725, 709, 710, 727, 726, 619, 258, 733, 620, + 637, 737, 643, 644, 257, 257, 257, 257, 636, 1200, + 679, 257, 1224, 1203, 699, 257, 718, 734, 1071, 735, + 257, 257, 738, 257, 257, 739, 257, 257, 743, 257, + 1352, 1353, 736, 1354, 740, 741, 742, 745, 764, 765, + 771, 777, 782, 783, 819, 786, 816, 820, 838, 835, + 854, 787, 788, 907, 906, 698, 258, 258, 258, 913, + 909, 258, 914, 924, 927, 928, 929, 931, 958, 961, + 971, 1007, 996, 1023, 1049, 933, 1011, 1012, 1386, 1013, + 472, 1014, 1388, 1017, 1025, 1024, 1029, 1030, 1032, 1031, + 493, 1054, 1033, 1069, 258, 1034, 645, 646, 647, 648, + 503, 1044, 1057, 1045, 1059, 1061, 653, 1070, 654, 655, + 656, 657, 658, 1079, 659, 660, 1087, 1081, 1085, 1307, + 1089, 1090, 567, 1102, 1107, 1096, 257, 1095, 1103, 1105, + 574, 1106, 1111, 1108, 1109, 1110, 1112, 1117, 1113, 1114, + 1115, 1148, 1165, 1245, 257, 258, 1149, 1151, 1156, 1214, + 1185, 1186, 1187, 1319, 1189, 1206, 1215, 1216, 1163, 1322, + 613, 614, 1250, 1181, 1198, 1211, 1162, 1217, 671, 672, + 673, 674, 675, 1209, 1237, 1247, 1254, 623, 626, 627, + 628, 629, 630, 676, 677, 1255, 1256, 1261, 1262, 1267, + 1269, 1270, 1278, 643, 644, 1290, 1286, 1306, 1327, 1296, + 1314, 1299, 1358, 257, 257, 257, 1316, 1317, 257, 1318, + 1359, 813, 1369, 1321, 1335, 1360, 1377, 124, 18, 80, + 258, 1378, 258, 1379, 1383, 164, 127, 1391, 1300, 142, + 1301, 345, 1302, 1303, 1304, 702, 24, 1285, 1252, 641, + 1253, 257, 1310, 1226, 1174, 716, 1311, 1249, 88, 956, + 1094, 711, 0, 0, 590, 591, 0, 0, 0, 717, + 0, 0, 0, 720, 0, 0, 723, 724, 0, 0, + 0, 0, 729, 0, 732, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 645, 646, 647, + 648, 649, 257, 0, 650, 651, 652, 653, 0, 654, + 655, 656, 657, 658, 0, 659, 660, 0, 0, 258, + 0, 661, 774, 663, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 258, 0, 0, + 1292, 623, 793, 0, 0, 796, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 805, 806, 807, 808, + 809, 810, 0, 0, 666, 667, 668, 669, 670, 671, + 672, 673, 674, 675, 840, 0, 0, 257, 0, 257, + 0, 0, 0, 0, 676, 677, 848, 849, 0, 0, + 850, 851, 852, 853, 0, 855, 0, 858, 859, 860, + 862, 863, 864, 865, 866, 867, 869, 870, 871, 872, + 873, 874, 875, 876, 877, 878, 879, 0, 887, 0, + 0, 0, 0, 0, 0, 0, 222, 223, 224, 0, + 226, 227, 228, 229, 230, 425, 232, 233, 234, 235, + 236, 237, 238, 239, 240, 241, 242, 0, 244, 245, + 246, 0, 0, 249, 250, 251, 252, 0, 0, 0, + 923, 0, 0, 925, 0, 0, 257, 0, 0, 0, + 0, 0, 930, 0, 0, 0, 0, 932, 0, 0, + 0, 0, 0, 0, 257, 0, 0, 937, 938, 939, 940, 941, 942, 943, 944, 945, 946, 947, 948, 949, - 950, 951, 952, 953, 0, 0, 0, 0, 0, 0, - 0, 824, 960, 669, 670, 671, 672, 673, 0, 0, - 0, 0, 0, 973, 0, 0, 214, 0, 674, 675, - 0, 0, 215, 0, 0, 0, 0, 0, 216, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 217, 0, - 0, 1001, 0, 0, 1003, 621, 218, 0, 0, 1008, - 0, 0, 0, 0, 0, 0, 824, 0, 0, 0, - 0, 219, 0, 0, 0, 0, 565, 0, 220, 221, + 950, 951, 952, 953, 954, 955, 0, 0, 841, 0, + 0, 0, 0, 826, 962, 0, 0, 842, 0, 0, + 0, 0, 0, 0, 0, 975, 0, 0, 216, 0, + 0, 0, 0, 0, 217, 0, 0, 0, 0, 0, + 218, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 219, 0, 0, 1003, 0, 0, 1005, 623, 220, 0, + 0, 1010, 0, 0, 0, 0, 0, 0, 826, 0, + 0, 0, 0, 221, 0, 0, 0, 0, 567, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1041, 0, 0, 214, 1046, 0, 0, 0, 0, 215, - 0, 0, 0, 0, 0, 216, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 217, 1008, 0, 0, 0, - 0, 0, 1066, 218, 0, 0, 0, 0, 253, 1070, - 0, 0, 0, 0, 0, 838, 1073, 0, 219, 55, - 0, 0, 1076, 0, 0, 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, 0, 0, - 0, 0, 0, 0, 254, 0, 503, 220, 221, 222, - 0, 224, 225, 226, 227, 228, 423, 230, 231, 232, - 233, 234, 235, 236, 237, 238, 239, 240, 0, 242, - 243, 244, 0, 0, 247, 248, 249, 250, 0, 0, - 0, 0, 1120, 1121, 0, 253, 1124, 1125, 1126, 0, - 1008, 0, 0, 0, 0, 0, 507, 0, 0, 1140, - 0, 1142, 0, 1145, 0, 0, 508, 0, 0, 1148, - 0, 0, 0, 1151, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 214, 0, 0, 0, 839, - 0, 215, 0, 0, 0, 641, 642, 216, 840, 0, - 0, 254, 0, 0, 0, 565, 0, 217, 0, 0, - 0, 0, 0, 0, 0, 218, 0, 0, 0, 0, + 252, 253, 254, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1043, 0, 0, 0, 1048, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 55, 1010, 0, + 0, 0, 0, 0, 1068, 0, 0, 0, 0, 0, + 255, 1072, 0, 0, 0, 0, 0, 216, 1075, 0, + 0, 56, 0, 217, 1078, 0, 0, 0, 0, 218, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 219, + 0, 0, 0, 0, 0, 0, 0, 220, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 219, 0, 0, 0, 621, 0, 0, 220, 221, 222, + 0, 0, 221, 0, 0, 0, 256, 0, 505, 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, - 0, 0, 0, 0, 0, 0, 0, 0, 1229, 0, - 1230, 0, 0, 0, 0, 1233, 0, 0, 0, 643, - 644, 645, 646, 647, 0, 1236, 648, 649, 650, 651, - 0, 652, 653, 654, 655, 656, 0, 657, 658, 0, - 0, 0, 1255, 659, 660, 661, 0, 253, 0, 662, - 1262, 1263, 1264, 0, 0, 0, 0, 1270, 55, 0, - 621, 1273, 0, 0, 0, 0, 0, 0, 0, 0, - 1280, 1281, 1282, 0, 0, 0, 0, 0, 0, 1286, - 0, 0, 0, 0, 663, 0, 664, 665, 666, 667, - 668, 669, 670, 671, 672, 673, 0, 0, 0, 0, - 0, 0, 0, 254, 1303, 0, 674, 675, 0, 0, - 676, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 621, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1328, 0, 0, 1331, 1332, - 0, 0, 0, 0, 0, 0, 1335, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1339, 0, - 0, 0, 0, 0, 0, 0, 0, 1341, 0, 0, - 0, 0, 0, 1346, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 525, - 0, 0, 406, 407, 3, 0, 526, 527, 528, 0, - 529, 1365, 408, 409, 410, 411, 412, 0, 0, 0, - 0, 0, 413, 530, 414, 531, 532, 1380, 415, 0, - 0, 0, 1382, 1383, 0, 533, 416, 0, 0, 534, - 0, 535, 417, 0, 0, 418, 0, 8, 419, 536, - 0, 537, 420, 0, 0, 538, 539, 0, 0, 0, - 0, 0, 540, 0, 0, 421, 422, 0, 220, 221, - 222, 0, 224, 225, 226, 227, 228, 423, 230, 231, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 0, - 242, 243, 244, 0, 0, 247, 248, 249, 250, 424, - 425, 426, 541, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 427, 428, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 429, 430, 431, 432, 433, 0, 434, - 0, 435, 436, 437, 438, 439, 440, 441, 442, 55, - 443, 0, 0, 0, 0, 0, 0, 444, 542, 543, + 253, 254, 0, 0, 1122, 1123, 0, 0, 1126, 1127, + 1128, 0, 1010, 0, 0, 0, 0, 0, 0, 0, + 0, 1142, 0, 1144, 0, 1147, 0, 0, 0, 0, + 0, 1150, 0, 0, 0, 1153, 55, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, + 0, 0, 0, 0, 844, 0, 0, 643, 644, 0, + 509, 0, 0, 0, 0, 0, 0, 567, 0, 0, + 510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 445, 446, 447, 0, 14, 0, - 0, 448, 449, 0, 0, 0, 0, 0, 0, 0, - 450, 0, 451, 525, 452, 453, 406, 407, 3, 0, - 526, 527, 528, 0, 529, 0, 408, 409, 410, 411, - 412, 0, 0, 0, 0, 0, 413, 530, 414, 531, - 532, 0, 415, 0, 0, 0, 0, 0, 0, 533, - 416, 0, 0, 534, 0, 535, 417, 0, 0, 418, - 0, 8, 419, 536, 0, 537, 420, 0, 0, 538, - 539, 0, 0, 0, 0, 0, 540, 0, 0, 421, - 422, 0, 220, 221, 222, 0, 224, 225, 226, 227, - 228, 423, 230, 231, 232, 233, 234, 235, 236, 237, - 238, 239, 240, 0, 242, 243, 244, 0, 0, 247, - 248, 249, 250, 424, 425, 426, 541, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 427, 428, + 0, 0, 0, 0, 0, 0, 623, 0, 0, 0, + 0, 0, 0, 0, 0, 256, 222, 223, 224, 0, + 226, 227, 228, 229, 230, 425, 232, 233, 234, 235, + 236, 237, 238, 239, 240, 241, 242, 0, 244, 245, + 246, 0, 0, 249, 250, 251, 252, 0, 0, 0, + 1231, 0, 1232, 0, 0, 0, 0, 1235, 0, 0, + 0, 645, 646, 647, 648, 649, 0, 1238, 650, 651, + 652, 653, 0, 654, 655, 656, 657, 658, 0, 659, + 660, 0, 0, 0, 1257, 661, 662, 663, 0, 0, + 0, 664, 1264, 1265, 1266, 0, 0, 0, 845, 1272, + 0, 0, 623, 1275, 0, 0, 0, 846, 0, 0, + 0, 0, 1282, 1283, 1284, 0, 0, 0, 0, 0, + 0, 1288, 0, 0, 0, 0, 665, 0, 666, 667, + 668, 669, 670, 671, 672, 673, 674, 675, 0, 0, + 0, 0, 0, 0, 0, 0, 1305, 0, 676, 677, + 0, 0, 678, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 623, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1330, 0, 0, + 1333, 1334, 0, 0, 0, 0, 0, 0, 1337, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1341, 0, 0, 0, 0, 0, 0, 0, 0, 1343, + 0, 0, 0, 0, 0, 1348, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 429, 430, 431, - 432, 433, 0, 434, 0, 435, 436, 437, 438, 439, - 440, 441, 442, 55, 443, 0, 0, 0, 0, 0, - 0, 444, 1025, 543, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 445, 446, - 447, 0, 14, 0, 0, 448, 449, 0, 0, 0, - 0, 0, 0, 0, 450, 0, 451, 525, 452, 453, - 406, 407, 3, 0, 526, 527, 528, 0, 529, 0, - 408, 409, 410, 411, 412, 0, 0, 0, 0, 0, - 413, 530, 414, 531, 532, 0, 415, 0, 0, 0, - 0, 0, 0, 533, 416, 0, 0, 534, 0, 535, - 417, 0, 0, 418, 0, 8, 419, 536, 0, 537, - 420, 0, 0, 538, 539, 0, 0, 0, 0, 0, - 540, 0, 0, 421, 422, 0, 220, 221, 222, 0, - 224, 225, 226, 227, 228, 423, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 0, 242, 243, - 244, 0, 0, 247, 248, 249, 250, 424, 425, 426, - 541, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 427, 428, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 429, 430, 431, 432, 433, 0, 434, 0, 435, - 436, 437, 438, 439, 440, 441, 442, 55, 443, 0, - 0, 0, 0, 0, 0, 444, 1166, 543, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 445, 446, 447, 0, 14, 0, 0, 448, - 449, 0, 0, 0, 406, 407, 0, 0, 450, 0, - 451, 0, 452, 453, 408, 409, 410, 411, 412, 0, - 0, 0, 0, 0, 413, 530, 414, 531, 0, 0, - 415, 0, 0, 0, 0, 0, 0, 0, 416, 0, - 0, 0, 0, 0, 417, 0, 0, 418, 0, 0, - 419, 536, 0, 0, 420, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 421, 422, 0, - 220, 221, 222, 0, 224, 225, 226, 227, 228, 423, - 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 0, 242, 243, 244, 0, 0, 247, 248, 249, - 250, 424, 425, 426, 541, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 427, 428, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 429, 430, 431, 432, 433, - 0, 434, 0, 435, 436, 437, 438, 439, 440, 441, - 442, 55, 443, 0, 0, 0, 0, 0, 0, 444, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 445, 446, 447, 0, - 14, 0, 0, 448, 449, 0, 0, 0, 0, 0, - 406, 407, 450, 0, 451, 0, 452, 453, 629, 0, - 408, 409, 410, 411, 412, 0, 0, 0, 0, 0, - 413, 0, 414, 0, 0, 0, 415, 0, 0, 0, - 0, 0, 0, 0, 416, 0, 0, 0, 0, 0, - 417, 0, 0, 418, 630, 0, 419, 0, 0, 0, - 420, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 421, 422, 0, 220, 221, 222, 0, - 224, 225, 226, 227, 228, 423, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 0, 242, 243, - 244, 0, 0, 247, 248, 249, 250, 424, 425, 426, + 0, 527, 0, 0, 408, 409, 3, 0, 528, 529, + 530, 0, 531, 1367, 410, 411, 412, 413, 414, 0, + 0, 0, 0, 0, 415, 532, 416, 533, 534, 1382, + 417, 0, 0, 0, 1384, 1385, 0, 535, 418, 0, + 0, 536, 0, 537, 419, 0, 0, 420, 0, 8, + 421, 538, 0, 539, 422, 0, 0, 540, 541, 0, + 0, 0, 0, 0, 542, 0, 0, 423, 424, 0, + 222, 223, 224, 0, 226, 227, 228, 229, 230, 425, + 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, + 242, 0, 244, 245, 246, 0, 0, 249, 250, 251, + 252, 426, 427, 428, 543, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 427, 428, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 55, 0, 0, + 0, 0, 0, 0, 0, 431, 432, 433, 434, 435, + 0, 436, 0, 437, 438, 439, 440, 441, 442, 443, + 444, 56, 445, 0, 0, 0, 0, 0, 0, 446, + 544, 545, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 447, 448, 449, 0, + 14, 0, 0, 450, 451, 0, 0, 0, 0, 0, + 0, 0, 452, 0, 453, 527, 454, 455, 408, 409, + 3, 0, 528, 529, 530, 0, 531, 0, 410, 411, + 412, 413, 414, 0, 0, 0, 0, 0, 415, 532, + 416, 533, 534, 0, 417, 0, 0, 0, 0, 0, + 0, 535, 418, 0, 0, 536, 0, 537, 419, 0, + 0, 420, 0, 8, 421, 538, 0, 539, 422, 0, + 0, 540, 541, 0, 0, 0, 0, 0, 542, 0, + 0, 423, 424, 0, 222, 223, 224, 0, 226, 227, + 228, 229, 230, 425, 232, 233, 234, 235, 236, 237, + 238, 239, 240, 241, 242, 0, 244, 245, 246, 0, + 0, 249, 250, 251, 252, 426, 427, 428, 543, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 429, 430, 431, 432, 433, 0, 434, 826, 435, - 436, 437, 438, 439, 440, 441, 442, 827, 443, 0, - 0, 0, 0, 0, 0, 444, 0, 0, 0, 0, + 0, 55, 0, 0, 0, 0, 0, 0, 0, 431, + 432, 433, 434, 435, 0, 436, 0, 437, 438, 439, + 440, 441, 442, 443, 444, 56, 445, 0, 0, 0, + 0, 0, 0, 446, 1027, 545, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 445, 446, 447, 0, 14, 0, 0, 448, - 449, 0, 0, 0, 0, 0, 406, 407, 450, 0, - 451, 0, 452, 453, 629, 0, 408, 409, 410, 411, - 412, 0, 0, 0, 0, 0, 413, 0, 414, 0, - 0, 0, 415, 0, 0, 0, 0, 0, 0, 0, - 416, 0, 0, 0, 0, 0, 417, 0, 0, 418, - 630, 0, 419, 0, 0, 0, 420, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 421, - 422, 0, 220, 221, 222, 0, 224, 225, 226, 227, - 228, 423, 230, 231, 232, 233, 234, 235, 236, 237, - 238, 239, 240, 0, 242, 243, 244, 0, 0, 247, - 248, 249, 250, 424, 425, 426, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 427, 428, + 447, 448, 449, 0, 14, 0, 0, 450, 451, 0, + 0, 0, 0, 0, 0, 0, 452, 0, 453, 527, + 454, 455, 408, 409, 3, 0, 528, 529, 530, 0, + 531, 0, 410, 411, 412, 413, 414, 0, 0, 0, + 0, 0, 415, 532, 416, 533, 534, 0, 417, 0, + 0, 0, 0, 0, 0, 535, 418, 0, 0, 536, + 0, 537, 419, 0, 0, 420, 0, 8, 421, 538, + 0, 539, 422, 0, 0, 540, 541, 0, 0, 0, + 0, 0, 542, 0, 0, 423, 424, 0, 222, 223, + 224, 0, 226, 227, 228, 229, 230, 425, 232, 233, + 234, 235, 236, 237, 238, 239, 240, 241, 242, 0, + 244, 245, 246, 0, 0, 249, 250, 251, 252, 426, + 427, 428, 543, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 55, 0, 0, 0, 0, + 0, 0, 0, 431, 432, 433, 434, 435, 0, 436, + 0, 437, 438, 439, 440, 441, 442, 443, 444, 56, + 445, 0, 0, 0, 0, 0, 0, 446, 1168, 545, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 429, 430, 431, - 432, 433, 0, 434, 0, 435, 436, 437, 438, 439, - 440, 441, 442, 55, 443, 0, 0, 0, 0, 0, - 0, 444, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 445, 446, - 447, 0, 14, 0, 0, 448, 449, 0, 0, 0, - 406, 407, 0, 0, 450, 0, 451, 0, 452, 453, - 408, 409, 410, 411, 412, 0, 0, 0, 0, 0, - 413, 0, 414, 0, 0, 0, 415, 0, 0, 0, - 0, 0, 0, 0, 416, 0, 0, 0, 0, 0, - 417, 0, 0, 418, 0, 0, 419, 0, 0, 0, - 420, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 421, 422, 0, 220, 221, 222, 0, - 224, 225, 226, 227, 228, 423, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 0, 242, 243, - 244, 0, 0, 247, 248, 249, 250, 424, 425, 426, + 0, 0, 0, 0, 447, 448, 449, 0, 14, 0, + 0, 450, 451, 0, 0, 0, 408, 409, 0, 0, + 452, 0, 453, 0, 454, 455, 410, 411, 412, 413, + 414, 0, 0, 0, 0, 0, 415, 532, 416, 533, + 0, 0, 417, 0, 0, 0, 0, 0, 0, 0, + 418, 0, 0, 0, 0, 0, 419, 0, 0, 420, + 0, 0, 421, 538, 0, 0, 422, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 423, + 424, 0, 222, 223, 224, 0, 226, 227, 228, 229, + 230, 425, 232, 233, 234, 235, 236, 237, 238, 239, + 240, 241, 242, 0, 244, 245, 246, 0, 0, 249, + 250, 251, 252, 426, 427, 428, 543, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 427, 428, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 55, + 0, 0, 0, 0, 0, 0, 0, 431, 432, 433, + 434, 435, 0, 436, 0, 437, 438, 439, 440, 441, + 442, 443, 444, 56, 445, 0, 0, 0, 0, 0, + 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 447, 448, + 449, 0, 14, 0, 0, 450, 451, 0, 0, 0, + 0, 0, 408, 409, 452, 0, 453, 0, 454, 455, + 631, 0, 410, 411, 412, 413, 414, 0, 0, 0, + 0, 0, 415, 0, 416, 0, 0, 0, 417, 0, + 0, 0, 0, 0, 0, 0, 418, 0, 0, 0, + 0, 0, 419, 0, 0, 420, 632, 0, 421, 0, + 0, 0, 422, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 423, 424, 0, 222, 223, + 224, 0, 226, 227, 228, 229, 230, 425, 232, 233, + 234, 235, 236, 237, 238, 239, 240, 241, 242, 0, + 244, 245, 246, 0, 0, 249, 250, 251, 252, 426, + 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 55, 0, 0, 0, 0, + 0, 0, 0, 431, 432, 433, 434, 435, 0, 436, + 828, 437, 438, 439, 440, 441, 442, 443, 444, 829, + 445, 0, 0, 0, 0, 0, 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 429, 430, 431, 432, 433, 0, 434, 826, 435, - 436, 437, 438, 439, 440, 441, 442, 827, 443, 0, - 0, 0, 0, 0, 0, 444, 0, 0, 0, 0, + 0, 0, 0, 0, 447, 448, 449, 0, 14, 0, + 0, 450, 451, 0, 0, 0, 0, 0, 408, 409, + 452, 0, 453, 0, 454, 455, 631, 0, 410, 411, + 412, 413, 414, 0, 0, 0, 0, 0, 415, 0, + 416, 0, 0, 0, 417, 0, 0, 0, 0, 0, + 0, 0, 418, 0, 0, 0, 0, 0, 419, 0, + 0, 420, 632, 0, 421, 0, 0, 0, 422, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 445, 446, 447, 0, 14, 0, 0, 448, - 449, 0, 0, 0, 406, 407, 0, 0, 828, 0, - 451, 829, 452, 453, 408, 409, 410, 411, 412, 0, - 0, 0, 0, 0, 413, 0, 414, 0, 0, 0, - 415, 0, 0, 0, 0, 0, 0, 0, 416, 0, - 0, 0, 0, 0, 417, 0, 0, 418, 0, 0, - 419, 0, 0, 0, 420, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 421, 422, 0, - 220, 221, 222, 0, 224, 225, 226, 227, 228, 423, - 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 0, 242, 243, 244, 0, 0, 247, 248, 249, - 250, 424, 425, 426, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 427, 428, 0, 0, + 0, 423, 424, 0, 222, 223, 224, 0, 226, 227, + 228, 229, 230, 425, 232, 233, 234, 235, 236, 237, + 238, 239, 240, 241, 242, 0, 244, 245, 246, 0, + 0, 249, 250, 251, 252, 426, 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 429, 430, 431, 432, 433, - 0, 434, 0, 435, 436, 437, 438, 439, 440, 441, - 442, 55, 443, 0, 0, 0, 0, 0, 0, 444, + 0, 55, 0, 0, 0, 0, 0, 0, 0, 431, + 432, 433, 434, 435, 0, 436, 0, 437, 438, 439, + 440, 441, 442, 443, 444, 56, 445, 0, 0, 0, + 0, 0, 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 445, 446, 447, 0, - 14, 0, 0, 448, 449, 0, 0, 0, 0, 0, - 406, 407, 450, 500, 451, 0, 452, 453, 620, 0, - 408, 409, 410, 411, 412, 0, 0, 0, 0, 0, - 413, 0, 414, 0, 0, 0, 415, 0, 0, 0, - 0, 0, 0, 0, 416, 0, 0, 0, 0, 0, - 417, 0, 0, 418, 0, 0, 419, 0, 0, 0, - 420, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 421, 422, 0, 220, 221, 222, 0, - 224, 225, 226, 227, 228, 423, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 0, 242, 243, - 244, 0, 0, 247, 248, 249, 250, 424, 425, 426, + 447, 448, 449, 0, 14, 0, 0, 450, 451, 0, + 0, 0, 408, 409, 0, 0, 452, 0, 453, 0, + 454, 455, 410, 411, 412, 413, 414, 0, 0, 0, + 0, 0, 415, 0, 416, 0, 0, 0, 417, 0, + 0, 0, 0, 0, 0, 0, 418, 0, 0, 0, + 0, 0, 419, 0, 0, 420, 0, 0, 421, 0, + 0, 0, 422, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 423, 424, 0, 222, 223, + 224, 0, 226, 227, 228, 229, 230, 425, 232, 233, + 234, 235, 236, 237, 238, 239, 240, 241, 242, 0, + 244, 245, 246, 0, 0, 249, 250, 251, 252, 426, + 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 427, 428, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 55, 0, 0, 0, 0, + 0, 0, 0, 431, 432, 433, 434, 435, 0, 436, + 828, 437, 438, 439, 440, 441, 442, 443, 444, 829, + 445, 0, 0, 0, 0, 0, 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 447, 448, 449, 0, 14, 0, + 0, 450, 451, 0, 0, 0, 408, 409, 0, 0, + 830, 0, 453, 831, 454, 455, 410, 411, 412, 413, + 414, 0, 0, 0, 0, 0, 415, 0, 416, 0, + 0, 0, 417, 0, 0, 0, 0, 0, 0, 0, + 418, 0, 0, 0, 0, 0, 419, 0, 0, 420, + 0, 0, 421, 0, 0, 0, 422, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 423, + 424, 0, 222, 223, 224, 0, 226, 227, 228, 229, + 230, 425, 232, 233, 234, 235, 236, 237, 238, 239, + 240, 241, 242, 0, 244, 245, 246, 0, 0, 249, + 250, 251, 252, 426, 427, 428, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 429, 430, 431, 432, 433, 0, 434, 0, 435, - 436, 437, 438, 439, 440, 441, 442, 55, 443, 0, - 0, 0, 0, 0, 0, 444, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 55, + 0, 0, 0, 0, 0, 0, 0, 431, 432, 433, + 434, 435, 0, 436, 0, 437, 438, 439, 440, 441, + 442, 443, 444, 56, 445, 0, 0, 0, 0, 0, + 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 447, 448, + 449, 0, 14, 0, 0, 450, 451, 0, 0, 0, + 0, 0, 408, 409, 452, 502, 453, 0, 454, 455, + 622, 0, 410, 411, 412, 413, 414, 0, 0, 0, + 0, 0, 415, 0, 416, 0, 0, 0, 417, 0, + 0, 0, 0, 0, 0, 0, 418, 0, 0, 0, + 0, 0, 419, 0, 0, 420, 0, 0, 421, 0, + 0, 0, 422, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 423, 424, 0, 222, 223, + 224, 0, 226, 227, 228, 229, 230, 425, 232, 233, + 234, 235, 236, 237, 238, 239, 240, 241, 242, 0, + 244, 245, 246, 0, 0, 249, 250, 251, 252, 426, + 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 445, 446, 447, 0, 14, 0, 0, 448, - 449, 0, 0, 0, 406, 407, 0, 0, 450, 0, - 451, 0, 452, 453, 408, 409, 410, 411, 412, 0, - 0, 0, 0, 0, 413, 0, 414, 0, 0, 0, - 415, 0, 0, 0, 0, 0, 0, 0, 416, 0, - 0, 0, 0, 0, 417, 0, 0, 418, 0, 0, - 419, 0, 0, 0, 420, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 421, 422, 0, - 220, 221, 222, 0, 224, 225, 226, 227, 228, 423, - 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 0, 242, 243, 244, 0, 0, 247, 248, 249, - 250, 424, 425, 426, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 427, 428, 0, 0, + 0, 0, 0, 0, 0, 55, 0, 0, 0, 0, + 0, 0, 0, 431, 432, 433, 434, 435, 0, 436, + 0, 437, 438, 439, 440, 441, 442, 443, 444, 56, + 445, 0, 0, 0, 0, 0, 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 447, 448, 449, 0, 14, 0, + 0, 450, 451, 0, 0, 0, 408, 409, 0, 0, + 452, 0, 453, 0, 454, 455, 410, 411, 412, 413, + 414, 0, 0, 0, 0, 0, 415, 0, 416, 0, + 0, 0, 417, 0, 0, 0, 0, 0, 0, 0, + 418, 0, 0, 0, 0, 0, 419, 0, 0, 420, + 0, 0, 421, 0, 0, 0, 422, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 423, + 424, 0, 222, 223, 224, 0, 226, 227, 228, 229, + 230, 425, 232, 233, 234, 235, 236, 237, 238, 239, + 240, 241, 242, 0, 244, 245, 246, 0, 0, 249, + 250, 251, 252, 426, 427, 428, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 429, 430, 431, 432, 433, - 0, 434, 0, 435, 436, 437, 438, 439, 440, 441, - 442, 55, 443, 0, 0, 0, 0, 0, 0, 444, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 55, + 0, 0, 0, 0, 0, 0, 0, 431, 432, 433, + 434, 435, 0, 436, 0, 437, 438, 439, 440, 441, + 442, 443, 444, 56, 445, 0, 0, 0, 0, 0, + 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 447, 448, + 449, 0, 14, 0, 0, 450, 451, 0, 0, 0, + 408, 409, 0, 0, 452, 701, 453, 0, 454, 455, + 410, 411, 412, 413, 414, 0, 0, 0, 0, 0, + 415, 0, 416, 0, 0, 0, 417, 0, 0, 0, + 0, 0, 0, 0, 418, 0, 0, 0, 0, 0, + 419, 0, 0, 420, 0, 0, 421, 0, 0, 0, + 422, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 423, 424, 0, 222, 223, 224, 0, + 226, 227, 228, 229, 230, 425, 232, 233, 234, 235, + 236, 237, 238, 239, 240, 241, 242, 0, 244, 245, + 246, 0, 0, 249, 250, 251, 252, 426, 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 445, 446, 447, 0, - 14, 0, 0, 448, 449, 0, 0, 0, 406, 407, - 0, 0, 450, 699, 451, 0, 452, 453, 408, 409, - 410, 411, 412, 0, 0, 0, 0, 0, 413, 0, - 414, 0, 0, 0, 415, 0, 0, 0, 0, 0, - 0, 0, 416, 0, 0, 0, 0, 0, 417, 0, - 0, 418, 0, 0, 419, 0, 0, 0, 420, 0, + 0, 0, 429, 430, 0, 0, 0, 0, 0, 0, + 0, 719, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 55, 0, 0, 0, 0, 0, 0, + 0, 431, 432, 433, 434, 435, 0, 436, 0, 437, + 438, 439, 440, 441, 442, 443, 444, 56, 445, 0, + 0, 0, 0, 0, 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 421, 422, 0, 220, 221, 222, 0, 224, 225, - 226, 227, 228, 423, 230, 231, 232, 233, 234, 235, - 236, 237, 238, 239, 240, 0, 242, 243, 244, 0, - 0, 247, 248, 249, 250, 424, 425, 426, 0, 0, + 0, 0, 447, 448, 449, 0, 14, 0, 0, 450, + 451, 0, 0, 0, 408, 409, 0, 0, 452, 0, + 453, 0, 454, 455, 410, 411, 412, 413, 414, 0, + 0, 0, 0, 0, 415, 0, 416, 0, 0, 0, + 417, 0, 0, 0, 0, 0, 0, 0, 418, 0, + 0, 0, 0, 0, 419, 0, 0, 420, 0, 0, + 421, 0, 0, 0, 422, 0, 0, 0, 0, 0, + 722, 0, 0, 0, 0, 0, 0, 423, 424, 0, + 222, 223, 224, 0, 226, 227, 228, 229, 230, 425, + 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, + 242, 0, 244, 245, 246, 0, 0, 249, 250, 251, + 252, 426, 427, 428, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 427, 428, 0, 0, 0, 0, 0, 0, 0, 717, + 0, 0, 0, 0, 0, 0, 0, 55, 0, 0, + 0, 0, 0, 0, 0, 431, 432, 433, 434, 435, + 0, 436, 0, 437, 438, 439, 440, 441, 442, 443, + 444, 56, 445, 0, 0, 0, 0, 0, 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 429, - 430, 431, 432, 433, 0, 434, 0, 435, 436, 437, - 438, 439, 440, 441, 442, 55, 443, 0, 0, 0, - 0, 0, 0, 444, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 447, 448, 449, 0, + 14, 0, 0, 450, 451, 0, 0, 0, 408, 409, + 0, 0, 452, 0, 453, 0, 454, 455, 410, 411, + 412, 413, 414, 0, 0, 0, 0, 0, 415, 0, + 416, 0, 0, 0, 417, 0, 0, 0, 0, 0, + 0, 0, 418, 0, 0, 0, 0, 0, 419, 0, + 0, 420, 0, 0, 421, 0, 0, 0, 422, 0, + 0, 728, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 423, 424, 0, 222, 223, 224, 0, 226, 227, + 228, 229, 230, 425, 232, 233, 234, 235, 236, 237, + 238, 239, 240, 241, 242, 0, 244, 245, 246, 0, + 0, 249, 250, 251, 252, 426, 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 445, 446, 447, 0, 14, 0, 0, 448, 449, 0, - 0, 0, 406, 407, 0, 0, 450, 0, 451, 0, - 452, 453, 408, 409, 410, 411, 412, 0, 0, 0, - 0, 0, 413, 0, 414, 0, 0, 0, 415, 0, - 0, 0, 0, 0, 0, 0, 416, 0, 0, 0, - 0, 0, 417, 0, 0, 418, 0, 0, 419, 0, - 0, 0, 420, 0, 0, 0, 0, 0, 720, 0, - 0, 0, 0, 0, 0, 421, 422, 0, 220, 221, - 222, 0, 224, 225, 226, 227, 228, 423, 230, 231, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 0, - 242, 243, 244, 0, 0, 247, 248, 249, 250, 424, - 425, 426, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 427, 428, 0, 0, 0, 0, + 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 55, 0, 0, 0, 0, 0, 0, 0, 431, + 432, 433, 434, 435, 0, 436, 0, 437, 438, 439, + 440, 441, 442, 443, 444, 56, 445, 0, 0, 0, + 0, 0, 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 429, 430, 431, 432, 433, 0, 434, - 0, 435, 436, 437, 438, 439, 440, 441, 442, 55, - 443, 0, 0, 0, 0, 0, 0, 444, 0, 0, + 447, 448, 449, 0, 14, 0, 0, 450, 451, 0, + 0, 0, 408, 409, 0, 0, 452, 0, 453, 0, + 454, 455, 410, 411, 412, 413, 414, 0, 0, 0, + 0, 0, 415, 0, 416, 0, 0, 0, 417, 0, + 0, 0, 0, 0, 0, 0, 418, 0, 0, 0, + 0, 0, 419, 0, 0, 420, 0, 0, 421, 0, + 0, 0, 422, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 423, 424, 0, 222, 223, + 224, 0, 226, 227, 228, 229, 230, 425, 232, 233, + 234, 235, 236, 237, 238, 239, 240, 241, 242, 0, + 244, 245, 246, 0, 0, 249, 250, 251, 252, 426, + 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 429, 430, 0, 0, 0, 0, + 0, 0, 0, 731, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 55, 0, 0, 0, 0, + 0, 0, 0, 431, 432, 433, 434, 435, 0, 436, + 0, 437, 438, 439, 440, 441, 442, 443, 444, 56, + 445, 0, 0, 0, 0, 0, 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 445, 446, 447, 0, 14, 0, - 0, 448, 449, 0, 0, 0, 406, 407, 0, 0, - 450, 0, 451, 0, 452, 453, 408, 409, 410, 411, - 412, 0, 0, 0, 0, 0, 413, 0, 414, 0, - 0, 0, 415, 0, 0, 0, 0, 0, 0, 0, - 416, 0, 0, 0, 0, 0, 417, 0, 0, 418, - 0, 0, 419, 0, 0, 0, 420, 0, 0, 726, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 421, - 422, 0, 220, 221, 222, 0, 224, 225, 226, 227, - 228, 423, 230, 231, 232, 233, 234, 235, 236, 237, - 238, 239, 240, 0, 242, 243, 244, 0, 0, 247, - 248, 249, 250, 424, 425, 426, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 427, 428, + 0, 0, 0, 0, 447, 448, 449, 0, 14, 0, + 0, 450, 451, 0, 0, 0, 408, 409, 0, 0, + 452, 0, 453, 0, 454, 455, 410, 411, 412, 413, + 414, 0, 0, 868, 0, 0, 415, 0, 416, 0, + 0, 0, 417, 0, 0, 0, 0, 0, 0, 0, + 418, 0, 0, 0, 0, 0, 419, 0, 0, 420, + 0, 0, 421, 0, 0, 0, 422, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 423, + 424, 0, 222, 223, 224, 0, 226, 227, 228, 229, + 230, 425, 232, 233, 234, 235, 236, 237, 238, 239, + 240, 241, 242, 0, 244, 245, 246, 0, 0, 249, + 250, 251, 252, 426, 427, 428, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 55, + 0, 0, 0, 0, 0, 0, 0, 431, 432, 433, + 434, 435, 0, 436, 0, 437, 438, 439, 440, 441, + 442, 443, 444, 56, 445, 0, 0, 0, 0, 0, + 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 447, 448, + 449, 0, 14, 0, 0, 450, 451, 0, 0, 0, + 408, 409, 0, 0, 452, 0, 453, 0, 454, 455, + 410, 411, 412, 413, 414, 0, 0, 0, 0, 0, + 415, 0, 416, 0, 0, 0, 417, 0, 0, 0, + 0, 0, 0, 0, 418, 0, 0, 0, 0, 0, + 419, 0, 0, 420, 0, 0, 421, 0, 0, 0, + 422, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 423, 424, 0, 222, 223, 224, 0, + 226, 227, 228, 229, 230, 425, 232, 233, 234, 235, + 236, 237, 238, 239, 240, 241, 242, 0, 244, 245, + 246, 0, 0, 249, 250, 251, 252, 426, 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 429, 430, 431, - 432, 433, 0, 434, 0, 435, 436, 437, 438, 439, - 440, 441, 442, 55, 443, 0, 0, 0, 0, 0, - 0, 444, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 445, 446, - 447, 0, 14, 0, 0, 448, 449, 0, 0, 0, - 406, 407, 0, 0, 450, 0, 451, 0, 452, 453, - 408, 409, 410, 411, 412, 0, 0, 0, 0, 0, - 413, 0, 414, 0, 0, 0, 415, 0, 0, 0, - 0, 0, 0, 0, 416, 0, 0, 0, 0, 0, - 417, 0, 0, 418, 0, 0, 419, 0, 0, 0, - 420, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 421, 422, 0, 220, 221, 222, 0, - 224, 225, 226, 227, 228, 423, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 0, 242, 243, - 244, 0, 0, 247, 248, 249, 250, 424, 425, 426, + 0, 0, 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 427, 428, 0, 0, 0, 0, 0, 0, - 0, 729, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 55, 0, 0, 0, 0, 0, 0, + 0, 431, 432, 433, 434, 435, 0, 436, 0, 437, + 438, 439, 440, 441, 442, 443, 444, 56, 445, 0, + 0, 0, 0, 0, 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 429, 430, 431, 432, 433, 0, 434, 0, 435, - 436, 437, 438, 439, 440, 441, 442, 55, 443, 0, - 0, 0, 0, 0, 0, 444, 0, 0, 0, 0, + 0, 0, 447, 448, 449, 0, 14, 0, 0, 450, + 451, 0, 0, 0, 408, 409, 0, 0, 452, 0, + 453, 888, 454, 455, 410, 411, 412, 413, 414, 0, + 0, 0, 0, 0, 415, 0, 416, 0, 0, 0, + 417, 0, 0, 0, 0, 0, 0, 0, 418, 0, + 0, 0, 0, 0, 419, 0, 0, 420, 0, 0, + 421, 0, 0, 0, 422, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 423, 424, 0, + 222, 223, 224, 0, 226, 227, 228, 229, 230, 425, + 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, + 242, 0, 244, 245, 246, 0, 0, 249, 250, 251, + 252, 426, 427, 428, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 445, 446, 447, 0, 14, 0, 0, 448, - 449, 0, 0, 0, 406, 407, 0, 0, 450, 0, - 451, 0, 452, 453, 408, 409, 410, 411, 412, 0, - 0, 866, 0, 0, 413, 0, 414, 0, 0, 0, - 415, 0, 0, 0, 0, 0, 0, 0, 416, 0, - 0, 0, 0, 0, 417, 0, 0, 418, 0, 0, - 419, 0, 0, 0, 420, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 421, 422, 0, - 220, 221, 222, 0, 224, 225, 226, 227, 228, 423, - 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 0, 242, 243, 244, 0, 0, 247, 248, 249, - 250, 424, 425, 426, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 427, 428, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 55, 0, 0, + 0, 0, 0, 0, 0, 431, 432, 433, 434, 435, + 0, 436, 0, 437, 438, 439, 440, 441, 442, 443, + 444, 56, 445, 0, 0, 0, 0, 0, 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 974, 0, 447, 448, 449, 0, + 14, 0, 0, 450, 451, 0, 0, 0, 408, 409, + 0, 0, 452, 0, 453, 0, 454, 455, 410, 411, + 412, 413, 414, 0, 0, 0, 0, 0, 415, 0, + 416, 0, 0, 0, 417, 0, 0, 0, 0, 0, + 0, 0, 418, 0, 0, 0, 0, 0, 419, 0, + 0, 420, 0, 0, 421, 0, 0, 0, 422, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 429, 430, 431, 432, 433, - 0, 434, 0, 435, 436, 437, 438, 439, 440, 441, - 442, 55, 443, 0, 0, 0, 0, 0, 0, 444, + 0, 423, 424, 0, 222, 223, 224, 0, 226, 227, + 228, 229, 230, 425, 232, 233, 234, 235, 236, 237, + 238, 239, 240, 241, 242, 0, 244, 245, 246, 0, + 0, 249, 250, 251, 252, 426, 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 445, 446, 447, 0, - 14, 0, 0, 448, 449, 0, 0, 0, 406, 407, - 0, 0, 450, 0, 451, 0, 452, 453, 408, 409, - 410, 411, 412, 0, 0, 0, 0, 0, 413, 0, - 414, 0, 0, 0, 415, 0, 0, 0, 0, 0, - 0, 0, 416, 0, 0, 0, 0, 0, 417, 0, - 0, 418, 0, 0, 419, 0, 0, 0, 420, 0, + 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 421, 422, 0, 220, 221, 222, 0, 224, 225, - 226, 227, 228, 423, 230, 231, 232, 233, 234, 235, - 236, 237, 238, 239, 240, 0, 242, 243, 244, 0, - 0, 247, 248, 249, 250, 424, 425, 426, 0, 0, + 0, 55, 0, 0, 0, 0, 0, 0, 0, 431, + 432, 433, 434, 435, 0, 436, 0, 437, 438, 439, + 440, 441, 442, 443, 444, 56, 445, 0, 0, 0, + 0, 0, 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 447, 448, 449, 0, 14, 0, 0, 450, 451, 0, + 0, 0, 408, 409, 0, 0, 452, 0, 453, 1145, + 454, 455, 410, 411, 412, 413, 414, 0, 0, 0, + 0, 0, 415, 0, 416, 0, 0, 0, 417, 0, + 0, 0, 0, 0, 0, 0, 418, 0, 0, 0, + 0, 0, 419, 0, 0, 420, 0, 0, 421, 0, + 0, 0, 422, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 423, 424, 0, 222, 223, + 224, 0, 226, 227, 228, 229, 230, 425, 232, 233, + 234, 235, 236, 237, 238, 239, 240, 241, 242, 0, + 244, 245, 246, 0, 0, 249, 250, 251, 252, 426, 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 429, - 430, 431, 432, 433, 0, 434, 0, 435, 436, 437, - 438, 439, 440, 441, 442, 55, 443, 0, 0, 0, - 0, 0, 0, 444, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 445, 446, 447, 0, 14, 0, 0, 448, 449, 0, - 0, 0, 406, 407, 0, 0, 450, 0, 451, 886, - 452, 453, 408, 409, 410, 411, 412, 0, 0, 0, - 0, 0, 413, 0, 414, 0, 0, 0, 415, 0, - 0, 0, 0, 0, 0, 0, 416, 0, 0, 0, - 0, 0, 417, 0, 0, 418, 0, 0, 419, 0, - 0, 0, 420, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 421, 422, 0, 220, 221, - 222, 0, 224, 225, 226, 227, 228, 423, 230, 231, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 0, - 242, 243, 244, 0, 0, 247, 248, 249, 250, 424, - 425, 426, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 427, 428, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 429, 430, 431, 432, 433, 0, 434, - 0, 435, 436, 437, 438, 439, 440, 441, 442, 55, - 443, 0, 0, 0, 0, 0, 0, 444, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 972, 0, 445, 446, 447, 0, 14, 0, - 0, 448, 449, 0, 0, 0, 406, 407, 0, 0, - 450, 0, 451, 0, 452, 453, 408, 409, 410, 411, - 412, 0, 0, 0, 0, 0, 413, 0, 414, 0, - 0, 0, 415, 0, 0, 0, 0, 0, 0, 0, - 416, 0, 0, 0, 0, 0, 417, 0, 0, 418, - 0, 0, 419, 0, 0, 0, 420, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 421, - 422, 0, 220, 221, 222, 0, 224, 225, 226, 227, - 228, 423, 230, 231, 232, 233, 234, 235, 236, 237, - 238, 239, 240, 0, 242, 243, 244, 0, 0, 247, - 248, 249, 250, 424, 425, 426, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 427, 428, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 55, 0, 0, 0, 0, + 0, 0, 0, 431, 432, 433, 434, 435, 0, 436, + 0, 437, 438, 439, 440, 441, 442, 443, 444, 56, + 445, 0, 0, 0, 0, 0, 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 429, 430, 431, - 432, 433, 0, 434, 0, 435, 436, 437, 438, 439, - 440, 441, 442, 55, 443, 0, 0, 0, 0, 0, - 0, 444, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 445, 446, - 447, 0, 14, 0, 0, 448, 449, 0, 0, 0, - 406, 407, 0, 0, 450, 0, 451, 1143, 452, 453, - 408, 409, 410, 411, 412, 0, 0, 0, 0, 0, - 413, 0, 414, 0, 0, 0, 415, 0, 0, 0, - 0, 0, 0, 0, 416, 0, 0, 0, 0, 0, - 417, 0, 0, 418, 0, 0, 419, 0, 0, 0, - 420, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 421, 422, 0, 220, 221, 222, 0, - 224, 225, 226, 227, 228, 423, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 0, 242, 243, - 244, 0, 0, 247, 248, 249, 250, 424, 425, 426, + 0, 0, 0, 0, 447, 448, 449, 0, 14, 0, + 0, 450, 451, 0, 0, 0, 408, 409, 0, 0, + 452, 0, 453, 1154, 454, 455, 410, 411, 412, 413, + 414, 0, 0, 0, 0, 0, 415, 0, 416, 0, + 0, 0, 417, 0, 0, 0, 0, 0, 0, 0, + 418, 0, 0, 0, 0, 0, 419, 0, 0, 420, + 0, 0, 421, 0, 0, 0, 422, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 423, + 424, 0, 222, 223, 224, 0, 226, 227, 228, 229, + 230, 425, 232, 233, 234, 235, 236, 237, 238, 239, + 240, 241, 242, 0, 244, 245, 246, 0, 0, 249, + 250, 251, 252, 426, 427, 428, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 427, 428, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 55, + 0, 0, 0, 0, 0, 0, 0, 431, 432, 433, + 434, 435, 0, 436, 0, 437, 438, 439, 440, 441, + 442, 443, 444, 56, 445, 0, 0, 0, 0, 0, + 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 447, 448, + 449, 0, 14, 0, 0, 450, 451, 0, 0, 0, + 408, 409, 0, 0, 452, 0, 453, 1199, 454, 455, + 410, 411, 412, 413, 414, 0, 0, 0, 0, 0, + 415, 0, 416, 0, 0, 0, 417, 0, 0, 0, + 0, 0, 0, 0, 418, 0, 0, 0, 0, 0, + 419, 0, 0, 420, 0, 0, 421, 0, 0, 0, + 422, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 423, 424, 0, 222, 223, 224, 0, + 226, 227, 228, 229, 230, 425, 232, 233, 234, 235, + 236, 237, 238, 239, 240, 241, 242, 0, 244, 245, + 246, 0, 0, 249, 250, 251, 252, 426, 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 429, 430, 431, 432, 433, 0, 434, 0, 435, - 436, 437, 438, 439, 440, 441, 442, 55, 443, 0, - 0, 0, 0, 0, 0, 444, 0, 0, 0, 0, + 0, 0, 0, 55, 0, 0, 0, 0, 0, 0, + 0, 431, 432, 433, 434, 435, 0, 436, 0, 437, + 438, 439, 440, 441, 442, 443, 444, 56, 445, 0, + 0, 0, 0, 0, 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 445, 446, 447, 0, 14, 0, 0, 448, - 449, 0, 0, 0, 406, 407, 0, 0, 450, 0, - 451, 1152, 452, 453, 408, 409, 410, 411, 412, 0, - 0, 0, 0, 0, 413, 0, 414, 0, 0, 0, - 415, 0, 0, 0, 0, 0, 0, 0, 416, 0, - 0, 0, 0, 0, 417, 0, 0, 418, 0, 0, - 419, 0, 0, 0, 420, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 421, 422, 0, - 220, 221, 222, 0, 224, 225, 226, 227, 228, 423, - 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 0, 242, 243, 244, 0, 0, 247, 248, 249, - 250, 424, 425, 426, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 427, 428, 0, 0, + 0, 0, 447, 448, 449, 0, 14, 0, 0, 450, + 451, 0, 0, 0, 408, 409, 0, 0, 452, 0, + 453, 1271, 454, 455, 410, 411, 412, 413, 414, 0, + 0, 0, 0, 0, 415, 0, 416, 0, 0, 0, + 417, 0, 0, 0, 0, 0, 0, 0, 418, 0, + 0, 0, 0, 0, 419, 0, 0, 420, 0, 0, + 421, 0, 0, 0, 422, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 423, 424, 0, + 222, 223, 224, 0, 226, 227, 228, 229, 230, 425, + 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, + 242, 0, 244, 245, 246, 0, 0, 249, 250, 251, + 252, 426, 427, 428, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 429, 430, 0, 0, + 0, 0, 0, 0, 0, 1287, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 55, 0, 0, + 0, 0, 0, 0, 0, 431, 432, 433, 434, 435, + 0, 436, 0, 437, 438, 439, 440, 441, 442, 443, + 444, 56, 445, 0, 0, 0, 0, 0, 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 447, 448, 449, 0, + 14, 0, 0, 450, 451, 0, 0, 0, 408, 409, + 0, 0, 452, 0, 453, 0, 454, 455, 410, 411, + 412, 413, 414, 0, 0, 0, 0, 0, 415, 0, + 416, 0, 0, 0, 417, 0, 0, 0, 0, 0, + 0, 0, 418, 0, 0, 0, 0, 0, 419, 0, + 0, 420, 0, 0, 421, 0, 0, 0, 422, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 429, 430, 431, 432, 433, - 0, 434, 0, 435, 436, 437, 438, 439, 440, 441, - 442, 55, 443, 0, 0, 0, 0, 0, 0, 444, + 0, 423, 424, 0, 222, 223, 224, 0, 226, 227, + 228, 229, 230, 425, 232, 233, 234, 235, 236, 237, + 238, 239, 240, 241, 242, 0, 244, 245, 246, 0, + 0, 249, 250, 251, 252, 426, 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 445, 446, 447, 0, - 14, 0, 0, 448, 449, 0, 0, 0, 406, 407, - 0, 0, 450, 0, 451, 1197, 452, 453, 408, 409, - 410, 411, 412, 0, 0, 0, 0, 0, 413, 0, - 414, 0, 0, 0, 415, 0, 0, 0, 0, 0, - 0, 0, 416, 0, 0, 0, 0, 0, 417, 0, - 0, 418, 0, 0, 419, 0, 0, 0, 420, 0, + 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 421, 422, 0, 220, 221, 222, 0, 224, 225, - 226, 227, 228, 423, 230, 231, 232, 233, 234, 235, - 236, 237, 238, 239, 240, 0, 242, 243, 244, 0, - 0, 247, 248, 249, 250, 424, 425, 426, 0, 0, + 0, 55, 0, 0, 0, 0, 0, 0, 0, 431, + 432, 433, 434, 435, 0, 436, 0, 437, 438, 439, + 440, 441, 442, 443, 444, 56, 445, 0, 0, 0, + 0, 0, 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 447, 448, 449, 0, 14, 0, 0, 450, 451, 0, + 0, 0, 408, 409, 0, 0, 452, 0, 453, 0, + 454, 455, 410, 411, 412, 413, 414, 0, 0, 0, + 0, 0, 415, 0, 416, 0, 0, 0, 417, 0, + 0, 0, 0, 0, 0, 0, 418, 0, 0, 0, + 0, 0, 419, 0, 0, 420, 0, 0, 421, 0, + 0, 0, 422, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 423, 424, 0, 222, 223, + 224, 0, 226, 227, 228, 229, 230, 425, 232, 233, + 234, 235, 236, 237, 238, 239, 240, 241, 242, 0, + 244, 245, 246, 0, 0, 249, 250, 251, 252, 426, 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 429, - 430, 431, 432, 433, 0, 434, 0, 435, 436, 437, - 438, 439, 440, 441, 442, 55, 443, 0, 0, 0, - 0, 0, 0, 444, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 445, 446, 447, 0, 14, 0, 0, 448, 449, 0, - 0, 0, 406, 407, 0, 0, 450, 0, 451, 1269, - 452, 453, 408, 409, 410, 411, 412, 0, 0, 0, - 0, 0, 413, 0, 414, 0, 0, 0, 415, 0, - 0, 0, 0, 0, 0, 0, 416, 0, 0, 0, - 0, 0, 417, 0, 0, 418, 0, 0, 419, 0, - 0, 0, 420, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 421, 422, 0, 220, 221, - 222, 0, 224, 225, 226, 227, 228, 423, 230, 231, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 0, - 242, 243, 244, 0, 0, 247, 248, 249, 250, 424, - 425, 426, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 427, 428, 0, 0, 0, 0, - 0, 0, 0, 1285, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 429, 430, 431, 432, 433, 0, 434, - 0, 435, 436, 437, 438, 439, 440, 441, 442, 55, - 443, 0, 0, 0, 0, 0, 0, 444, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 445, 446, 447, 0, 14, 0, - 0, 448, 449, 0, 0, 0, 406, 407, 0, 0, - 450, 0, 451, 0, 452, 453, 408, 409, 410, 411, - 412, 0, 0, 0, 0, 0, 413, 0, 414, 0, - 0, 0, 415, 0, 0, 0, 0, 0, 0, 0, - 416, 0, 0, 0, 0, 0, 417, 0, 0, 418, - 0, 0, 419, 0, 0, 0, 420, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 421, - 422, 0, 220, 221, 222, 0, 224, 225, 226, 227, - 228, 423, 230, 231, 232, 233, 234, 235, 236, 237, - 238, 239, 240, 0, 242, 243, 244, 0, 0, 247, - 248, 249, 250, 424, 425, 426, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 427, 428, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 429, 430, 431, - 432, 433, 0, 434, 0, 435, 436, 437, 438, 439, - 440, 441, 442, 55, 443, 0, 0, 0, 0, 0, - 0, 444, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 445, 446, - 447, 0, 14, 0, 0, 448, 449, 0, 0, 0, - 406, 407, 0, 0, 450, 0, 451, 0, 452, 453, - 408, 409, 410, 411, 412, 0, 0, 0, 0, 0, - 413, 0, 414, 0, 0, 0, 415, 0, 0, 0, - 0, 0, 0, 0, 416, 0, 0, 0, 0, 0, - 417, 0, 0, 418, 0, 0, 419, 0, 0, 0, - 420, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 421, 422, 0, 220, 221, 222, 0, - 224, 225, 226, 227, 228, 423, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 0, 242, 243, - 244, 0, 0, 247, 248, 249, 250, 424, 425, 426, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 427, 428, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 429, 430, 431, 432, 433, 0, 434, 0, 435, - 436, 437, 438, 439, 440, 441, 442, 55, 443, 641, - 642, 0, 0, 214, 0, 444, 0, 0, 0, 215, - 0, 0, 0, 0, 0, 216, 0, 0, 0, 0, - 0, 0, 445, 446, 447, 217, 14, 0, 0, 448, - 449, 0, 0, 218, 0, 641, 642, 0, 1128, 0, - 451, 0, 452, 453, 0, 0, 0, 0, 219, 0, - 0, 0, 0, 0, 0, 220, 221, 222, 223, 224, + 0, 0, 0, 0, 0, 55, 0, 0, 0, 0, + 0, 0, 0, 431, 432, 433, 434, 435, 0, 436, + 0, 437, 438, 439, 440, 441, 442, 443, 444, 56, + 445, 0, 0, 0, 0, 216, 0, 446, 0, 0, + 0, 217, 0, 0, 0, 0, 0, 218, 0, 0, + 0, 0, 0, 0, 447, 448, 449, 219, 14, 0, + 0, 450, 451, 0, 0, 220, 0, 0, 0, 0, + 1130, 0, 453, 0, 454, 455, 0, 0, 0, 0, + 221, 0, 0, 0, 0, 0, 0, 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, 0, 0, - 0, 0, 0, 643, 644, 645, 646, 647, 0, 0, - 648, 649, 650, 651, 0, 652, 653, 654, 655, 656, - 0, 657, 658, 0, 0, 0, 0, 659, 660, 661, - 0, 0, 0, 662, 0, 0, 0, 641, 642, 643, - 644, 645, 646, 647, 0, 253, 648, 649, 650, 651, - 0, 652, 653, 654, 655, 656, 507, 657, 658, 0, - 0, 0, 0, 659, 660, 661, 0, 0, 663, 662, - 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 674, 675, 0, 0, 693, 0, 0, 0, 0, 0, - 0, 254, 0, 0, 663, 0, 664, 665, 666, 667, - 668, 669, 670, 671, 672, 673, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 674, 675, 0, 0, - 768, 643, 644, 645, 646, 647, 641, 642, 648, 649, - 650, 651, 0, 652, 653, 654, 655, 656, 0, 657, - 658, 0, 0, 0, 0, 659, 660, 661, 0, 0, - 0, 662, 0, 0, 0, 0, 0, 641, 642, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 663, 0, 664, 665, - 666, 667, 668, 669, 670, 671, 672, 673, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 674, 675, - 0, 0, 910, 0, 0, 0, 0, 0, 0, 0, - 643, 644, 645, 646, 647, 0, 0, 648, 649, 650, - 651, 0, 652, 653, 654, 655, 656, 0, 657, 658, - 0, 0, 0, 0, 659, 660, 661, 0, 0, 0, - 662, 643, 644, 645, 646, 647, 641, 642, 648, 649, - 650, 651, 0, 652, 653, 654, 655, 656, 0, 657, - 658, 0, 0, 0, 0, 659, 660, 661, 0, 0, - 0, 662, 0, 0, 0, 663, 0, 664, 665, 666, - 667, 668, 669, 670, 671, 672, 673, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 674, 675, 0, - 0, 983, 0, 0, 0, 0, 663, 0, 664, 665, - 666, 667, 668, 669, 670, 671, 672, 673, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 674, 675, - 0, 0, 986, 0, 0, 0, 0, 0, 641, 642, - 643, 644, 645, 646, 647, 0, 0, 648, 649, 650, - 651, 0, 652, 653, 654, 655, 656, 0, 657, 658, - 0, 0, 0, 0, 659, 660, 661, 0, 0, 0, - 662, 641, 642, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, + 0, 0, 0, 643, 644, 0, 0, 216, 0, 0, + 0, 0, 0, 217, 0, 0, 0, 0, 0, 218, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 219, + 0, 0, 0, 0, 55, 0, 0, 220, 0, 643, + 644, 0, 0, 0, 0, 0, 0, 255, 0, 0, + 0, 0, 221, 0, 0, 0, 0, 0, 56, 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, 0, 0, 0, 0, 0, 645, 646, 647, + 648, 649, 0, 256, 650, 651, 652, 653, 0, 654, + 655, 656, 657, 658, 0, 659, 660, 0, 0, 0, + 0, 661, 662, 663, 0, 0, 55, 664, 0, 0, + 0, 643, 644, 645, 646, 647, 648, 649, 0, 255, + 650, 651, 652, 653, 0, 654, 655, 656, 657, 658, + 509, 659, 660, 0, 0, 0, 0, 661, 662, 663, + 0, 0, 665, 664, 666, 667, 668, 669, 670, 671, + 672, 673, 674, 675, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 676, 677, 0, 0, 695, 0, + 0, 0, 0, 0, 0, 256, 0, 0, 665, 0, + 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 663, 0, 664, 665, 666, - 667, 668, 669, 670, 671, 672, 673, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 674, 675, 0, - 0, 995, 643, 644, 645, 646, 647, 0, 0, 648, - 649, 650, 651, 0, 652, 653, 654, 655, 656, 0, - 657, 658, 0, 0, 0, 0, 659, 660, 661, 0, - 0, 0, 662, 641, 642, 643, 644, 645, 646, 647, - 0, 0, 648, 649, 650, 651, 0, 652, 653, 654, - 655, 656, 0, 657, 658, 0, 0, 0, 0, 659, - 660, 661, 0, 0, 0, 662, 0, 663, 0, 664, - 665, 666, 667, 668, 669, 670, 671, 672, 673, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 674, - 675, 0, 0, 996, 0, 0, 0, 0, 0, 0, - 663, 0, 664, 665, 666, 667, 668, 669, 670, 671, - 672, 673, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 674, 675, 0, 0, 997, 643, 644, 645, - 646, 647, 641, 642, 648, 649, 650, 651, 0, 652, - 653, 654, 655, 656, 0, 657, 658, 0, 0, 0, - 0, 659, 660, 661, 0, 0, 0, 662, 0, 0, - 0, 0, 0, 641, 642, 0, 0, 0, 0, 0, + 676, 677, 0, 0, 770, 645, 646, 647, 648, 649, + 643, 644, 650, 651, 652, 653, 0, 654, 655, 656, + 657, 658, 0, 659, 660, 0, 0, 0, 0, 661, + 662, 663, 0, 0, 0, 664, 0, 0, 0, 0, + 0, 643, 644, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 663, 0, 664, 665, 666, 667, 668, 669, - 670, 671, 672, 673, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 674, 675, 0, 0, 998, 0, - 0, 0, 0, 0, 0, 0, 643, 644, 645, 646, - 647, 0, 0, 648, 649, 650, 651, 0, 652, 653, - 654, 655, 656, 0, 657, 658, 0, 0, 0, 0, - 659, 660, 661, 0, 0, 0, 662, 643, 644, 645, - 646, 647, 641, 642, 648, 649, 650, 651, 0, 652, - 653, 654, 655, 656, 0, 657, 658, 0, 0, 0, - 0, 659, 660, 661, 0, 0, 0, 662, 0, 0, - 0, 663, 0, 664, 665, 666, 667, 668, 669, 670, - 671, 672, 673, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 674, 675, 0, 0, 999, 0, 0, - 0, 0, 663, 0, 664, 665, 666, 667, 668, 669, - 670, 671, 672, 673, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 674, 675, 0, 0, 1000, 0, - 0, 0, 0, 0, 641, 642, 643, 644, 645, 646, - 647, 0, 0, 648, 649, 650, 651, 0, 652, 653, - 654, 655, 656, 0, 657, 658, 0, 0, 0, 0, - 659, 660, 661, 0, 0, 0, 662, 641, 642, 0, + 665, 0, 666, 667, 668, 669, 670, 671, 672, 673, + 674, 675, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 676, 677, 0, 0, 912, 0, 0, 0, + 0, 0, 0, 0, 645, 646, 647, 648, 649, 0, + 0, 650, 651, 652, 653, 0, 654, 655, 656, 657, + 658, 0, 659, 660, 0, 0, 0, 0, 661, 662, + 663, 0, 0, 0, 664, 645, 646, 647, 648, 649, + 643, 644, 650, 651, 652, 653, 0, 654, 655, 656, + 657, 658, 0, 659, 660, 0, 0, 0, 0, 661, + 662, 663, 0, 0, 0, 664, 0, 0, 0, 665, + 0, 666, 667, 668, 669, 670, 671, 672, 673, 674, + 675, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 676, 677, 0, 0, 985, 0, 0, 0, 0, + 665, 0, 666, 667, 668, 669, 670, 671, 672, 673, + 674, 675, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 676, 677, 0, 0, 988, 0, 0, 0, + 0, 0, 643, 644, 645, 646, 647, 648, 649, 0, + 0, 650, 651, 652, 653, 0, 654, 655, 656, 657, + 658, 0, 659, 660, 0, 0, 0, 0, 661, 662, + 663, 0, 0, 0, 664, 643, 644, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 665, + 0, 666, 667, 668, 669, 670, 671, 672, 673, 674, + 675, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 676, 677, 0, 0, 997, 645, 646, 647, 648, + 649, 0, 0, 650, 651, 652, 653, 0, 654, 655, + 656, 657, 658, 0, 659, 660, 0, 0, 0, 0, + 661, 662, 663, 0, 0, 0, 664, 643, 644, 645, + 646, 647, 648, 649, 0, 0, 650, 651, 652, 653, + 0, 654, 655, 656, 657, 658, 0, 659, 660, 0, + 0, 0, 0, 661, 662, 663, 0, 0, 0, 664, + 0, 665, 0, 666, 667, 668, 669, 670, 671, 672, + 673, 674, 675, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 676, 677, 0, 0, 998, 0, 0, + 0, 0, 0, 0, 665, 0, 666, 667, 668, 669, + 670, 671, 672, 673, 674, 675, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 676, 677, 0, 0, + 999, 645, 646, 647, 648, 649, 643, 644, 650, 651, + 652, 653, 0, 654, 655, 656, 657, 658, 0, 659, + 660, 0, 0, 0, 0, 661, 662, 663, 0, 0, + 0, 664, 0, 0, 0, 0, 0, 643, 644, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 663, 0, 664, 665, 666, 667, 668, 669, 670, - 671, 672, 673, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 674, 675, 0, 0, 1075, 643, 644, - 645, 646, 647, 0, 0, 648, 649, 650, 651, 0, - 652, 653, 654, 655, 656, 0, 657, 658, 0, 0, - 0, 0, 659, 660, 661, 0, 0, 0, 662, 641, - 642, 643, 644, 645, 646, 647, 0, 0, 648, 649, - 650, 651, 0, 652, 653, 654, 655, 656, 0, 657, - 658, 0, 0, 0, 0, 659, 660, 661, 0, 0, - 0, 662, 0, 663, 0, 664, 665, 666, 667, 668, - 669, 670, 671, 672, 673, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 674, 675, 0, 0, 1095, - 0, 0, 0, 0, 0, 0, 663, 0, 664, 665, - 666, 667, 668, 669, 670, 671, 672, 673, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 674, 675, - 0, 0, 1162, 643, 644, 645, 646, 647, 641, 642, - 648, 649, 650, 651, 0, 652, 653, 654, 655, 656, - 0, 657, 658, 0, 0, 0, 0, 659, 660, 661, - 0, 0, 0, 662, 0, 0, 0, 0, 0, 641, - 642, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 663, 0, - 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, + 0, 0, 0, 0, 0, 0, 665, 0, 666, 667, + 668, 669, 670, 671, 672, 673, 674, 675, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 676, 677, + 0, 0, 1000, 0, 0, 0, 0, 0, 0, 0, + 645, 646, 647, 648, 649, 0, 0, 650, 651, 652, + 653, 0, 654, 655, 656, 657, 658, 0, 659, 660, + 0, 0, 0, 0, 661, 662, 663, 0, 0, 0, + 664, 645, 646, 647, 648, 649, 643, 644, 650, 651, + 652, 653, 0, 654, 655, 656, 657, 658, 0, 659, + 660, 0, 0, 0, 0, 661, 662, 663, 0, 0, + 0, 664, 0, 0, 0, 665, 0, 666, 667, 668, + 669, 670, 671, 672, 673, 674, 675, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 676, 677, 0, + 0, 1001, 0, 0, 0, 0, 665, 0, 666, 667, + 668, 669, 670, 671, 672, 673, 674, 675, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 676, 677, + 0, 0, 1002, 0, 0, 0, 0, 0, 643, 644, + 645, 646, 647, 648, 649, 0, 0, 650, 651, 652, + 653, 0, 654, 655, 656, 657, 658, 0, 659, 660, + 0, 0, 0, 0, 661, 662, 663, 0, 0, 0, + 664, 643, 644, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 674, 675, 0, 0, 1168, 0, 0, 0, 0, 0, - 0, 0, 643, 644, 645, 646, 647, 0, 0, 648, - 649, 650, 651, 0, 652, 653, 654, 655, 656, 0, - 657, 658, 0, 0, 0, 0, 659, 660, 661, 0, - 0, 0, 662, 643, 644, 645, 646, 647, 641, 642, - 648, 649, 650, 651, 0, 652, 653, 654, 655, 656, - 0, 657, 658, 0, 0, 0, 0, 659, 660, 661, - 0, 0, 0, 662, 0, 0, 0, 663, 0, 664, - 665, 666, 667, 668, 669, 670, 671, 672, 673, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 674, - 675, 0, 0, 1202, 0, 0, 0, 0, 663, 0, - 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 674, 675, 0, 0, 1203, 0, 0, 0, 0, 0, - 641, 642, 643, 644, 645, 646, 647, 0, 0, 648, - 649, 650, 651, 0, 652, 653, 654, 655, 656, 0, - 657, 658, 0, 0, 0, 0, 659, 660, 661, 0, - 0, 0, 662, 641, 642, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 665, 0, 666, 667, 668, + 669, 670, 671, 672, 673, 674, 675, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 676, 677, 0, + 0, 1077, 645, 646, 647, 648, 649, 0, 0, 650, + 651, 652, 653, 0, 654, 655, 656, 657, 658, 0, + 659, 660, 0, 0, 0, 0, 661, 662, 663, 0, + 0, 0, 664, 643, 644, 645, 646, 647, 648, 649, + 0, 0, 650, 651, 652, 653, 0, 654, 655, 656, + 657, 658, 0, 659, 660, 0, 0, 0, 0, 661, + 662, 663, 0, 0, 0, 664, 0, 665, 0, 666, + 667, 668, 669, 670, 671, 672, 673, 674, 675, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 676, + 677, 0, 0, 1097, 0, 0, 0, 0, 0, 0, + 665, 0, 666, 667, 668, 669, 670, 671, 672, 673, + 674, 675, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 676, 677, 0, 0, 1164, 645, 646, 647, + 648, 649, 643, 644, 650, 651, 652, 653, 0, 654, + 655, 656, 657, 658, 0, 659, 660, 0, 0, 0, + 0, 661, 662, 663, 0, 0, 0, 664, 0, 0, + 0, 0, 0, 643, 644, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 663, 0, 664, - 665, 666, 667, 668, 669, 670, 671, 672, 673, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 674, - 675, 0, 0, 1206, 643, 644, 645, 646, 647, 0, - 0, 648, 649, 650, 651, 0, 652, 653, 654, 655, - 656, 0, 657, 658, 0, 0, 0, 0, 659, 660, - 661, 0, 0, 0, 662, 641, 642, 643, 644, 645, - 646, 647, 0, 0, 648, 649, 650, 651, 0, 652, - 653, 654, 655, 656, 0, 657, 658, 0, 0, 0, - 0, 659, 660, 661, 0, 0, 0, 662, 0, 663, - 0, 664, 665, 666, 667, 668, 669, 670, 671, 672, - 673, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 674, 675, 0, 0, 1223, 0, 0, 0, 0, - 0, 0, 663, 0, 664, 665, 666, 667, 668, 669, - 670, 671, 672, 673, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 674, 675, 0, 0, 1225, 643, - 644, 645, 646, 647, 641, 642, 648, 649, 650, 651, - 0, 652, 653, 654, 655, 656, 0, 657, 658, 0, - 0, 0, 0, 659, 660, 661, 0, 0, 0, 662, - 0, 0, 0, 0, 0, 641, 642, 0, 0, 0, + 0, 0, 665, 0, 666, 667, 668, 669, 670, 671, + 672, 673, 674, 675, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 676, 677, 0, 0, 1170, 0, + 0, 0, 0, 0, 0, 0, 645, 646, 647, 648, + 649, 0, 0, 650, 651, 652, 653, 0, 654, 655, + 656, 657, 658, 0, 659, 660, 0, 0, 0, 0, + 661, 662, 663, 0, 0, 0, 664, 645, 646, 647, + 648, 649, 643, 644, 650, 651, 652, 653, 0, 654, + 655, 656, 657, 658, 0, 659, 660, 0, 0, 0, + 0, 661, 662, 663, 0, 0, 0, 664, 0, 0, + 0, 665, 0, 666, 667, 668, 669, 670, 671, 672, + 673, 674, 675, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 676, 677, 0, 0, 1204, 0, 0, + 0, 0, 665, 0, 666, 667, 668, 669, 670, 671, + 672, 673, 674, 675, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 676, 677, 0, 0, 1205, 0, + 0, 0, 0, 0, 643, 644, 645, 646, 647, 648, + 649, 0, 0, 650, 651, 652, 653, 0, 654, 655, + 656, 657, 658, 0, 659, 660, 0, 0, 0, 0, + 661, 662, 663, 0, 0, 0, 664, 643, 644, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 663, 0, 664, 665, 666, 667, - 668, 669, 670, 671, 672, 673, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 674, 675, 0, 0, - 1227, 0, 0, 0, 0, 0, 0, 0, 643, 644, - 645, 646, 647, 0, 0, 648, 649, 650, 651, 0, - 652, 653, 654, 655, 656, 0, 657, 658, 0, 0, - 0, 0, 659, 660, 661, 0, 0, 0, 662, 643, - 644, 645, 646, 647, 641, 642, 648, 649, 650, 651, - 0, 652, 653, 654, 655, 656, 0, 657, 658, 0, - 0, 0, 0, 659, 660, 661, 0, 0, 0, 662, - 0, 0, 0, 663, 0, 664, 665, 666, 667, 668, - 669, 670, 671, 672, 673, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 674, 675, 0, 0, 1231, - 0, 0, 0, 0, 663, 0, 664, 665, 666, 667, - 668, 669, 670, 671, 672, 673, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 674, 675, 0, 0, - 1291, 0, 0, 0, 0, 0, 641, 642, 643, 644, - 645, 646, 647, 0, 0, 648, 649, 650, 651, 0, - 652, 653, 654, 655, 656, 0, 657, 658, 0, 0, - 0, 0, 659, 660, 661, 0, 0, 0, 662, 641, - 642, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 665, 0, 666, 667, 668, 669, 670, 671, 672, + 673, 674, 675, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 676, 677, 0, 0, 1208, 645, 646, + 647, 648, 649, 0, 0, 650, 651, 652, 653, 0, + 654, 655, 656, 657, 658, 0, 659, 660, 0, 0, + 0, 0, 661, 662, 663, 0, 0, 0, 664, 643, + 644, 645, 646, 647, 648, 649, 0, 0, 650, 651, + 652, 653, 0, 654, 655, 656, 657, 658, 0, 659, + 660, 0, 0, 0, 0, 661, 662, 663, 0, 0, + 0, 664, 0, 665, 0, 666, 667, 668, 669, 670, + 671, 672, 673, 674, 675, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 676, 677, 0, 0, 1225, + 0, 0, 0, 0, 0, 0, 665, 0, 666, 667, + 668, 669, 670, 671, 672, 673, 674, 675, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 676, 677, + 0, 0, 1227, 645, 646, 647, 648, 649, 643, 644, + 650, 651, 652, 653, 0, 654, 655, 656, 657, 658, + 0, 659, 660, 0, 0, 0, 0, 661, 662, 663, + 0, 0, 0, 664, 0, 0, 0, 0, 0, 643, + 644, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 663, 0, 664, 665, 666, 667, 668, - 669, 670, 671, 672, 673, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 674, 675, 0, 0, 1292, - 643, 644, 645, 646, 647, 0, 0, 648, 649, 650, - 651, 0, 652, 653, 654, 655, 656, 0, 657, 658, - 0, 0, 0, 0, 659, 660, 661, 0, 0, 0, - 662, 641, 642, 643, 644, 645, 646, 647, 0, 0, - 648, 649, 650, 651, 0, 652, 653, 654, 655, 656, - 0, 657, 658, 0, 0, 0, 0, 659, 660, 661, - 0, 0, 0, 662, 0, 663, 0, 664, 665, 666, - 667, 668, 669, 670, 671, 672, 673, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 674, 675, 0, - 0, 1293, 0, 0, 0, 0, 0, 0, 663, 0, - 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, + 0, 0, 0, 0, 0, 0, 0, 0, 665, 0, + 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 674, 675, 0, 0, 1313, 643, 644, 645, 646, 647, - 641, 642, 648, 649, 650, 651, 0, 652, 653, 654, - 655, 656, 0, 657, 658, 0, 0, 0, 0, 659, - 660, 661, 0, 0, 0, 662, 0, 0, 0, 0, - 0, 641, 642, 0, 0, 0, 0, 0, 0, 0, + 676, 677, 0, 0, 1229, 0, 0, 0, 0, 0, + 0, 0, 645, 646, 647, 648, 649, 0, 0, 650, + 651, 652, 653, 0, 654, 655, 656, 657, 658, 0, + 659, 660, 0, 0, 0, 0, 661, 662, 663, 0, + 0, 0, 664, 645, 646, 647, 648, 649, 643, 644, + 650, 651, 652, 653, 0, 654, 655, 656, 657, 658, + 0, 659, 660, 0, 0, 0, 0, 661, 662, 663, + 0, 0, 0, 664, 0, 0, 0, 665, 0, 666, + 667, 668, 669, 670, 671, 672, 673, 674, 675, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 676, + 677, 0, 0, 1233, 0, 0, 0, 0, 665, 0, + 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 676, 677, 0, 0, 1293, 0, 0, 0, 0, 0, + 643, 644, 645, 646, 647, 648, 649, 0, 0, 650, + 651, 652, 653, 0, 654, 655, 656, 657, 658, 0, + 659, 660, 0, 0, 0, 0, 661, 662, 663, 0, + 0, 0, 664, 643, 644, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 663, 0, 664, 665, 666, 667, 668, 669, 670, 671, - 672, 673, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 674, 675, 0, 0, 1324, 0, 0, 0, - 0, 0, 0, 0, 643, 644, 645, 646, 647, 0, - 0, 648, 649, 650, 651, 0, 652, 653, 654, 655, - 656, 0, 657, 658, 0, 0, 0, 0, 659, 660, - 661, 0, 0, 0, 662, 643, 644, 645, 646, 647, - 641, 642, 648, 649, 650, 651, 0, 652, 653, 654, - 655, 656, 0, 657, 658, 0, 0, 0, 0, 659, - 660, 661, 0, 0, 0, 662, 0, 0, 0, 663, - 0, 664, 665, 666, 667, 668, 669, 670, 671, 672, - 673, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 674, 675, 0, 0, 1334, 0, 0, 0, 0, - 663, 0, 664, 665, 666, 667, 668, 669, 670, 671, - 672, 673, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 674, 675, 0, 0, 1364, 0, 0, 0, - 0, 0, 641, 642, 643, 644, 645, 646, 647, 0, - 0, 648, 649, 650, 651, 0, 652, 653, 654, 655, - 656, 0, 657, 658, 0, 0, 0, 0, 659, 660, - 661, 0, 0, 0, 662, 641, 642, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 665, 0, 666, + 667, 668, 669, 670, 671, 672, 673, 674, 675, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 676, + 677, 0, 0, 1294, 645, 646, 647, 648, 649, 0, + 0, 650, 651, 652, 653, 0, 654, 655, 656, 657, + 658, 0, 659, 660, 0, 0, 0, 0, 661, 662, + 663, 0, 0, 0, 664, 643, 644, 645, 646, 647, + 648, 649, 0, 0, 650, 651, 652, 653, 0, 654, + 655, 656, 657, 658, 0, 659, 660, 0, 0, 0, + 0, 661, 662, 663, 0, 0, 0, 664, 0, 665, + 0, 666, 667, 668, 669, 670, 671, 672, 673, 674, + 675, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 676, 677, 0, 0, 1295, 0, 0, 0, 0, + 0, 0, 665, 0, 666, 667, 668, 669, 670, 671, + 672, 673, 674, 675, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 676, 677, 0, 0, 1315, 645, + 646, 647, 648, 649, 643, 644, 650, 651, 652, 653, + 0, 654, 655, 656, 657, 658, 0, 659, 660, 0, + 0, 0, 0, 661, 662, 663, 0, 0, 0, 664, + 0, 0, 0, 0, 0, 643, 644, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 663, - 0, 664, 665, 666, 667, 668, 669, 670, 671, 672, - 673, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 674, 675, 0, 0, 1371, 643, 644, 645, 646, - 647, 0, 0, 648, 649, 650, 651, 0, 652, 653, - 654, 655, 656, 0, 657, 658, 0, 0, 0, 0, - 659, 660, 661, 0, 0, 0, 662, 641, 642, 643, - 644, 645, 646, 647, 0, 0, 648, 649, 650, 651, - 0, 652, 653, 654, 655, 656, 0, 657, 658, 0, - 0, 0, 0, 659, 660, 661, 0, 0, 0, 662, - 0, 663, 0, 664, 665, 666, 667, 668, 669, 670, - 671, 672, 673, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 674, 675, 698, 0, 0, 0, 0, - 0, 0, 0, 0, 663, 0, 664, 665, 666, 667, - 668, 669, 670, 671, 672, 673, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 674, 675, 906, 641, - 642, 643, 644, 645, 646, 647, 0, 0, 648, 649, - 650, 651, 0, 652, 653, 654, 655, 656, 0, 657, - 658, 0, 0, 0, 0, 659, 660, 661, 0, 0, - 0, 662, 641, 642, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 665, 0, 666, 667, 668, 669, + 670, 671, 672, 673, 674, 675, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 676, 677, 0, 0, + 1326, 0, 0, 0, 0, 0, 0, 0, 645, 646, + 647, 648, 649, 0, 0, 650, 651, 652, 653, 0, + 654, 655, 656, 657, 658, 0, 659, 660, 0, 0, + 0, 0, 661, 662, 663, 0, 0, 0, 664, 645, + 646, 647, 648, 649, 643, 644, 650, 651, 652, 653, + 0, 654, 655, 656, 657, 658, 0, 659, 660, 0, + 0, 0, 0, 661, 662, 663, 0, 0, 0, 664, + 0, 0, 0, 665, 0, 666, 667, 668, 669, 670, + 671, 672, 673, 674, 675, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 676, 677, 0, 0, 1336, + 0, 0, 0, 0, 665, 0, 666, 667, 668, 669, + 670, 671, 672, 673, 674, 675, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 676, 677, 0, 0, + 1366, 0, 0, 0, 0, 0, 643, 644, 645, 646, + 647, 648, 649, 0, 0, 650, 651, 652, 653, 0, + 654, 655, 656, 657, 658, 0, 659, 660, 0, 0, + 0, 0, 661, 662, 663, 0, 0, 0, 664, 643, + 644, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 663, 0, 664, 665, - 666, 667, 668, 669, 670, 671, 672, 673, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 674, 675, - 1033, 0, 0, 643, 644, 645, 646, 647, 0, 0, - 648, 649, 650, 651, 0, 652, 653, 654, 655, 656, - 0, 657, 658, 0, 0, 0, 0, 659, 660, 661, - 0, 0, 0, 662, 641, 642, 643, 644, 645, 646, - 647, 0, 0, 648, 649, 650, 651, 0, 652, 653, - 654, 655, 656, 0, 657, 658, 0, 0, 0, 0, - 659, 660, 661, 0, 0, 0, 662, 0, 663, 0, - 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 674, 675, 1048, 0, 0, 0, 0, 0, 0, 0, - 0, 663, 0, 664, 665, 666, 667, 668, 669, 670, - 671, 672, 673, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 674, 675, 1150, 0, 0, 643, 644, - 645, 646, 647, 641, 642, 648, 649, 650, 651, 0, - 652, 653, 654, 655, 656, 0, 657, 658, 0, 0, - 0, 0, 659, 660, 661, 0, 0, 0, 662, 0, + 0, 0, 0, 665, 0, 666, 667, 668, 669, 670, + 671, 672, 673, 674, 675, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 676, 677, 0, 0, 1373, + 645, 646, 647, 648, 649, 0, 0, 650, 651, 652, + 653, 0, 654, 655, 656, 657, 658, 0, 659, 660, + 0, 0, 0, 0, 661, 662, 663, 0, 0, 0, + 664, 643, 644, 645, 646, 647, 648, 649, 0, 0, + 650, 651, 652, 653, 0, 654, 655, 656, 657, 658, + 0, 659, 660, 0, 0, 0, 0, 661, 662, 663, + 0, 0, 0, 664, 0, 665, 0, 666, 667, 668, + 669, 670, 671, 672, 673, 674, 675, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 676, 677, 700, + 0, 0, 0, 0, 0, 0, 0, 0, 665, 0, + 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 676, 677, 908, 643, 644, 645, 646, 647, 648, 649, + 0, 0, 650, 651, 652, 653, 0, 654, 655, 656, + 657, 658, 0, 659, 660, 0, 0, 0, 0, 661, + 662, 663, 0, 0, 0, 664, 643, 644, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 663, 0, 664, 665, 666, 667, 668, - 669, 670, 671, 672, 673, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 674, 675, 1155, 0, 744, - 745, 746, 747, 748, 749, 750, 751, 643, 644, 645, - 646, 647, 752, 753, 648, 649, 650, 651, 754, 652, - 653, 654, 655, 656, 755, 657, 658, 756, 757, 266, - 267, 659, 660, 661, 758, 759, 760, 662, 0, 0, - 0, 0, 0, 0, 0, 0, 268, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 641, 642, 0, 0, -315, 0, 0, 0, 0, 0, - 0, 761, 663, 0, 664, 665, 666, 667, 668, 669, - 670, 671, 672, 673, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 674, 675, 0, 0, 0, 0, + 665, 0, 666, 667, 668, 669, 670, 671, 672, 673, + 674, 675, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 676, 677, 1035, 0, 0, 645, 646, 647, + 648, 649, 0, 0, 650, 651, 652, 653, 0, 654, + 655, 656, 657, 658, 0, 659, 660, 0, 0, 0, + 0, 661, 662, 663, 0, 0, 0, 664, 643, 644, + 645, 646, 647, 648, 649, 0, 0, 650, 651, 652, + 653, 0, 654, 655, 656, 657, 658, 0, 659, 660, + 0, 0, 0, 0, 661, 662, 663, 0, 0, 0, + 664, 0, 665, 0, 666, 667, 668, 669, 670, 671, + 672, 673, 674, 675, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 676, 677, 1050, 0, 0, 0, + 0, 0, 0, 0, 0, 665, 0, 666, 667, 668, + 669, 670, 671, 672, 673, 674, 675, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 676, 677, 1152, + 0, 0, 645, 646, 647, 648, 649, 643, 644, 650, + 651, 652, 653, 0, 654, 655, 656, 657, 658, 0, + 659, 660, 0, 0, 0, 0, 661, 662, 663, 0, + 0, 0, 664, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 269, 270, 271, 272, 273, - 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 0, 0, 287, 288, 289, 0, 0, - 290, 291, 292, 293, 294, 0, 0, 295, 296, 297, - 298, 299, 300, 301, 643, 644, 645, 646, 647, 641, - 642, 648, 649, 650, 651, 0, 652, 653, 654, 655, - 656, 0, 657, 658, 0, 0, 813, 0, 659, 660, - 661, 0, 0, 0, 662, 0, 0, 0, 302, 0, - 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 0, 0, 313, 314, 0, 0, 0, 0, 0, 0, - 315, 316, 0, 0, 0, 0, 0, 0, 0, 663, - 0, 664, 665, 666, 667, 668, 669, 670, 671, 672, - 673, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 674, 675, 0, 0, 0, 0, 0, 641, 642, - 0, 0, 0, 643, 644, 645, 646, 647, 0, 0, - 648, 649, 650, 651, 0, 652, 653, 654, 655, 656, - 0, 657, 658, 0, 0, 0, 0, 659, 660, 661, - 0, 0, 0, 662, 641, 642, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 321, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 663, 0, - 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, + 0, 0, 0, 0, 0, 0, 0, 665, 0, 666, + 667, 668, 669, 670, 671, 672, 673, 674, 675, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 676, + 677, 1157, 0, 746, 747, 748, 749, 750, 751, 752, + 753, 645, 646, 647, 648, 649, 754, 755, 650, 651, + 652, 653, 756, 654, 655, 656, 657, 658, 757, 659, + 660, 758, 759, 268, 269, 661, 662, 663, 760, 761, + 762, 664, 0, 0, 0, 0, 0, 0, 0, 0, + 270, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 643, 644, 0, 0, -316, 0, + 0, 0, 0, 0, 0, 763, 665, 0, 666, 667, + 668, 669, 670, 671, 672, 673, 674, 675, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 676, 677, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 674, 675, 643, 644, 645, 646, 647, 0, 0, 648, - 649, 650, 651, 0, 652, 653, 654, 655, 656, 0, - 657, 658, 0, 0, 0, 0, 659, 660, 661, 0, - 0, 0, 662, 641, 642, 0, 0, 0, 643, 644, - 645, 646, 647, 0, 0, 648, 649, 650, 651, 0, - 652, 653, 654, 655, 656, 0, 657, 658, 0, 961, - 0, 0, 659, 660, 661, 0, 0, 663, 662, 664, - 665, 666, 667, 668, 669, 670, 671, 672, 673, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 674, - 675, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 663, 1038, 664, 665, 666, 667, 668, - 669, 670, 671, 672, 673, 641, 642, 0, 0, 0, - 0, 0, 0, 0, 0, 674, 675, 643, 644, 645, - 646, 647, 0, 0, 648, 649, 650, 651, 0, 652, - 653, 654, 655, 656, 0, 657, 658, 641, 642, 0, - 0, 659, 660, 661, 0, 0, 0, 662, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + 282, 283, 284, 285, 286, 287, 288, 0, 0, 289, + 290, 291, 0, 0, 292, 293, 294, 295, 296, 0, + 0, 297, 298, 299, 300, 301, 302, 303, 645, 646, + 647, 648, 649, 643, 644, 650, 651, 652, 653, 0, + 654, 655, 656, 657, 658, 0, 659, 660, 0, 0, + 815, 0, 661, 662, 663, 0, 0, 0, 664, 0, + 0, 0, 304, 0, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 0, 0, 315, 316, 0, 0, + 0, 0, 0, 0, 317, 318, 0, 0, 0, 0, + 0, 0, 0, 665, 0, 666, 667, 668, 669, 670, + 671, 672, 673, 674, 675, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 676, 677, 0, 0, 0, + 0, 0, 643, 644, 0, 0, 0, 645, 646, 647, + 648, 649, 0, 0, 650, 651, 652, 653, 0, 654, + 655, 656, 657, 658, 0, 659, 660, 0, 0, 0, + 0, 661, 662, 663, 0, 0, 0, 664, 643, 644, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1086, 0, 0, 0, 0, 0, - 0, 0, 663, 0, 664, 665, 666, 667, 668, 669, - 670, 671, 672, 673, 0, 0, 0, 0, 0, 643, - 644, 645, 646, 647, 674, 675, 648, 649, 650, 651, - 0, 652, 653, 654, 655, 656, 0, 657, 658, 641, - 642, 0, 0, 659, 660, 661, 0, 0, 0, 662, - 0, 643, 644, 645, 646, 647, 0, 0, 648, 649, - 650, 651, 0, 652, 653, 654, 655, 656, 0, 657, - 658, 0, 1116, 641, 642, 659, 660, 661, 0, 0, - 0, 662, 0, 0, 663, 0, 664, 665, 666, 667, - 668, 669, 670, 671, 672, 673, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 674, 675, 1325, 0, - 0, 0, 0, 0, 0, 0, 663, 0, 664, 665, - 666, 667, 668, 669, 670, 671, 672, 673, 0, 0, - 0, 0, 0, 643, 644, 645, 646, 647, 674, 675, - 648, 649, 650, 651, 0, 652, 653, 654, 655, 656, - 0, 657, 658, 0, 0, 641, 642, 659, 660, 661, - 0, 0, 0, 662, 0, 0, 0, 643, 644, 645, - 646, 647, 0, 0, 648, 649, 650, 651, 0, 652, - 653, 654, 655, 656, 0, 657, 658, 641, 642, 0, - 1366, 659, 660, 661, 0, 0, 0, 662, 663, 0, - 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, + 0, 0, 323, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 665, 0, 666, 667, 668, 669, 670, 671, + 672, 673, 674, 675, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 676, 677, 645, 646, 647, 648, + 649, 0, 0, 650, 651, 652, 653, 0, 654, 655, + 656, 657, 658, 0, 659, 660, 0, 0, 0, 0, + 661, 662, 663, 0, 0, 0, 664, 643, 644, 0, + 0, 0, 645, 646, 647, 648, 649, 0, 0, 650, + 651, 652, 653, 0, 654, 655, 656, 657, 658, 0, + 659, 660, 0, 963, 0, 0, 661, 662, 663, 0, + 0, 665, 664, 666, 667, 668, 669, 670, 671, 672, + 673, 674, 675, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 676, 677, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 665, 1040, 666, + 667, 668, 669, 670, 671, 672, 673, 674, 675, 643, + 644, 0, 0, 0, 0, 0, 0, 0, 0, 676, + 677, 645, 646, 647, 648, 649, 0, 0, 650, 651, + 652, 653, 0, 654, 655, 656, 657, 658, 0, 659, + 660, 643, 644, 0, 0, 661, 662, 663, 0, 0, + 0, 664, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 674, 675, 0, 0, 1385, 0, 0, 0, 0, 0, - 0, 0, 663, 0, 664, 665, 666, 667, 668, 669, - 670, 671, 672, 673, 0, 0, 0, 0, 0, 643, - 644, 645, 646, 647, 674, 675, 648, 649, 650, 651, - 0, 652, 653, 654, 655, 656, 0, 657, 658, 641, - 642, 0, 0, 659, 660, 661, 0, 0, 0, 662, - 0, 643, 644, 645, 646, 647, 0, 0, 648, 649, - 650, 651, 0, 652, 653, 654, 655, 656, 0, 657, - 658, 641, 642, 0, 0, 659, 660, 661, 0, 0, - 0, -675, 0, 0, 663, 0, 664, 665, 666, 667, - 668, 669, 670, 671, 672, 673, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 674, 675, 0, 0, - 0, 0, 0, 0, 0, 0, 663, 0, 664, 665, - 666, 667, 668, 669, 670, 671, 672, 673, 0, 0, - 0, 0, 0, 643, 644, 645, 646, 647, 674, 675, - 648, 649, 650, 651, 0, 652, 653, 654, 655, 656, - 0, 657, 658, 641, 642, 0, 0, 659, 660, 661, - 0, 0, 0, 0, 0, 643, 644, 645, 646, 647, - 0, 0, 648, 649, 650, 651, 0, 652, 653, 654, - 655, 656, 0, 657, 658, 641, 642, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 663, 0, - 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, + 0, 0, 0, 0, 0, 0, 0, 0, 1088, 0, + 0, 0, 0, 0, 0, 0, 665, 0, 666, 667, + 668, 669, 670, 671, 672, 673, 674, 675, 0, 0, + 0, 0, 0, 645, 646, 647, 648, 649, 676, 677, + 650, 651, 652, 653, 0, 654, 655, 656, 657, 658, + 0, 659, 660, 643, 644, 0, 0, 661, 662, 663, + 0, 0, 0, 664, 0, 645, 646, 647, 648, 649, + 0, 0, 650, 651, 652, 653, 0, 654, 655, 656, + 657, 658, 0, 659, 660, 0, 1118, 643, 644, 661, + 662, 663, 0, 0, 0, 664, 0, 0, 665, 0, + 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 674, 675, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 665, 666, 667, 668, 669, 670, 671, - 672, 673, 0, 0, 0, 0, 0, 643, 644, 645, - 646, 647, 674, 675, 648, 649, 650, 651, 0, 652, - 653, 654, 655, 656, 0, 657, 658, 641, 642, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 643, - 644, 645, 646, 647, 0, 0, 648, 649, 650, 651, - 0, 652, 653, 654, 655, 656, 0, 657, 658, 0, + 676, 677, 1327, 0, 0, 0, 0, 0, 0, 0, + 665, 0, 666, 667, 668, 669, 670, 671, 672, 673, + 674, 675, 0, 0, 0, 0, 0, 645, 646, 647, + 648, 649, 676, 677, 650, 651, 652, 653, 0, 654, + 655, 656, 657, 658, 0, 659, 660, 0, 0, 643, + 644, 661, 662, 663, 0, 0, 0, 664, 0, 0, + 0, 645, 646, 647, 648, 649, 0, 0, 650, 651, + 652, 653, 0, 654, 655, 656, 657, 658, 0, 659, + 660, 643, 644, 0, 1368, 661, 662, 663, 0, 0, + 0, 664, 665, 0, 666, 667, 668, 669, 670, 671, + 672, 673, 674, 675, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 676, 677, 0, 0, 1387, 0, + 0, 0, 0, 0, 0, 0, 665, 0, 666, 667, + 668, 669, 670, 671, 672, 673, 674, 675, 0, 0, + 0, 0, 0, 645, 646, 647, 648, 649, 676, 677, + 650, 651, 652, 653, 0, 654, 655, 656, 657, 658, + 0, 659, 660, 643, 644, 0, 0, 661, 662, 663, + 0, 0, 0, 664, 0, 645, 646, 647, 648, 649, + 0, 0, 650, 651, 652, 653, 0, 654, 655, 656, + 657, 658, 0, 659, 660, 643, 644, 0, 0, 661, + 662, 663, 0, 0, 0, -676, 0, 0, 665, 0, + 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 676, 677, 0, 0, 0, 0, 0, 0, 0, 0, + 665, 0, 666, 667, 668, 669, 670, 671, 672, 673, + 674, 675, 0, 0, 0, 0, 0, 645, 646, 647, + 648, 649, 676, 677, 650, 651, 652, 653, 0, 654, + 655, 656, 657, 658, 0, 659, 660, 643, 644, 0, + 0, 661, 662, 663, 0, 0, 0, 0, 0, 645, + 646, 647, 648, 649, 0, 0, 650, 651, 652, 653, + 0, 654, 655, 656, 657, 658, 0, 659, 660, 643, + 644, 0, 0, 661, 0, 0, 0, 0, 0, 0, + 0, 0, 665, 0, 666, 667, 668, 669, 670, 671, + 672, 673, 674, 675, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 676, 677, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 666, 667, 668, 669, - 670, 671, 672, 673, 0, 0, 0, 0, 0, 842, - 0, 0, 0, 0, 674, 675, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 667, - 668, 669, 670, 671, 672, 673, 0, 0, 0, 0, - 0, 643, 644, 645, 646, 647, 674, 675, 648, 0, - 0, 651, 0, 652, 653, 654, 655, 656, 0, 657, - 658, 220, 221, 222, 0, 224, 225, 226, 227, 228, - 423, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 0, 242, 243, 244, 0, 0, 247, 248, - 249, 250, 0, 0, 0, 0, 0, 1034, 0, 0, + 670, 671, 672, 673, 674, 675, 0, 0, 0, 0, + 0, 645, 646, 647, 648, 649, 676, 677, 650, 651, + 652, 653, 0, 654, 655, 656, 657, 658, 0, 659, + 660, 643, 644, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 645, 646, 647, 648, 649, 0, 0, + 650, 651, 652, 653, 0, 654, 655, 656, 657, 658, + 0, 659, 660, 643, 644, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 666, 667, + 668, 669, 670, 671, 672, 673, 674, 675, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 676, 677, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 667, 668, 669, 670, 671, 672, 673, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 674, 675, + 0, 667, 668, 669, 670, 671, 672, 673, 674, 675, + 0, 0, 0, 0, 0, 645, 646, 647, 648, 649, + 676, 677, 650, 651, 652, 653, 0, 654, 655, 656, + 657, 658, 0, 659, 660, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 645, 646, 647, + 648, 649, 0, 0, 650, 651, 652, 653, 0, 654, + 655, 656, 657, 658, 0, 659, 660, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 843, 169, 0, 0, 0, 0, 220, - 221, 222, 844, 224, 225, 226, 227, 228, 423, 230, - 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, - 0, 242, 243, 244, 0, 0, 247, 248, 249, 250, - 170, 0, 171, 0, 172, 173, 174, 175, 176, 0, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 0, 188, 189, 190, 0, 0, 191, 192, 193, - 194, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 195, 196, 0, 0, - 0, 1035, 0, 0, 0, 0, 0, 0, 0, 0, - 1036, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 668, 669, 670, 671, 672, 673, + 674, 675, 1036, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 676, 677, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 669, 670, 671, + 672, 673, 674, 675, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 676, 677, 0, 0, 0, 171, + 0, 0, 0, 0, 222, 223, 224, 0, 226, 227, + 228, 229, 230, 425, 232, 233, 234, 235, 236, 237, + 238, 239, 240, 241, 242, 0, 244, 245, 246, 0, + 0, 249, 250, 251, 252, 172, 0, 173, 0, 174, + 175, 176, 177, 178, 0, 179, 180, 181, 182, 183, + 184, 185, 186, 187, 188, 189, 0, 190, 191, 192, + 0, 0, 193, 194, 195, 196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 197, 198, 0, 0, 0, 1037, 0, 0, 0, + 0, 0, 0, 0, 0, 1038, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 197 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 199 }; static const yytype_int16 yycheck[] = { - 14, 15, 163, 575, 598, 532, 150, 490, 713, 489, - 484, 635, 486, 540, 488, 814, 395, 781, 637, 4, - 76, 7, 451, 163, 462, 620, 32, 0, 684, 19, - 686, 19, 688, 6, 629, 14, 15, 149, 149, 568, - 21, 184, 19, 18, 19, 59, 60, 61, 4, 5, - 837, 20, 21, 19, 45, 1275, 29, 154, 31, 124, - 33, 204, 127, 128, 493, 161, 39, 32, 24, 127, - 128, 370, 125, 171, 30, 56, 49, 146, 1273, 1307, - 32, 61, 55, 97, 98, 99, 100, 138, 139, 140, - 14, 15, 161, 205, 623, 207, 207, 127, 128, 125, - 125, 400, 631, 169, 633, 131, 79, 59, 60, 152, - 1330, 67, 68, 33, 105, 1343, 101, 102, 161, 161, - 125, 716, 152, 6, 177, 178, 131, 180, 101, 102, - 183, 161, 570, 1328, 171, 204, 201, 202, 137, 177, - 206, 207, 62, 201, 202, 101, 102, 116, 117, 163, - 206, 171, 178, 178, 205, 124, 181, 126, 127, 128, - 129, 130, 205, 171, 206, 203, 49, 596, 205, 171, - 122, 201, 202, 178, 126, 154, 605, 183, 183, 608, - 159, 180, 161, 162, 170, 205, 161, 177, 715, 177, - 136, 178, 336, 20, 21, 722, 202, 205, 171, 184, - 177, 639, 208, 205, 828, 161, 635, 994, 189, 370, - 130, 177, 373, 169, 161, 56, 202, 190, 183, 204, - 201, 62, 817, 169, 171, 204, 387, 177, 184, 202, - 154, 183, 201, 202, 186, 159, 188, 161, 162, 400, - 254, 161, 403, 404, 405, 180, 202, 387, 677, 1193, - 202, 125, 125, 59, 60, 61, 208, 131, 131, 788, - 125, 790, 171, 403, 404, 405, 131, 125, 797, 177, - 56, 800, 125, 131, 194, 11, 62, 125, 131, 137, - 171, 171, 338, 131, 204, 180, 22, 23, 183, 116, - 117, 97, 98, 99, 100, 171, 205, 124, 597, 177, - 127, 128, 129, 130, 178, 178, 171, 177, 1252, 1253, - 929, 610, 161, 178, 205, 205, 146, 161, 479, 480, - 178, 151, 483, 1267, 485, 178, 487, 205, 489, 205, - 178, 161, 177, 203, 171, 4, 5, 177, 7, 479, - 480, 190, 161, 483, 181, 485, 970, 487, 177, 184, - 20, 21, 781, 177, 184, 177, 370, 177, 203, 373, - 834, 1310, 1311, 742, 1069, 205, 35, 1316, 1024, 204, - 1314, 1315, 1321, 387, 201, 202, 205, 391, 177, 177, - 177, 205, 184, 205, 177, 205, 400, 171, 180, 403, - 404, 405, 138, 185, 140, 922, 410, 1161, 1347, 1348, - 1199, 185, 204, 184, 46, 161, 205, 205, 205, 74, - 203, 146, 204, 78, 180, 180, 180, 900, 898, 185, - 185, 185, 146, 204, 66, 1130, 161, 92, 93, 171, - 163, 164, 97, 98, 99, 100, 597, 161, 204, 204, - 204, 171, 171, 185, 114, 115, 116, 117, 118, 610, - 171, 121, 122, 123, 124, 185, 126, 127, 128, 129, - 130, 146, 132, 133, 185, 479, 480, 1123, 138, 483, - 140, 485, 171, 487, 161, 489, 161, 171, 777, 778, - 641, 642, 1138, 20, 21, 137, 185, 204, 787, 152, - 154, 185, 201, 792, 793, 656, 795, 796, 161, 798, - 799, 1206, 801, 181, 1128, 161, 181, 185, 161, 1103, - 185, 181, 182, 183, 184, 185, 186, 187, 188, 189, - 190, 152, 56, 56, 161, 152, 152, 152, 62, 62, - 161, 201, 202, 694, 161, 161, 161, 56, 177, 161, - 1014, 180, 703, 62, 183, 706, 163, 171, 1075, 56, - 56, 171, 1026, 177, 694, 62, 62, 177, 171, 163, - 164, 165, 166, 703, 177, 181, 706, 181, 161, 185, - 181, 185, 56, 1002, 185, 169, 590, 1006, 181, 116, - 117, 181, 185, 597, 181, 185, 178, 124, 185, 126, - 127, 128, 129, 130, 181, 181, 610, 181, 185, 185, - 169, 185, 1031, 138, 139, 140, 163, 164, 165, 169, - 1137, 10, 11, 12, 1043, 776, 777, 778, 779, 169, - 634, 163, 783, 767, 163, 164, 787, 138, 180, 1334, - 105, 792, 793, 207, 795, 796, 776, 798, 799, 779, - 801, 34, 1071, 783, 34, 204, 169, 169, 161, 186, - 187, 188, 189, 190, 170, 184, 207, 184, 184, 1188, - 204, 204, 161, 184, 201, 202, 1260, 184, 204, 184, - 184, 161, 184, 181, 184, 1247, 975, 976, 977, 184, - 694, 980, 184, 161, 161, 203, 1115, 21, 161, 703, - 1119, 180, 706, 180, 1221, 169, 42, 161, 177, 203, - 20, 21, 202, 204, 161, 866, 131, 204, 161, 161, - 1237, 1238, 161, 184, 1013, 184, 204, 184, 204, 184, - 205, 184, 204, 184, 184, 20, 21, 207, 184, 184, - 1354, 161, 1161, 1305, 204, 161, 204, 898, 204, 161, - 171, 170, 204, 180, 171, 204, 204, 170, 161, 154, - 204, 202, 171, 36, 204, 916, 203, 171, 204, 171, - 204, 9, 776, 777, 778, 779, 65, 171, 171, 783, - 171, 171, 178, 787, 171, 171, 916, 42, 792, 793, - 204, 795, 796, 177, 798, 799, 204, 801, 1317, 1318, - 185, 1320, 184, 184, 114, 115, 116, 117, 118, 184, - 177, 121, 122, 123, 124, 12, 126, 127, 128, 129, - 130, 177, 132, 133, 975, 976, 977, 161, 138, 980, - 202, 116, 117, 207, 205, 177, 204, 170, 42, 124, - 1259, 126, 127, 128, 129, 130, 1265, 1364, 347, 13, - 1139, 1368, 178, 180, 154, 169, 204, 7, 357, 161, - 69, 170, 1013, 185, 203, 205, 204, 204, 367, 204, - 177, 181, 182, 183, 184, 185, 186, 187, 188, 189, - 190, 202, 205, 184, 204, 184, 204, 204, 204, 204, - 389, 201, 202, 204, 898, 1, 161, 185, 397, 185, - 161, 185, 161, 188, 189, 190, 170, 161, 66, 171, - 185, 185, 916, 1064, 205, 161, 201, 202, 185, 185, - 42, 161, 205, 204, 184, 205, 205, 185, 427, 428, - 11, 32, 185, 185, 1064, 185, 185, 205, 185, 161, - 161, 204, 185, 161, 161, 444, 445, 446, 447, 448, - 449, 185, 185, 204, 185, 185, 204, 1246, 161, 204, - 20, 21, 204, 161, 205, 204, 185, 203, 205, 204, - 185, 975, 976, 977, 185, 204, 980, 204, 204, 204, - 204, 204, 171, 171, 204, 52, 170, 75, 1139, 205, - 1141, 204, 204, 171, 204, 619, 204, 1, 205, 205, - 205, 203, 42, 502, 205, 205, 126, 203, 78, 1013, - 1384, 1141, 1243, 212, 96, 1243, 1243, 1243, 1243, 518, - 1, 1216, 1172, 1175, 1082, 1170, 1250, 526, 1251, 522, - 51, 530, 763, 410, 533, 534, 469, 410, 970, -1, - 539, -1, 541, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 114, 115, 116, 117, 118, -1, - 1064, 121, 122, 123, 124, -1, 126, 127, 128, 129, - 130, -1, 132, 133, -1, -1, -1, 1228, -1, -1, - 579, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 1246, -1, -1, 1228, 598, - 599, -1, -1, 602, -1, -1, -1, 20, 21, -1, - -1, -1, -1, -1, 613, 614, 615, 616, 617, 618, - -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, - 190, -1, -1, -1, -1, 1139, -1, 1141, -1, -1, - -1, 201, 202, -1, 643, 644, -1, -1, 647, 648, - 649, 650, -1, 652, -1, 654, 655, 656, 657, 658, + 14, 15, 577, 372, 165, 637, 534, 600, 152, 486, + 715, 488, 492, 490, 542, 686, 816, 688, 397, 690, + 783, 491, 639, 77, 4, 165, 14, 15, 622, 0, + 464, 149, 7, 402, 19, 6, 839, 631, 45, 32, + 32, 570, 21, 1195, 125, 19, 60, 61, 62, 161, + 19, 149, 20, 21, 177, 4, 5, 146, 29, 19, + 31, 1277, 33, 124, 146, 1309, 127, 128, 39, 154, + 18, 19, 161, 20, 21, 24, 146, 56, 49, 161, + 203, 30, 1275, 6, 55, 99, 100, 101, 102, 207, + 152, 161, 14, 15, 206, 136, 625, 178, 105, 161, + 181, 1345, 1254, 1255, 633, 453, 635, 205, 79, 207, + 127, 128, 127, 128, 125, 204, 1332, 1269, 67, 68, + 131, 101, 102, 125, 718, 137, 49, 177, 169, 131, + 101, 102, 138, 139, 140, 152, 171, 1330, 572, 171, + 201, 202, 181, 205, 161, 171, 185, 495, 116, 117, + 185, 165, 101, 102, 208, 205, 124, 61, 126, 127, + 128, 129, 130, 171, 1316, 1317, 154, 178, 180, 116, + 117, 159, 183, 161, 162, 178, 178, 124, 32, 205, + 127, 128, 129, 130, 201, 202, 201, 202, 137, 717, + 183, 183, 177, 996, 338, 170, 724, 205, 830, 205, + 171, 20, 21, 177, 184, 59, 60, 641, 177, 202, + 189, 372, 161, 161, 375, 208, 204, 177, 171, 190, + 169, 177, 201, 125, 204, 819, 171, 202, 389, 161, + 599, 202, 154, 201, 202, 184, 177, 159, 171, 161, + 162, 402, 256, 612, 405, 406, 407, 203, 181, 389, + 598, 125, 205, 202, 201, 202, 177, 131, 190, 607, + 205, 790, 610, 792, 205, 405, 406, 407, 122, 177, + 799, 180, 126, 802, 125, 177, 178, 161, 180, 171, + 131, 183, 125, 171, 171, 125, 340, 171, 131, 637, + 125, 131, 137, 125, 137, 203, 131, 116, 117, 131, + 138, 146, 140, 171, 178, 124, 151, 126, 127, 128, + 129, 130, 177, 205, 931, 33, 161, 205, 205, 169, + 481, 482, 4, 5, 485, 7, 487, 178, 489, 183, + 491, 679, 186, 161, 188, 178, 171, 205, 178, 184, + 972, 481, 482, 178, 62, 485, 178, 487, 202, 489, + 137, 20, 21, 35, 208, 1026, 206, 207, 372, 836, + 171, 375, 177, 177, 184, 744, 1071, 186, 187, 188, + 189, 190, 161, 161, 161, 389, 60, 61, 62, 393, + 180, 177, 201, 202, 204, 185, 177, 184, 402, 203, + 205, 405, 406, 407, 161, 177, 924, 152, 412, 161, + 1163, 1201, 1312, 1313, 204, 177, 161, 204, 1318, 205, + 779, 780, 130, 1323, 205, 99, 100, 101, 102, 137, + 789, 184, 902, 205, 184, 794, 795, 1132, 797, 798, + 900, 800, 801, 205, 803, 783, 46, 177, 599, 1349, + 1350, 204, 177, 161, 204, 114, 115, 116, 117, 118, + 137, 612, 121, 152, 1125, 124, 66, 126, 127, 128, + 129, 130, 161, 132, 133, 205, 171, 481, 482, 1140, + 205, 485, 137, 487, 171, 489, 194, 491, 204, 171, + 185, 146, 643, 644, 20, 21, 204, 180, 185, 180, + 180, 171, 185, 185, 185, 185, 161, 658, 1130, 154, + 152, 56, 181, 1208, 74, 185, 185, 62, 78, 161, + 171, 204, 1105, 204, 204, 184, 185, 186, 187, 188, + 189, 190, 92, 93, 185, 11, 201, 97, 98, 99, + 100, 152, 201, 202, 152, 696, 22, 23, 180, 1016, + 161, 183, 177, 161, 705, 180, 56, 708, 183, 1077, + 163, 1028, 62, 56, 56, 56, 696, 56, 56, 62, + 62, 62, 169, 62, 62, 705, 171, 171, 708, 171, + 181, 161, 177, 177, 185, 177, 163, 164, 592, 161, + 116, 117, 181, 181, 161, 599, 185, 185, 124, 161, + 126, 127, 128, 129, 130, 181, 181, 181, 612, 185, + 185, 185, 181, 181, 163, 164, 185, 185, 977, 978, + 979, 1139, 181, 982, 161, 56, 185, 778, 779, 780, + 781, 178, 636, 169, 785, 769, 169, 169, 789, 163, + 138, 1336, 180, 794, 795, 105, 797, 798, 778, 800, + 801, 781, 803, 207, 34, 785, 1015, 163, 164, 165, + 166, 34, 188, 189, 190, 204, 1004, 138, 139, 140, + 1008, 1190, 10, 11, 12, 201, 202, 207, 181, 1262, + 163, 164, 165, 169, 1249, 169, 161, 184, 170, 184, + 184, 204, 696, 204, 184, 1033, 204, 184, 161, 184, + 161, 705, 161, 184, 708, 1223, 184, 1045, 161, 21, + 184, 184, 184, 161, 180, 180, 42, 868, 169, 161, + 177, 1239, 1240, 203, 203, 161, 131, 204, 161, 161, + 184, 161, 202, 202, 1356, 1073, 204, 184, 184, 184, + 204, 184, 1307, 184, 184, 184, 204, 184, 204, 900, + 205, 161, 204, 161, 204, 204, 171, 161, 170, 180, + 204, 161, 171, 170, 154, 171, 204, 918, 36, 204, + 204, 9, 20, 21, 778, 779, 780, 781, 207, 1117, + 204, 785, 1141, 1121, 203, 789, 204, 171, 918, 171, + 794, 795, 171, 797, 798, 171, 800, 801, 65, 803, + 1319, 1320, 204, 1322, 171, 171, 171, 171, 178, 177, + 42, 185, 204, 204, 12, 184, 177, 177, 207, 202, + 161, 184, 184, 177, 205, 1163, 977, 978, 979, 204, + 170, 982, 42, 13, 178, 180, 154, 169, 7, 161, + 69, 170, 185, 177, 1, 204, 203, 205, 1366, 204, + 349, 204, 1370, 204, 202, 205, 184, 204, 204, 184, + 359, 161, 204, 161, 1015, 204, 114, 115, 116, 117, + 369, 204, 185, 204, 185, 185, 124, 161, 126, 127, + 128, 129, 130, 161, 132, 133, 171, 170, 66, 1248, + 185, 185, 391, 185, 185, 161, 900, 205, 205, 204, + 399, 205, 205, 185, 185, 185, 185, 204, 185, 205, + 185, 184, 42, 11, 918, 1066, 204, 204, 204, 161, + 185, 185, 185, 1261, 185, 185, 161, 161, 204, 1267, + 429, 430, 32, 205, 204, 204, 1066, 161, 186, 187, + 188, 189, 190, 205, 161, 161, 204, 446, 447, 448, + 449, 450, 451, 201, 202, 204, 161, 204, 204, 204, + 204, 204, 185, 20, 21, 185, 203, 171, 171, 205, + 185, 204, 52, 977, 978, 979, 204, 204, 982, 204, + 170, 621, 171, 205, 205, 203, 205, 76, 1, 42, + 1141, 205, 1143, 205, 203, 128, 79, 1386, 1245, 98, + 1245, 214, 1245, 1245, 1245, 504, 1, 1218, 1174, 471, + 1177, 1015, 1252, 1143, 1084, 524, 1253, 1172, 51, 765, + 972, 520, -1, -1, 412, 412, -1, -1, -1, 528, + -1, -1, -1, 532, -1, -1, 535, 536, -1, -1, + -1, -1, 541, -1, 543, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 114, 115, 116, + 117, 118, 1066, -1, 121, 122, 123, 124, -1, 126, + 127, 128, 129, 130, -1, 132, 133, -1, -1, 1230, + -1, 138, 581, 140, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 1248, -1, -1, + 1230, 600, 601, -1, -1, 604, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 615, 616, 617, 618, + 619, 620, -1, -1, 181, 182, 183, 184, 185, 186, + 187, 188, 189, 190, 18, -1, -1, 1141, -1, 1143, + -1, -1, -1, -1, 201, 202, 645, 646, -1, -1, + 649, 650, 651, 652, -1, 654, -1, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, - 669, 670, 671, 672, 673, -1, 675, -1, -1, -1, + 669, 670, 671, 672, 673, 674, 675, -1, 677, -1, + -1, -1, -1, -1, -1, -1, 70, 71, 72, -1, + 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, + 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, + 94, -1, -1, 97, 98, 99, 100, -1, -1, -1, + 719, -1, -1, 722, -1, -1, 1230, -1, -1, -1, + -1, -1, 731, -1, -1, -1, -1, 736, -1, -1, + -1, -1, -1, -1, 1248, -1, -1, 746, 747, 748, + 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, + 759, 760, 761, 762, 763, 764, -1, -1, 152, -1, + -1, -1, -1, 1277, 773, -1, -1, 161, -1, -1, + -1, -1, -1, -1, -1, 784, -1, -1, 18, -1, + -1, -1, -1, -1, 24, -1, -1, -1, -1, -1, + 30, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 40, -1, -1, 812, -1, -1, 815, 816, 48, -1, + -1, 820, -1, -1, -1, -1, -1, -1, 1332, -1, + -1, -1, -1, 63, -1, -1, -1, -1, 837, -1, + 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, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 881, -1, -1, -1, 885, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 137, 907, -1, + -1, -1, -1, -1, 913, -1, -1, -1, -1, -1, + 150, 920, -1, -1, -1, -1, -1, 18, 927, -1, + -1, 161, -1, 24, 933, -1, -1, -1, -1, 30, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 40, + -1, -1, -1, -1, -1, -1, -1, 48, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 114, 115, 116, 117, -1, -1, -1, -1, -1, - -1, 124, -1, 126, 127, 128, 129, 130, 717, 132, - 133, 720, -1, -1, 1228, -1, -1, -1, -1, -1, - 729, -1, -1, -1, -1, 734, -1, -1, -1, -1, - -1, -1, 1246, -1, -1, 744, 745, 746, 747, 748, - 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, - 759, 760, 761, 762, -1, -1, -1, -1, -1, -1, - -1, 1275, 771, 186, 187, 188, 189, 190, -1, -1, - -1, -1, -1, 782, -1, -1, 18, -1, 201, 202, - -1, -1, 24, -1, -1, -1, -1, -1, 30, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 40, -1, - -1, 810, -1, -1, 813, 814, 48, -1, -1, 818, - -1, -1, -1, -1, -1, -1, 1330, -1, -1, -1, - -1, 63, -1, -1, -1, -1, 835, -1, 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, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 879, -1, -1, 18, 883, -1, -1, -1, -1, 24, - -1, -1, -1, -1, -1, 30, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 40, 905, -1, -1, -1, - -1, -1, 911, 48, -1, -1, -1, -1, 150, 918, - -1, -1, -1, -1, -1, 18, 925, -1, 63, 161, - -1, -1, 931, -1, -1, 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, -1, -1, - -1, -1, -1, -1, 206, -1, 208, 70, 71, 72, - -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, - 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, - 93, 94, -1, -1, 97, 98, 99, 100, -1, -1, - -1, -1, 1011, 1012, -1, 150, 1015, 1016, 1017, -1, - 1019, -1, -1, -1, -1, -1, 161, -1, -1, 1028, - -1, 1030, -1, 1032, -1, -1, 171, -1, -1, 1038, - -1, -1, -1, 1042, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 18, -1, -1, -1, 152, - -1, 24, -1, -1, -1, 20, 21, 30, 161, -1, - -1, 206, -1, -1, -1, 1074, -1, 40, -1, -1, - -1, -1, -1, -1, -1, 48, -1, -1, -1, -1, + -1, -1, 63, -1, -1, -1, 206, -1, 208, 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, -1, -1, 1013, 1014, -1, -1, 1017, 1018, + 1019, -1, 1021, -1, -1, -1, -1, -1, -1, -1, + -1, 1030, -1, 1032, -1, 1034, -1, -1, -1, -1, + -1, 1040, -1, -1, -1, 1044, 137, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 150, + -1, -1, -1, -1, 18, -1, -1, 20, 21, -1, + 161, -1, -1, -1, -1, -1, -1, 1076, -1, -1, + 171, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 63, -1, -1, -1, 1103, -1, -1, 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, - -1, -1, -1, -1, -1, -1, -1, -1, 1147, -1, - 1149, -1, -1, -1, -1, 1154, -1, -1, -1, 114, - 115, 116, 117, 118, -1, 1164, 121, 122, 123, 124, - -1, 126, 127, 128, 129, 130, -1, 132, 133, -1, - -1, -1, 1181, 138, 139, 140, -1, 150, -1, 144, - 1189, 1190, 1191, -1, -1, -1, -1, 1196, 161, -1, - 1199, 1200, -1, -1, -1, -1, -1, -1, -1, -1, - 1209, 1210, 1211, -1, -1, -1, -1, -1, -1, 1218, - -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, - -1, -1, -1, 206, 1243, -1, 201, 202, -1, -1, - 205, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 1260, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 1274, -1, -1, 1277, 1278, - -1, -1, -1, -1, -1, -1, 1285, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 1297, -1, - -1, -1, -1, -1, -1, -1, -1, 1306, -1, -1, - -1, -1, -1, 1312, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, - -1, -1, 4, 5, 6, -1, 8, 9, 10, -1, - 12, 1340, 14, 15, 16, 17, 18, -1, -1, -1, - -1, -1, 24, 25, 26, 27, 28, 1356, 30, -1, - -1, -1, 1361, 1362, -1, 37, 38, -1, -1, 41, + -1, -1, -1, -1, -1, -1, 1105, -1, -1, -1, + -1, -1, -1, -1, -1, 206, 70, 71, 72, -1, + 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, + 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, + 94, -1, -1, 97, 98, 99, 100, -1, -1, -1, + 1149, -1, 1151, -1, -1, -1, -1, 1156, -1, -1, + -1, 114, 115, 116, 117, 118, -1, 1166, 121, 122, + 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, + 133, -1, -1, -1, 1183, 138, 139, 140, -1, -1, + -1, 144, 1191, 1192, 1193, -1, -1, -1, 152, 1198, + -1, -1, 1201, 1202, -1, -1, -1, 161, -1, -1, + -1, -1, 1211, 1212, 1213, -1, -1, -1, -1, -1, + -1, 1220, -1, -1, -1, -1, 179, -1, 181, 182, + 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, + -1, -1, -1, -1, -1, -1, 1245, -1, 201, 202, + -1, -1, 205, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 1262, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 1276, -1, -1, + 1279, 1280, -1, -1, -1, -1, -1, -1, 1287, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 1299, -1, -1, -1, -1, -1, -1, -1, -1, 1308, + -1, -1, -1, -1, -1, 1314, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 1, -1, -1, 4, 5, 6, -1, 8, 9, + 10, -1, 12, 1342, 14, 15, 16, 17, 18, -1, + -1, -1, -1, -1, 24, 25, 26, 27, 28, 1358, + 30, -1, -1, -1, 1363, 1364, -1, 37, 38, -1, + -1, 41, -1, 43, 44, -1, -1, 47, -1, 49, + 50, 51, -1, 53, 54, -1, -1, 57, 58, -1, + -1, -1, -1, -1, 64, -1, -1, 67, 68, -1, + 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, + 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, + 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, + 100, 101, 102, 103, 104, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 137, -1, -1, + -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, + -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, + 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, + 170, 171, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 186, 187, 188, -1, + 190, -1, -1, 193, 194, -1, -1, -1, -1, -1, + -1, -1, 202, -1, 204, 1, 206, 207, 4, 5, + 6, -1, 8, 9, 10, -1, 12, -1, 14, 15, + 16, 17, 18, -1, -1, -1, -1, -1, 24, 25, + 26, 27, 28, -1, 30, -1, -1, -1, -1, -1, + -1, 37, 38, -1, -1, 41, -1, 43, 44, -1, + -1, 47, -1, 49, 50, 51, -1, 53, 54, -1, + -1, 57, 58, -1, -1, -1, -1, -1, 64, -1, + -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, + 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, + 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, + -1, 97, 98, 99, 100, 101, 102, 103, 104, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 137, -1, -1, -1, -1, -1, -1, -1, 145, + 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, + 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, + -1, -1, -1, 169, 170, 171, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 186, 187, 188, -1, 190, -1, -1, 193, 194, -1, + -1, -1, -1, -1, -1, -1, 202, -1, 204, 1, + 206, 207, 4, 5, 6, -1, 8, 9, 10, -1, + 12, -1, 14, 15, 16, 17, 18, -1, -1, -1, + -1, -1, 24, 25, 26, 27, 28, -1, 30, -1, + -1, -1, -1, -1, -1, 37, 38, -1, -1, 41, -1, 43, 44, -1, -1, 47, -1, 49, 50, 51, -1, 53, 54, -1, -1, 57, 58, -1, -1, -1, -1, -1, 64, -1, -1, 67, 68, -1, 70, 71, @@ -2847,98 +2901,96 @@ static const yytype_int16 yycheck[] = 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 137, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, 170, 171, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 186, 187, 188, -1, 190, -1, - -1, 193, 194, -1, -1, -1, -1, -1, -1, -1, - 202, -1, 204, 1, 206, 207, 4, 5, 6, -1, - 8, 9, 10, -1, 12, -1, 14, 15, 16, 17, + -1, 193, 194, -1, -1, -1, 4, 5, -1, -1, + 202, -1, 204, -1, 206, 207, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, 25, 26, 27, - 28, -1, 30, -1, -1, -1, -1, -1, -1, 37, - 38, -1, -1, 41, -1, 43, 44, -1, -1, 47, - -1, 49, 50, 51, -1, 53, 54, -1, -1, 57, - 58, -1, -1, -1, -1, -1, 64, -1, -1, 67, + -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, + 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, + -1, -1, 50, 51, -1, -1, 54, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 137, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, - -1, 169, 170, 171, -1, -1, -1, -1, -1, -1, + -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 186, 187, 188, -1, 190, -1, -1, 193, 194, -1, -1, -1, - -1, -1, -1, -1, 202, -1, 204, 1, 206, 207, - 4, 5, 6, -1, 8, 9, 10, -1, 12, -1, - 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, - 24, 25, 26, 27, 28, -1, 30, -1, -1, -1, - -1, -1, -1, 37, 38, -1, -1, 41, -1, 43, - 44, -1, -1, 47, -1, 49, 50, 51, -1, 53, - 54, -1, -1, 57, 58, -1, -1, -1, -1, -1, - 64, -1, -1, 67, 68, -1, 70, 71, 72, -1, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, - 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, - 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, - 104, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, - -1, -1, -1, -1, -1, 169, 170, 171, -1, -1, + -1, -1, 4, 5, 202, -1, 204, -1, 206, 207, + 12, -1, 14, 15, 16, 17, 18, -1, -1, -1, + -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, + -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, + -1, -1, 44, -1, -1, 47, 48, -1, 50, -1, + -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 67, 68, -1, 70, 71, + 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, + 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, + 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, + 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 186, 187, 188, -1, 190, -1, -1, 193, - 194, -1, -1, -1, 4, 5, -1, -1, 202, -1, - 204, -1, 206, 207, 14, 15, 16, 17, 18, -1, - -1, -1, -1, -1, 24, 25, 26, 27, -1, -1, - 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, - -1, -1, -1, -1, 44, -1, -1, 47, -1, -1, - 50, 51, -1, -1, 54, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 67, 68, -1, - 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, - 100, 101, 102, 103, 104, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, + -1, -1, -1, -1, -1, 137, -1, -1, -1, -1, + -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 186, 187, 188, -1, 190, -1, + -1, 193, 194, -1, -1, -1, -1, -1, 4, 5, + 202, -1, 204, -1, 206, 207, 12, -1, 14, 15, + 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, + 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, + -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, + -1, 47, 48, -1, 50, -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, - -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, + -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, + 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, + 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, + -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 186, 187, 188, -1, - 190, -1, -1, 193, 194, -1, -1, -1, -1, -1, - 4, 5, 202, -1, 204, -1, 206, 207, 12, -1, - 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, - 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, - -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, - 44, -1, -1, 47, 48, -1, 50, -1, -1, -1, - 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 67, 68, -1, 70, 71, 72, -1, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, - 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, - 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, + 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, + -1, 137, -1, -1, -1, -1, -1, -1, -1, 145, + 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, + 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, + -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 186, 187, 188, -1, 190, -1, -1, 193, 194, -1, + -1, -1, 4, 5, -1, -1, 202, -1, 204, -1, + 206, 207, 14, 15, 16, 17, 18, -1, -1, -1, + -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, + -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, + -1, -1, 44, -1, -1, 47, -1, -1, 50, -1, + -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 67, 68, -1, 70, 71, + 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, + 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, + 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, + 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 145, 146, 147, 148, 149, -1, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, - -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 137, -1, -1, -1, -1, + -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 186, 187, 188, -1, 190, -1, -1, 193, - 194, -1, -1, -1, -1, -1, 4, 5, 202, -1, - 204, -1, 206, 207, 12, -1, 14, 15, 16, 17, + -1, -1, -1, -1, 186, 187, 188, -1, 190, -1, + -1, 193, 194, -1, -1, -1, 4, 5, -1, -1, + 202, -1, 204, 205, 206, 207, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, - 48, -1, 50, -1, -1, -1, 54, -1, -1, -1, + -1, -1, 50, -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, @@ -2946,53 +2998,53 @@ static const yytype_int16 yycheck[] = 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 137, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 186, 187, 188, -1, 190, -1, -1, 193, 194, -1, -1, -1, - 4, 5, -1, -1, 202, -1, 204, -1, 206, 207, - 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, - 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, - -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, - 44, -1, -1, 47, -1, -1, 50, -1, -1, -1, - 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 67, 68, -1, 70, 71, 72, -1, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, - 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, - 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 145, 146, 147, 148, 149, -1, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, - -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 186, 187, 188, -1, 190, -1, -1, 193, - 194, -1, -1, -1, 4, 5, -1, -1, 202, -1, - 204, 205, 206, 207, 14, 15, 16, 17, 18, -1, - -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, - 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, - -1, -1, -1, -1, 44, -1, -1, 47, -1, -1, - 50, -1, -1, -1, 54, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 67, 68, -1, - 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, - 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, + -1, -1, 4, 5, 202, 203, 204, -1, 206, 207, + 12, -1, 14, 15, 16, 17, 18, -1, -1, -1, + -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, + -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, + -1, -1, 44, -1, -1, 47, -1, -1, 50, -1, + -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 67, 68, -1, 70, 71, + 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, + 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, + 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, + 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 137, -1, -1, -1, -1, + -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, + -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, + 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, - -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, + -1, -1, -1, -1, 186, 187, 188, -1, 190, -1, + -1, 193, 194, -1, -1, -1, 4, 5, -1, -1, + 202, -1, 204, -1, 206, 207, 14, 15, 16, 17, + 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, + -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, + 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, + -1, -1, 50, -1, -1, -1, 54, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, + 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, + 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, + 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, + 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 186, 187, 188, -1, - 190, -1, -1, 193, 194, -1, -1, -1, -1, -1, - 4, 5, 202, 203, 204, -1, 206, 207, 12, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 137, + -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, + 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, + 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, + -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 186, 187, + 188, -1, 190, -1, -1, 193, 194, -1, -1, -1, + 4, 5, -1, -1, 202, 203, 204, -1, 206, 207, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, @@ -3004,8 +3056,8 @@ static const yytype_int16 yycheck[] = 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 125, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 137, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, @@ -3017,34 +3069,34 @@ static const yytype_int16 yycheck[] = 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, -1, -1, 50, -1, -1, -1, 54, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 67, 68, -1, + 60, -1, -1, -1, -1, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 137, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 186, 187, 188, -1, 190, -1, -1, 193, 194, -1, -1, -1, 4, 5, - -1, -1, 202, 203, 204, -1, 206, 207, 14, 15, + -1, -1, 202, -1, 204, -1, 206, 207, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, -1, -1, 50, -1, -1, -1, 54, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 57, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 116, 117, -1, -1, -1, -1, -1, -1, -1, 125, + 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 145, + -1, 137, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, @@ -3055,15 +3107,15 @@ static const yytype_int16 yycheck[] = -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, -1, -1, 50, -1, - -1, -1, 54, -1, -1, -1, -1, -1, 60, -1, + -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 125, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 137, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, @@ -3071,10 +3123,10 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, 186, 187, 188, -1, 190, -1, -1, 193, 194, -1, -1, -1, 4, 5, -1, -1, 202, -1, 204, -1, 206, 207, 14, 15, 16, 17, - 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, + 18, -1, -1, 21, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, - -1, -1, 50, -1, -1, -1, 54, -1, -1, 57, + -1, -1, 50, -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, @@ -3082,7 +3134,7 @@ static const yytype_int16 yycheck[] = 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 137, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, @@ -3101,16 +3153,16 @@ static const yytype_int16 yycheck[] = 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, - -1, 125, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 137, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 186, 187, 188, -1, 190, -1, -1, 193, 194, -1, -1, -1, 4, 5, -1, -1, 202, -1, - 204, -1, 206, 207, 14, 15, 16, 17, 18, -1, - -1, 21, -1, -1, 24, -1, 26, -1, -1, -1, + 204, 205, 206, 207, 14, 15, 16, 17, 18, -1, + -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, -1, -1, 50, -1, -1, -1, 54, -1, -1, -1, -1, -1, @@ -3121,12 +3173,12 @@ static const yytype_int16 yycheck[] = 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 137, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 186, 187, 188, -1, + -1, -1, -1, -1, 184, -1, 186, 187, 188, -1, 190, -1, -1, 193, 194, -1, -1, -1, 4, 5, -1, -1, 202, -1, 204, -1, 206, 207, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, @@ -3141,7 +3193,7 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 145, + -1, 137, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, @@ -3160,14 +3212,14 @@ static const yytype_int16 yycheck[] = 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 137, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 184, -1, 186, 187, 188, -1, 190, -1, + -1, -1, -1, -1, 186, 187, 188, -1, 190, -1, -1, 193, 194, -1, -1, -1, 4, 5, -1, -1, - 202, -1, 204, -1, 206, 207, 14, 15, 16, 17, + 202, -1, 204, 205, 206, 207, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, @@ -3179,7 +3231,7 @@ static const yytype_int16 yycheck[] = 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 137, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, @@ -3199,7 +3251,7 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 137, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, @@ -3217,15 +3269,15 @@ static const yytype_int16 yycheck[] = 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 125, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 137, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 186, 187, 188, -1, 190, -1, -1, 193, 194, -1, -1, -1, 4, 5, - -1, -1, 202, -1, 204, 205, 206, 207, 14, 15, + -1, -1, 202, -1, 204, -1, 206, 207, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, @@ -3238,13 +3290,13 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 145, + -1, 137, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 186, 187, 188, -1, 190, -1, -1, 193, 194, -1, - -1, -1, 4, 5, -1, -1, 202, -1, 204, 205, + -1, -1, 4, 5, -1, -1, 202, -1, 204, -1, 206, 207, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, @@ -3256,69 +3308,84 @@ static const yytype_int16 yycheck[] = 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, - -1, -1, -1, 125, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 137, -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 186, 187, 188, -1, 190, -1, - -1, 193, 194, -1, -1, -1, 4, 5, -1, -1, - 202, -1, 204, -1, 206, 207, 14, 15, 16, 17, - 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, - -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, - 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, - -1, -1, 50, -1, -1, -1, 54, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, - 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, - 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 162, -1, -1, -1, -1, 18, -1, 169, -1, -1, + -1, 24, -1, -1, -1, -1, -1, 30, -1, -1, + -1, -1, -1, -1, 186, 187, 188, 40, 190, -1, + -1, 193, 194, -1, -1, 48, -1, -1, -1, -1, + 202, -1, 204, -1, 206, 207, -1, -1, -1, -1, + 63, -1, -1, -1, -1, -1, -1, 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, + -1, -1, -1, 20, 21, -1, -1, 18, -1, -1, + -1, -1, -1, 24, -1, -1, -1, -1, -1, 30, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 40, + -1, -1, -1, -1, 137, -1, -1, 48, -1, 20, + 21, -1, -1, -1, -1, -1, -1, 150, -1, -1, + -1, -1, 63, -1, -1, -1, -1, -1, 161, 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, -1, -1, -1, -1, -1, 114, 115, 116, + 117, 118, -1, 206, 121, 122, 123, 124, -1, 126, + 127, 128, 129, 130, -1, 132, 133, -1, -1, -1, + -1, 138, 139, 140, -1, -1, 137, 144, -1, -1, + -1, 20, 21, 114, 115, 116, 117, 118, -1, 150, + 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, + 161, 132, 133, -1, -1, -1, -1, 138, 139, 140, + -1, -1, 179, 144, 181, 182, 183, 184, 185, 186, + 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 201, 202, -1, -1, 205, -1, + -1, -1, -1, -1, -1, 206, -1, -1, 179, -1, + 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, - 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, - -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 186, 187, - 188, -1, 190, -1, -1, 193, 194, -1, -1, -1, - 4, 5, -1, -1, 202, -1, 204, -1, 206, 207, - 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, - 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, - -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, - 44, -1, -1, 47, -1, -1, 50, -1, -1, -1, - 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 67, 68, -1, 70, 71, 72, -1, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, - 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, - 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, + 201, 202, -1, -1, 205, 114, 115, 116, 117, 118, + 20, 21, 121, 122, 123, 124, -1, 126, 127, 128, + 129, 130, -1, 132, 133, -1, -1, -1, -1, 138, + 139, 140, -1, -1, -1, 144, -1, -1, -1, -1, + -1, 20, 21, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, + 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 201, 202, -1, -1, 205, -1, -1, -1, + -1, -1, -1, -1, 114, 115, 116, 117, 118, -1, + -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, + 130, -1, 132, 133, -1, -1, -1, -1, 138, 139, + 140, -1, -1, -1, 144, 114, 115, 116, 117, 118, + 20, 21, 121, 122, 123, 124, -1, 126, 127, 128, + 129, 130, -1, 132, 133, -1, -1, -1, -1, 138, + 139, 140, -1, -1, -1, 144, -1, -1, -1, 179, + -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 201, 202, -1, -1, 205, -1, -1, -1, -1, + 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, + 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 201, 202, -1, -1, 205, -1, -1, -1, + -1, -1, 20, 21, 114, 115, 116, 117, 118, -1, + -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, + 130, -1, 132, 133, -1, -1, -1, -1, 138, 139, + 140, -1, -1, -1, 144, 20, 21, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, 20, - 21, -1, -1, 18, -1, 169, -1, -1, -1, 24, - -1, -1, -1, -1, -1, 30, -1, -1, -1, -1, - -1, -1, 186, 187, 188, 40, 190, -1, -1, 193, - 194, -1, -1, 48, -1, 20, 21, -1, 202, -1, - 204, -1, 206, 207, -1, -1, -1, -1, 63, -1, - -1, -1, -1, -1, -1, 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, -1, -1, - -1, -1, -1, 114, 115, 116, 117, 118, -1, -1, - 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, - -1, 132, 133, -1, -1, -1, -1, 138, 139, 140, - -1, -1, -1, 144, -1, -1, -1, 20, 21, 114, - 115, 116, 117, 118, -1, 150, 121, 122, 123, 124, - -1, 126, 127, 128, 129, 130, 161, 132, 133, -1, - -1, -1, -1, 138, 139, 140, -1, -1, 179, 144, - 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 201, 202, -1, -1, 205, -1, -1, -1, -1, -1, - -1, 206, -1, -1, 179, -1, 181, 182, 183, 184, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 179, + -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 201, 202, -1, -1, 205, 114, 115, 116, 117, + 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, + 128, 129, 130, -1, 132, 133, -1, -1, -1, -1, + 138, 139, 140, -1, -1, -1, 144, 20, 21, 114, + 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, + -1, 126, 127, 128, 129, 130, -1, 132, 133, -1, + -1, -1, -1, 138, 139, 140, -1, -1, -1, 144, + -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, + 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 201, 202, -1, -1, 205, -1, -1, + -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 201, 202, -1, -1, 205, 114, 115, 116, 117, 118, 20, 21, 121, 122, @@ -3495,222 +3562,179 @@ static const yytype_int16 yycheck[] = -1, 132, 133, -1, -1, -1, -1, 138, 139, 140, -1, -1, -1, 144, -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 201, 202, -1, - -1, 205, -1, -1, -1, -1, -1, -1, 179, -1, + -1, -1, -1, -1, -1, -1, -1, 201, 202, 203, + -1, -1, -1, -1, -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 201, 202, -1, -1, 205, 114, 115, 116, 117, 118, - 20, 21, 121, 122, 123, 124, -1, 126, 127, 128, + 201, 202, 203, 20, 21, 114, 115, 116, 117, 118, + -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, -1, -1, -1, -1, 138, - 139, 140, -1, -1, -1, 144, -1, -1, -1, -1, - -1, 20, 21, -1, -1, -1, -1, -1, -1, -1, + 139, 140, -1, -1, -1, 144, 20, 21, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 201, 202, -1, -1, 205, -1, -1, -1, - -1, -1, -1, -1, 114, 115, 116, 117, 118, -1, - -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, - 130, -1, 132, 133, -1, -1, -1, -1, 138, 139, - 140, -1, -1, -1, 144, 114, 115, 116, 117, 118, - 20, 21, 121, 122, 123, 124, -1, 126, 127, 128, - 129, 130, -1, 132, 133, -1, -1, -1, -1, 138, - 139, 140, -1, -1, -1, 144, -1, -1, -1, 179, - -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, - 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 201, 202, -1, -1, 205, -1, -1, -1, -1, - 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 201, 202, -1, -1, 205, -1, -1, -1, - -1, -1, 20, 21, 114, 115, 116, 117, 118, -1, - -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, - 130, -1, 132, 133, -1, -1, -1, -1, 138, 139, - 140, -1, -1, -1, 144, 20, 21, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 179, - -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, - 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 201, 202, -1, -1, 205, 114, 115, 116, 117, - 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, - 128, 129, 130, -1, 132, 133, -1, -1, -1, -1, - 138, 139, 140, -1, -1, -1, 144, 20, 21, 114, - 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, - -1, 126, 127, 128, 129, 130, -1, 132, 133, -1, - -1, -1, -1, 138, 139, 140, -1, -1, -1, 144, - -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 201, 202, 203, -1, -1, -1, -1, - -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 201, 202, 203, 20, - 21, 114, 115, 116, 117, 118, -1, -1, 121, 122, - 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, - 133, -1, -1, -1, -1, 138, 139, 140, -1, -1, - -1, 144, 20, 21, -1, -1, -1, -1, -1, -1, + -1, -1, 201, 202, 203, -1, -1, 114, 115, 116, + 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, + 127, 128, 129, 130, -1, 132, 133, -1, -1, -1, + -1, 138, 139, 140, -1, -1, -1, 144, 20, 21, + 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, + 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, + -1, -1, -1, -1, 138, 139, 140, -1, -1, -1, + 144, -1, 179, -1, 181, 182, 183, 184, 185, 186, + 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 201, 202, 203, -1, -1, -1, + -1, -1, -1, -1, -1, 179, -1, 181, 182, 183, + 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 201, 202, 203, + -1, -1, 114, 115, 116, 117, 118, 20, 21, 121, + 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, + 132, 133, -1, -1, -1, -1, 138, 139, 140, -1, + -1, -1, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 179, -1, 181, 182, + -1, -1, -1, -1, -1, -1, -1, 179, -1, 181, + 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 201, + 202, 203, -1, 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, 20, 21, 138, 139, 140, 141, 142, + 143, 144, -1, -1, -1, -1, -1, -1, -1, -1, + 37, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 20, 21, -1, -1, 171, -1, + -1, -1, -1, -1, -1, 178, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 201, 202, - 203, -1, -1, 114, 115, 116, 117, 118, -1, -1, - 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, - -1, 132, 133, -1, -1, -1, -1, 138, 139, 140, - -1, -1, -1, 144, 20, 21, 114, 115, 116, 117, - 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, - 128, 129, 130, -1, 132, 133, -1, -1, -1, -1, - 138, 139, 140, -1, -1, -1, 144, -1, 179, -1, - 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 201, 202, 203, -1, -1, -1, -1, -1, -1, -1, - -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 201, 202, 203, -1, -1, 114, 115, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 106, + 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, -1, -1, 126, + 127, 128, -1, -1, 131, 132, 133, 134, 135, -1, + -1, 138, 139, 140, 141, 142, 143, 144, 114, 115, 116, 117, 118, 20, 21, 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, -1, -1, - -1, -1, 138, 139, 140, -1, -1, -1, 144, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 136, -1, 138, 139, 140, -1, -1, -1, 144, -1, + -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, + 187, 188, 189, 190, -1, -1, 193, 194, -1, -1, + -1, -1, -1, -1, 201, 202, -1, -1, -1, -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 201, 202, 203, -1, 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, 20, - 21, 138, 139, 140, 141, 142, 143, 144, -1, -1, - -1, -1, -1, -1, -1, -1, 37, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 20, 21, -1, -1, 171, -1, -1, -1, -1, -1, - -1, 178, 179, -1, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 201, 202, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 106, 107, 108, 109, 110, - 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, -1, -1, 126, 127, 128, -1, -1, - 131, 132, 133, 134, 135, -1, -1, 138, 139, 140, - 141, 142, 143, 144, 114, 115, 116, 117, 118, 20, - 21, 121, 122, 123, 124, -1, 126, 127, 128, 129, - 130, -1, 132, 133, -1, -1, 136, -1, 138, 139, - 140, -1, -1, -1, 144, -1, -1, -1, 179, -1, - 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, - -1, -1, 193, 194, -1, -1, -1, -1, -1, -1, - 201, 202, -1, -1, -1, -1, -1, -1, -1, 179, - -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, - 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 201, 202, -1, -1, -1, -1, -1, 20, 21, - -1, -1, -1, 114, 115, 116, 117, 118, -1, -1, - 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, - -1, 132, 133, -1, -1, -1, -1, 138, 139, 140, - -1, -1, -1, 144, 20, 21, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 169, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 179, -1, - 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 201, 202, 114, 115, 116, 117, 118, -1, -1, 121, - 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, - 132, 133, -1, -1, -1, -1, 138, 139, 140, -1, - -1, -1, 144, 20, 21, -1, -1, -1, 114, 115, - 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, - 126, 127, 128, 129, 130, -1, 132, 133, -1, 171, - -1, -1, 138, 139, 140, -1, -1, 179, 144, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 201, - 202, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 20, 21, -1, -1, -1, - -1, -1, -1, -1, -1, 201, 202, 114, 115, 116, + -1, -1, -1, -1, -1, 201, 202, -1, -1, -1, + -1, -1, 20, 21, -1, -1, -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, - 127, 128, 129, 130, -1, 132, 133, 20, 21, -1, - -1, 138, 139, 140, -1, -1, -1, 144, -1, -1, + 127, 128, 129, 130, -1, 132, 133, -1, -1, -1, + -1, 138, 139, 140, -1, -1, -1, 144, 20, 21, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 171, -1, -1, -1, -1, -1, + -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, -1, -1, -1, -1, -1, 114, - 115, 116, 117, 118, 201, 202, 121, 122, 123, 124, - -1, 126, 127, 128, 129, 130, -1, 132, 133, 20, - 21, -1, -1, 138, 139, 140, -1, -1, -1, 144, - -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, + 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 201, 202, 114, 115, 116, 117, + 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, + 128, 129, 130, -1, 132, 133, -1, -1, -1, -1, + 138, 139, 140, -1, -1, -1, 144, 20, 21, -1, + -1, -1, 114, 115, 116, 117, 118, -1, -1, 121, + 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, + 132, 133, -1, 171, -1, -1, 138, 139, 140, -1, + -1, 179, 144, 181, 182, 183, 184, 185, 186, 187, + 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 201, 202, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 179, 180, 181, + 182, 183, 184, 185, 186, 187, 188, 189, 190, 20, + 21, -1, -1, -1, -1, -1, -1, -1, -1, 201, + 202, 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, - 133, -1, 167, 20, 21, 138, 139, 140, -1, -1, - -1, 144, -1, -1, 179, -1, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 201, 202, 171, -1, + 133, 20, 21, -1, -1, 138, 139, 140, -1, -1, + -1, 144, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 171, -1, -1, -1, -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, 114, 115, 116, 117, 118, 201, 202, 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, - -1, 132, 133, -1, -1, 20, 21, 138, 139, 140, - -1, -1, -1, 144, -1, -1, -1, 114, 115, 116, - 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, - 127, 128, 129, 130, -1, 132, 133, 20, 21, -1, - 171, 138, 139, 140, -1, -1, -1, 144, 179, -1, + -1, 132, 133, 20, 21, -1, -1, 138, 139, 140, + -1, -1, -1, 144, -1, 114, 115, 116, 117, 118, + -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, + 129, 130, -1, 132, 133, -1, 167, 20, 21, 138, + 139, 140, -1, -1, -1, 144, -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 201, 202, -1, -1, 171, -1, -1, -1, -1, -1, - -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, -1, -1, -1, -1, -1, 114, - 115, 116, 117, 118, 201, 202, 121, 122, 123, 124, - -1, 126, 127, 128, 129, 130, -1, 132, 133, 20, - 21, -1, -1, 138, 139, 140, -1, -1, -1, 144, + 201, 202, 171, -1, -1, -1, -1, -1, -1, -1, + 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, + 189, 190, -1, -1, -1, -1, -1, 114, 115, 116, + 117, 118, 201, 202, 121, 122, 123, 124, -1, 126, + 127, 128, 129, 130, -1, 132, 133, -1, -1, 20, + 21, 138, 139, 140, -1, -1, -1, 144, -1, -1, -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, - 133, 20, 21, -1, -1, 138, 139, 140, -1, -1, - -1, 144, -1, -1, 179, -1, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 201, 202, -1, -1, + 133, 20, 21, -1, 171, 138, 139, 140, -1, -1, + -1, 144, 179, -1, 181, 182, 183, 184, 185, 186, + 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 201, 202, -1, -1, 171, -1, -1, -1, -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, 114, 115, 116, 117, 118, 201, 202, 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, 20, 21, -1, -1, 138, 139, 140, - -1, -1, -1, -1, -1, 114, 115, 116, 117, 118, + -1, -1, -1, 144, -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, - 129, 130, -1, 132, 133, 20, 21, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 179, -1, + 129, 130, -1, 132, 133, 20, 21, -1, -1, 138, + 139, 140, -1, -1, -1, 144, -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 201, 202, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 182, 183, 184, 185, 186, 187, 188, + 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, 114, 115, 116, 117, 118, 201, 202, 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, 20, 21, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 114, + -1, 138, 139, 140, -1, -1, -1, -1, -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, - -1, 126, 127, 128, 129, 130, -1, 132, 133, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 183, 184, 185, 186, - 187, 188, 189, 190, -1, -1, -1, -1, -1, 18, + -1, 126, 127, 128, 129, 130, -1, 132, 133, 20, + 21, -1, -1, 138, -1, -1, -1, -1, -1, -1, + -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, + 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 201, 202, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 184, + -1, -1, -1, -1, -1, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, - -1, 114, 115, 116, 117, 118, 201, 202, 121, -1, - -1, 124, -1, 126, 127, 128, 129, 130, -1, 132, - 133, 70, 71, 72, -1, 74, 75, 76, 77, 78, - 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, - 99, 100, -1, -1, -1, -1, -1, 18, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 184, 185, 186, 187, 188, 189, 190, -1, -1, + -1, 114, 115, 116, 117, 118, 201, 202, 121, 122, + 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, + 133, 20, 21, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 114, 115, 116, 117, 118, -1, -1, + 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, + -1, 132, 133, 20, 21, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 181, 182, + 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 201, 202, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 152, 34, -1, -1, -1, -1, 70, - 71, 72, 161, 74, 75, 76, 77, 78, 79, 80, - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, - 70, -1, 72, -1, 74, 75, 76, 77, 78, -1, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, - 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, - -1, 152, -1, -1, -1, -1, -1, -1, -1, -1, - 161, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 182, 183, 184, 185, 186, 187, 188, 189, 190, + -1, -1, -1, -1, -1, 114, 115, 116, 117, 118, + 201, 202, 121, 122, 123, 124, -1, 126, 127, 128, + 129, 130, -1, 132, 133, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 114, 115, 116, + 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, + 127, 128, 129, 130, -1, 132, 133, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 183, 184, 185, 186, 187, 188, + 189, 190, 18, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 201, 202, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 184, 185, 186, + 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 201, 202, -1, -1, -1, 34, + -1, -1, -1, -1, 70, 71, 72, -1, 74, 75, + 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, + 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, + -1, 97, 98, 99, 100, 70, -1, 72, -1, 74, + 75, 76, 77, 78, -1, 80, 81, 82, 83, 84, + 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, + -1, -1, 97, 98, 99, 100, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 116, 117, -1, -1, -1, 152, -1, -1, -1, + -1, -1, -1, -1, -1, 161, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 161 + -1, -1, -1, -1, -1, -1, 161 }; /* YYSTOS[STATE-NUM] -- The symbol kind of the accessing symbol of @@ -3722,140 +3746,141 @@ static const yytype_int16 yystos[] = 223, 227, 253, 257, 281, 355, 362, 366, 375, 420, 424, 428, 18, 19, 161, 245, 246, 247, 154, 228, 229, 161, 190, 224, 225, 56, 62, 359, 360, 161, - 206, 213, 359, 359, 359, 161, 268, 33, 62, 130, - 194, 204, 249, 250, 251, 252, 268, 171, 4, 5, - 7, 35, 372, 61, 353, 178, 177, 180, 177, 224, - 21, 56, 189, 201, 226, 161, 171, 353, 161, 161, - 161, 137, 221, 251, 251, 251, 204, 138, 139, 140, - 177, 203, 56, 62, 258, 260, 56, 62, 363, 56, - 62, 373, 56, 62, 354, 14, 15, 154, 159, 161, - 162, 204, 216, 246, 154, 229, 161, 161, 161, 361, - 56, 62, 212, 429, 421, 425, 161, 163, 219, 205, - 247, 251, 251, 251, 251, 261, 161, 364, 376, 169, - 356, 163, 164, 215, 14, 15, 154, 159, 161, 216, - 243, 244, 226, 178, 169, 169, 169, 163, 205, 34, - 70, 72, 74, 75, 76, 77, 78, 80, 81, 82, - 83, 84, 85, 86, 87, 88, 89, 90, 92, 93, - 94, 97, 98, 99, 100, 116, 117, 161, 256, 259, - 180, 365, 105, 370, 371, 351, 207, 248, 327, 163, - 164, 165, 177, 205, 18, 24, 30, 40, 48, 63, - 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, 150, 206, 268, 379, 381, 382, 385, - 390, 391, 419, 430, 422, 426, 20, 21, 37, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 126, 127, 128, - 131, 132, 133, 134, 135, 138, 139, 140, 141, 142, - 143, 144, 179, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 193, 194, 201, 202, 34, 34, 204, - 254, 169, 262, 74, 78, 92, 93, 97, 98, 99, - 100, 380, 169, 161, 377, 170, 352, 246, 207, 146, - 161, 349, 350, 243, 184, 184, 184, 204, 184, 184, - 204, 184, 184, 184, 184, 184, 184, 204, 268, 32, - 59, 60, 122, 126, 183, 186, 188, 202, 208, 389, - 181, 161, 384, 341, 344, 161, 161, 161, 203, 21, - 161, 203, 149, 205, 327, 337, 338, 180, 255, 265, - 367, 180, 369, 169, 374, 327, 246, 204, 42, 177, - 180, 183, 348, 392, 397, 399, 4, 5, 14, 15, - 16, 17, 18, 24, 26, 30, 38, 44, 47, 50, - 54, 67, 68, 79, 101, 102, 103, 116, 117, 145, - 146, 147, 148, 149, 151, 153, 154, 155, 156, 157, - 158, 159, 160, 162, 169, 186, 187, 188, 193, 194, - 202, 204, 206, 207, 218, 220, 263, 268, 273, 286, - 293, 296, 299, 303, 305, 307, 308, 310, 315, 318, - 319, 326, 379, 432, 437, 447, 450, 462, 465, 401, - 395, 161, 386, 403, 405, 407, 409, 411, 413, 415, - 417, 319, 184, 204, 32, 183, 32, 183, 202, 208, - 203, 319, 202, 208, 390, 177, 464, 161, 171, 339, - 419, 423, 161, 171, 342, 427, 161, 131, 204, 6, - 49, 280, 171, 205, 419, 1, 8, 9, 10, 12, - 25, 27, 28, 37, 41, 43, 51, 53, 57, 58, - 64, 104, 170, 171, 230, 231, 234, 236, 237, 238, - 239, 240, 241, 242, 264, 269, 274, 275, 276, 277, - 278, 279, 281, 285, 306, 319, 161, 357, 358, 268, - 333, 350, 319, 161, 161, 390, 125, 131, 178, 347, - 419, 419, 388, 419, 184, 184, 184, 270, 381, 432, - 204, 184, 4, 101, 102, 184, 204, 184, 204, 204, - 184, 184, 204, 184, 184, 204, 184, 184, 204, 184, - 184, 319, 319, 204, 204, 204, 204, 204, 204, 217, - 12, 319, 446, 461, 319, 319, 319, 319, 319, 12, - 48, 297, 319, 297, 207, 204, 253, 169, 207, 299, - 304, 20, 21, 114, 115, 116, 117, 118, 121, 122, - 123, 124, 126, 127, 128, 129, 130, 132, 133, 138, - 139, 140, 144, 179, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 201, 202, 205, 204, 419, 419, - 205, 161, 383, 419, 254, 419, 254, 419, 254, 339, - 340, 342, 343, 205, 394, 266, 297, 203, 203, 203, - 319, 161, 431, 180, 171, 170, 180, 171, 170, 319, - 146, 161, 346, 378, 337, 319, 204, 125, 319, 262, - 60, 319, 319, 161, 171, 154, 57, 319, 262, 125, - 319, 36, 171, 171, 204, 9, 171, 171, 171, 171, - 171, 65, 282, 171, 106, 107, 108, 109, 110, 111, - 112, 113, 119, 120, 125, 131, 134, 135, 141, 142, - 143, 178, 178, 177, 464, 170, 253, 334, 205, 42, - 171, 347, 319, 185, 185, 185, 171, 438, 440, 271, - 204, 204, 268, 294, 184, 184, 184, 457, 297, 390, - 461, 319, 287, 289, 319, 291, 459, 297, 444, 448, - 297, 442, 390, 319, 319, 319, 319, 319, 319, 165, - 166, 215, 378, 136, 177, 464, 378, 12, 177, 464, - 464, 146, 151, 184, 268, 309, 152, 161, 202, 205, - 297, 433, 434, 202, 302, 265, 207, 253, 18, 152, - 161, 379, 18, 152, 161, 379, 319, 319, 319, 319, - 319, 319, 161, 319, 152, 161, 319, 319, 319, 379, - 319, 319, 319, 319, 319, 319, 21, 319, 319, 319, - 319, 319, 319, 319, 319, 319, 319, 319, 127, 128, - 152, 161, 201, 202, 316, 319, 205, 297, 185, 185, - 171, 185, 185, 255, 185, 255, 185, 255, 171, 185, - 171, 185, 267, 419, 205, 177, 203, 170, 419, 419, - 205, 204, 42, 125, 177, 178, 180, 183, 345, 262, - 378, 319, 13, 319, 262, 178, 180, 154, 319, 169, - 319, 204, 204, 284, 350, 319, 319, 319, 319, 319, + 206, 213, 359, 359, 359, 137, 161, 268, 33, 62, + 130, 194, 204, 249, 250, 251, 252, 268, 171, 4, + 5, 7, 35, 372, 61, 353, 178, 177, 180, 177, + 224, 21, 56, 189, 201, 226, 161, 171, 353, 161, + 161, 161, 161, 137, 221, 251, 251, 251, 204, 138, + 139, 140, 177, 203, 56, 62, 258, 260, 56, 62, + 363, 56, 62, 373, 56, 62, 354, 14, 15, 154, + 159, 161, 162, 204, 216, 246, 154, 229, 161, 161, + 161, 361, 56, 62, 212, 429, 421, 425, 161, 163, + 219, 205, 247, 251, 251, 251, 251, 261, 161, 364, + 376, 169, 356, 163, 164, 215, 14, 15, 154, 159, + 161, 216, 243, 244, 226, 178, 169, 169, 169, 163, + 205, 34, 70, 72, 74, 75, 76, 77, 78, 80, + 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, + 92, 93, 94, 97, 98, 99, 100, 116, 117, 161, + 256, 259, 180, 365, 105, 370, 371, 351, 207, 248, + 327, 163, 164, 165, 177, 205, 18, 24, 30, 40, + 48, 63, 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, 150, 206, 268, 379, 381, + 382, 385, 390, 391, 419, 430, 422, 426, 20, 21, + 37, 106, 107, 108, 109, 110, 111, 112, 113, 114, + 115, 116, 117, 118, 119, 120, 121, 122, 123, 126, + 127, 128, 131, 132, 133, 134, 135, 138, 139, 140, + 141, 142, 143, 144, 179, 181, 182, 183, 184, 185, + 186, 187, 188, 189, 190, 193, 194, 201, 202, 34, + 34, 204, 254, 169, 262, 74, 78, 92, 93, 97, + 98, 99, 100, 380, 169, 161, 377, 170, 352, 246, + 207, 146, 161, 349, 350, 243, 184, 184, 184, 204, + 184, 184, 204, 184, 184, 184, 184, 184, 184, 204, + 268, 32, 59, 60, 122, 126, 183, 186, 188, 202, + 208, 389, 181, 161, 384, 341, 344, 161, 161, 161, + 203, 21, 161, 203, 149, 205, 327, 337, 338, 180, + 255, 265, 367, 180, 369, 169, 374, 327, 246, 204, + 42, 177, 180, 183, 348, 392, 397, 399, 4, 5, + 14, 15, 16, 17, 18, 24, 26, 30, 38, 44, + 47, 50, 54, 67, 68, 79, 101, 102, 103, 116, + 117, 145, 146, 147, 148, 149, 151, 153, 154, 155, + 156, 157, 158, 159, 160, 162, 169, 186, 187, 188, + 193, 194, 202, 204, 206, 207, 218, 220, 263, 268, + 273, 286, 293, 296, 299, 303, 305, 307, 308, 310, + 315, 318, 319, 326, 379, 432, 437, 447, 450, 462, + 465, 401, 395, 161, 386, 403, 405, 407, 409, 411, + 413, 415, 417, 319, 184, 204, 32, 183, 32, 183, + 202, 208, 203, 319, 202, 208, 390, 177, 464, 161, + 171, 339, 419, 423, 161, 171, 342, 427, 161, 131, + 204, 6, 49, 280, 171, 205, 419, 1, 8, 9, + 10, 12, 25, 27, 28, 37, 41, 43, 51, 53, + 57, 58, 64, 104, 170, 171, 230, 231, 234, 236, + 237, 238, 239, 240, 241, 242, 264, 269, 274, 275, + 276, 277, 278, 279, 281, 285, 306, 319, 161, 357, + 358, 268, 333, 350, 319, 161, 161, 390, 125, 131, + 178, 347, 419, 419, 388, 419, 184, 184, 184, 270, + 381, 432, 204, 184, 4, 101, 102, 184, 204, 184, + 204, 204, 184, 184, 204, 184, 184, 204, 184, 184, + 204, 184, 184, 319, 319, 204, 204, 204, 204, 204, + 204, 217, 12, 319, 446, 461, 319, 319, 319, 319, + 319, 12, 48, 297, 319, 297, 207, 204, 253, 169, + 207, 299, 304, 20, 21, 114, 115, 116, 117, 118, + 121, 122, 123, 124, 126, 127, 128, 129, 130, 132, + 133, 138, 139, 140, 144, 179, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 190, 201, 202, 205, 204, + 419, 419, 205, 161, 383, 419, 254, 419, 254, 419, + 254, 339, 340, 342, 343, 205, 394, 266, 297, 203, + 203, 203, 319, 161, 431, 180, 171, 170, 180, 171, + 170, 319, 146, 161, 346, 378, 337, 319, 204, 125, + 319, 262, 60, 319, 319, 161, 171, 154, 57, 319, + 262, 125, 319, 36, 171, 171, 204, 9, 171, 171, + 171, 171, 171, 65, 282, 171, 106, 107, 108, 109, + 110, 111, 112, 113, 119, 120, 125, 131, 134, 135, + 141, 142, 143, 178, 178, 177, 464, 170, 253, 334, + 205, 42, 171, 347, 319, 185, 185, 185, 171, 438, + 440, 271, 204, 204, 268, 294, 184, 184, 184, 457, + 297, 390, 461, 319, 287, 289, 319, 291, 459, 297, + 444, 448, 297, 442, 390, 319, 319, 319, 319, 319, + 319, 165, 166, 215, 378, 136, 177, 464, 378, 12, + 177, 464, 464, 146, 151, 184, 268, 309, 152, 161, + 202, 205, 297, 433, 434, 202, 302, 265, 207, 253, + 18, 152, 161, 379, 18, 152, 161, 379, 319, 319, + 319, 319, 319, 319, 161, 319, 152, 161, 319, 319, + 319, 379, 319, 319, 319, 319, 319, 319, 21, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, - 319, 319, 319, 319, 357, 368, 7, 327, 332, 161, - 319, 171, 393, 398, 400, 419, 390, 390, 419, 69, - 436, 266, 184, 319, 419, 451, 453, 455, 390, 464, - 171, 185, 464, 205, 390, 390, 205, 390, 390, 464, - 390, 390, 464, 390, 185, 205, 205, 205, 205, 205, - 205, 319, 19, 319, 446, 170, 19, 378, 319, 203, - 205, 204, 204, 311, 313, 204, 131, 345, 433, 177, - 205, 177, 205, 202, 254, 170, 302, 184, 204, 184, - 204, 204, 204, 203, 18, 152, 161, 379, 180, 152, - 161, 319, 204, 204, 152, 161, 319, 1, 203, 205, - 402, 396, 161, 387, 404, 185, 408, 185, 412, 185, - 339, 416, 342, 418, 171, 185, 319, 161, 161, 419, - 319, 19, 262, 319, 265, 205, 319, 161, 283, 170, - 56, 62, 330, 66, 331, 171, 171, 185, 185, 185, - 161, 205, 434, 205, 161, 205, 185, 390, 390, 390, - 185, 205, 390, 204, 205, 185, 185, 185, 185, 205, - 185, 185, 205, 185, 302, 204, 167, 297, 297, 19, - 319, 319, 390, 254, 319, 319, 319, 203, 202, 152, - 161, 125, 131, 178, 183, 300, 301, 255, 254, 320, - 319, 322, 319, 205, 297, 319, 184, 204, 319, 204, - 203, 319, 205, 297, 204, 203, 317, 406, 410, 414, - 419, 204, 205, 42, 345, 297, 170, 262, 205, 177, - 205, 46, 331, 45, 105, 328, 439, 441, 272, 205, - 171, 185, 295, 185, 185, 185, 458, 185, 461, 288, - 290, 292, 460, 445, 449, 443, 204, 205, 297, 171, - 171, 297, 205, 205, 185, 255, 205, 205, 433, 204, - 131, 345, 161, 161, 161, 161, 177, 203, 136, 262, - 298, 255, 390, 205, 419, 205, 205, 205, 324, 319, - 319, 205, 205, 319, 266, 161, 319, 205, 11, 22, - 23, 232, 233, 11, 235, 161, 180, 348, 32, 329, - 328, 330, 204, 204, 161, 319, 452, 454, 456, 204, - 204, 464, 319, 319, 319, 204, 436, 204, 204, 205, - 319, 205, 446, 319, 171, 312, 185, 131, 345, 203, - 319, 319, 319, 300, 203, 125, 319, 262, 185, 185, - 419, 205, 205, 205, 205, 262, 262, 204, 236, 274, - 275, 276, 277, 319, 171, 390, 347, 335, 329, 346, - 436, 436, 185, 205, 204, 204, 204, 297, 461, 205, - 297, 436, 433, 435, 205, 171, 463, 463, 319, 309, - 314, 319, 319, 205, 205, 319, 321, 323, 185, 319, - 347, 319, 259, 336, 435, 435, 319, 436, 436, 435, - 464, 464, 464, 435, 171, 205, 52, 170, 203, 463, - 309, 131, 345, 325, 205, 319, 171, 171, 259, 205, - 205, 205, 435, 435, 205, 205, 205, 205, 205, 433, - 319, 203, 319, 319, 262, 171, 262, 205, 205, 233 + 127, 128, 152, 161, 201, 202, 316, 319, 205, 297, + 185, 185, 171, 185, 185, 255, 185, 255, 185, 255, + 171, 185, 171, 185, 267, 419, 205, 177, 203, 170, + 419, 419, 205, 204, 42, 125, 177, 178, 180, 183, + 345, 262, 378, 319, 13, 319, 262, 178, 180, 154, + 319, 169, 319, 204, 204, 284, 350, 319, 319, 319, + 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, + 319, 319, 319, 319, 319, 319, 357, 368, 7, 327, + 332, 161, 319, 171, 393, 398, 400, 419, 390, 390, + 419, 69, 436, 266, 184, 319, 419, 451, 453, 455, + 390, 464, 171, 185, 464, 205, 390, 390, 205, 390, + 390, 464, 390, 390, 464, 390, 185, 205, 205, 205, + 205, 205, 205, 319, 19, 319, 446, 170, 19, 378, + 319, 203, 205, 204, 204, 311, 313, 204, 131, 345, + 433, 177, 205, 177, 205, 202, 254, 170, 302, 184, + 204, 184, 204, 204, 204, 203, 18, 152, 161, 379, + 180, 152, 161, 319, 204, 204, 152, 161, 319, 1, + 203, 205, 402, 396, 161, 387, 404, 185, 408, 185, + 412, 185, 339, 416, 342, 418, 171, 185, 319, 161, + 161, 419, 319, 19, 262, 319, 265, 205, 319, 161, + 283, 170, 56, 62, 330, 66, 331, 171, 171, 185, + 185, 185, 161, 205, 434, 205, 161, 205, 185, 390, + 390, 390, 185, 205, 390, 204, 205, 185, 185, 185, + 185, 205, 185, 185, 205, 185, 302, 204, 167, 297, + 297, 19, 319, 319, 390, 254, 319, 319, 319, 203, + 202, 152, 161, 125, 131, 178, 183, 300, 301, 255, + 254, 320, 319, 322, 319, 205, 297, 319, 184, 204, + 319, 204, 203, 319, 205, 297, 204, 203, 317, 406, + 410, 414, 419, 204, 205, 42, 345, 297, 170, 262, + 205, 177, 205, 46, 331, 45, 105, 328, 439, 441, + 272, 205, 171, 185, 295, 185, 185, 185, 458, 185, + 461, 288, 290, 292, 460, 445, 449, 443, 204, 205, + 297, 171, 171, 297, 205, 205, 185, 255, 205, 205, + 433, 204, 131, 345, 161, 161, 161, 161, 177, 203, + 136, 262, 298, 255, 390, 205, 419, 205, 205, 205, + 324, 319, 319, 205, 205, 319, 266, 161, 319, 205, + 11, 22, 23, 232, 233, 11, 235, 161, 180, 348, + 32, 329, 328, 330, 204, 204, 161, 319, 452, 454, + 456, 204, 204, 464, 319, 319, 319, 204, 436, 204, + 204, 205, 319, 205, 446, 319, 171, 312, 185, 131, + 345, 203, 319, 319, 319, 300, 203, 125, 319, 262, + 185, 185, 419, 205, 205, 205, 205, 262, 262, 204, + 236, 274, 275, 276, 277, 319, 171, 390, 347, 335, + 329, 346, 436, 436, 185, 205, 204, 204, 204, 297, + 461, 205, 297, 436, 433, 435, 205, 171, 463, 463, + 319, 309, 314, 319, 319, 205, 205, 319, 321, 323, + 185, 319, 347, 319, 259, 336, 435, 435, 319, 436, + 436, 435, 464, 464, 464, 435, 171, 205, 52, 170, + 203, 463, 309, 131, 345, 325, 205, 319, 171, 171, + 259, 205, 205, 205, 435, 435, 205, 205, 205, 205, + 205, 433, 319, 203, 319, 319, 262, 171, 262, 205, + 205, 233 }; /* YYR1[RULE-NUM] -- Symbol kind of the left-hand side of rule RULE-NUM. */ @@ -3885,59 +3910,59 @@ static const yytype_int16 yyr1[] = 261, 260, 262, 262, 263, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 265, 265, 265, 266, 266, 267, 267, - 268, 268, 269, 269, 271, 272, 270, 273, 273, 273, - 273, 273, 274, 275, 276, 276, 276, 277, 277, 278, - 279, 280, 280, 280, 281, 281, 282, 282, 283, 283, - 284, 284, 285, 285, 287, 288, 286, 289, 290, 286, - 291, 292, 286, 294, 295, 293, 296, 296, 296, 297, - 297, 298, 298, 298, 299, 299, 299, 300, 300, 300, - 300, 301, 301, 302, 302, 303, 304, 304, 305, 305, - 305, 305, 305, 305, 305, 306, 306, 306, 306, 306, + 268, 268, 268, 269, 269, 271, 272, 270, 273, 273, + 273, 273, 273, 274, 275, 276, 276, 276, 277, 277, + 278, 279, 280, 280, 280, 281, 281, 282, 282, 283, + 283, 284, 284, 285, 285, 287, 288, 286, 289, 290, + 286, 291, 292, 286, 294, 295, 293, 296, 296, 296, + 297, 297, 298, 298, 298, 299, 299, 299, 300, 300, + 300, 300, 301, 301, 302, 302, 303, 304, 304, 305, + 305, 305, 305, 305, 305, 305, 306, 306, 306, 306, 306, 306, 306, 306, 306, 306, 306, 306, 306, 306, - 306, 306, 306, 306, 307, 307, 308, 308, 309, 309, - 310, 311, 312, 310, 313, 314, 310, 315, 315, 315, - 315, 316, 317, 315, 318, 318, 318, 318, 318, 319, + 306, 306, 306, 306, 306, 307, 307, 308, 308, 309, + 309, 310, 311, 312, 310, 313, 314, 310, 315, 315, + 315, 315, 316, 317, 315, 318, 318, 318, 318, 318, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, - 319, 319, 319, 319, 319, 320, 321, 319, 319, 319, - 319, 322, 323, 319, 319, 319, 324, 325, 319, 319, + 319, 319, 319, 319, 319, 319, 320, 321, 319, 319, + 319, 319, 322, 323, 319, 319, 319, 324, 325, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, - 319, 326, 326, 326, 326, 326, 326, 326, 326, 326, - 326, 326, 326, 326, 326, 326, 326, 327, 327, 328, - 328, 328, 329, 329, 330, 330, 330, 331, 331, 332, - 333, 334, 333, 335, 333, 336, 333, 337, 337, 338, - 338, 339, 339, 340, 340, 341, 341, 341, 342, 343, - 343, 344, 344, 344, 345, 345, 346, 346, 346, 346, - 346, 347, 347, 347, 348, 348, 349, 349, 349, 349, - 349, 350, 350, 350, 351, 352, 351, 353, 353, 354, - 354, 354, 355, 356, 355, 357, 357, 358, 358, 358, - 359, 359, 359, 361, 360, 362, 363, 363, 363, 364, - 365, 365, 367, 368, 366, 369, 369, 370, 370, 371, - 372, 372, 373, 373, 373, 374, 374, 376, 377, 375, - 378, 378, 378, 378, 378, 379, 379, 379, 379, 379, + 319, 319, 326, 326, 326, 326, 326, 326, 326, 326, + 326, 326, 326, 326, 326, 326, 326, 326, 327, 327, + 328, 328, 328, 329, 329, 330, 330, 330, 331, 331, + 332, 333, 334, 333, 335, 333, 336, 333, 337, 337, + 338, 338, 339, 339, 340, 340, 341, 341, 341, 342, + 343, 343, 344, 344, 344, 345, 345, 346, 346, 346, + 346, 346, 347, 347, 347, 348, 348, 349, 349, 349, + 349, 349, 350, 350, 350, 351, 352, 351, 353, 353, + 354, 354, 354, 355, 356, 355, 357, 357, 358, 358, + 358, 359, 359, 359, 361, 360, 362, 363, 363, 363, + 364, 365, 365, 367, 368, 366, 369, 369, 370, 370, + 371, 372, 372, 373, 373, 373, 374, 374, 376, 377, + 375, 378, 378, 378, 378, 378, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, - 379, 379, 380, 380, 380, 380, 380, 380, 380, 380, - 381, 382, 382, 382, 383, 383, 384, 384, 384, 386, - 387, 385, 388, 388, 389, 389, 389, 389, 390, 390, - 391, 391, 391, 391, 392, 393, 391, 391, 391, 394, - 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, - 391, 391, 391, 395, 396, 391, 391, 397, 398, 391, - 399, 400, 391, 401, 402, 391, 391, 403, 404, 391, - 405, 406, 391, 391, 407, 408, 391, 409, 410, 391, - 391, 411, 412, 391, 413, 414, 391, 415, 416, 391, - 417, 418, 391, 419, 419, 419, 421, 422, 423, 420, - 425, 426, 427, 424, 429, 430, 431, 428, 432, 432, - 432, 432, 432, 433, 433, 433, 433, 433, 433, 433, - 433, 434, 435, 435, 436, 436, 438, 439, 437, 440, - 441, 437, 442, 443, 437, 444, 445, 437, 446, 446, - 447, 448, 449, 447, 450, 451, 452, 450, 453, 454, - 450, 455, 456, 450, 450, 457, 458, 450, 450, 459, - 460, 450, 461, 461, 462, 462, 462, 462, 463, 463, - 464, 464, 465, 465, 465 + 379, 379, 379, 380, 380, 380, 380, 380, 380, 380, + 380, 381, 382, 382, 382, 383, 383, 384, 384, 384, + 386, 387, 385, 388, 388, 389, 389, 389, 389, 390, + 390, 391, 391, 391, 391, 392, 393, 391, 391, 391, + 394, 391, 391, 391, 391, 391, 391, 391, 391, 391, + 391, 391, 391, 391, 395, 396, 391, 391, 397, 398, + 391, 399, 400, 391, 401, 402, 391, 391, 403, 404, + 391, 405, 406, 391, 391, 407, 408, 391, 409, 410, + 391, 391, 411, 412, 391, 413, 414, 391, 415, 416, + 391, 417, 418, 391, 419, 419, 419, 421, 422, 423, + 420, 425, 426, 427, 424, 429, 430, 431, 428, 432, + 432, 432, 432, 432, 433, 433, 433, 433, 433, 433, + 433, 433, 434, 435, 435, 436, 436, 438, 439, 437, + 440, 441, 437, 442, 443, 437, 444, 445, 437, 446, + 446, 447, 448, 449, 447, 450, 451, 452, 450, 453, + 454, 450, 455, 456, 450, 450, 457, 458, 450, 450, + 459, 460, 450, 461, 461, 462, 462, 462, 462, 463, + 463, 464, 464, 465, 465, 465 }; /* YYR2[RULE-NUM] -- Number of symbols on the right-hand side of rule RULE-NUM. */ @@ -3967,59 +3992,59 @@ static const yytype_int8 yyr2[] = 0, 4, 3, 7, 2, 1, 2, 2, 1, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 2, 2, 2, 0, 2, 2, 0, 1, 1, 3, - 1, 3, 2, 3, 0, 0, 5, 2, 5, 5, - 6, 2, 1, 1, 1, 2, 3, 2, 3, 2, - 4, 1, 1, 0, 1, 1, 1, 0, 1, 3, - 8, 7, 3, 3, 0, 0, 7, 0, 0, 7, - 0, 0, 7, 0, 0, 6, 5, 8, 10, 1, - 3, 1, 2, 3, 1, 1, 2, 2, 2, 2, - 2, 1, 3, 0, 5, 6, 6, 3, 1, 1, - 1, 1, 1, 1, 1, 1, 3, 3, 3, 3, + 1, 3, 2, 2, 3, 0, 0, 5, 2, 5, + 5, 6, 2, 1, 1, 1, 2, 3, 2, 3, + 2, 4, 1, 1, 0, 1, 1, 1, 0, 1, + 3, 8, 7, 3, 3, 0, 0, 7, 0, 0, + 7, 0, 0, 7, 0, 0, 6, 5, 8, 10, + 1, 3, 1, 2, 3, 1, 1, 2, 2, 2, + 2, 2, 1, 3, 0, 5, 6, 6, 3, 1, + 1, 1, 1, 1, 1, 1, 1, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 6, 8, 5, 6, 1, 4, - 3, 0, 0, 8, 0, 0, 9, 3, 4, 5, - 6, 0, 0, 5, 3, 4, 4, 3, 4, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, - 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 6, 8, 5, 6, 1, + 4, 3, 0, 0, 8, 0, 0, 9, 3, 4, + 5, 6, 0, 0, 5, 3, 4, 4, 3, 4, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 2, 2, 2, 2, 4, - 4, 5, 4, 5, 3, 4, 1, 1, 2, 4, - 4, 7, 8, 3, 5, 0, 0, 8, 3, 3, - 3, 0, 0, 8, 3, 4, 0, 0, 9, 4, - 1, 1, 1, 1, 1, 1, 1, 3, 3, 3, - 1, 4, 4, 4, 4, 4, 1, 6, 7, 6, - 6, 7, 7, 6, 7, 6, 6, 0, 1, 0, - 1, 1, 0, 1, 0, 1, 1, 0, 1, 5, - 0, 0, 4, 0, 9, 0, 10, 3, 4, 1, - 3, 1, 3, 1, 3, 0, 2, 3, 3, 1, - 3, 0, 2, 3, 1, 1, 1, 2, 3, 5, - 3, 1, 1, 1, 0, 1, 1, 4, 3, 3, - 5, 4, 6, 5, 0, 0, 4, 0, 1, 0, - 1, 1, 6, 0, 6, 1, 3, 0, 1, 3, - 0, 1, 1, 0, 5, 3, 0, 1, 1, 1, - 0, 2, 0, 0, 11, 0, 2, 0, 1, 3, - 1, 1, 0, 1, 1, 0, 3, 0, 0, 7, - 1, 4, 3, 3, 5, 1, 1, 1, 1, 1, + 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, + 4, 4, 5, 4, 5, 3, 4, 1, 1, 2, + 4, 4, 7, 8, 3, 5, 0, 0, 8, 3, + 3, 3, 0, 0, 8, 3, 4, 0, 0, 9, + 4, 1, 1, 1, 1, 1, 1, 1, 3, 3, + 3, 1, 4, 4, 4, 4, 4, 1, 6, 7, + 6, 6, 7, 7, 6, 7, 6, 6, 0, 1, + 0, 1, 1, 0, 1, 0, 1, 1, 0, 1, + 5, 0, 0, 4, 0, 9, 0, 10, 3, 4, + 1, 3, 1, 3, 1, 3, 0, 2, 3, 3, + 1, 3, 0, 2, 3, 1, 1, 1, 2, 3, + 5, 3, 1, 1, 1, 0, 1, 1, 4, 3, + 3, 5, 4, 6, 5, 0, 0, 4, 0, 1, + 0, 1, 1, 6, 0, 6, 1, 3, 0, 1, + 3, 0, 1, 1, 0, 5, 3, 0, 1, 1, + 1, 0, 2, 0, 0, 11, 0, 2, 0, 1, + 3, 1, 1, 0, 1, 1, 0, 3, 0, 0, + 7, 1, 4, 3, 3, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 4, 4, 1, 3, 0, 1, 3, 0, - 0, 6, 1, 3, 3, 2, 4, 3, 1, 2, - 1, 1, 1, 1, 0, 0, 6, 4, 5, 0, - 9, 4, 2, 2, 3, 2, 3, 2, 2, 3, - 3, 3, 2, 0, 0, 6, 2, 0, 0, 6, - 0, 0, 6, 0, 0, 6, 1, 0, 0, 6, - 0, 0, 7, 1, 0, 0, 6, 0, 0, 7, - 1, 0, 0, 6, 0, 0, 7, 0, 0, 6, - 0, 0, 6, 1, 3, 3, 0, 0, 0, 9, - 0, 0, 0, 9, 0, 0, 0, 10, 1, 1, - 1, 1, 1, 3, 3, 5, 5, 6, 6, 8, - 8, 1, 1, 3, 0, 1, 0, 0, 10, 0, - 0, 10, 0, 0, 9, 0, 0, 7, 3, 1, - 5, 0, 0, 10, 4, 0, 0, 11, 0, 0, - 11, 0, 0, 10, 5, 0, 0, 10, 5, 0, - 0, 10, 1, 3, 4, 5, 8, 10, 0, 3, - 0, 1, 9, 10, 9 + 1, 1, 1, 4, 4, 1, 3, 0, 1, 3, + 0, 0, 6, 1, 3, 3, 2, 4, 3, 1, + 2, 1, 1, 1, 1, 0, 0, 6, 4, 5, + 0, 9, 4, 2, 2, 3, 2, 3, 2, 2, + 3, 3, 3, 2, 0, 0, 6, 2, 0, 0, + 6, 0, 0, 6, 0, 0, 6, 1, 0, 0, + 6, 0, 0, 7, 1, 0, 0, 6, 0, 0, + 7, 1, 0, 0, 6, 0, 0, 7, 0, 0, + 6, 0, 0, 6, 1, 3, 3, 0, 0, 0, + 9, 0, 0, 0, 9, 0, 0, 0, 10, 1, + 1, 1, 1, 1, 3, 3, 5, 5, 6, 6, + 8, 8, 1, 1, 3, 0, 1, 0, 0, 10, + 0, 0, 10, 0, 0, 9, 0, 0, 7, 3, + 1, 5, 0, 0, 10, 4, 0, 0, 11, 0, + 0, 11, 0, 0, 10, 5, 0, 0, 10, 5, + 0, 0, 10, 1, 3, 4, 5, 8, 10, 0, + 3, 0, 1, 9, 10, 9 }; @@ -6613,13 +6638,17 @@ YYLTYPE yylloc = yyloc_default; } break; - case 242: /* expression_delete: "delete" expr */ + case 242: /* name_in_namespace: "::" "name" */ + { *(yyvsp[0].s) = "::" + *(yyvsp[0].s); (yyval.s) = (yyvsp[0].s); } + break; + + case 243: /* expression_delete: "delete" expr */ { (yyval.pExpression) = new ExprDelete(tokAt(scanner,(yylsp[-1])), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 243: /* expression_delete: "delete" "explicit" expr */ + case 244: /* expression_delete: "delete" "explicit" expr */ { auto delExpr = new ExprDelete(tokAt(scanner,(yylsp[-2])), ExpressionPtr((yyvsp[0].pExpression))); delExpr->native = true; @@ -6627,41 +6656,41 @@ YYLTYPE yylloc = yyloc_default; } break; - case 244: /* $@3: %empty */ + case 245: /* $@3: %empty */ { yyextra->das_arrow_depth ++; } break; - case 245: /* $@4: %empty */ + case 246: /* $@4: %empty */ { yyextra->das_arrow_depth --; } break; - case 246: /* new_type_declaration: '<' $@3 type_declaration '>' $@4 */ + case 247: /* new_type_declaration: '<' $@3 type_declaration '>' $@4 */ { (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); } break; - case 247: /* expr_new: "new" structure_type_declaration */ + case 248: /* expr_new: "new" structure_type_declaration */ { (yyval.pExpression) = new ExprNew(tokAt(scanner,(yylsp[-1])),TypeDeclPtr((yyvsp[0].pTypeDecl)),true); } break; - case 248: /* expr_new: "new" structure_type_declaration '(' optional_expr_list ')' */ + case 249: /* expr_new: "new" structure_type_declaration '(' optional_expr_list ')' */ { auto pNew = new ExprNew(tokAt(scanner,(yylsp[-4])),TypeDeclPtr((yyvsp[-3].pTypeDecl)),true); (yyval.pExpression) = parseFunctionArguments(pNew,(yyvsp[-1].pExpression)); } break; - case 249: /* expr_new: "new" new_type_declaration '(' use_initializer ')' */ + case 250: /* expr_new: "new" new_type_declaration '(' use_initializer ')' */ { (yyval.pExpression) = new ExprNew(tokAt(scanner,(yylsp[-4])),TypeDeclPtr((yyvsp[-3].pTypeDecl)),true); ((ExprNew *)(yyval.pExpression))->initializer = (yyvsp[-1].b); } break; - case 250: /* expr_new: "new" new_type_declaration '(' use_initializer make_struct_single ')' */ + case 251: /* expr_new: "new" new_type_declaration '(' use_initializer make_struct_single ')' */ { ((ExprMakeStruct *)(yyvsp[-1].pExpression))->at = tokAt(scanner,(yylsp[-4])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = (yyvsp[-4].pTypeDecl); @@ -6671,33 +6700,33 @@ YYLTYPE yylloc = yyloc_default; } break; - case 251: /* expr_new: "new" make_decl */ + case 252: /* expr_new: "new" make_decl */ { (yyval.pExpression) = new ExprAscend(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 252: /* expression_break: "break" */ + case 253: /* expression_break: "break" */ { (yyval.pExpression) = new ExprBreak(tokAt(scanner,(yylsp[0]))); } break; - case 253: /* expression_continue: "continue" */ + case 254: /* expression_continue: "continue" */ { (yyval.pExpression) = new ExprContinue(tokAt(scanner,(yylsp[0]))); } break; - case 254: /* expression_return: "return" */ + case 255: /* expression_return: "return" */ { (yyval.pExpression) = new ExprReturn(tokAt(scanner,(yylsp[0])),nullptr); } break; - case 255: /* expression_return: "return" expr */ + case 256: /* expression_return: "return" expr */ { (yyval.pExpression) = new ExprReturn(tokAt(scanner,(yylsp[-1])),(yyvsp[0].pExpression)); } break; - case 256: /* expression_return: "return" "<-" expr */ + case 257: /* expression_return: "return" "<-" expr */ { auto pRet = new ExprReturn(tokAt(scanner,(yylsp[-2])),(yyvsp[0].pExpression)); pRet->moveSemantics = true; @@ -6705,13 +6734,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 257: /* expression_yield_no_pipe: "yield" expr */ + case 258: /* expression_yield_no_pipe: "yield" expr */ { (yyval.pExpression) = new ExprYield(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 258: /* expression_yield_no_pipe: "yield" "<-" expr */ + case 259: /* expression_yield_no_pipe: "yield" "<-" expr */ { auto pRet = new ExprYield(tokAt(scanner,(yylsp[-2])),ExpressionPtr((yyvsp[0].pExpression))); pRet->moveSemantics = true; @@ -6719,47 +6748,47 @@ YYLTYPE yylloc = yyloc_default; } break; - case 259: /* expression_yield: expression_yield_no_pipe "end of expression" */ + case 260: /* expression_yield: expression_yield_no_pipe "end of expression" */ { (yyval.pExpression) = (yyvsp[-1].pExpression); } break; - case 260: /* expression_try_catch: "try" expression_block "recover" expression_block */ + case 261: /* expression_try_catch: "try" expression_block "recover" expression_block */ { (yyval.pExpression) = new ExprTryCatch(tokAt(scanner,(yylsp[-3])),ExpressionPtr((yyvsp[-2].pExpression)),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 261: /* kwd_let_var_or_nothing: "let" */ + case 262: /* kwd_let_var_or_nothing: "let" */ { (yyval.b) = true; } break; - case 262: /* kwd_let_var_or_nothing: "var" */ + case 263: /* kwd_let_var_or_nothing: "var" */ { (yyval.b) = false; } break; - case 263: /* kwd_let_var_or_nothing: %empty */ + case 264: /* kwd_let_var_or_nothing: %empty */ { (yyval.b) = true; } break; - case 264: /* kwd_let: "let" */ + case 265: /* kwd_let: "let" */ { (yyval.b) = true; } break; - case 265: /* kwd_let: "var" */ + case 266: /* kwd_let: "var" */ { (yyval.b) = false; } break; - case 266: /* optional_in_scope: "inscope" */ + case 267: /* optional_in_scope: "inscope" */ { (yyval.b) = true; } break; - case 267: /* optional_in_scope: %empty */ + case 268: /* optional_in_scope: %empty */ { (yyval.b) = false; } break; - case 268: /* tuple_expansion: "name" */ + case 269: /* tuple_expansion: "name" */ { (yyval.pNameList) = new vector(); (yyval.pNameList)->push_back(*(yyvsp[0].s)); @@ -6767,7 +6796,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 269: /* tuple_expansion: tuple_expansion ',' "name" */ + case 270: /* tuple_expansion: tuple_expansion ',' "name" */ { (yyvsp[-2].pNameList)->push_back(*(yyvsp[0].s)); delete (yyvsp[0].s); @@ -6775,7 +6804,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 270: /* tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" */ + case 271: /* tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" */ { (yyval.pVarDecl) = new VariableDeclaration((yyvsp[-6].pNameList),tokAt(scanner,(yylsp[-6])),(yyvsp[-3].pTypeDecl),(yyvsp[-1].pExpression)); (yyval.pVarDecl)->init_via_move = ((yyvsp[-2].i) & CorM_MOVE) !=0; @@ -6784,7 +6813,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 271: /* tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" */ + case 272: /* tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" */ { auto typeDecl = new TypeDecl(Type::autoinfer); typeDecl->at = tokAt(scanner,(yylsp[-5])); @@ -6796,41 +6825,41 @@ YYLTYPE yylloc = yyloc_default; } break; - case 272: /* expression_let: kwd_let optional_in_scope let_variable_declaration */ + case 273: /* expression_let: kwd_let optional_in_scope let_variable_declaration */ { (yyval.pExpression) = ast_Let(scanner,(yyvsp[-2].b),(yyvsp[-1].b),(yyvsp[0].pVarDecl),tokAt(scanner,(yylsp[-2])),tokAt(scanner,(yylsp[0]))); } break; - case 273: /* expression_let: kwd_let optional_in_scope tuple_expansion_variable_declaration */ + case 274: /* expression_let: kwd_let optional_in_scope tuple_expansion_variable_declaration */ { (yyval.pExpression) = ast_Let(scanner,(yyvsp[-2].b),(yyvsp[-1].b),(yyvsp[0].pVarDecl),tokAt(scanner,(yylsp[-2])),tokAt(scanner,(yylsp[0]))); } break; - case 274: /* $@5: %empty */ + case 275: /* $@5: %empty */ { yyextra->das_arrow_depth ++; } break; - case 275: /* $@6: %empty */ + case 276: /* $@6: %empty */ { yyextra->das_arrow_depth --; } break; - case 276: /* expr_cast: "cast" '<' $@5 type_declaration_no_options '>' $@6 expr */ + case 277: /* expr_cast: "cast" '<' $@5 type_declaration_no_options '>' $@6 expr */ { (yyval.pExpression) = new ExprCast(tokAt(scanner,(yylsp[-6])),ExpressionPtr((yyvsp[0].pExpression)),TypeDeclPtr((yyvsp[-3].pTypeDecl))); } break; - case 277: /* $@7: %empty */ + case 278: /* $@7: %empty */ { yyextra->das_arrow_depth ++; } break; - case 278: /* $@8: %empty */ + case 279: /* $@8: %empty */ { yyextra->das_arrow_depth --; } break; - case 279: /* expr_cast: "upcast" '<' $@7 type_declaration_no_options '>' $@8 expr */ + case 280: /* expr_cast: "upcast" '<' $@7 type_declaration_no_options '>' $@8 expr */ { auto pCast = new ExprCast(tokAt(scanner,(yylsp[-6])),ExpressionPtr((yyvsp[0].pExpression)),TypeDeclPtr((yyvsp[-3].pTypeDecl))); pCast->upcast = true; @@ -6838,15 +6867,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 280: /* $@9: %empty */ + case 281: /* $@9: %empty */ { yyextra->das_arrow_depth ++; } break; - case 281: /* $@10: %empty */ + case 282: /* $@10: %empty */ { yyextra->das_arrow_depth --; } break; - case 282: /* expr_cast: "reinterpret" '<' $@9 type_declaration_no_options '>' $@10 expr */ + case 283: /* expr_cast: "reinterpret" '<' $@9 type_declaration_no_options '>' $@10 expr */ { auto pCast = new ExprCast(tokAt(scanner,(yylsp[-6])),ExpressionPtr((yyvsp[0].pExpression)),TypeDeclPtr((yyvsp[-3].pTypeDecl))); pCast->reinterpret = true; @@ -6854,21 +6883,21 @@ YYLTYPE yylloc = yyloc_default; } break; - case 283: /* $@11: %empty */ + case 284: /* $@11: %empty */ { yyextra->das_arrow_depth ++; } break; - case 284: /* $@12: %empty */ + case 285: /* $@12: %empty */ { yyextra->das_arrow_depth --; } break; - case 285: /* expr_type_decl: "type" '<' $@11 type_declaration '>' $@12 */ + case 286: /* expr_type_decl: "type" '<' $@11 type_declaration '>' $@12 */ { (yyval.pExpression) = new ExprTypeDecl(tokAt(scanner,(yylsp[-5])),TypeDeclPtr((yyvsp[-2].pTypeDecl))); } break; - case 286: /* expr_type_info: "typeinfo" '(' name_in_namespace expr ')' */ + case 287: /* expr_type_info: "typeinfo" '(' name_in_namespace expr ')' */ { if ( (yyvsp[-1].pExpression)->rtti_isTypeDecl() ) { auto ptd = (ExprTypeDecl *)(yyvsp[-1].pExpression); @@ -6881,7 +6910,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 287: /* expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' expr ')' */ + case 288: /* expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' expr ')' */ { if ( (yyvsp[-1].pExpression)->rtti_isTypeDecl() ) { auto ptd = (ExprTypeDecl *)(yyvsp[-1].pExpression); @@ -6895,7 +6924,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 288: /* expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' */ + case 289: /* expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' */ { if ( (yyvsp[-1].pExpression)->rtti_isTypeDecl() ) { auto ptd = (ExprTypeDecl *)(yyvsp[-1].pExpression); @@ -6910,23 +6939,23 @@ YYLTYPE yylloc = yyloc_default; } break; - case 289: /* expr_list: expr */ + case 290: /* expr_list: expr */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 290: /* expr_list: expr_list ',' expr */ + case 291: /* expr_list: expr_list ',' expr */ { (yyval.pExpression) = new ExprSequence(tokAt(scanner,(yylsp[-2])),ExpressionPtr((yyvsp[-2].pExpression)),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 291: /* block_or_simple_block: expression_block */ + case 292: /* block_or_simple_block: expression_block */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 292: /* block_or_simple_block: "=>" expr */ + case 293: /* block_or_simple_block: "=>" expr */ { auto retE = make_smart(tokAt(scanner,(yylsp[-1])), ExpressionPtr((yyvsp[0].pExpression))); auto blkE = new ExprBlock(); @@ -6936,7 +6965,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 293: /* block_or_simple_block: "=>" "<-" expr */ + case 294: /* block_or_simple_block: "=>" "<-" expr */ { auto retE = make_smart(tokAt(scanner,(yylsp[-2])), ExpressionPtr((yyvsp[0].pExpression))); retE->moveSemantics = true; @@ -6947,35 +6976,35 @@ YYLTYPE yylloc = yyloc_default; } break; - case 294: /* block_or_lambda: '$' */ + case 295: /* block_or_lambda: '$' */ { (yyval.i) = 0; /* block */ } break; - case 295: /* block_or_lambda: '@' */ + case 296: /* block_or_lambda: '@' */ { (yyval.i) = 1; /* lambda */ } break; - case 296: /* block_or_lambda: '@' '@' */ + case 297: /* block_or_lambda: '@' '@' */ { (yyval.i) = 2; /* local function */ } break; - case 297: /* capture_entry: '&' "name" */ + case 298: /* capture_entry: '&' "name" */ { (yyval.pCapt) = new CaptureEntry(*(yyvsp[0].s),CaptureMode::capture_by_reference); delete (yyvsp[0].s); } break; - case 298: /* capture_entry: '=' "name" */ + case 299: /* capture_entry: '=' "name" */ { (yyval.pCapt) = new CaptureEntry(*(yyvsp[0].s),CaptureMode::capture_by_copy); delete (yyvsp[0].s); } break; - case 299: /* capture_entry: "<-" "name" */ + case 300: /* capture_entry: "<-" "name" */ { (yyval.pCapt) = new CaptureEntry(*(yyvsp[0].s),CaptureMode::capture_by_move); delete (yyvsp[0].s); } break; - case 300: /* capture_entry: ":=" "name" */ + case 301: /* capture_entry: ":=" "name" */ { (yyval.pCapt) = new CaptureEntry(*(yyvsp[0].s),CaptureMode::capture_by_clone); delete (yyvsp[0].s); } break; - case 301: /* capture_list: capture_entry */ + case 302: /* capture_list: capture_entry */ { (yyval.pCaptList) = new vector(); (yyval.pCaptList)->push_back(*(yyvsp[0].pCapt)); @@ -6983,7 +7012,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 302: /* capture_list: capture_list ',' capture_entry */ + case 303: /* capture_list: capture_list ',' capture_entry */ { (yyvsp[-2].pCaptList)->push_back(*(yyvsp[0].pCapt)); delete (yyvsp[0].pCapt); @@ -6991,137 +7020,137 @@ YYLTYPE yylloc = yyloc_default; } break; - case 303: /* optional_capture_list: %empty */ + case 304: /* optional_capture_list: %empty */ { (yyval.pCaptList) = nullptr; } break; - case 304: /* optional_capture_list: '[' '[' capture_list ']' ']' */ + case 305: /* optional_capture_list: '[' '[' capture_list ']' ']' */ { (yyval.pCaptList) = (yyvsp[-2].pCaptList); } break; - case 305: /* expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block */ + case 306: /* expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block */ { (yyval.pExpression) = ast_makeBlock(scanner,(yyvsp[-5].i),(yyvsp[-4].faList),(yyvsp[-3].pCaptList),(yyvsp[-2].pVarDeclList),(yyvsp[-1].pTypeDecl),(yyvsp[0].pExpression),tokAt(scanner,(yylsp[0])),tokAt(scanner,(yylsp[-4]))); } break; - case 306: /* expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block */ + case 307: /* expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block */ { (yyval.pExpression) = ast_makeBlock(scanner,(yyvsp[-5].i),(yyvsp[-4].faList),(yyvsp[-3].pCaptList),(yyvsp[-2].pVarDeclList),(yyvsp[-1].pTypeDecl),(yyvsp[0].pExpression),tokAt(scanner,(yylsp[0])),tokAt(scanner,(yylsp[-4]))); } break; - case 307: /* expr_full_block_assumed_piped: "begin of code block" expressions "end of code block" */ + case 308: /* expr_full_block_assumed_piped: "begin of code block" expressions "end of code block" */ { (yyval.pExpression) = ast_makeBlock(scanner,0,nullptr,nullptr,nullptr,new TypeDecl(Type::autoinfer),(yyvsp[-1].pExpression),tokAt(scanner,(yylsp[-1])),tokAt(scanner,(yylsp[-1]))); } break; - case 308: /* expr_numeric_const: "integer constant" */ + case 309: /* expr_numeric_const: "integer constant" */ { (yyval.pExpression) = new ExprConstInt(tokAt(scanner,(yylsp[0])),(int32_t)(yyvsp[0].i)); } break; - case 309: /* expr_numeric_const: "unsigned integer constant" */ + case 310: /* expr_numeric_const: "unsigned integer constant" */ { (yyval.pExpression) = new ExprConstUInt(tokAt(scanner,(yylsp[0])),(uint32_t)(yyvsp[0].ui)); } break; - case 310: /* expr_numeric_const: "long integer constant" */ + case 311: /* expr_numeric_const: "long integer constant" */ { (yyval.pExpression) = new ExprConstInt64(tokAt(scanner,(yylsp[0])),(int64_t)(yyvsp[0].i64)); } break; - case 311: /* expr_numeric_const: "unsigned long integer constant" */ + case 312: /* expr_numeric_const: "unsigned long integer constant" */ { (yyval.pExpression) = new ExprConstUInt64(tokAt(scanner,(yylsp[0])),(uint64_t)(yyvsp[0].ui64)); } break; - case 312: /* expr_numeric_const: "unsigned int8 constant" */ + case 313: /* expr_numeric_const: "unsigned int8 constant" */ { (yyval.pExpression) = new ExprConstUInt8(tokAt(scanner,(yylsp[0])),(uint8_t)(yyvsp[0].ui)); } break; - case 313: /* expr_numeric_const: "floating point constant" */ + case 314: /* expr_numeric_const: "floating point constant" */ { (yyval.pExpression) = new ExprConstFloat(tokAt(scanner,(yylsp[0])),(float)(yyvsp[0].fd)); } break; - case 314: /* expr_numeric_const: "double constant" */ + case 315: /* expr_numeric_const: "double constant" */ { (yyval.pExpression) = new ExprConstDouble(tokAt(scanner,(yylsp[0])),(double)(yyvsp[0].d)); } break; - case 315: /* expr_assign: expr */ + case 316: /* expr_assign: expr */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 316: /* expr_assign: expr '=' expr */ + case 317: /* expr_assign: expr '=' expr */ { (yyval.pExpression) = new ExprCopy(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 317: /* expr_assign: expr "<-" expr */ + case 318: /* expr_assign: expr "<-" expr */ { (yyval.pExpression) = new ExprMove(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 318: /* expr_assign: expr ":=" expr */ + case 319: /* expr_assign: expr ":=" expr */ { (yyval.pExpression) = new ExprClone(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 319: /* expr_assign: expr "&=" expr */ + case 320: /* expr_assign: expr "&=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"&=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 320: /* expr_assign: expr "|=" expr */ + case 321: /* expr_assign: expr "|=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"|=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 321: /* expr_assign: expr "^=" expr */ + case 322: /* expr_assign: expr "^=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"^=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 322: /* expr_assign: expr "&&=" expr */ + case 323: /* expr_assign: expr "&&=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"&&=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 323: /* expr_assign: expr "||=" expr */ + case 324: /* expr_assign: expr "||=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"||=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 324: /* expr_assign: expr "^^=" expr */ + case 325: /* expr_assign: expr "^^=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"^^=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 325: /* expr_assign: expr "+=" expr */ + case 326: /* expr_assign: expr "+=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"+=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 326: /* expr_assign: expr "-=" expr */ + case 327: /* expr_assign: expr "-=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"-=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 327: /* expr_assign: expr "*=" expr */ + case 328: /* expr_assign: expr "*=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"*=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 328: /* expr_assign: expr "/=" expr */ + case 329: /* expr_assign: expr "/=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"/=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 329: /* expr_assign: expr "%=" expr */ + case 330: /* expr_assign: expr "%=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"%=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 330: /* expr_assign: expr "<<=" expr */ + case 331: /* expr_assign: expr "<<=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"<<=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 331: /* expr_assign: expr ">>=" expr */ + case 332: /* expr_assign: expr ">>=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),">>=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 332: /* expr_assign: expr "<<<=" expr */ + case 333: /* expr_assign: expr "<<<=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"<<<=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 333: /* expr_assign: expr ">>>=" expr */ + case 334: /* expr_assign: expr ">>>=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),">>>=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 334: /* expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' ')' */ + case 335: /* expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' ')' */ { auto nc = new ExprNamedCall(tokAt(scanner,(yylsp[-5])),*(yyvsp[-5].s)); nc->arguments = *(yyvsp[-2].pMakeStruct); @@ -7131,7 +7160,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 335: /* expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' ')' */ + case 336: /* expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' ')' */ { auto nc = new ExprNamedCall(tokAt(scanner,(yylsp[-7])),*(yyvsp[-7].s)); nc->nonNamedArguments = sequenceToList((yyvsp[-5].pExpression)); @@ -7142,7 +7171,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 336: /* expr_method_call: expr "->" "name" '(' ')' */ + case 337: /* expr_method_call: expr "->" "name" '(' ')' */ { auto pInvoke = makeInvokeMethod(tokAt(scanner,(yylsp[-3])), (yyvsp[-4].pExpression), *(yyvsp[-2].s)); delete (yyvsp[-2].s); @@ -7150,7 +7179,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 337: /* expr_method_call: expr "->" "name" '(' expr_list ')' */ + case 338: /* expr_method_call: expr "->" "name" '(' expr_list ')' */ { auto pInvoke = makeInvokeMethod(tokAt(scanner,(yylsp[-4])), (yyvsp[-5].pExpression), *(yyvsp[-3].s)); auto callArgs = sequenceToList((yyvsp[-1].pExpression)); @@ -7160,35 +7189,35 @@ YYLTYPE yylloc = yyloc_default; } break; - case 338: /* func_addr_name: name_in_namespace */ + case 339: /* func_addr_name: name_in_namespace */ { (yyval.pExpression) = new ExprAddr(tokAt(scanner,(yylsp[0])),*(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 339: /* func_addr_name: "$i" '(' expr ')' */ + case 340: /* func_addr_name: "$i" '(' expr ')' */ { auto expr = new ExprAddr(tokAt(scanner,(yylsp[-3])),"``MACRO``TAG``ADDR``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression), expr, "i"); } break; - case 340: /* func_addr_expr: '@' '@' func_addr_name */ + case 341: /* func_addr_expr: '@' '@' func_addr_name */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 341: /* $@13: %empty */ + case 342: /* $@13: %empty */ { yyextra->das_arrow_depth ++; } break; - case 342: /* $@14: %empty */ + case 343: /* $@14: %empty */ { yyextra->das_arrow_depth --; } break; - case 343: /* func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options '>' $@14 func_addr_name */ + case 344: /* func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options '>' $@14 func_addr_name */ { auto expr = (ExprAddr *) ((yyvsp[0].pExpression)->rtti_isAddr() ? (yyvsp[0].pExpression) : (((ExprTag *) (yyvsp[0].pExpression))->value.get())); expr->funcType = TypeDeclPtr((yyvsp[-3].pTypeDecl)); @@ -7196,15 +7225,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 344: /* $@15: %empty */ + case 345: /* $@15: %empty */ { yyextra->das_arrow_depth ++; } break; - case 345: /* $@16: %empty */ + case 346: /* $@16: %empty */ { yyextra->das_arrow_depth --; } break; - case 346: /* func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name */ + case 347: /* func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name */ { auto expr = (ExprAddr *) ((yyvsp[0].pExpression)->rtti_isAddr() ? (yyvsp[0].pExpression) : (((ExprTag *) (yyvsp[0].pExpression))->value.get())); expr->funcType = make_smart(Type::tFunction); @@ -7217,21 +7246,21 @@ YYLTYPE yylloc = yyloc_default; } break; - case 347: /* expr_field: expr '.' "name" */ + case 348: /* expr_field: expr '.' "name" */ { (yyval.pExpression) = new ExprField(tokAt(scanner,(yylsp[-1])), tokAt(scanner,(yylsp[0])), ExpressionPtr((yyvsp[-2].pExpression)), *(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 348: /* expr_field: expr '.' '.' "name" */ + case 349: /* expr_field: expr '.' '.' "name" */ { (yyval.pExpression) = new ExprField(tokAt(scanner,(yylsp[-1])), tokAt(scanner,(yylsp[0])), ExpressionPtr((yyvsp[-3].pExpression)), *(yyvsp[0].s), true); delete (yyvsp[0].s); } break; - case 349: /* expr_field: expr '.' "name" '(' ')' */ + case 350: /* expr_field: expr '.' "name" '(' ')' */ { auto pInvoke = makeInvokeMethod(tokAt(scanner,(yylsp[-3])), (yyvsp[-4].pExpression), *(yyvsp[-2].s)); delete (yyvsp[-2].s); @@ -7239,7 +7268,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 350: /* expr_field: expr '.' "name" '(' expr_list ')' */ + case 351: /* expr_field: expr '.' "name" '(' expr_list ')' */ { auto pInvoke = makeInvokeMethod(tokAt(scanner,(yylsp[-4])), (yyvsp[-5].pExpression), *(yyvsp[-3].s)); auto callArgs = sequenceToList((yyvsp[-1].pExpression)); @@ -7249,29 +7278,29 @@ YYLTYPE yylloc = yyloc_default; } break; - case 351: /* $@17: %empty */ + case 352: /* $@17: %empty */ { yyextra->das_suppress_errors=true; } break; - case 352: /* $@18: %empty */ + case 353: /* $@18: %empty */ { yyextra->das_suppress_errors=false; } break; - case 353: /* expr_field: expr '.' $@17 error $@18 */ + case 354: /* expr_field: expr '.' $@17 error $@18 */ { (yyval.pExpression) = new ExprField(tokAt(scanner,(yylsp[-3])), tokAt(scanner,(yylsp[-3])), ExpressionPtr((yyvsp[-4].pExpression)), ""); yyerrok; } break; - case 354: /* expr_call: name_in_namespace '(' ')' */ + case 355: /* expr_call: name_in_namespace '(' ')' */ { (yyval.pExpression) = yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-2])),tokAt(scanner,(yylsp[0])),*(yyvsp[-2].s)); delete (yyvsp[-2].s); } break; - case 355: /* expr_call: name_in_namespace '(' make_struct_single ')' */ + case 356: /* expr_call: name_in_namespace '(' make_struct_single ')' */ { ((ExprMakeStruct *)(yyvsp[-1].pExpression))->at = tokAt(scanner,(yylsp[-3])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = new TypeDecl(Type::alias); @@ -7283,166 +7312,166 @@ YYLTYPE yylloc = yyloc_default; } break; - case 356: /* expr_call: name_in_namespace '(' expr_list ')' */ + case 357: /* expr_call: name_in_namespace '(' expr_list ')' */ { (yyval.pExpression) = parseFunctionArguments(yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-3])),tokAt(scanner,(yylsp[0])),*(yyvsp[-3].s)),(yyvsp[-1].pExpression)); delete (yyvsp[-3].s); } break; - case 357: /* expr_call: basic_type_declaration '(' ')' */ + case 358: /* expr_call: basic_type_declaration '(' ')' */ { (yyval.pExpression) = yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-2])),tokAt(scanner,(yylsp[0])),das_to_string((yyvsp[-2].type))); } break; - case 358: /* expr_call: basic_type_declaration '(' expr_list ')' */ + case 359: /* expr_call: basic_type_declaration '(' expr_list ')' */ { (yyval.pExpression) = parseFunctionArguments(yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-3])),tokAt(scanner,(yylsp[0])),das_to_string((yyvsp[-3].type))),(yyvsp[-1].pExpression)); } break; - case 359: /* expr: "null" */ + case 360: /* expr: "null" */ { (yyval.pExpression) = new ExprConstPtr(tokAt(scanner,(yylsp[0])),nullptr); } break; - case 360: /* expr: name_in_namespace */ + case 361: /* expr: name_in_namespace */ { (yyval.pExpression) = new ExprVar(tokAt(scanner,(yylsp[0])),*(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 361: /* expr: expr_numeric_const */ + case 362: /* expr: expr_numeric_const */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 362: /* expr: expr_reader */ + case 363: /* expr: expr_reader */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 363: /* expr: string_builder */ + case 364: /* expr: string_builder */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 364: /* expr: make_decl */ + case 365: /* expr: make_decl */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 365: /* expr: "true" */ + case 366: /* expr: "true" */ { (yyval.pExpression) = new ExprConstBool(tokAt(scanner,(yylsp[0])),true); } break; - case 366: /* expr: "false" */ + case 367: /* expr: "false" */ { (yyval.pExpression) = new ExprConstBool(tokAt(scanner,(yylsp[0])),false); } break; - case 367: /* expr: expr_field */ + case 368: /* expr: expr_field */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 368: /* expr: expr_mtag */ + case 369: /* expr: expr_mtag */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 369: /* expr: '!' expr */ + case 370: /* expr: '!' expr */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[-1])),"!",ExpressionPtr((yyvsp[0].pExpression))); } break; - case 370: /* expr: '~' expr */ + case 371: /* expr: '~' expr */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[-1])),"~",ExpressionPtr((yyvsp[0].pExpression))); } break; - case 371: /* expr: '+' expr */ + case 372: /* expr: '+' expr */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[-1])),"+",ExpressionPtr((yyvsp[0].pExpression))); } break; - case 372: /* expr: '-' expr */ + case 373: /* expr: '-' expr */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[-1])),"-",ExpressionPtr((yyvsp[0].pExpression))); } break; - case 373: /* expr: expr "<<" expr */ + case 374: /* expr: expr "<<" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"<<", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 374: /* expr: expr ">>" expr */ + case 375: /* expr: expr ">>" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),">>", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 375: /* expr: expr "<<<" expr */ + case 376: /* expr: expr "<<<" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"<<<", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 376: /* expr: expr ">>>" expr */ + case 377: /* expr: expr ">>>" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),">>>", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 377: /* expr: expr '+' expr */ + case 378: /* expr: expr '+' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"+", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 378: /* expr: expr '-' expr */ + case 379: /* expr: expr '-' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"-", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 379: /* expr: expr '*' expr */ + case 380: /* expr: expr '*' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"*", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 380: /* expr: expr '/' expr */ + case 381: /* expr: expr '/' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"/", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 381: /* expr: expr '%' expr */ + case 382: /* expr: expr '%' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"%", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 382: /* expr: expr '<' expr */ + case 383: /* expr: expr '<' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"<", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 383: /* expr: expr '>' expr */ + case 384: /* expr: expr '>' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),">", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 384: /* expr: expr "==" expr */ + case 385: /* expr: expr "==" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"==", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 385: /* expr: expr "!=" expr */ + case 386: /* expr: expr "!=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"!=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 386: /* expr: expr "<=" expr */ + case 387: /* expr: expr "<=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"<=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 387: /* expr: expr ">=" expr */ + case 388: /* expr: expr ">=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),">=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 388: /* expr: expr '&' expr */ + case 389: /* expr: expr '&' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"&", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 389: /* expr: expr '|' expr */ + case 390: /* expr: expr '|' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"|", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 390: /* expr: expr '^' expr */ + case 391: /* expr: expr '^' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"^", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 391: /* expr: expr "&&" expr */ + case 392: /* expr: expr "&&" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"&&", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 392: /* expr: expr "||" expr */ + case 393: /* expr: expr "||" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"||", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 393: /* expr: expr "^^" expr */ + case 394: /* expr: expr "^^" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"^^", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 394: /* expr: expr ".." expr */ + case 395: /* expr: expr ".." expr */ { auto itv = yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-1])),"interval"); itv->arguments.push_back(ExpressionPtr((yyvsp[-2].pExpression))); @@ -7451,23 +7480,23 @@ YYLTYPE yylloc = yyloc_default; } break; - case 395: /* expr: "++" expr */ + case 396: /* expr: "++" expr */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[-1])),"++", ExpressionPtr((yyvsp[0].pExpression))); } break; - case 396: /* expr: "--" expr */ + case 397: /* expr: "--" expr */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[-1])),"--", ExpressionPtr((yyvsp[0].pExpression))); } break; - case 397: /* expr: expr "++" */ + case 398: /* expr: expr "++" */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[0])),"+++", ExpressionPtr((yyvsp[-1].pExpression))); } break; - case 398: /* expr: expr "--" */ + case 399: /* expr: expr "--" */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[0])),"---", ExpressionPtr((yyvsp[-1].pExpression))); } break; - case 399: /* expr: '(' expr_list optional_comma ')' */ + case 400: /* expr: '(' expr_list optional_comma ')' */ { if ( (yyvsp[-2].pExpression)->rtti_isSequence() ) { auto mkt = new ExprMakeTuple(tokAt(scanner,(yylsp[-2]))); @@ -7483,87 +7512,87 @@ YYLTYPE yylloc = yyloc_default; } break; - case 400: /* expr: expr '[' expr ']' */ + case 401: /* expr: expr '[' expr ']' */ { (yyval.pExpression) = new ExprAt(tokAt(scanner,(yylsp[-2])), ExpressionPtr((yyvsp[-3].pExpression)), ExpressionPtr((yyvsp[-1].pExpression))); } break; - case 401: /* expr: expr '.' '[' expr ']' */ + case 402: /* expr: expr '.' '[' expr ']' */ { (yyval.pExpression) = new ExprAt(tokAt(scanner,(yylsp[-2])), ExpressionPtr((yyvsp[-4].pExpression)), ExpressionPtr((yyvsp[-1].pExpression)), true); } break; - case 402: /* expr: expr "?[" expr ']' */ + case 403: /* expr: expr "?[" expr ']' */ { (yyval.pExpression) = new ExprSafeAt(tokAt(scanner,(yylsp[-2])), ExpressionPtr((yyvsp[-3].pExpression)), ExpressionPtr((yyvsp[-1].pExpression))); } break; - case 403: /* expr: expr '.' "?[" expr ']' */ + case 404: /* expr: expr '.' "?[" expr ']' */ { (yyval.pExpression) = new ExprSafeAt(tokAt(scanner,(yylsp[-2])), ExpressionPtr((yyvsp[-4].pExpression)), ExpressionPtr((yyvsp[-1].pExpression)), true); } break; - case 404: /* expr: expr "?." "name" */ + case 405: /* expr: expr "?." "name" */ { (yyval.pExpression) = new ExprSafeField(tokAt(scanner,(yylsp[-1])), tokAt(scanner,(yylsp[0])), ExpressionPtr((yyvsp[-2].pExpression)), *(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 405: /* expr: expr '.' "?." "name" */ + case 406: /* expr: expr '.' "?." "name" */ { (yyval.pExpression) = new ExprSafeField(tokAt(scanner,(yylsp[-1])), tokAt(scanner,(yylsp[0])), ExpressionPtr((yyvsp[-3].pExpression)), *(yyvsp[0].s), true); delete (yyvsp[0].s); } break; - case 406: /* expr: func_addr_expr */ + case 407: /* expr: func_addr_expr */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 407: /* expr: expr_call */ + case 408: /* expr: expr_call */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 408: /* expr: '*' expr */ + case 409: /* expr: '*' expr */ { (yyval.pExpression) = new ExprPtr2Ref(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 409: /* expr: "deref" '(' expr ')' */ + case 410: /* expr: "deref" '(' expr ')' */ { (yyval.pExpression) = new ExprPtr2Ref(tokAt(scanner,(yylsp[-3])),ExpressionPtr((yyvsp[-1].pExpression))); } break; - case 410: /* expr: "addr" '(' expr ')' */ + case 411: /* expr: "addr" '(' expr ')' */ { (yyval.pExpression) = new ExprRef2Ptr(tokAt(scanner,(yylsp[-3])),ExpressionPtr((yyvsp[-1].pExpression))); } break; - case 411: /* expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' ')' */ + case 412: /* expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' ')' */ { (yyval.pExpression) = ast_makeGenerator(scanner,(yyvsp[-4].pTypeDecl),(yyvsp[-2].pCaptList),nullptr,tokAt(scanner,(yylsp[-6]))); } break; - case 412: /* expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' */ + case 413: /* expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' */ { (yyval.pExpression) = ast_makeGenerator(scanner,(yyvsp[-5].pTypeDecl),(yyvsp[-3].pCaptList),(yyvsp[-1].pExpression),tokAt(scanner,(yylsp[-7]))); } break; - case 413: /* expr: expr "??" expr */ + case 414: /* expr: expr "??" expr */ { (yyval.pExpression) = new ExprNullCoalescing(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 414: /* expr: expr '?' expr ':' expr */ + case 415: /* expr: expr '?' expr ':' expr */ { (yyval.pExpression) = new ExprOp3(tokAt(scanner,(yylsp[-3])),"?",ExpressionPtr((yyvsp[-4].pExpression)),ExpressionPtr((yyvsp[-2].pExpression)),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 415: /* $@19: %empty */ + case 416: /* $@19: %empty */ { yyextra->das_arrow_depth ++; } break; - case 416: /* $@20: %empty */ + case 417: /* $@20: %empty */ { yyextra->das_arrow_depth --; } break; - case 417: /* expr: expr "is" "type" '<' $@19 type_declaration_no_options '>' $@20 */ + case 418: /* expr: expr "is" "type" '<' $@19 type_declaration_no_options '>' $@20 */ { (yyval.pExpression) = new ExprIs(tokAt(scanner,(yylsp[-6])),ExpressionPtr((yyvsp[-7].pExpression)),TypeDeclPtr((yyvsp[-2].pTypeDecl))); } break; - case 418: /* expr: expr "is" basic_type_declaration */ + case 419: /* expr: expr "is" basic_type_declaration */ { auto vdecl = new TypeDecl((yyvsp[0].type)); vdecl->at = tokAt(scanner,(yylsp[0])); @@ -7571,29 +7600,29 @@ YYLTYPE yylloc = yyloc_default; } break; - case 419: /* expr: expr "is" "name" */ + case 420: /* expr: expr "is" "name" */ { (yyval.pExpression) = new ExprIsVariant(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)),*(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 420: /* expr: expr "as" "name" */ + case 421: /* expr: expr "as" "name" */ { (yyval.pExpression) = new ExprAsVariant(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)),*(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 421: /* $@21: %empty */ + case 422: /* $@21: %empty */ { yyextra->das_arrow_depth ++; } break; - case 422: /* $@22: %empty */ + case 423: /* $@22: %empty */ { yyextra->das_arrow_depth --; } break; - case 423: /* expr: expr "as" "type" '<' $@21 type_declaration '>' $@22 */ + case 424: /* expr: expr "as" "type" '<' $@21 type_declaration '>' $@22 */ { auto vname = (yyvsp[-2].pTypeDecl)->describe(); (yyval.pExpression) = new ExprAsVariant(tokAt(scanner,(yylsp[-6])),ExpressionPtr((yyvsp[-7].pExpression)),vname); @@ -7601,28 +7630,28 @@ YYLTYPE yylloc = yyloc_default; } break; - case 424: /* expr: expr "as" basic_type_declaration */ + case 425: /* expr: expr "as" basic_type_declaration */ { (yyval.pExpression) = new ExprAsVariant(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)),das_to_string((yyvsp[0].type))); } break; - case 425: /* expr: expr '?' "as" "name" */ + case 426: /* expr: expr '?' "as" "name" */ { (yyval.pExpression) = new ExprSafeAsVariant(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-3].pExpression)),*(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 426: /* $@23: %empty */ + case 427: /* $@23: %empty */ { yyextra->das_arrow_depth ++; } break; - case 427: /* $@24: %empty */ + case 428: /* $@24: %empty */ { yyextra->das_arrow_depth --; } break; - case 428: /* expr: expr '?' "as" "type" '<' $@23 type_declaration '>' $@24 */ + case 429: /* expr: expr '?' "as" "type" '<' $@23 type_declaration '>' $@24 */ { auto vname = (yyvsp[-2].pTypeDecl)->describe(); (yyval.pExpression) = new ExprSafeAsVariant(tokAt(scanner,(yylsp[-6])),ExpressionPtr((yyvsp[-8].pExpression)),vname); @@ -7630,202 +7659,202 @@ YYLTYPE yylloc = yyloc_default; } break; - case 429: /* expr: expr '?' "as" basic_type_declaration */ + case 430: /* expr: expr '?' "as" basic_type_declaration */ { (yyval.pExpression) = new ExprSafeAsVariant(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-3].pExpression)),das_to_string((yyvsp[0].type))); } break; - case 430: /* expr: expr_type_info */ + case 431: /* expr: expr_type_info */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 431: /* expr: expr_type_decl */ + case 432: /* expr: expr_type_decl */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 432: /* expr: expr_cast */ + case 433: /* expr: expr_cast */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 433: /* expr: expr_new */ + case 434: /* expr: expr_new */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 434: /* expr: expr_method_call */ + case 435: /* expr: expr_method_call */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 435: /* expr: expr_named_call */ + case 436: /* expr: expr_named_call */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 436: /* expr: expr_full_block */ + case 437: /* expr: expr_full_block */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 437: /* expr: expr "<|" expr */ + case 438: /* expr: expr "<|" expr */ { (yyval.pExpression) = ast_lpipe(scanner,(yyvsp[-2].pExpression),(yyvsp[0].pExpression),tokAt(scanner,(yylsp[-1]))); } break; - case 438: /* expr: expr "|>" expr */ + case 439: /* expr: expr "|>" expr */ { (yyval.pExpression) = ast_rpipe(scanner,(yyvsp[-2].pExpression),(yyvsp[0].pExpression),tokAt(scanner,(yylsp[-1]))); } break; - case 439: /* expr: expr "|>" basic_type_declaration */ + case 440: /* expr: expr "|>" basic_type_declaration */ { auto fncall = yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[0])),tokAt(scanner,(yylsp[0])),das_to_string((yyvsp[0].type))); (yyval.pExpression) = ast_rpipe(scanner,(yyvsp[-2].pExpression),fncall,tokAt(scanner,(yylsp[-1]))); } break; - case 440: /* expr: expr_call_pipe */ + case 441: /* expr: expr_call_pipe */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 441: /* expr_mtag: "$$" '(' expr ')' */ + case 442: /* expr_mtag: "$$" '(' expr ')' */ { (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),"e"); } break; - case 442: /* expr_mtag: "$i" '(' expr ')' */ + case 443: /* expr_mtag: "$i" '(' expr ')' */ { (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),"i"); } break; - case 443: /* expr_mtag: "$v" '(' expr ')' */ + case 444: /* expr_mtag: "$v" '(' expr ')' */ { (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),"v"); } break; - case 444: /* expr_mtag: "$b" '(' expr ')' */ + case 445: /* expr_mtag: "$b" '(' expr ')' */ { (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),"b"); } break; - case 445: /* expr_mtag: "$a" '(' expr ')' */ + case 446: /* expr_mtag: "$a" '(' expr ')' */ { (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),"a"); } break; - case 446: /* expr_mtag: "..." */ + case 447: /* expr_mtag: "..." */ { (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[0])),nullptr,"..."); } break; - case 447: /* expr_mtag: "$c" '(' expr ')' '(' ')' */ + case 448: /* expr_mtag: "$c" '(' expr ')' '(' ')' */ { auto ccall = yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-5])),tokAt(scanner,(yylsp[0])),"``MACRO``TAG``CALL``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-5])),(yyvsp[-3].pExpression),ccall,"c"); } break; - case 448: /* expr_mtag: "$c" '(' expr ')' '(' expr_list ')' */ + case 449: /* expr_mtag: "$c" '(' expr ')' '(' expr_list ')' */ { auto ccall = parseFunctionArguments(yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-6])),tokAt(scanner,(yylsp[0])),"``MACRO``TAG``CALL``"),(yyvsp[-1].pExpression)); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-6])),(yyvsp[-4].pExpression),ccall,"c"); } break; - case 449: /* expr_mtag: expr '.' "$f" '(' expr ')' */ + case 450: /* expr_mtag: expr '.' "$f" '(' expr ')' */ { auto cfield = new ExprField(tokAt(scanner,(yylsp[-4])), tokAt(scanner,(yylsp[-1])), ExpressionPtr((yyvsp[-5].pExpression)), "``MACRO``TAG``FIELD``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 450: /* expr_mtag: expr "?." "$f" '(' expr ')' */ + case 451: /* expr_mtag: expr "?." "$f" '(' expr ')' */ { auto cfield = new ExprSafeField(tokAt(scanner,(yylsp[-4])), tokAt(scanner,(yylsp[-1])), ExpressionPtr((yyvsp[-5].pExpression)), "``MACRO``TAG``FIELD``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 451: /* expr_mtag: expr '.' '.' "$f" '(' expr ')' */ + case 452: /* expr_mtag: expr '.' '.' "$f" '(' expr ')' */ { auto cfield = new ExprField(tokAt(scanner,(yylsp[-4])), tokAt(scanner,(yylsp[-1])), ExpressionPtr((yyvsp[-6].pExpression)), "``MACRO``TAG``FIELD``", true); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 452: /* expr_mtag: expr '.' "?." "$f" '(' expr ')' */ + case 453: /* expr_mtag: expr '.' "?." "$f" '(' expr ')' */ { auto cfield = new ExprSafeField(tokAt(scanner,(yylsp[-4])), tokAt(scanner,(yylsp[-1])), ExpressionPtr((yyvsp[-6].pExpression)), "``MACRO``TAG``FIELD``", true); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 453: /* expr_mtag: expr "as" "$f" '(' expr ')' */ + case 454: /* expr_mtag: expr "as" "$f" '(' expr ')' */ { auto cfield = new ExprAsVariant(tokAt(scanner,(yylsp[-4])),ExpressionPtr((yyvsp[-5].pExpression)),"``MACRO``TAG``FIELD``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 454: /* expr_mtag: expr '?' "as" "$f" '(' expr ')' */ + case 455: /* expr_mtag: expr '?' "as" "$f" '(' expr ')' */ { auto cfield = new ExprSafeAsVariant(tokAt(scanner,(yylsp[-4])),ExpressionPtr((yyvsp[-6].pExpression)),"``MACRO``TAG``FIELD``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 455: /* expr_mtag: expr "is" "$f" '(' expr ')' */ + case 456: /* expr_mtag: expr "is" "$f" '(' expr ')' */ { auto cfield = new ExprIsVariant(tokAt(scanner,(yylsp[-4])),ExpressionPtr((yyvsp[-5].pExpression)),"``MACRO``TAG``FIELD``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 456: /* expr_mtag: '@' '@' "$c" '(' expr ')' */ + case 457: /* expr_mtag: '@' '@' "$c" '(' expr ')' */ { auto ccall = new ExprAddr(tokAt(scanner,(yylsp[-4])),"``MACRO``TAG``ADDR``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-3])),(yyvsp[-1].pExpression),ccall,"c"); } break; - case 457: /* optional_field_annotation: %empty */ + case 458: /* optional_field_annotation: %empty */ { (yyval.aaList) = nullptr; } break; - case 458: /* optional_field_annotation: metadata_argument_list */ + case 459: /* optional_field_annotation: metadata_argument_list */ { (yyval.aaList) = (yyvsp[0].aaList); } break; - case 459: /* optional_override: %empty */ + case 460: /* optional_override: %empty */ { (yyval.i) = OVERRIDE_NONE; } break; - case 460: /* optional_override: "override" */ + case 461: /* optional_override: "override" */ { (yyval.i) = OVERRIDE_OVERRIDE; } break; - case 461: /* optional_override: "sealed" */ + case 462: /* optional_override: "sealed" */ { (yyval.i) = OVERRIDE_SEALED; } break; - case 462: /* optional_constant: %empty */ + case 463: /* optional_constant: %empty */ { (yyval.b) = false; } break; - case 463: /* optional_constant: "const" */ + case 464: /* optional_constant: "const" */ { (yyval.b) = true; } break; - case 464: /* optional_public_or_private_member_variable: %empty */ + case 465: /* optional_public_or_private_member_variable: %empty */ { (yyval.b) = false; } break; - case 465: /* optional_public_or_private_member_variable: "public" */ + case 466: /* optional_public_or_private_member_variable: "public" */ { (yyval.b) = false; } break; - case 466: /* optional_public_or_private_member_variable: "private" */ + case 467: /* optional_public_or_private_member_variable: "private" */ { (yyval.b) = true; } break; - case 467: /* optional_static_member_variable: %empty */ + case 468: /* optional_static_member_variable: %empty */ { (yyval.b) = false; } break; - case 468: /* optional_static_member_variable: "static" */ + case 469: /* optional_static_member_variable: "static" */ { (yyval.b) = true; } break; - case 469: /* structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration */ + case 470: /* structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration */ { (yyvsp[0].pVarDecl)->override = (yyvsp[-2].i) == OVERRIDE_OVERRIDE; (yyvsp[0].pVarDecl)->sealed = (yyvsp[-2].i) == OVERRIDE_SEALED; @@ -7836,13 +7865,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 470: /* struct_variable_declaration_list: %empty */ + case 471: /* struct_variable_declaration_list: %empty */ { (yyval.pVarDeclList) = new vector(); } break; - case 471: /* $@25: %empty */ + case 472: /* $@25: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -7851,7 +7880,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 472: /* struct_variable_declaration_list: struct_variable_declaration_list $@25 structure_variable_declaration "end of expression" */ + case 473: /* struct_variable_declaration_list: struct_variable_declaration_list $@25 structure_variable_declaration "end of expression" */ { (yyval.pVarDeclList) = (yyvsp[-3].pVarDeclList); if ( (yyvsp[-1].pVarDecl) ) (yyvsp[-3].pVarDeclList)->push_back((yyvsp[-1].pVarDecl)); @@ -7867,7 +7896,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 473: /* $@26: %empty */ + case 474: /* $@26: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[-2])); @@ -7876,7 +7905,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 474: /* struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" */ + case 475: /* struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[-1])); @@ -7886,7 +7915,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 475: /* $@27: %empty */ + case 476: /* $@27: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -7895,7 +7924,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 476: /* struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block */ + case 477: /* struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -7905,7 +7934,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 477: /* function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing variable_declaration */ + case 478: /* function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing variable_declaration */ { (yyval.pVarDecl) = (yyvsp[0].pVarDecl); if ( (yyvsp[-1].b) ) { @@ -7917,7 +7946,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 478: /* function_argument_declaration: "$a" '(' expr ')' */ + case 479: /* function_argument_declaration: "$a" '(' expr ')' */ { auto na = new vector(); na->push_back(VariableNameAndPosition{"``MACRO``TAG``","",tokAt(scanner,(yylsp[-1]))}); @@ -7927,21 +7956,21 @@ YYLTYPE yylloc = yyloc_default; } break; - case 479: /* function_argument_list: function_argument_declaration */ + case 480: /* function_argument_list: function_argument_declaration */ { (yyval.pVarDeclList) = new vector(); (yyval.pVarDeclList)->push_back((yyvsp[0].pVarDecl)); } break; - case 480: /* function_argument_list: function_argument_list "end of expression" function_argument_declaration */ + case 481: /* function_argument_list: function_argument_list "end of expression" function_argument_declaration */ { (yyval.pVarDeclList) = (yyvsp[-2].pVarDeclList); (yyvsp[-2].pVarDeclList)->push_back((yyvsp[0].pVarDecl)); } break; - case 481: /* tuple_type: type_declaration */ + case 482: /* tuple_type: type_declaration */ { (yyval.pVarDecl) = new VariableDeclaration(nullptr,(yyvsp[0].pTypeDecl),nullptr); } break; - case 482: /* tuple_type: "name" ':' type_declaration */ + case 483: /* tuple_type: "name" ':' type_declaration */ { auto na = new vector(); na->push_back(VariableNameAndPosition{*(yyvsp[-2].s),"",tokAt(scanner,(yylsp[-2]))}); @@ -7950,27 +7979,27 @@ YYLTYPE yylloc = yyloc_default; } break; - case 483: /* tuple_type_list: tuple_type */ + case 484: /* tuple_type_list: tuple_type */ { (yyval.pVarDeclList) = new vector(); (yyval.pVarDeclList)->push_back((yyvsp[0].pVarDecl)); } break; - case 484: /* tuple_type_list: tuple_type_list "end of expression" tuple_type */ + case 485: /* tuple_type_list: tuple_type_list "end of expression" tuple_type */ { (yyval.pVarDeclList) = (yyvsp[-2].pVarDeclList); (yyvsp[-2].pVarDeclList)->push_back((yyvsp[0].pVarDecl)); } break; - case 485: /* tuple_alias_type_list: %empty */ + case 486: /* tuple_alias_type_list: %empty */ { (yyval.pVarDeclList) = new vector(); } break; - case 486: /* tuple_alias_type_list: tuple_alias_type_list "end of expression" */ + case 487: /* tuple_alias_type_list: tuple_alias_type_list "end of expression" */ { (yyval.pVarDeclList) = (yyvsp[-1].pVarDeclList); } break; - case 487: /* tuple_alias_type_list: tuple_alias_type_list tuple_type "end of expression" */ + case 488: /* tuple_alias_type_list: tuple_alias_type_list tuple_type "end of expression" */ { (yyval.pVarDeclList) = (yyvsp[-2].pVarDeclList); (yyvsp[-2].pVarDeclList)->push_back((yyvsp[-1].pVarDecl)); /* @@ -7986,7 +8015,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 488: /* variant_type: "name" ':' type_declaration */ + case 489: /* variant_type: "name" ':' type_declaration */ { auto na = new vector(); na->push_back(VariableNameAndPosition{*(yyvsp[-2].s),"",tokAt(scanner,(yylsp[-2]))}); @@ -7995,27 +8024,27 @@ YYLTYPE yylloc = yyloc_default; } break; - case 489: /* variant_type_list: variant_type */ + case 490: /* variant_type_list: variant_type */ { (yyval.pVarDeclList) = new vector(); (yyval.pVarDeclList)->push_back((yyvsp[0].pVarDecl)); } break; - case 490: /* variant_type_list: variant_type_list "end of expression" variant_type */ + case 491: /* variant_type_list: variant_type_list "end of expression" variant_type */ { (yyval.pVarDeclList) = (yyvsp[-2].pVarDeclList); (yyvsp[-2].pVarDeclList)->push_back((yyvsp[0].pVarDecl)); } break; - case 491: /* variant_alias_type_list: %empty */ + case 492: /* variant_alias_type_list: %empty */ { (yyval.pVarDeclList) = new vector(); } break; - case 492: /* variant_alias_type_list: variant_alias_type_list "end of expression" */ + case 493: /* variant_alias_type_list: variant_alias_type_list "end of expression" */ { (yyval.pVarDeclList) = (yyvsp[-1].pVarDeclList); } break; - case 493: /* variant_alias_type_list: variant_alias_type_list variant_type "end of expression" */ + case 494: /* variant_alias_type_list: variant_alias_type_list variant_type "end of expression" */ { (yyval.pVarDeclList) = (yyvsp[-2].pVarDeclList); (yyvsp[-2].pVarDeclList)->push_back((yyvsp[-1].pVarDecl)); if ( !yyextra->g_CommentReaders.empty() ) { @@ -8029,15 +8058,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 494: /* copy_or_move: '=' */ + case 495: /* copy_or_move: '=' */ { (yyval.b) = false; } break; - case 495: /* copy_or_move: "<-" */ + case 496: /* copy_or_move: "<-" */ { (yyval.b) = true; } break; - case 496: /* variable_declaration: variable_name_with_pos_list */ + case 497: /* variable_declaration: variable_name_with_pos_list */ { auto autoT = new TypeDecl(Type::autoinfer); autoT->at = tokAt(scanner,(yylsp[0])); @@ -8046,7 +8075,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 497: /* variable_declaration: variable_name_with_pos_list '&' */ + case 498: /* variable_declaration: variable_name_with_pos_list '&' */ { auto autoT = new TypeDecl(Type::autoinfer); autoT->at = tokAt(scanner,(yylsp[-1])); @@ -8055,20 +8084,20 @@ YYLTYPE yylloc = yyloc_default; } break; - case 498: /* variable_declaration: variable_name_with_pos_list ':' type_declaration */ + case 499: /* variable_declaration: variable_name_with_pos_list ':' type_declaration */ { (yyval.pVarDecl) = new VariableDeclaration((yyvsp[-2].pNameWithPosList),(yyvsp[0].pTypeDecl),nullptr); } break; - case 499: /* variable_declaration: variable_name_with_pos_list ':' type_declaration copy_or_move expr */ + case 500: /* variable_declaration: variable_name_with_pos_list ':' type_declaration copy_or_move expr */ { (yyval.pVarDecl) = new VariableDeclaration((yyvsp[-4].pNameWithPosList),(yyvsp[-2].pTypeDecl),(yyvsp[0].pExpression)); (yyval.pVarDecl)->init_via_move = (yyvsp[-1].b); } break; - case 500: /* variable_declaration: variable_name_with_pos_list copy_or_move expr */ + case 501: /* variable_declaration: variable_name_with_pos_list copy_or_move expr */ { auto typeDecl = new TypeDecl(Type::autoinfer); typeDecl->at = tokAt(scanner,(yylsp[-2])); @@ -8077,27 +8106,27 @@ YYLTYPE yylloc = yyloc_default; } break; - case 501: /* copy_or_move_or_clone: '=' */ + case 502: /* copy_or_move_or_clone: '=' */ { (yyval.i) = CorM_COPY; } break; - case 502: /* copy_or_move_or_clone: "<-" */ + case 503: /* copy_or_move_or_clone: "<-" */ { (yyval.i) = CorM_MOVE; } break; - case 503: /* copy_or_move_or_clone: ":=" */ + case 504: /* copy_or_move_or_clone: ":=" */ { (yyval.i) = CorM_CLONE; } break; - case 504: /* optional_ref: %empty */ + case 505: /* optional_ref: %empty */ { (yyval.b) = false; } break; - case 505: /* optional_ref: '&' */ + case 506: /* optional_ref: '&' */ { (yyval.b) = true; } break; - case 506: /* let_variable_name_with_pos_list: "name" */ + case 507: /* let_variable_name_with_pos_list: "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); auto pSL = new vector(); @@ -8107,7 +8136,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 507: /* let_variable_name_with_pos_list: "$i" '(' expr ')' */ + case 508: /* let_variable_name_with_pos_list: "$i" '(' expr ')' */ { auto pSL = new vector(); pSL->push_back(VariableNameAndPosition{"``MACRO``TAG``","",tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-1].pExpression))}); @@ -8115,7 +8144,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 508: /* let_variable_name_with_pos_list: "name" "aka" "name" */ + case 509: /* let_variable_name_with_pos_list: "name" "aka" "name" */ { das_checkName(scanner,*(yyvsp[-2].s),tokAt(scanner,(yylsp[-2]))); das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); @@ -8127,7 +8156,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 509: /* let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" */ + case 510: /* let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); (yyvsp[-2].pNameWithPosList)->push_back(VariableNameAndPosition{*(yyvsp[0].s),"",tokAt(scanner,(yylsp[0]))}); @@ -8136,7 +8165,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 510: /* let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" "aka" "name" */ + case 511: /* let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" "aka" "name" */ { das_checkName(scanner,*(yyvsp[-2].s),tokAt(scanner,(yylsp[-2]))); das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); @@ -8147,13 +8176,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 511: /* let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" */ + case 512: /* let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" */ { (yyval.pVarDecl) = new VariableDeclaration((yyvsp[-3].pNameWithPosList),(yyvsp[-1].pTypeDecl),nullptr); } break; - case 512: /* let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" */ + case 513: /* let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" */ { (yyval.pVarDecl) = new VariableDeclaration((yyvsp[-5].pNameWithPosList),(yyvsp[-3].pTypeDecl),(yyvsp[-1].pExpression)); (yyval.pVarDecl)->init_via_move = ((yyvsp[-2].i) & CorM_MOVE) !=0; @@ -8161,7 +8190,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 513: /* let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr "end of expression" */ + case 514: /* let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr "end of expression" */ { auto typeDecl = new TypeDecl(Type::autoinfer); typeDecl->at = tokAt(scanner,(yylsp[-4])); @@ -8172,13 +8201,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 514: /* global_variable_declaration_list: %empty */ + case 515: /* global_variable_declaration_list: %empty */ { (yyval.pVarDeclList) = new vector(); } break; - case 515: /* $@28: %empty */ + case 516: /* $@28: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -8187,7 +8216,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 516: /* global_variable_declaration_list: global_variable_declaration_list $@28 optional_field_annotation let_variable_declaration */ + case 517: /* global_variable_declaration_list: global_variable_declaration_list $@28 optional_field_annotation let_variable_declaration */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -8202,33 +8231,33 @@ YYLTYPE yylloc = yyloc_default; } break; - case 517: /* optional_shared: %empty */ + case 518: /* optional_shared: %empty */ { (yyval.b) = false; } break; - case 518: /* optional_shared: "shared" */ + case 519: /* optional_shared: "shared" */ { (yyval.b) = true; } break; - case 519: /* optional_public_or_private_variable: %empty */ + case 520: /* optional_public_or_private_variable: %empty */ { (yyval.b) = yyextra->g_Program->thisModule->isPublic; } break; - case 520: /* optional_public_or_private_variable: "private" */ + case 521: /* optional_public_or_private_variable: "private" */ { (yyval.b) = false; } break; - case 521: /* optional_public_or_private_variable: "public" */ + case 522: /* optional_public_or_private_variable: "public" */ { (yyval.b) = true; } break; - case 522: /* global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" */ + case 523: /* global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" */ { ast_globalLetList(scanner,(yyvsp[-5].b),(yyvsp[-4].b),(yyvsp[-3].b),(yyvsp[-1].pVarDeclList)); } break; - case 523: /* $@29: %empty */ + case 524: /* $@29: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -8237,7 +8266,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 524: /* global_let: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration */ + case 525: /* global_let: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -8250,27 +8279,27 @@ YYLTYPE yylloc = yyloc_default; } break; - case 525: /* enum_expression: "name" */ + case 526: /* enum_expression: "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); (yyval.pEnumPair) = new EnumPair((yyvsp[0].s),tokAt(scanner,(yylsp[0]))); } break; - case 526: /* enum_expression: "name" '=' expr */ + case 527: /* enum_expression: "name" '=' expr */ { das_checkName(scanner,*(yyvsp[-2].s),tokAt(scanner,(yylsp[-2]))); (yyval.pEnumPair) = new EnumPair((yyvsp[-2].s),(yyvsp[0].pExpression),tokAt(scanner,(yylsp[-2]))); } break; - case 527: /* enum_list: %empty */ + case 528: /* enum_list: %empty */ { (yyval.pEnum) = new Enumeration(); } break; - case 528: /* enum_list: enum_expression */ + case 529: /* enum_list: enum_expression */ { (yyval.pEnum) = new Enumeration(); if ( !(yyval.pEnum)->add((yyvsp[0].pEnumPair)->name,(yyvsp[0].pEnumPair)->expr,(yyvsp[0].pEnumPair)->at) ) { @@ -8286,7 +8315,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 529: /* enum_list: enum_list ',' enum_expression */ + case 530: /* enum_list: enum_list ',' enum_expression */ { if ( !(yyvsp[-2].pEnum)->add((yyvsp[0].pEnumPair)->name,(yyvsp[0].pEnumPair)->expr,(yyvsp[0].pEnumPair)->at) ) { das2_yyerror(scanner,"enumeration already declared " + (yyvsp[0].pEnumPair)->name, (yyvsp[0].pEnumPair)->at, @@ -8302,19 +8331,19 @@ YYLTYPE yylloc = yyloc_default; } break; - case 530: /* optional_public_or_private_alias: %empty */ + case 531: /* optional_public_or_private_alias: %empty */ { (yyval.b) = yyextra->g_Program->thisModule->isPublic; } break; - case 531: /* optional_public_or_private_alias: "private" */ + case 532: /* optional_public_or_private_alias: "private" */ { (yyval.b) = false; } break; - case 532: /* optional_public_or_private_alias: "public" */ + case 533: /* optional_public_or_private_alias: "public" */ { (yyval.b) = true; } break; - case 533: /* $@30: %empty */ + case 534: /* $@30: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto pubename = tokAt(scanner,(yylsp[0])); @@ -8323,7 +8352,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 534: /* single_alias: optional_public_or_private_alias "name" $@30 '=' type_declaration */ + case 535: /* single_alias: optional_public_or_private_alias "name" $@30 '=' type_declaration */ { das_checkName(scanner,*(yyvsp[-3].s),tokAt(scanner,(yylsp[-3]))); (yyvsp[0].pTypeDecl)->isPrivateAlias = !(yyvsp[-4].b); @@ -8344,19 +8373,19 @@ YYLTYPE yylloc = yyloc_default; } break; - case 536: /* optional_public_or_private_enum: %empty */ + case 537: /* optional_public_or_private_enum: %empty */ { (yyval.b) = yyextra->g_Program->thisModule->isPublic; } break; - case 537: /* optional_public_or_private_enum: "private" */ + case 538: /* optional_public_or_private_enum: "private" */ { (yyval.b) = false; } break; - case 538: /* optional_public_or_private_enum: "public" */ + case 539: /* optional_public_or_private_enum: "public" */ { (yyval.b) = true; } break; - case 539: /* enum_name: "name" */ + case 540: /* enum_name: "name" */ { if ( !yyextra->g_CommentReaders.empty() ) { auto pubename = tokAt(scanner,(yylsp[0])); @@ -8366,19 +8395,19 @@ YYLTYPE yylloc = yyloc_default; } break; - case 540: /* optional_enum_basic_type_declaration: %empty */ + case 541: /* optional_enum_basic_type_declaration: %empty */ { (yyval.type) = Type::tInt; } break; - case 541: /* optional_enum_basic_type_declaration: ':' enum_basic_type_declaration */ + case 542: /* optional_enum_basic_type_declaration: ':' enum_basic_type_declaration */ { (yyval.type) = (yyvsp[0].type); } break; - case 542: /* $@31: %empty */ + case 543: /* $@31: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[-2])); @@ -8387,7 +8416,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 543: /* $@32: %empty */ + case 544: /* $@32: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[-1])); @@ -8396,7 +8425,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 544: /* enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" */ + case 545: /* enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" */ { if ( !yyextra->g_CommentReaders.empty() ) { auto pubename = tokAt(scanner,(yylsp[-3])); @@ -8406,61 +8435,61 @@ YYLTYPE yylloc = yyloc_default; } break; - case 545: /* optional_structure_parent: %empty */ + case 546: /* optional_structure_parent: %empty */ { (yyval.s) = nullptr; } break; - case 546: /* optional_structure_parent: ':' name_in_namespace */ + case 547: /* optional_structure_parent: ':' name_in_namespace */ { (yyval.s) = (yyvsp[0].s); } break; - case 547: /* optional_sealed: %empty */ + case 548: /* optional_sealed: %empty */ { (yyval.b) = false; } break; - case 548: /* optional_sealed: "sealed" */ + case 549: /* optional_sealed: "sealed" */ { (yyval.b) = true; } break; - case 549: /* structure_name: optional_sealed "name" optional_structure_parent */ + case 550: /* structure_name: optional_sealed "name" optional_structure_parent */ { (yyval.pStructure) = ast_structureName(scanner,(yyvsp[-2].b),(yyvsp[-1].s),tokAt(scanner,(yylsp[-1])),(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); } break; - case 550: /* class_or_struct: "class" */ + case 551: /* class_or_struct: "class" */ { (yyval.b) = true; } break; - case 551: /* class_or_struct: "struct" */ + case 552: /* class_or_struct: "struct" */ { (yyval.b) = false; } break; - case 552: /* optional_public_or_private_structure: %empty */ + case 553: /* optional_public_or_private_structure: %empty */ { (yyval.b) = yyextra->g_Program->thisModule->isPublic; } break; - case 553: /* optional_public_or_private_structure: "private" */ + case 554: /* optional_public_or_private_structure: "private" */ { (yyval.b) = false; } break; - case 554: /* optional_public_or_private_structure: "public" */ + case 555: /* optional_public_or_private_structure: "public" */ { (yyval.b) = true; } break; - case 555: /* optional_struct_variable_declaration_list: %empty */ + case 556: /* optional_struct_variable_declaration_list: %empty */ { (yyval.pVarDeclList) = new vector(); } break; - case 556: /* optional_struct_variable_declaration_list: "begin of code block" struct_variable_declaration_list "end of code block" */ + case 557: /* optional_struct_variable_declaration_list: "begin of code block" struct_variable_declaration_list "end of code block" */ { (yyval.pVarDeclList) = (yyvsp[-1].pVarDeclList); } break; - case 557: /* $@33: %empty */ + case 558: /* $@33: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[-1])); @@ -8469,11 +8498,11 @@ YYLTYPE yylloc = yyloc_default; } break; - case 558: /* $@34: %empty */ + case 559: /* $@34: %empty */ { if ( (yyvsp[0].pStructure) ) { (yyvsp[0].pStructure)->isClass = (yyvsp[-3].b); (yyvsp[0].pStructure)->privateStructure = !(yyvsp[-2].b); } } break; - case 559: /* structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 structure_name $@34 optional_struct_variable_declaration_list */ + case 560: /* structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 structure_name $@34 optional_struct_variable_declaration_list */ { if ( (yyvsp[-2].pStructure) ) { ast_structureDeclaration ( scanner, (yyvsp[-6].faList), tokAt(scanner,(yylsp[-5])), (yyvsp[-2].pStructure), tokAt(scanner,(yylsp[-2])), (yyvsp[0].pVarDeclList) ); @@ -8487,7 +8516,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 560: /* variable_name_with_pos_list: "name" */ + case 561: /* variable_name_with_pos_list: "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); auto pSL = new vector(); @@ -8497,7 +8526,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 561: /* variable_name_with_pos_list: "$i" '(' expr ')' */ + case 562: /* variable_name_with_pos_list: "$i" '(' expr ')' */ { auto pSL = new vector(); pSL->push_back(VariableNameAndPosition{"``MACRO``TAG``","",tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression)}); @@ -8505,7 +8534,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 562: /* variable_name_with_pos_list: "name" "aka" "name" */ + case 563: /* variable_name_with_pos_list: "name" "aka" "name" */ { das_checkName(scanner,*(yyvsp[-2].s),tokAt(scanner,(yylsp[-2]))); das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); @@ -8517,7 +8546,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 563: /* variable_name_with_pos_list: variable_name_with_pos_list ',' "name" */ + case 564: /* variable_name_with_pos_list: variable_name_with_pos_list ',' "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); (yyvsp[-2].pNameWithPosList)->push_back(VariableNameAndPosition{*(yyvsp[0].s),"",tokAt(scanner,(yylsp[0]))}); @@ -8526,7 +8555,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 564: /* variable_name_with_pos_list: variable_name_with_pos_list ',' "name" "aka" "name" */ + case 565: /* variable_name_with_pos_list: variable_name_with_pos_list ',' "name" "aka" "name" */ { das_checkName(scanner,*(yyvsp[-2].s),tokAt(scanner,(yylsp[-2]))); das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); @@ -8537,147 +8566,147 @@ YYLTYPE yylloc = yyloc_default; } break; - case 565: /* basic_type_declaration: "bool" */ + case 566: /* basic_type_declaration: "bool" */ { (yyval.type) = Type::tBool; } break; - case 566: /* basic_type_declaration: "string" */ + case 567: /* basic_type_declaration: "string" */ { (yyval.type) = Type::tString; } break; - case 567: /* basic_type_declaration: "int" */ + case 568: /* basic_type_declaration: "int" */ { (yyval.type) = Type::tInt; } break; - case 568: /* basic_type_declaration: "int8" */ + case 569: /* basic_type_declaration: "int8" */ { (yyval.type) = Type::tInt8; } break; - case 569: /* basic_type_declaration: "int16" */ + case 570: /* basic_type_declaration: "int16" */ { (yyval.type) = Type::tInt16; } break; - case 570: /* basic_type_declaration: "int64" */ + case 571: /* basic_type_declaration: "int64" */ { (yyval.type) = Type::tInt64; } break; - case 571: /* basic_type_declaration: "int2" */ + case 572: /* basic_type_declaration: "int2" */ { (yyval.type) = Type::tInt2; } break; - case 572: /* basic_type_declaration: "int3" */ + case 573: /* basic_type_declaration: "int3" */ { (yyval.type) = Type::tInt3; } break; - case 573: /* basic_type_declaration: "int4" */ + case 574: /* basic_type_declaration: "int4" */ { (yyval.type) = Type::tInt4; } break; - case 574: /* basic_type_declaration: "uint" */ + case 575: /* basic_type_declaration: "uint" */ { (yyval.type) = Type::tUInt; } break; - case 575: /* basic_type_declaration: "uint8" */ + case 576: /* basic_type_declaration: "uint8" */ { (yyval.type) = Type::tUInt8; } break; - case 576: /* basic_type_declaration: "uint16" */ + case 577: /* basic_type_declaration: "uint16" */ { (yyval.type) = Type::tUInt16; } break; - case 577: /* basic_type_declaration: "uint64" */ + case 578: /* basic_type_declaration: "uint64" */ { (yyval.type) = Type::tUInt64; } break; - case 578: /* basic_type_declaration: "uint2" */ + case 579: /* basic_type_declaration: "uint2" */ { (yyval.type) = Type::tUInt2; } break; - case 579: /* basic_type_declaration: "uint3" */ + case 580: /* basic_type_declaration: "uint3" */ { (yyval.type) = Type::tUInt3; } break; - case 580: /* basic_type_declaration: "uint4" */ + case 581: /* basic_type_declaration: "uint4" */ { (yyval.type) = Type::tUInt4; } break; - case 581: /* basic_type_declaration: "float" */ + case 582: /* basic_type_declaration: "float" */ { (yyval.type) = Type::tFloat; } break; - case 582: /* basic_type_declaration: "float2" */ + case 583: /* basic_type_declaration: "float2" */ { (yyval.type) = Type::tFloat2; } break; - case 583: /* basic_type_declaration: "float3" */ + case 584: /* basic_type_declaration: "float3" */ { (yyval.type) = Type::tFloat3; } break; - case 584: /* basic_type_declaration: "float4" */ + case 585: /* basic_type_declaration: "float4" */ { (yyval.type) = Type::tFloat4; } break; - case 585: /* basic_type_declaration: "void" */ + case 586: /* basic_type_declaration: "void" */ { (yyval.type) = Type::tVoid; } break; - case 586: /* basic_type_declaration: "range" */ + case 587: /* basic_type_declaration: "range" */ { (yyval.type) = Type::tRange; } break; - case 587: /* basic_type_declaration: "urange" */ + case 588: /* basic_type_declaration: "urange" */ { (yyval.type) = Type::tURange; } break; - case 588: /* basic_type_declaration: "range64" */ + case 589: /* basic_type_declaration: "range64" */ { (yyval.type) = Type::tRange64; } break; - case 589: /* basic_type_declaration: "urange64" */ + case 590: /* basic_type_declaration: "urange64" */ { (yyval.type) = Type::tURange64; } break; - case 590: /* basic_type_declaration: "double" */ + case 591: /* basic_type_declaration: "double" */ { (yyval.type) = Type::tDouble; } break; - case 591: /* basic_type_declaration: "bitfield" */ + case 592: /* basic_type_declaration: "bitfield" */ { (yyval.type) = Type::tBitfield; } break; - case 592: /* enum_basic_type_declaration: "int" */ + case 593: /* enum_basic_type_declaration: "int" */ { (yyval.type) = Type::tInt; } break; - case 593: /* enum_basic_type_declaration: "int8" */ + case 594: /* enum_basic_type_declaration: "int8" */ { (yyval.type) = Type::tInt8; } break; - case 594: /* enum_basic_type_declaration: "int16" */ + case 595: /* enum_basic_type_declaration: "int16" */ { (yyval.type) = Type::tInt16; } break; - case 595: /* enum_basic_type_declaration: "uint" */ + case 596: /* enum_basic_type_declaration: "uint" */ { (yyval.type) = Type::tUInt; } break; - case 596: /* enum_basic_type_declaration: "uint8" */ + case 597: /* enum_basic_type_declaration: "uint8" */ { (yyval.type) = Type::tUInt8; } break; - case 597: /* enum_basic_type_declaration: "uint16" */ + case 598: /* enum_basic_type_declaration: "uint16" */ { (yyval.type) = Type::tUInt16; } break; - case 598: /* enum_basic_type_declaration: "int64" */ + case 599: /* enum_basic_type_declaration: "int64" */ { (yyval.type) = Type::tInt64; } break; - case 599: /* enum_basic_type_declaration: "uint64" */ + case 600: /* enum_basic_type_declaration: "uint64" */ { (yyval.type) = Type::tUInt64; } break; - case 600: /* structure_type_declaration: name_in_namespace */ + case 601: /* structure_type_declaration: name_in_namespace */ { (yyval.pTypeDecl) = yyextra->g_Program->makeTypeDeclaration(tokAt(scanner,(yylsp[0])),*(yyvsp[0].s)); if ( !(yyval.pTypeDecl) ) { @@ -8688,14 +8717,14 @@ YYLTYPE yylloc = yyloc_default; } break; - case 601: /* auto_type_declaration: "auto" */ + case 602: /* auto_type_declaration: "auto" */ { (yyval.pTypeDecl) = new TypeDecl(Type::autoinfer); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[0])); } break; - case 602: /* auto_type_declaration: "auto" '(' "name" ')' */ + case 603: /* auto_type_declaration: "auto" '(' "name" ')' */ { das_checkName(scanner,*(yyvsp[-1].s),tokAt(scanner,(yylsp[-1]))); (yyval.pTypeDecl) = new TypeDecl(Type::autoinfer); @@ -8705,7 +8734,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 603: /* auto_type_declaration: "$t" '(' expr ')' */ + case 604: /* auto_type_declaration: "$t" '(' expr ')' */ { (yyval.pTypeDecl) = new TypeDecl(Type::alias); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-3])); @@ -8717,7 +8746,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 604: /* bitfield_bits: "name" */ + case 605: /* bitfield_bits: "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); auto pSL = new vector(); @@ -8727,7 +8756,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 605: /* bitfield_bits: bitfield_bits "end of expression" "name" */ + case 606: /* bitfield_bits: bitfield_bits "end of expression" "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); (yyvsp[-2].pNameList)->push_back(*(yyvsp[0].s)); @@ -8736,7 +8765,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 606: /* bitfield_alias_bits: %empty */ + case 607: /* bitfield_alias_bits: %empty */ { auto pSL = new vector(); (yyval.pNameList) = pSL; @@ -8744,7 +8773,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 607: /* bitfield_alias_bits: "name" */ + case 608: /* bitfield_alias_bits: "name" */ { (yyval.pNameList) = new vector(); das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); @@ -8757,7 +8786,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 608: /* bitfield_alias_bits: bitfield_alias_bits ',' "name" */ + case 609: /* bitfield_alias_bits: bitfield_alias_bits ',' "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); (yyvsp[-2].pNameList)->push_back(*(yyvsp[0].s)); @@ -8770,15 +8799,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 609: /* $@35: %empty */ + case 610: /* $@35: %empty */ { yyextra->das_arrow_depth ++; } break; - case 610: /* $@36: %empty */ + case 611: /* $@36: %empty */ { yyextra->das_arrow_depth --; } break; - case 611: /* bitfield_type_declaration: "bitfield" '<' $@35 bitfield_bits '>' $@36 */ + case 612: /* bitfield_type_declaration: "bitfield" '<' $@35 bitfield_bits '>' $@36 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tBitfield); (yyval.pTypeDecl)->argNames = *(yyvsp[-2].pNameList); @@ -8791,55 +8820,55 @@ YYLTYPE yylloc = yyloc_default; } break; - case 612: /* table_type_pair: type_declaration */ + case 613: /* table_type_pair: type_declaration */ { (yyval.aTypePair).firstType = (yyvsp[0].pTypeDecl); (yyval.aTypePair).secondType = new TypeDecl(Type::tVoid); } break; - case 613: /* table_type_pair: type_declaration "end of expression" type_declaration */ + case 614: /* table_type_pair: type_declaration "end of expression" type_declaration */ { (yyval.aTypePair).firstType = (yyvsp[-2].pTypeDecl); (yyval.aTypePair).secondType = (yyvsp[0].pTypeDecl); } break; - case 614: /* dim_list: '[' expr ']' */ + case 615: /* dim_list: '[' expr ']' */ { (yyval.pTypeDecl) = new TypeDecl(Type::autoinfer); appendDimExpr((yyval.pTypeDecl), (yyvsp[-1].pExpression)); } break; - case 615: /* dim_list: '[' ']' */ + case 616: /* dim_list: '[' ']' */ { (yyval.pTypeDecl) = new TypeDecl(Type::autoinfer); appendDimExpr((yyval.pTypeDecl), nullptr); } break; - case 616: /* dim_list: dim_list '[' expr ']' */ + case 617: /* dim_list: dim_list '[' expr ']' */ { (yyval.pTypeDecl) = (yyvsp[-3].pTypeDecl); appendDimExpr((yyval.pTypeDecl), (yyvsp[-1].pExpression)); } break; - case 617: /* dim_list: dim_list '[' ']' */ + case 618: /* dim_list: dim_list '[' ']' */ { (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); appendDimExpr((yyval.pTypeDecl), nullptr); } break; - case 618: /* type_declaration_no_options: type_declaration_no_options_no_dim */ + case 619: /* type_declaration_no_options: type_declaration_no_options_no_dim */ { (yyval.pTypeDecl) = (yyvsp[0].pTypeDecl); } break; - case 619: /* type_declaration_no_options: type_declaration_no_options_no_dim dim_list */ + case 620: /* type_declaration_no_options: type_declaration_no_options_no_dim dim_list */ { if ( (yyvsp[-1].pTypeDecl)->baseType==Type::typeDecl ) { das2_yyerror(scanner,"type declaration can`t be used as array base type",tokAt(scanner,(yylsp[-1])), @@ -8857,38 +8886,38 @@ YYLTYPE yylloc = yyloc_default; } break; - case 620: /* type_declaration_no_options_no_dim: basic_type_declaration */ + case 621: /* type_declaration_no_options_no_dim: basic_type_declaration */ { (yyval.pTypeDecl) = new TypeDecl((yyvsp[0].type)); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[0])); } break; - case 621: /* type_declaration_no_options_no_dim: auto_type_declaration */ + case 622: /* type_declaration_no_options_no_dim: auto_type_declaration */ { (yyval.pTypeDecl) = (yyvsp[0].pTypeDecl); } break; - case 622: /* type_declaration_no_options_no_dim: bitfield_type_declaration */ + case 623: /* type_declaration_no_options_no_dim: bitfield_type_declaration */ { (yyval.pTypeDecl) = (yyvsp[0].pTypeDecl); } break; - case 623: /* type_declaration_no_options_no_dim: structure_type_declaration */ + case 624: /* type_declaration_no_options_no_dim: structure_type_declaration */ { (yyval.pTypeDecl) = (yyvsp[0].pTypeDecl); } break; - case 624: /* $@37: %empty */ + case 625: /* $@37: %empty */ { yyextra->das_arrow_depth ++; } break; - case 625: /* $@38: %empty */ + case 626: /* $@38: %empty */ { yyextra->das_arrow_depth --; } break; - case 626: /* type_declaration_no_options_no_dim: "type" '<' $@37 type_declaration '>' $@38 */ + case 627: /* type_declaration_no_options_no_dim: "type" '<' $@37 type_declaration '>' $@38 */ { (yyvsp[-2].pTypeDecl)->autoToAlias = true; (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); } break; - case 627: /* type_declaration_no_options_no_dim: "typedecl" '(' expr ')' */ + case 628: /* type_declaration_no_options_no_dim: "typedecl" '(' expr ')' */ { (yyval.pTypeDecl) = new TypeDecl(Type::typeDecl); (yyval.pTypeDecl)->at = tokRangeAt(scanner,(yylsp[-3]),(yylsp[-1])); @@ -8896,7 +8925,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 628: /* type_declaration_no_options_no_dim: '$' name_in_namespace '(' optional_expr_list ')' */ + case 629: /* type_declaration_no_options_no_dim: '$' name_in_namespace '(' optional_expr_list ')' */ { (yyval.pTypeDecl) = new TypeDecl(Type::typeMacro); (yyval.pTypeDecl)->at = tokRangeAt(scanner,(yylsp[-3]), (yylsp[-1])); @@ -8906,11 +8935,11 @@ YYLTYPE yylloc = yyloc_default; } break; - case 629: /* $@39: %empty */ + case 630: /* $@39: %empty */ { yyextra->das_arrow_depth ++; } break; - case 630: /* type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' */ + case 631: /* type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' */ { (yyval.pTypeDecl) = new TypeDecl(Type::typeMacro); (yyval.pTypeDecl)->at = tokRangeAt(scanner,(yylsp[-7]), (yylsp[-1])); @@ -8920,21 +8949,21 @@ YYLTYPE yylloc = yyloc_default; } break; - case 631: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '[' ']' */ + case 632: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '[' ']' */ { (yyvsp[-3].pTypeDecl)->removeDim = true; (yyval.pTypeDecl) = (yyvsp[-3].pTypeDecl); } break; - case 632: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "explicit" */ + case 633: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "explicit" */ { (yyvsp[-1].pTypeDecl)->isExplicit = true; (yyval.pTypeDecl) = (yyvsp[-1].pTypeDecl); } break; - case 633: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "const" */ + case 634: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "const" */ { (yyvsp[-1].pTypeDecl)->constant = true; (yyvsp[-1].pTypeDecl)->removeConstant = false; @@ -8942,7 +8971,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 634: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' "const" */ + case 635: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' "const" */ { (yyvsp[-2].pTypeDecl)->constant = false; (yyvsp[-2].pTypeDecl)->removeConstant = true; @@ -8950,7 +8979,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 635: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '&' */ + case 636: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '&' */ { (yyvsp[-1].pTypeDecl)->ref = true; (yyvsp[-1].pTypeDecl)->removeRef = false; @@ -8958,7 +8987,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 636: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '&' */ + case 637: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '&' */ { (yyvsp[-2].pTypeDecl)->ref = false; (yyvsp[-2].pTypeDecl)->removeRef = true; @@ -8966,21 +8995,21 @@ YYLTYPE yylloc = yyloc_default; } break; - case 637: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '#' */ + case 638: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '#' */ { (yyval.pTypeDecl) = (yyvsp[-1].pTypeDecl); (yyval.pTypeDecl)->temporary = true; } break; - case 638: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "implicit" */ + case 639: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "implicit" */ { (yyval.pTypeDecl) = (yyvsp[-1].pTypeDecl); (yyval.pTypeDecl)->implicit = true; } break; - case 639: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '#' */ + case 640: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '#' */ { (yyvsp[-2].pTypeDecl)->temporary = false; (yyvsp[-2].pTypeDecl)->removeTemporary = true; @@ -8988,21 +9017,21 @@ YYLTYPE yylloc = yyloc_default; } break; - case 640: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "==" "const" */ + case 641: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "==" "const" */ { (yyvsp[-2].pTypeDecl)->explicitConst = true; (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); } break; - case 641: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "==" '&' */ + case 642: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "==" '&' */ { (yyvsp[-2].pTypeDecl)->explicitRef = true; (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); } break; - case 642: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '*' */ + case 643: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '*' */ { (yyval.pTypeDecl) = new TypeDecl(Type::tPointer); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-1])); @@ -9010,15 +9039,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 643: /* $@40: %empty */ + case 644: /* $@40: %empty */ { yyextra->das_arrow_depth ++; } break; - case 644: /* $@41: %empty */ + case 645: /* $@41: %empty */ { yyextra->das_arrow_depth --; } break; - case 645: /* type_declaration_no_options_no_dim: "smart_ptr" '<' $@40 type_declaration '>' $@41 */ + case 646: /* type_declaration_no_options_no_dim: "smart_ptr" '<' $@40 type_declaration '>' $@41 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tPointer); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -9027,7 +9056,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 646: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "??" */ + case 647: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "??" */ { (yyval.pTypeDecl) = new TypeDecl(Type::tPointer); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-1])); @@ -9037,15 +9066,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 647: /* $@42: %empty */ + case 648: /* $@42: %empty */ { yyextra->das_arrow_depth ++; } break; - case 648: /* $@43: %empty */ + case 649: /* $@43: %empty */ { yyextra->das_arrow_depth --; } break; - case 649: /* type_declaration_no_options_no_dim: "array" '<' $@42 type_declaration '>' $@43 */ + case 650: /* type_declaration_no_options_no_dim: "array" '<' $@42 type_declaration '>' $@43 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tArray); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -9053,15 +9082,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 650: /* $@44: %empty */ + case 651: /* $@44: %empty */ { yyextra->das_arrow_depth ++; } break; - case 651: /* $@45: %empty */ + case 652: /* $@45: %empty */ { yyextra->das_arrow_depth --; } break; - case 652: /* type_declaration_no_options_no_dim: "table" '<' $@44 table_type_pair '>' $@45 */ + case 653: /* type_declaration_no_options_no_dim: "table" '<' $@44 table_type_pair '>' $@45 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tTable); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -9070,15 +9099,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 653: /* $@46: %empty */ + case 654: /* $@46: %empty */ { yyextra->das_arrow_depth ++; } break; - case 654: /* $@47: %empty */ + case 655: /* $@47: %empty */ { yyextra->das_arrow_depth --; } break; - case 655: /* type_declaration_no_options_no_dim: "iterator" '<' $@46 type_declaration '>' $@47 */ + case 656: /* type_declaration_no_options_no_dim: "iterator" '<' $@46 type_declaration '>' $@47 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tIterator); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -9086,22 +9115,22 @@ YYLTYPE yylloc = yyloc_default; } break; - case 656: /* type_declaration_no_options_no_dim: "block" */ + case 657: /* type_declaration_no_options_no_dim: "block" */ { (yyval.pTypeDecl) = new TypeDecl(Type::tBlock); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[0])); } break; - case 657: /* $@48: %empty */ + case 658: /* $@48: %empty */ { yyextra->das_arrow_depth ++; } break; - case 658: /* $@49: %empty */ + case 659: /* $@49: %empty */ { yyextra->das_arrow_depth --; } break; - case 659: /* type_declaration_no_options_no_dim: "block" '<' $@48 type_declaration '>' $@49 */ + case 660: /* type_declaration_no_options_no_dim: "block" '<' $@48 type_declaration '>' $@49 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tBlock); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -9109,15 +9138,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 660: /* $@50: %empty */ + case 661: /* $@50: %empty */ { yyextra->das_arrow_depth ++; } break; - case 661: /* $@51: %empty */ + case 662: /* $@51: %empty */ { yyextra->das_arrow_depth --; } break; - case 662: /* type_declaration_no_options_no_dim: "block" '<' $@50 optional_function_argument_list optional_function_type '>' $@51 */ + case 663: /* type_declaration_no_options_no_dim: "block" '<' $@50 optional_function_argument_list optional_function_type '>' $@51 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tBlock); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-6])); @@ -9129,22 +9158,22 @@ YYLTYPE yylloc = yyloc_default; } break; - case 663: /* type_declaration_no_options_no_dim: "function" */ + case 664: /* type_declaration_no_options_no_dim: "function" */ { (yyval.pTypeDecl) = new TypeDecl(Type::tFunction); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[0])); } break; - case 664: /* $@52: %empty */ + case 665: /* $@52: %empty */ { yyextra->das_arrow_depth ++; } break; - case 665: /* $@53: %empty */ + case 666: /* $@53: %empty */ { yyextra->das_arrow_depth --; } break; - case 666: /* type_declaration_no_options_no_dim: "function" '<' $@52 type_declaration '>' $@53 */ + case 667: /* type_declaration_no_options_no_dim: "function" '<' $@52 type_declaration '>' $@53 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tFunction); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -9152,15 +9181,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 667: /* $@54: %empty */ + case 668: /* $@54: %empty */ { yyextra->das_arrow_depth ++; } break; - case 668: /* $@55: %empty */ + case 669: /* $@55: %empty */ { yyextra->das_arrow_depth --; } break; - case 669: /* type_declaration_no_options_no_dim: "function" '<' $@54 optional_function_argument_list optional_function_type '>' $@55 */ + case 670: /* type_declaration_no_options_no_dim: "function" '<' $@54 optional_function_argument_list optional_function_type '>' $@55 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tFunction); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-6])); @@ -9172,22 +9201,22 @@ YYLTYPE yylloc = yyloc_default; } break; - case 670: /* type_declaration_no_options_no_dim: "lambda" */ + case 671: /* type_declaration_no_options_no_dim: "lambda" */ { (yyval.pTypeDecl) = new TypeDecl(Type::tLambda); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[0])); } break; - case 671: /* $@56: %empty */ + case 672: /* $@56: %empty */ { yyextra->das_arrow_depth ++; } break; - case 672: /* $@57: %empty */ + case 673: /* $@57: %empty */ { yyextra->das_arrow_depth --; } break; - case 673: /* type_declaration_no_options_no_dim: "lambda" '<' $@56 type_declaration '>' $@57 */ + case 674: /* type_declaration_no_options_no_dim: "lambda" '<' $@56 type_declaration '>' $@57 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tLambda); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -9195,15 +9224,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 674: /* $@58: %empty */ + case 675: /* $@58: %empty */ { yyextra->das_arrow_depth ++; } break; - case 675: /* $@59: %empty */ + case 676: /* $@59: %empty */ { yyextra->das_arrow_depth --; } break; - case 676: /* type_declaration_no_options_no_dim: "lambda" '<' $@58 optional_function_argument_list optional_function_type '>' $@59 */ + case 677: /* type_declaration_no_options_no_dim: "lambda" '<' $@58 optional_function_argument_list optional_function_type '>' $@59 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tLambda); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-6])); @@ -9215,15 +9244,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 677: /* $@60: %empty */ + case 678: /* $@60: %empty */ { yyextra->das_arrow_depth ++; } break; - case 678: /* $@61: %empty */ + case 679: /* $@61: %empty */ { yyextra->das_arrow_depth --; } break; - case 679: /* type_declaration_no_options_no_dim: "tuple" '<' $@60 tuple_type_list '>' $@61 */ + case 680: /* type_declaration_no_options_no_dim: "tuple" '<' $@60 tuple_type_list '>' $@61 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tTuple); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -9232,15 +9261,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 680: /* $@62: %empty */ + case 681: /* $@62: %empty */ { yyextra->das_arrow_depth ++; } break; - case 681: /* $@63: %empty */ + case 682: /* $@63: %empty */ { yyextra->das_arrow_depth --; } break; - case 682: /* type_declaration_no_options_no_dim: "variant" '<' $@62 variant_type_list '>' $@63 */ + case 683: /* type_declaration_no_options_no_dim: "variant" '<' $@62 variant_type_list '>' $@63 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tVariant); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -9249,13 +9278,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 683: /* type_declaration: type_declaration_no_options */ + case 684: /* type_declaration: type_declaration_no_options */ { (yyval.pTypeDecl) = (yyvsp[0].pTypeDecl); } break; - case 684: /* type_declaration: type_declaration '|' type_declaration_no_options */ + case 685: /* type_declaration: type_declaration '|' type_declaration_no_options */ { if ( (yyvsp[-2].pTypeDecl)->baseType==Type::option ) { (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); @@ -9269,7 +9298,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 685: /* type_declaration: type_declaration '|' '#' */ + case 686: /* type_declaration: type_declaration '|' '#' */ { if ( (yyvsp[-2].pTypeDecl)->baseType==Type::option ) { (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); @@ -9285,7 +9314,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 686: /* $@64: %empty */ + case 687: /* $@64: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[0])); @@ -9294,7 +9323,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 687: /* $@65: %empty */ + case 688: /* $@65: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[-2])); @@ -9303,7 +9332,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 688: /* $@66: %empty */ + case 689: /* $@66: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[-4])); @@ -9312,7 +9341,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 689: /* tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" */ + case 690: /* tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" */ { auto vtype = make_smart(Type::tTuple); vtype->alias = *(yyvsp[-6].s); @@ -9332,7 +9361,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 690: /* $@67: %empty */ + case 691: /* $@67: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[0])); @@ -9341,7 +9370,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 691: /* $@68: %empty */ + case 692: /* $@68: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[-2])); @@ -9351,7 +9380,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 692: /* $@69: %empty */ + case 693: /* $@69: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[-4])); @@ -9360,7 +9389,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 693: /* variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" */ + case 694: /* variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" */ { auto vtype = make_smart(Type::tVariant); vtype->alias = *(yyvsp[-6].s); @@ -9380,7 +9409,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 694: /* $@70: %empty */ + case 695: /* $@70: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[0])); @@ -9389,7 +9418,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 695: /* $@71: %empty */ + case 696: /* $@71: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[-2])); @@ -9398,7 +9427,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 696: /* $@72: %empty */ + case 697: /* $@72: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[-5])); @@ -9407,7 +9436,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 697: /* bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" */ + case 698: /* bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" */ { auto btype = make_smart(Type::tBitfield); btype->alias = *(yyvsp[-7].s); @@ -9431,27 +9460,27 @@ YYLTYPE yylloc = yyloc_default; } break; - case 698: /* make_decl: make_struct_decl */ + case 699: /* make_decl: make_struct_decl */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 699: /* make_decl: make_dim_decl */ + case 700: /* make_decl: make_dim_decl */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 700: /* make_decl: make_table_decl */ + case 701: /* make_decl: make_table_decl */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 701: /* make_decl: array_comprehension */ + case 702: /* make_decl: array_comprehension */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 702: /* make_decl: make_tuple_call */ + case 703: /* make_decl: make_tuple_call */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 703: /* make_struct_fields: "name" copy_or_move expr */ + case 704: /* make_struct_fields: "name" copy_or_move expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-2])),*(yyvsp[-2].s),ExpressionPtr((yyvsp[0].pExpression)),(yyvsp[-1].b),false); delete (yyvsp[-2].s); @@ -9461,7 +9490,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 704: /* make_struct_fields: "name" ":=" expr */ + case 705: /* make_struct_fields: "name" ":=" expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-2])),*(yyvsp[-2].s),ExpressionPtr((yyvsp[0].pExpression)),false,true); delete (yyvsp[-2].s); @@ -9471,7 +9500,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 705: /* make_struct_fields: make_struct_fields ',' "name" copy_or_move expr */ + case 706: /* make_struct_fields: make_struct_fields ',' "name" copy_or_move expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-2])),*(yyvsp[-2].s),ExpressionPtr((yyvsp[0].pExpression)),(yyvsp[-1].b),false); delete (yyvsp[-2].s); @@ -9480,7 +9509,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 706: /* make_struct_fields: make_struct_fields ',' "name" ":=" expr */ + case 707: /* make_struct_fields: make_struct_fields ',' "name" ":=" expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-2])),*(yyvsp[-2].s),ExpressionPtr((yyvsp[0].pExpression)),false,true); delete (yyvsp[-2].s); @@ -9489,7 +9518,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 707: /* make_struct_fields: "$f" '(' expr ')' copy_or_move expr */ + case 708: /* make_struct_fields: "$f" '(' expr ')' copy_or_move expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-3])),"``MACRO``TAG``FIELD``",ExpressionPtr((yyvsp[0].pExpression)),(yyvsp[-1].b),false); mfd->tag = ExpressionPtr((yyvsp[-3].pExpression)); @@ -9499,7 +9528,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 708: /* make_struct_fields: "$f" '(' expr ')' ":=" expr */ + case 709: /* make_struct_fields: "$f" '(' expr ')' ":=" expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-3])),"``MACRO``TAG``FIELD``",ExpressionPtr((yyvsp[0].pExpression)),false,true); mfd->tag = ExpressionPtr((yyvsp[-3].pExpression)); @@ -9509,7 +9538,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 709: /* make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' copy_or_move expr */ + case 710: /* make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' copy_or_move expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-3])),"``MACRO``TAG``FIELD``",ExpressionPtr((yyvsp[0].pExpression)),(yyvsp[-1].b),false); mfd->tag = ExpressionPtr((yyvsp[-3].pExpression)); @@ -9518,7 +9547,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 710: /* make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' ":=" expr */ + case 711: /* make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' ":=" expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-3])),"``MACRO``TAG``FIELD``",ExpressionPtr((yyvsp[0].pExpression)),false,true); mfd->tag = ExpressionPtr((yyvsp[-3].pExpression)); @@ -9527,7 +9556,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 711: /* make_struct_single: make_struct_fields */ + case 712: /* make_struct_single: make_struct_fields */ { auto msd = new ExprMakeStruct(); msd->structs.push_back(MakeStructPtr((yyvsp[0].pMakeStruct))); @@ -9535,7 +9564,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 712: /* make_struct_dim: make_struct_fields */ + case 713: /* make_struct_dim: make_struct_fields */ { auto msd = new ExprMakeStruct(); msd->structs.push_back(MakeStructPtr((yyvsp[0].pMakeStruct))); @@ -9543,30 +9572,30 @@ YYLTYPE yylloc = yyloc_default; } break; - case 713: /* make_struct_dim: make_struct_dim "end of expression" make_struct_fields */ + case 714: /* make_struct_dim: make_struct_dim "end of expression" make_struct_fields */ { ((ExprMakeStruct *) (yyvsp[-2].pExpression))->structs.push_back(MakeStructPtr((yyvsp[0].pMakeStruct))); (yyval.pExpression) = (yyvsp[-2].pExpression); } break; - case 714: /* use_initializer: %empty */ + case 715: /* use_initializer: %empty */ { (yyval.b) = true; } break; - case 715: /* use_initializer: "uninitialized" */ + case 716: /* use_initializer: "uninitialized" */ { (yyval.b) = false; } break; - case 716: /* $@73: %empty */ + case 717: /* $@73: %empty */ { yyextra->das_arrow_depth ++; } break; - case 717: /* $@74: %empty */ + case 718: /* $@74: %empty */ { yyextra->das_arrow_depth --; } break; - case 718: /* make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' */ + case 719: /* make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-9])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-6].pTypeDecl)); @@ -9577,15 +9606,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 719: /* $@75: %empty */ + case 720: /* $@75: %empty */ { yyextra->das_arrow_depth ++; } break; - case 720: /* $@76: %empty */ + case 721: /* $@76: %empty */ { yyextra->das_arrow_depth --; } break; - case 721: /* make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' */ + case 722: /* make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-9])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-6].pTypeDecl)); @@ -9595,15 +9624,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 722: /* $@77: %empty */ + case 723: /* $@77: %empty */ { yyextra->das_arrow_depth ++; } break; - case 723: /* $@78: %empty */ + case 724: /* $@78: %empty */ { yyextra->das_arrow_depth --; } break; - case 724: /* make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim ')' */ + case 725: /* make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-8])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-5].pTypeDecl)); @@ -9613,15 +9642,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 725: /* $@79: %empty */ + case 726: /* $@79: %empty */ { yyextra->das_arrow_depth ++; } break; - case 726: /* $@80: %empty */ + case 727: /* $@80: %empty */ { yyextra->das_arrow_depth --; } break; - case 727: /* make_struct_decl: "default" '<' $@79 type_declaration_no_options '>' $@80 use_initializer */ + case 728: /* make_struct_decl: "default" '<' $@79 type_declaration_no_options '>' $@80 use_initializer */ { auto msd = new ExprMakeStruct(); msd->at = tokAt(scanner,(yylsp[-6])); @@ -9632,7 +9661,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 728: /* make_map_tuple: expr "=>" expr */ + case 729: /* make_map_tuple: expr "=>" expr */ { ExprMakeTuple * mt = new ExprMakeTuple(tokAt(scanner,(yylsp[-1]))); mt->values.push_back(ExpressionPtr((yyvsp[-2].pExpression))); @@ -9641,13 +9670,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 729: /* make_map_tuple: expr */ + case 730: /* make_map_tuple: expr */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 730: /* make_tuple_call: "tuple" '(' expr_list optional_comma ')' */ + case 731: /* make_tuple_call: "tuple" '(' expr_list optional_comma ')' */ { auto mkt = new ExprMakeTuple(tokAt(scanner,(yylsp[-4]))); mkt->values = sequenceToList((yyvsp[-2].pExpression)); @@ -9656,15 +9685,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 731: /* $@81: %empty */ + case 732: /* $@81: %empty */ { yyextra->das_arrow_depth ++; } break; - case 732: /* $@82: %empty */ + case 733: /* $@82: %empty */ { yyextra->das_arrow_depth --; } break; - case 733: /* make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' */ + case 734: /* make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-9])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-6].pTypeDecl)); @@ -9674,7 +9703,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 734: /* make_dim_decl: '[' expr_list optional_comma ']' */ + case 735: /* make_dim_decl: '[' expr_list optional_comma ']' */ { auto mka = make_smart(tokAt(scanner,(yylsp[-3]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -9685,15 +9714,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 735: /* $@83: %empty */ + case 736: /* $@83: %empty */ { yyextra->das_arrow_depth ++; } break; - case 736: /* $@84: %empty */ + case 737: /* $@84: %empty */ { yyextra->das_arrow_depth --; } break; - case 737: /* make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' */ + case 738: /* make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-10])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-6].pTypeDecl)); @@ -9706,15 +9735,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 738: /* $@85: %empty */ + case 739: /* $@85: %empty */ { yyextra->das_arrow_depth ++; } break; - case 739: /* $@86: %empty */ + case 740: /* $@86: %empty */ { yyextra->das_arrow_depth --; } break; - case 740: /* make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' */ + case 741: /* make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-10])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-6].pTypeDecl)); @@ -9727,15 +9756,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 741: /* $@87: %empty */ + case 742: /* $@87: %empty */ { yyextra->das_arrow_depth ++; } break; - case 742: /* $@88: %empty */ + case 743: /* $@88: %empty */ { yyextra->das_arrow_depth --; } break; - case 743: /* make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' */ + case 744: /* make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-9])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-5].pTypeDecl)); @@ -9748,7 +9777,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 744: /* make_dim_decl: "array" '(' expr_list optional_comma ')' */ + case 745: /* make_dim_decl: "array" '(' expr_list optional_comma ')' */ { auto mka = make_smart(tokAt(scanner,(yylsp[-4]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -9759,15 +9788,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 745: /* $@89: %empty */ + case 746: /* $@89: %empty */ { yyextra->das_arrow_depth ++; } break; - case 746: /* $@90: %empty */ + case 747: /* $@90: %empty */ { yyextra->das_arrow_depth --; } break; - case 747: /* make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' */ + case 748: /* make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' */ { auto mka = make_smart(tokAt(scanner,(yylsp[-9]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -9778,7 +9807,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 748: /* make_dim_decl: "fixed_array" '(' expr_list optional_comma ')' */ + case 749: /* make_dim_decl: "fixed_array" '(' expr_list optional_comma ')' */ { auto mka = new ExprMakeArray(tokAt(scanner,(yylsp[-4]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -9788,15 +9817,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 749: /* $@91: %empty */ + case 750: /* $@91: %empty */ { yyextra->das_arrow_depth ++; } break; - case 750: /* $@92: %empty */ + case 751: /* $@92: %empty */ { yyextra->das_arrow_depth --; } break; - case 751: /* make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' */ + case 752: /* make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' */ { auto mka = new ExprMakeArray(tokAt(scanner,(yylsp[-9]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -9806,19 +9835,19 @@ YYLTYPE yylloc = yyloc_default; } break; - case 752: /* expr_map_tuple_list: make_map_tuple */ + case 753: /* expr_map_tuple_list: make_map_tuple */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 753: /* expr_map_tuple_list: expr_map_tuple_list ',' make_map_tuple */ + case 754: /* expr_map_tuple_list: expr_map_tuple_list ',' make_map_tuple */ { (yyval.pExpression) = new ExprSequence(tokAt(scanner,(yylsp[-2])),ExpressionPtr((yyvsp[-2].pExpression)),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 754: /* make_table_decl: "begin of code block" expr_map_tuple_list optional_comma "end of code block" */ + case 755: /* make_table_decl: "begin of code block" expr_map_tuple_list optional_comma "end of code block" */ { auto mka = make_smart(tokAt(scanner,(yylsp[-3]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -9829,7 +9858,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 755: /* make_table_decl: "table" '(' expr_map_tuple_list optional_comma ')' */ + case 756: /* make_table_decl: "table" '(' expr_map_tuple_list optional_comma ')' */ { auto mka = make_smart(tokAt(scanner,(yylsp[-4]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -9840,7 +9869,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 756: /* make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' */ + case 757: /* make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' */ { auto mka = make_smart(tokAt(scanner,(yylsp[-7]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -9851,7 +9880,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 757: /* make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' */ + case 758: /* make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' */ { auto mka = make_smart(tokAt(scanner,(yylsp[-9]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -9864,35 +9893,35 @@ YYLTYPE yylloc = yyloc_default; } break; - case 758: /* array_comprehension_where: %empty */ + case 759: /* array_comprehension_where: %empty */ { (yyval.pExpression) = nullptr; } break; - case 759: /* array_comprehension_where: "end of expression" "where" expr */ + case 760: /* array_comprehension_where: "end of expression" "where" expr */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 760: /* optional_comma: %empty */ + case 761: /* optional_comma: %empty */ { (yyval.b) = false; } break; - case 761: /* optional_comma: ',' */ + case 762: /* optional_comma: ',' */ { (yyval.b) = true; } break; - case 762: /* array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' */ + case 763: /* array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' */ { (yyval.pExpression) = ast_arrayComprehension(scanner,tokAt(scanner,(yylsp[-7])),(yyvsp[-6].pNameWithPosList),(yyvsp[-4].pExpression),(yyvsp[-2].pExpression),(yyvsp[-1].pExpression),tokRangeAt(scanner,(yylsp[-2]),(yylsp[0])),false,false); } break; - case 763: /* array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' */ + case 764: /* array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' */ { (yyval.pExpression) = ast_arrayComprehension(scanner,tokAt(scanner,(yylsp[-7])),(yyvsp[-6].pNameWithPosList),(yyvsp[-4].pExpression),(yyvsp[-2].pExpression),(yyvsp[-1].pExpression),tokRangeAt(scanner,(yylsp[-2]),(yylsp[0])),true,false); } break; - case 764: /* array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" */ + case 765: /* array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" */ { (yyval.pExpression) = ast_arrayComprehension(scanner,tokAt(scanner,(yylsp[-7])),(yyvsp[-6].pNameWithPosList),(yyvsp[-4].pExpression),(yyvsp[-2].pExpression),(yyvsp[-1].pExpression),tokRangeAt(scanner,(yylsp[-2]),(yylsp[0])),false,true); } diff --git a/src/parser/ds2_parser.output b/src/parser/ds2_parser.output index f3aa7f185..86f068135 100644 --- a/src/parser/ds2_parser.output +++ b/src/parser/ds2_parser.output @@ -10,13 +10,14 @@ Terminals unused in grammar LLPIPE -State 457 conflicts: 1 shift/reduce -State 462 conflicts: 1 shift/reduce -State 469 conflicts: 3 shift/reduce -State 588 conflicts: 1 shift/reduce -State 639 conflicts: 1 shift/reduce -State 811 conflicts: 2 shift/reduce -State 881 conflicts: 1 shift/reduce +State 56 conflicts: 1 shift/reduce +State 459 conflicts: 1 shift/reduce +State 464 conflicts: 1 shift/reduce +State 471 conflicts: 3 shift/reduce +State 590 conflicts: 1 shift/reduce +State 641 conflicts: 1 shift/reduce +State 813 conflicts: 2 shift/reduce +State 883 conflicts: 1 shift/reduce Grammar @@ -321,954 +322,955 @@ Grammar 239 name_in_namespace: "name" 240 | "name" "::" "name" + 241 | "::" "name" - 241 expression_delete: "delete" expr - 242 | "delete" "explicit" expr + 242 expression_delete: "delete" expr + 243 | "delete" "explicit" expr - 243 $@3: %empty + 244 $@3: %empty - 244 $@4: %empty + 245 $@4: %empty - 245 new_type_declaration: '<' $@3 type_declaration '>' $@4 + 246 new_type_declaration: '<' $@3 type_declaration '>' $@4 - 246 expr_new: "new" structure_type_declaration - 247 | "new" structure_type_declaration '(' optional_expr_list ')' - 248 | "new" new_type_declaration '(' use_initializer ')' - 249 | "new" new_type_declaration '(' use_initializer make_struct_single ')' - 250 | "new" make_decl + 247 expr_new: "new" structure_type_declaration + 248 | "new" structure_type_declaration '(' optional_expr_list ')' + 249 | "new" new_type_declaration '(' use_initializer ')' + 250 | "new" new_type_declaration '(' use_initializer make_struct_single ')' + 251 | "new" make_decl - 251 expression_break: "break" + 252 expression_break: "break" - 252 expression_continue: "continue" + 253 expression_continue: "continue" - 253 expression_return: "return" - 254 | "return" expr - 255 | "return" "<-" expr + 254 expression_return: "return" + 255 | "return" expr + 256 | "return" "<-" expr - 256 expression_yield_no_pipe: "yield" expr - 257 | "yield" "<-" expr + 257 expression_yield_no_pipe: "yield" expr + 258 | "yield" "<-" expr - 258 expression_yield: expression_yield_no_pipe "end of expression" + 259 expression_yield: expression_yield_no_pipe "end of expression" - 259 expression_try_catch: "try" expression_block "recover" expression_block + 260 expression_try_catch: "try" expression_block "recover" expression_block - 260 kwd_let_var_or_nothing: "let" - 261 | "var" - 262 | %empty + 261 kwd_let_var_or_nothing: "let" + 262 | "var" + 263 | %empty - 263 kwd_let: "let" - 264 | "var" + 264 kwd_let: "let" + 265 | "var" - 265 optional_in_scope: "inscope" - 266 | %empty + 266 optional_in_scope: "inscope" + 267 | %empty - 267 tuple_expansion: "name" - 268 | tuple_expansion ',' "name" + 268 tuple_expansion: "name" + 269 | tuple_expansion ',' "name" - 269 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 270 | '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" + 270 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 271 | '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" - 271 expression_let: kwd_let optional_in_scope let_variable_declaration - 272 | kwd_let optional_in_scope tuple_expansion_variable_declaration + 272 expression_let: kwd_let optional_in_scope let_variable_declaration + 273 | kwd_let optional_in_scope tuple_expansion_variable_declaration - 273 $@5: %empty + 274 $@5: %empty - 274 $@6: %empty + 275 $@6: %empty - 275 expr_cast: "cast" '<' $@5 type_declaration_no_options '>' $@6 expr + 276 expr_cast: "cast" '<' $@5 type_declaration_no_options '>' $@6 expr - 276 $@7: %empty + 277 $@7: %empty - 277 $@8: %empty + 278 $@8: %empty - 278 expr_cast: "upcast" '<' $@7 type_declaration_no_options '>' $@8 expr + 279 expr_cast: "upcast" '<' $@7 type_declaration_no_options '>' $@8 expr - 279 $@9: %empty + 280 $@9: %empty - 280 $@10: %empty + 281 $@10: %empty - 281 expr_cast: "reinterpret" '<' $@9 type_declaration_no_options '>' $@10 expr + 282 expr_cast: "reinterpret" '<' $@9 type_declaration_no_options '>' $@10 expr - 282 $@11: %empty + 283 $@11: %empty - 283 $@12: %empty + 284 $@12: %empty - 284 expr_type_decl: "type" '<' $@11 type_declaration '>' $@12 + 285 expr_type_decl: "type" '<' $@11 type_declaration '>' $@12 - 285 expr_type_info: "typeinfo" '(' name_in_namespace expr ')' - 286 | "typeinfo" '(' name_in_namespace '<' "name" '>' expr ')' - 287 | "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' + 286 expr_type_info: "typeinfo" '(' name_in_namespace expr ')' + 287 | "typeinfo" '(' name_in_namespace '<' "name" '>' expr ')' + 288 | "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' - 288 expr_list: expr - 289 | expr_list ',' expr + 289 expr_list: expr + 290 | expr_list ',' expr - 290 block_or_simple_block: expression_block - 291 | "=>" expr - 292 | "=>" "<-" expr + 291 block_or_simple_block: expression_block + 292 | "=>" expr + 293 | "=>" "<-" expr - 293 block_or_lambda: '$' - 294 | '@' - 295 | '@' '@' + 294 block_or_lambda: '$' + 295 | '@' + 296 | '@' '@' - 296 capture_entry: '&' "name" - 297 | '=' "name" - 298 | "<-" "name" - 299 | ":=" "name" + 297 capture_entry: '&' "name" + 298 | '=' "name" + 299 | "<-" "name" + 300 | ":=" "name" - 300 capture_list: capture_entry - 301 | capture_list ',' capture_entry + 301 capture_list: capture_entry + 302 | capture_list ',' capture_entry - 302 optional_capture_list: %empty - 303 | '[' '[' capture_list ']' ']' + 303 optional_capture_list: %empty + 304 | '[' '[' capture_list ']' ']' - 304 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block + 305 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block - 305 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block - 306 | "begin of code block" expressions "end of code block" + 306 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block + 307 | "begin of code block" expressions "end of code block" - 307 expr_numeric_const: "integer constant" - 308 | "unsigned integer constant" - 309 | "long integer constant" - 310 | "unsigned long integer constant" - 311 | "unsigned int8 constant" - 312 | "floating point constant" - 313 | "double constant" + 308 expr_numeric_const: "integer constant" + 309 | "unsigned integer constant" + 310 | "long integer constant" + 311 | "unsigned long integer constant" + 312 | "unsigned int8 constant" + 313 | "floating point constant" + 314 | "double constant" - 314 expr_assign: expr - 315 | expr '=' expr - 316 | expr "<-" expr - 317 | expr ":=" expr - 318 | expr "&=" expr - 319 | expr "|=" expr - 320 | expr "^=" expr - 321 | expr "&&=" expr - 322 | expr "||=" expr - 323 | expr "^^=" expr - 324 | expr "+=" expr - 325 | expr "-=" expr - 326 | expr "*=" expr - 327 | expr "/=" expr - 328 | expr "%=" expr - 329 | expr "<<=" expr - 330 | expr ">>=" expr - 331 | expr "<<<=" expr - 332 | expr ">>>=" expr - - 333 expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' ')' - 334 | name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' ')' - - 335 expr_method_call: expr "->" "name" '(' ')' - 336 | expr "->" "name" '(' expr_list ')' - - 337 func_addr_name: name_in_namespace - 338 | "$i" '(' expr ')' - - 339 func_addr_expr: '@' '@' func_addr_name - - 340 $@13: %empty - - 341 $@14: %empty - - 342 func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options '>' $@14 func_addr_name - - 343 $@15: %empty - - 344 $@16: %empty - - 345 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name - - 346 expr_field: expr '.' "name" - 347 | expr '.' '.' "name" - 348 | expr '.' "name" '(' ')' - 349 | expr '.' "name" '(' expr_list ')' - - 350 $@17: %empty - - 351 $@18: %empty - - 352 expr_field: expr '.' $@17 error $@18 - - 353 expr_call: name_in_namespace '(' ')' - 354 | name_in_namespace '(' make_struct_single ')' - 355 | name_in_namespace '(' expr_list ')' - 356 | basic_type_declaration '(' ')' - 357 | basic_type_declaration '(' expr_list ')' - - 358 expr: "null" - 359 | name_in_namespace - 360 | expr_numeric_const - 361 | expr_reader - 362 | string_builder - 363 | make_decl - 364 | "true" - 365 | "false" - 366 | expr_field - 367 | expr_mtag - 368 | '!' expr - 369 | '~' expr - 370 | '+' expr - 371 | '-' expr - 372 | expr "<<" expr - 373 | expr ">>" expr - 374 | expr "<<<" expr - 375 | expr ">>>" expr - 376 | expr '+' expr - 377 | expr '-' expr - 378 | expr '*' expr - 379 | expr '/' expr - 380 | expr '%' expr - 381 | expr '<' expr - 382 | expr '>' expr - 383 | expr "==" expr - 384 | expr "!=" expr - 385 | expr "<=" expr - 386 | expr ">=" expr - 387 | expr '&' expr - 388 | expr '|' expr - 389 | expr '^' expr - 390 | expr "&&" expr - 391 | expr "||" expr - 392 | expr "^^" expr - 393 | expr ".." expr - 394 | "++" expr - 395 | "--" expr - 396 | expr "++" - 397 | expr "--" - 398 | '(' expr_list optional_comma ')' - 399 | expr '[' expr ']' - 400 | expr '.' '[' expr ']' - 401 | expr "?[" expr ']' - 402 | expr '.' "?[" expr ']' - 403 | expr "?." "name" - 404 | expr '.' "?." "name" - 405 | func_addr_expr - 406 | expr_call - 407 | '*' expr - 408 | "deref" '(' expr ')' - 409 | "addr" '(' expr ')' - 410 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' ')' - 411 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' - 412 | expr "??" expr - 413 | expr '?' expr ':' expr - - 414 $@19: %empty - - 415 $@20: %empty - - 416 expr: expr "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr "is" basic_type_declaration - 418 | expr "is" "name" - 419 | expr "as" "name" - - 420 $@21: %empty - - 421 $@22: %empty - - 422 expr: expr "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr "as" basic_type_declaration - 424 | expr '?' "as" "name" - - 425 $@23: %empty - - 426 $@24: %empty - - 427 expr: expr '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr '?' "as" basic_type_declaration - 429 | expr_type_info - 430 | expr_type_decl - 431 | expr_cast - 432 | expr_new - 433 | expr_method_call - 434 | expr_named_call - 435 | expr_full_block - 436 | expr "<|" expr - 437 | expr "|>" expr - 438 | expr "|>" basic_type_declaration - 439 | expr_call_pipe - - 440 expr_mtag: "$$" '(' expr ')' - 441 | "$i" '(' expr ')' - 442 | "$v" '(' expr ')' - 443 | "$b" '(' expr ')' - 444 | "$a" '(' expr ')' - 445 | "..." - 446 | "$c" '(' expr ')' '(' ')' - 447 | "$c" '(' expr ')' '(' expr_list ')' - 448 | expr '.' "$f" '(' expr ')' - 449 | expr "?." "$f" '(' expr ')' - 450 | expr '.' '.' "$f" '(' expr ')' - 451 | expr '.' "?." "$f" '(' expr ')' - 452 | expr "as" "$f" '(' expr ')' - 453 | expr '?' "as" "$f" '(' expr ')' - 454 | expr "is" "$f" '(' expr ')' - 455 | '@' '@' "$c" '(' expr ')' - - 456 optional_field_annotation: %empty - 457 | metadata_argument_list - - 458 optional_override: %empty - 459 | "override" - 460 | "sealed" - - 461 optional_constant: %empty - 462 | "const" - - 463 optional_public_or_private_member_variable: %empty - 464 | "public" - 465 | "private" - - 466 optional_static_member_variable: %empty - 467 | "static" + 315 expr_assign: expr + 316 | expr '=' expr + 317 | expr "<-" expr + 318 | expr ":=" expr + 319 | expr "&=" expr + 320 | expr "|=" expr + 321 | expr "^=" expr + 322 | expr "&&=" expr + 323 | expr "||=" expr + 324 | expr "^^=" expr + 325 | expr "+=" expr + 326 | expr "-=" expr + 327 | expr "*=" expr + 328 | expr "/=" expr + 329 | expr "%=" expr + 330 | expr "<<=" expr + 331 | expr ">>=" expr + 332 | expr "<<<=" expr + 333 | expr ">>>=" expr + + 334 expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' ')' + 335 | name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' ')' + + 336 expr_method_call: expr "->" "name" '(' ')' + 337 | expr "->" "name" '(' expr_list ')' + + 338 func_addr_name: name_in_namespace + 339 | "$i" '(' expr ')' + + 340 func_addr_expr: '@' '@' func_addr_name + + 341 $@13: %empty + + 342 $@14: %empty + + 343 func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options '>' $@14 func_addr_name + + 344 $@15: %empty + + 345 $@16: %empty + + 346 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name + + 347 expr_field: expr '.' "name" + 348 | expr '.' '.' "name" + 349 | expr '.' "name" '(' ')' + 350 | expr '.' "name" '(' expr_list ')' + + 351 $@17: %empty + + 352 $@18: %empty + + 353 expr_field: expr '.' $@17 error $@18 + + 354 expr_call: name_in_namespace '(' ')' + 355 | name_in_namespace '(' make_struct_single ')' + 356 | name_in_namespace '(' expr_list ')' + 357 | basic_type_declaration '(' ')' + 358 | basic_type_declaration '(' expr_list ')' + + 359 expr: "null" + 360 | name_in_namespace + 361 | expr_numeric_const + 362 | expr_reader + 363 | string_builder + 364 | make_decl + 365 | "true" + 366 | "false" + 367 | expr_field + 368 | expr_mtag + 369 | '!' expr + 370 | '~' expr + 371 | '+' expr + 372 | '-' expr + 373 | expr "<<" expr + 374 | expr ">>" expr + 375 | expr "<<<" expr + 376 | expr ">>>" expr + 377 | expr '+' expr + 378 | expr '-' expr + 379 | expr '*' expr + 380 | expr '/' expr + 381 | expr '%' expr + 382 | expr '<' expr + 383 | expr '>' expr + 384 | expr "==" expr + 385 | expr "!=" expr + 386 | expr "<=" expr + 387 | expr ">=" expr + 388 | expr '&' expr + 389 | expr '|' expr + 390 | expr '^' expr + 391 | expr "&&" expr + 392 | expr "||" expr + 393 | expr "^^" expr + 394 | expr ".." expr + 395 | "++" expr + 396 | "--" expr + 397 | expr "++" + 398 | expr "--" + 399 | '(' expr_list optional_comma ')' + 400 | expr '[' expr ']' + 401 | expr '.' '[' expr ']' + 402 | expr "?[" expr ']' + 403 | expr '.' "?[" expr ']' + 404 | expr "?." "name" + 405 | expr '.' "?." "name" + 406 | func_addr_expr + 407 | expr_call + 408 | '*' expr + 409 | "deref" '(' expr ')' + 410 | "addr" '(' expr ')' + 411 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' ')' + 412 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' + 413 | expr "??" expr + 414 | expr '?' expr ':' expr + + 415 $@19: %empty + + 416 $@20: %empty + + 417 expr: expr "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr "is" basic_type_declaration + 419 | expr "is" "name" + 420 | expr "as" "name" + + 421 $@21: %empty + + 422 $@22: %empty + + 423 expr: expr "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr "as" basic_type_declaration + 425 | expr '?' "as" "name" + + 426 $@23: %empty + + 427 $@24: %empty + + 428 expr: expr '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr '?' "as" basic_type_declaration + 430 | expr_type_info + 431 | expr_type_decl + 432 | expr_cast + 433 | expr_new + 434 | expr_method_call + 435 | expr_named_call + 436 | expr_full_block + 437 | expr "<|" expr + 438 | expr "|>" expr + 439 | expr "|>" basic_type_declaration + 440 | expr_call_pipe + + 441 expr_mtag: "$$" '(' expr ')' + 442 | "$i" '(' expr ')' + 443 | "$v" '(' expr ')' + 444 | "$b" '(' expr ')' + 445 | "$a" '(' expr ')' + 446 | "..." + 447 | "$c" '(' expr ')' '(' ')' + 448 | "$c" '(' expr ')' '(' expr_list ')' + 449 | expr '.' "$f" '(' expr ')' + 450 | expr "?." "$f" '(' expr ')' + 451 | expr '.' '.' "$f" '(' expr ')' + 452 | expr '.' "?." "$f" '(' expr ')' + 453 | expr "as" "$f" '(' expr ')' + 454 | expr '?' "as" "$f" '(' expr ')' + 455 | expr "is" "$f" '(' expr ')' + 456 | '@' '@' "$c" '(' expr ')' + + 457 optional_field_annotation: %empty + 458 | metadata_argument_list + + 459 optional_override: %empty + 460 | "override" + 461 | "sealed" + + 462 optional_constant: %empty + 463 | "const" + + 464 optional_public_or_private_member_variable: %empty + 465 | "public" + 466 | "private" + + 467 optional_static_member_variable: %empty + 468 | "static" - 468 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration + 469 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration - 469 struct_variable_declaration_list: %empty + 470 struct_variable_declaration_list: %empty - 470 $@25: %empty + 471 $@25: %empty - 471 struct_variable_declaration_list: struct_variable_declaration_list $@25 structure_variable_declaration "end of expression" + 472 struct_variable_declaration_list: struct_variable_declaration_list $@25 structure_variable_declaration "end of expression" - 472 $@26: %empty + 473 $@26: %empty - 473 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" + 474 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" - 474 $@27: %empty + 475 $@27: %empty - 475 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block + 476 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block - 476 function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing variable_declaration - 477 | "$a" '(' expr ')' + 477 function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing variable_declaration + 478 | "$a" '(' expr ')' - 478 function_argument_list: function_argument_declaration - 479 | function_argument_list "end of expression" function_argument_declaration + 479 function_argument_list: function_argument_declaration + 480 | function_argument_list "end of expression" function_argument_declaration - 480 tuple_type: type_declaration - 481 | "name" ':' type_declaration + 481 tuple_type: type_declaration + 482 | "name" ':' type_declaration - 482 tuple_type_list: tuple_type - 483 | tuple_type_list "end of expression" tuple_type + 483 tuple_type_list: tuple_type + 484 | tuple_type_list "end of expression" tuple_type - 484 tuple_alias_type_list: %empty - 485 | tuple_alias_type_list "end of expression" - 486 | tuple_alias_type_list tuple_type "end of expression" + 485 tuple_alias_type_list: %empty + 486 | tuple_alias_type_list "end of expression" + 487 | tuple_alias_type_list tuple_type "end of expression" - 487 variant_type: "name" ':' type_declaration + 488 variant_type: "name" ':' type_declaration - 488 variant_type_list: variant_type - 489 | variant_type_list "end of expression" variant_type + 489 variant_type_list: variant_type + 490 | variant_type_list "end of expression" variant_type - 490 variant_alias_type_list: %empty - 491 | variant_alias_type_list "end of expression" - 492 | variant_alias_type_list variant_type "end of expression" + 491 variant_alias_type_list: %empty + 492 | variant_alias_type_list "end of expression" + 493 | variant_alias_type_list variant_type "end of expression" - 493 copy_or_move: '=' - 494 | "<-" + 494 copy_or_move: '=' + 495 | "<-" - 495 variable_declaration: variable_name_with_pos_list - 496 | variable_name_with_pos_list '&' - 497 | variable_name_with_pos_list ':' type_declaration - 498 | variable_name_with_pos_list ':' type_declaration copy_or_move expr - 499 | variable_name_with_pos_list copy_or_move expr + 496 variable_declaration: variable_name_with_pos_list + 497 | variable_name_with_pos_list '&' + 498 | variable_name_with_pos_list ':' type_declaration + 499 | variable_name_with_pos_list ':' type_declaration copy_or_move expr + 500 | variable_name_with_pos_list copy_or_move expr - 500 copy_or_move_or_clone: '=' - 501 | "<-" - 502 | ":=" + 501 copy_or_move_or_clone: '=' + 502 | "<-" + 503 | ":=" - 503 optional_ref: %empty - 504 | '&' + 504 optional_ref: %empty + 505 | '&' - 505 let_variable_name_with_pos_list: "name" - 506 | "$i" '(' expr ')' - 507 | "name" "aka" "name" - 508 | let_variable_name_with_pos_list ',' "name" - 509 | let_variable_name_with_pos_list ',' "name" "aka" "name" + 506 let_variable_name_with_pos_list: "name" + 507 | "$i" '(' expr ')' + 508 | "name" "aka" "name" + 509 | let_variable_name_with_pos_list ',' "name" + 510 | let_variable_name_with_pos_list ',' "name" "aka" "name" - 510 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" - 511 | let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 512 | let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr "end of expression" + 511 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" + 512 | let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 513 | let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr "end of expression" - 513 global_variable_declaration_list: %empty + 514 global_variable_declaration_list: %empty - 514 $@28: %empty + 515 $@28: %empty - 515 global_variable_declaration_list: global_variable_declaration_list $@28 optional_field_annotation let_variable_declaration + 516 global_variable_declaration_list: global_variable_declaration_list $@28 optional_field_annotation let_variable_declaration - 516 optional_shared: %empty - 517 | "shared" + 517 optional_shared: %empty + 518 | "shared" - 518 optional_public_or_private_variable: %empty - 519 | "private" - 520 | "public" + 519 optional_public_or_private_variable: %empty + 520 | "private" + 521 | "public" - 521 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" + 522 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" - 522 $@29: %empty + 523 $@29: %empty - 523 global_let: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration + 524 global_let: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration - 524 enum_expression: "name" - 525 | "name" '=' expr + 525 enum_expression: "name" + 526 | "name" '=' expr - 526 enum_list: %empty - 527 | enum_expression - 528 | enum_list ',' enum_expression + 527 enum_list: %empty + 528 | enum_expression + 529 | enum_list ',' enum_expression - 529 optional_public_or_private_alias: %empty - 530 | "private" - 531 | "public" + 530 optional_public_or_private_alias: %empty + 531 | "private" + 532 | "public" - 532 $@30: %empty + 533 $@30: %empty - 533 single_alias: optional_public_or_private_alias "name" $@30 '=' type_declaration + 534 single_alias: optional_public_or_private_alias "name" $@30 '=' type_declaration - 534 alias_declaration: "typedef" single_alias "end of expression" + 535 alias_declaration: "typedef" single_alias "end of expression" - 535 optional_public_or_private_enum: %empty - 536 | "private" - 537 | "public" + 536 optional_public_or_private_enum: %empty + 537 | "private" + 538 | "public" - 538 enum_name: "name" + 539 enum_name: "name" - 539 optional_enum_basic_type_declaration: %empty - 540 | ':' enum_basic_type_declaration + 540 optional_enum_basic_type_declaration: %empty + 541 | ':' enum_basic_type_declaration - 541 $@31: %empty + 542 $@31: %empty - 542 $@32: %empty + 543 $@32: %empty - 543 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" + 544 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" - 544 optional_structure_parent: %empty - 545 | ':' name_in_namespace + 545 optional_structure_parent: %empty + 546 | ':' name_in_namespace - 546 optional_sealed: %empty - 547 | "sealed" + 547 optional_sealed: %empty + 548 | "sealed" - 548 structure_name: optional_sealed "name" optional_structure_parent + 549 structure_name: optional_sealed "name" optional_structure_parent - 549 class_or_struct: "class" - 550 | "struct" + 550 class_or_struct: "class" + 551 | "struct" - 551 optional_public_or_private_structure: %empty - 552 | "private" - 553 | "public" + 552 optional_public_or_private_structure: %empty + 553 | "private" + 554 | "public" - 554 optional_struct_variable_declaration_list: %empty - 555 | "begin of code block" struct_variable_declaration_list "end of code block" + 555 optional_struct_variable_declaration_list: %empty + 556 | "begin of code block" struct_variable_declaration_list "end of code block" - 556 $@33: %empty + 557 $@33: %empty - 557 $@34: %empty + 558 $@34: %empty - 558 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 structure_name $@34 optional_struct_variable_declaration_list + 559 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 structure_name $@34 optional_struct_variable_declaration_list - 559 variable_name_with_pos_list: "name" - 560 | "$i" '(' expr ')' - 561 | "name" "aka" "name" - 562 | variable_name_with_pos_list ',' "name" - 563 | variable_name_with_pos_list ',' "name" "aka" "name" + 560 variable_name_with_pos_list: "name" + 561 | "$i" '(' expr ')' + 562 | "name" "aka" "name" + 563 | variable_name_with_pos_list ',' "name" + 564 | variable_name_with_pos_list ',' "name" "aka" "name" - 564 basic_type_declaration: "bool" - 565 | "string" - 566 | "int" - 567 | "int8" - 568 | "int16" - 569 | "int64" - 570 | "int2" - 571 | "int3" - 572 | "int4" - 573 | "uint" - 574 | "uint8" - 575 | "uint16" - 576 | "uint64" - 577 | "uint2" - 578 | "uint3" - 579 | "uint4" - 580 | "float" - 581 | "float2" - 582 | "float3" - 583 | "float4" - 584 | "void" - 585 | "range" - 586 | "urange" - 587 | "range64" - 588 | "urange64" - 589 | "double" - 590 | "bitfield" + 565 basic_type_declaration: "bool" + 566 | "string" + 567 | "int" + 568 | "int8" + 569 | "int16" + 570 | "int64" + 571 | "int2" + 572 | "int3" + 573 | "int4" + 574 | "uint" + 575 | "uint8" + 576 | "uint16" + 577 | "uint64" + 578 | "uint2" + 579 | "uint3" + 580 | "uint4" + 581 | "float" + 582 | "float2" + 583 | "float3" + 584 | "float4" + 585 | "void" + 586 | "range" + 587 | "urange" + 588 | "range64" + 589 | "urange64" + 590 | "double" + 591 | "bitfield" - 591 enum_basic_type_declaration: "int" - 592 | "int8" - 593 | "int16" - 594 | "uint" - 595 | "uint8" - 596 | "uint16" - 597 | "int64" - 598 | "uint64" + 592 enum_basic_type_declaration: "int" + 593 | "int8" + 594 | "int16" + 595 | "uint" + 596 | "uint8" + 597 | "uint16" + 598 | "int64" + 599 | "uint64" - 599 structure_type_declaration: name_in_namespace + 600 structure_type_declaration: name_in_namespace - 600 auto_type_declaration: "auto" - 601 | "auto" '(' "name" ')' - 602 | "$t" '(' expr ')' + 601 auto_type_declaration: "auto" + 602 | "auto" '(' "name" ')' + 603 | "$t" '(' expr ')' - 603 bitfield_bits: "name" - 604 | bitfield_bits "end of expression" "name" + 604 bitfield_bits: "name" + 605 | bitfield_bits "end of expression" "name" - 605 bitfield_alias_bits: %empty - 606 | "name" - 607 | bitfield_alias_bits ',' "name" + 606 bitfield_alias_bits: %empty + 607 | "name" + 608 | bitfield_alias_bits ',' "name" - 608 $@35: %empty + 609 $@35: %empty - 609 $@36: %empty + 610 $@36: %empty - 610 bitfield_type_declaration: "bitfield" '<' $@35 bitfield_bits '>' $@36 + 611 bitfield_type_declaration: "bitfield" '<' $@35 bitfield_bits '>' $@36 - 611 table_type_pair: type_declaration - 612 | type_declaration "end of expression" type_declaration + 612 table_type_pair: type_declaration + 613 | type_declaration "end of expression" type_declaration - 613 dim_list: '[' expr ']' - 614 | '[' ']' - 615 | dim_list '[' expr ']' - 616 | dim_list '[' ']' + 614 dim_list: '[' expr ']' + 615 | '[' ']' + 616 | dim_list '[' expr ']' + 617 | dim_list '[' ']' - 617 type_declaration_no_options: type_declaration_no_options_no_dim - 618 | type_declaration_no_options_no_dim dim_list + 618 type_declaration_no_options: type_declaration_no_options_no_dim + 619 | type_declaration_no_options_no_dim dim_list - 619 type_declaration_no_options_no_dim: basic_type_declaration - 620 | auto_type_declaration - 621 | bitfield_type_declaration - 622 | structure_type_declaration + 620 type_declaration_no_options_no_dim: basic_type_declaration + 621 | auto_type_declaration + 622 | bitfield_type_declaration + 623 | structure_type_declaration - 623 $@37: %empty + 624 $@37: %empty - 624 $@38: %empty + 625 $@38: %empty - 625 type_declaration_no_options_no_dim: "type" '<' $@37 type_declaration '>' $@38 - 626 | "typedecl" '(' expr ')' - 627 | '$' name_in_namespace '(' optional_expr_list ')' + 626 type_declaration_no_options_no_dim: "type" '<' $@37 type_declaration '>' $@38 + 627 | "typedecl" '(' expr ')' + 628 | '$' name_in_namespace '(' optional_expr_list ')' - 628 $@39: %empty + 629 $@39: %empty - 629 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' - 630 | type_declaration_no_options_no_dim '-' '[' ']' - 631 | type_declaration_no_options_no_dim "explicit" - 632 | type_declaration_no_options_no_dim "const" - 633 | type_declaration_no_options_no_dim '-' "const" - 634 | type_declaration_no_options_no_dim '&' - 635 | type_declaration_no_options_no_dim '-' '&' - 636 | type_declaration_no_options_no_dim '#' - 637 | type_declaration_no_options_no_dim "implicit" - 638 | type_declaration_no_options_no_dim '-' '#' - 639 | type_declaration_no_options_no_dim "==" "const" - 640 | type_declaration_no_options_no_dim "==" '&' - 641 | type_declaration_no_options_no_dim '*' + 630 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' + 631 | type_declaration_no_options_no_dim '-' '[' ']' + 632 | type_declaration_no_options_no_dim "explicit" + 633 | type_declaration_no_options_no_dim "const" + 634 | type_declaration_no_options_no_dim '-' "const" + 635 | type_declaration_no_options_no_dim '&' + 636 | type_declaration_no_options_no_dim '-' '&' + 637 | type_declaration_no_options_no_dim '#' + 638 | type_declaration_no_options_no_dim "implicit" + 639 | type_declaration_no_options_no_dim '-' '#' + 640 | type_declaration_no_options_no_dim "==" "const" + 641 | type_declaration_no_options_no_dim "==" '&' + 642 | type_declaration_no_options_no_dim '*' - 642 $@40: %empty + 643 $@40: %empty - 643 $@41: %empty + 644 $@41: %empty - 644 type_declaration_no_options_no_dim: "smart_ptr" '<' $@40 type_declaration '>' $@41 - 645 | type_declaration_no_options_no_dim "??" + 645 type_declaration_no_options_no_dim: "smart_ptr" '<' $@40 type_declaration '>' $@41 + 646 | type_declaration_no_options_no_dim "??" - 646 $@42: %empty + 647 $@42: %empty - 647 $@43: %empty + 648 $@43: %empty - 648 type_declaration_no_options_no_dim: "array" '<' $@42 type_declaration '>' $@43 + 649 type_declaration_no_options_no_dim: "array" '<' $@42 type_declaration '>' $@43 - 649 $@44: %empty + 650 $@44: %empty - 650 $@45: %empty + 651 $@45: %empty - 651 type_declaration_no_options_no_dim: "table" '<' $@44 table_type_pair '>' $@45 + 652 type_declaration_no_options_no_dim: "table" '<' $@44 table_type_pair '>' $@45 - 652 $@46: %empty + 653 $@46: %empty - 653 $@47: %empty + 654 $@47: %empty - 654 type_declaration_no_options_no_dim: "iterator" '<' $@46 type_declaration '>' $@47 - 655 | "block" + 655 type_declaration_no_options_no_dim: "iterator" '<' $@46 type_declaration '>' $@47 + 656 | "block" - 656 $@48: %empty + 657 $@48: %empty - 657 $@49: %empty + 658 $@49: %empty - 658 type_declaration_no_options_no_dim: "block" '<' $@48 type_declaration '>' $@49 + 659 type_declaration_no_options_no_dim: "block" '<' $@48 type_declaration '>' $@49 - 659 $@50: %empty + 660 $@50: %empty - 660 $@51: %empty + 661 $@51: %empty - 661 type_declaration_no_options_no_dim: "block" '<' $@50 optional_function_argument_list optional_function_type '>' $@51 - 662 | "function" + 662 type_declaration_no_options_no_dim: "block" '<' $@50 optional_function_argument_list optional_function_type '>' $@51 + 663 | "function" - 663 $@52: %empty + 664 $@52: %empty - 664 $@53: %empty + 665 $@53: %empty - 665 type_declaration_no_options_no_dim: "function" '<' $@52 type_declaration '>' $@53 + 666 type_declaration_no_options_no_dim: "function" '<' $@52 type_declaration '>' $@53 - 666 $@54: %empty + 667 $@54: %empty - 667 $@55: %empty + 668 $@55: %empty - 668 type_declaration_no_options_no_dim: "function" '<' $@54 optional_function_argument_list optional_function_type '>' $@55 - 669 | "lambda" + 669 type_declaration_no_options_no_dim: "function" '<' $@54 optional_function_argument_list optional_function_type '>' $@55 + 670 | "lambda" - 670 $@56: %empty + 671 $@56: %empty - 671 $@57: %empty + 672 $@57: %empty - 672 type_declaration_no_options_no_dim: "lambda" '<' $@56 type_declaration '>' $@57 + 673 type_declaration_no_options_no_dim: "lambda" '<' $@56 type_declaration '>' $@57 - 673 $@58: %empty + 674 $@58: %empty - 674 $@59: %empty + 675 $@59: %empty - 675 type_declaration_no_options_no_dim: "lambda" '<' $@58 optional_function_argument_list optional_function_type '>' $@59 + 676 type_declaration_no_options_no_dim: "lambda" '<' $@58 optional_function_argument_list optional_function_type '>' $@59 - 676 $@60: %empty + 677 $@60: %empty - 677 $@61: %empty + 678 $@61: %empty - 678 type_declaration_no_options_no_dim: "tuple" '<' $@60 tuple_type_list '>' $@61 + 679 type_declaration_no_options_no_dim: "tuple" '<' $@60 tuple_type_list '>' $@61 - 679 $@62: %empty + 680 $@62: %empty - 680 $@63: %empty + 681 $@63: %empty - 681 type_declaration_no_options_no_dim: "variant" '<' $@62 variant_type_list '>' $@63 + 682 type_declaration_no_options_no_dim: "variant" '<' $@62 variant_type_list '>' $@63 - 682 type_declaration: type_declaration_no_options - 683 | type_declaration '|' type_declaration_no_options - 684 | type_declaration '|' '#' + 683 type_declaration: type_declaration_no_options + 684 | type_declaration '|' type_declaration_no_options + 685 | type_declaration '|' '#' - 685 $@64: %empty + 686 $@64: %empty - 686 $@65: %empty + 687 $@65: %empty - 687 $@66: %empty + 688 $@66: %empty - 688 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" + 689 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" - 689 $@67: %empty + 690 $@67: %empty - 690 $@68: %empty + 691 $@68: %empty - 691 $@69: %empty + 692 $@69: %empty - 692 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" + 693 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" - 693 $@70: %empty + 694 $@70: %empty - 694 $@71: %empty + 695 $@71: %empty - 695 $@72: %empty + 696 $@72: %empty - 696 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" + 697 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" - 697 make_decl: make_struct_decl - 698 | make_dim_decl - 699 | make_table_decl - 700 | array_comprehension - 701 | make_tuple_call + 698 make_decl: make_struct_decl + 699 | make_dim_decl + 700 | make_table_decl + 701 | array_comprehension + 702 | make_tuple_call - 702 make_struct_fields: "name" copy_or_move expr - 703 | "name" ":=" expr - 704 | make_struct_fields ',' "name" copy_or_move expr - 705 | make_struct_fields ',' "name" ":=" expr - 706 | "$f" '(' expr ')' copy_or_move expr - 707 | "$f" '(' expr ')' ":=" expr - 708 | make_struct_fields ',' "$f" '(' expr ')' copy_or_move expr - 709 | make_struct_fields ',' "$f" '(' expr ')' ":=" expr + 703 make_struct_fields: "name" copy_or_move expr + 704 | "name" ":=" expr + 705 | make_struct_fields ',' "name" copy_or_move expr + 706 | make_struct_fields ',' "name" ":=" expr + 707 | "$f" '(' expr ')' copy_or_move expr + 708 | "$f" '(' expr ')' ":=" expr + 709 | make_struct_fields ',' "$f" '(' expr ')' copy_or_move expr + 710 | make_struct_fields ',' "$f" '(' expr ')' ":=" expr - 710 make_struct_single: make_struct_fields + 711 make_struct_single: make_struct_fields - 711 make_struct_dim: make_struct_fields - 712 | make_struct_dim "end of expression" make_struct_fields + 712 make_struct_dim: make_struct_fields + 713 | make_struct_dim "end of expression" make_struct_fields - 713 use_initializer: %empty - 714 | "uninitialized" + 714 use_initializer: %empty + 715 | "uninitialized" - 715 $@73: %empty + 716 $@73: %empty - 716 $@74: %empty + 717 $@74: %empty - 717 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' + 718 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' - 718 $@75: %empty + 719 $@75: %empty - 719 $@76: %empty + 720 $@76: %empty - 720 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' + 721 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' - 721 $@77: %empty + 722 $@77: %empty - 722 $@78: %empty + 723 $@78: %empty - 723 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim ')' + 724 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim ')' - 724 $@79: %empty + 725 $@79: %empty - 725 $@80: %empty + 726 $@80: %empty - 726 make_struct_decl: "default" '<' $@79 type_declaration_no_options '>' $@80 use_initializer + 727 make_struct_decl: "default" '<' $@79 type_declaration_no_options '>' $@80 use_initializer - 727 make_map_tuple: expr "=>" expr - 728 | expr + 728 make_map_tuple: expr "=>" expr + 729 | expr - 729 make_tuple_call: "tuple" '(' expr_list optional_comma ')' + 730 make_tuple_call: "tuple" '(' expr_list optional_comma ')' - 730 $@81: %empty + 731 $@81: %empty - 731 $@82: %empty + 732 $@82: %empty - 732 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' + 733 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' - 733 make_dim_decl: '[' expr_list optional_comma ']' + 734 make_dim_decl: '[' expr_list optional_comma ']' - 734 $@83: %empty + 735 $@83: %empty - 735 $@84: %empty + 736 $@84: %empty - 736 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' + 737 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' - 737 $@85: %empty + 738 $@85: %empty - 738 $@86: %empty + 739 $@86: %empty - 739 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' + 740 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' - 740 $@87: %empty + 741 $@87: %empty - 741 $@88: %empty + 742 $@88: %empty - 742 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' - 743 | "array" '(' expr_list optional_comma ')' + 743 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' + 744 | "array" '(' expr_list optional_comma ')' - 744 $@89: %empty + 745 $@89: %empty - 745 $@90: %empty + 746 $@90: %empty - 746 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' - 747 | "fixed_array" '(' expr_list optional_comma ')' + 747 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' + 748 | "fixed_array" '(' expr_list optional_comma ')' - 748 $@91: %empty + 749 $@91: %empty - 749 $@92: %empty + 750 $@92: %empty - 750 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' + 751 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' - 751 expr_map_tuple_list: make_map_tuple - 752 | expr_map_tuple_list ',' make_map_tuple + 752 expr_map_tuple_list: make_map_tuple + 753 | expr_map_tuple_list ',' make_map_tuple - 753 make_table_decl: "begin of code block" expr_map_tuple_list optional_comma "end of code block" - 754 | "table" '(' expr_map_tuple_list optional_comma ')' - 755 | "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - 756 | "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + 754 make_table_decl: "begin of code block" expr_map_tuple_list optional_comma "end of code block" + 755 | "table" '(' expr_map_tuple_list optional_comma ')' + 756 | "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + 757 | "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - 757 array_comprehension_where: %empty - 758 | "end of expression" "where" expr + 758 array_comprehension_where: %empty + 759 | "end of expression" "where" expr - 759 optional_comma: %empty - 760 | ',' + 760 optional_comma: %empty + 761 | ',' - 761 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - 762 | '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - 763 | "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" + 762 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 763 | '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 764 | "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" Terminals, with rules where they appear $end (0) 0 - '!' (33) 104 120 368 - '#' (35) 636 638 684 - '$' (36) 20 293 627 629 - '%' (37) 35 39 140 380 - '&' (38) 148 296 387 496 504 634 635 640 - '(' (40) 58 68 69 70 93 102 108 115 116 247 248 249 269 270 285 286 287 333 334 335 336 338 348 349 353 354 355 356 357 398 408 409 410 411 440 441 442 443 444 446 447 448 449 450 451 452 453 454 455 477 506 560 601 602 626 627 629 706 707 708 709 717 720 723 729 732 736 739 742 743 746 747 750 754 755 756 - ')' (41) 58 68 69 70 93 102 108 115 116 247 248 249 269 270 285 286 287 333 334 335 336 338 348 349 353 354 355 356 357 398 408 409 410 411 440 441 442 443 444 446 447 448 449 450 451 452 453 454 455 477 506 560 601 602 626 627 629 706 707 708 709 717 720 723 729 732 736 739 742 743 746 747 750 754 755 756 - '*' (42) 138 378 407 641 - '+' (43) 136 370 376 - ',' (44) 48 82 95 111 268 289 301 334 508 509 528 562 563 607 704 705 708 709 752 760 - '-' (45) 137 371 377 630 633 635 638 - '.' (46) 40 165 167 168 346 347 348 349 352 400 402 404 448 450 451 - '/' (47) 41 139 379 - ':' (58) 50 51 118 269 413 481 487 497 498 510 511 540 545 - "end of expression" (59) 15 16 69 214 215 216 223 224 225 229 230 231 238 258 269 270 287 471 473 479 483 485 486 489 491 492 510 511 512 534 604 612 712 756 758 761 762 763 - '<' (60) 141 245 275 278 281 284 286 287 342 345 381 410 411 416 422 427 610 625 629 644 648 651 654 658 661 665 668 672 675 678 681 717 720 723 726 732 736 739 742 746 750 755 756 - '=' (61) 74 86 87 88 89 90 91 93 297 315 493 500 525 533 - '>' (62) 142 245 275 278 281 284 286 287 342 345 382 410 411 416 422 427 610 625 629 644 648 651 654 658 661 665 668 672 675 678 681 717 720 723 726 732 736 739 742 746 750 755 756 - '?' (63) 177 178 413 424 427 428 453 - '@' (64) 96 97 294 295 339 342 345 455 - '[' (91) 113 163 303 333 334 399 400 613 614 615 616 630 733 761 762 - ']' (93) 113 163 164 303 333 334 399 400 401 402 613 614 615 616 630 733 761 762 - '^' (94) 150 389 - "begin of code block" (123) 211 212 306 521 543 555 688 692 696 753 763 - '|' (124) 149 388 683 684 - "end of code block" (125) 211 212 306 521 543 555 688 692 696 753 763 - '~' (126) 121 369 - error (256) 234 352 + '!' (33) 104 120 369 + '#' (35) 637 639 685 + '$' (36) 20 294 628 630 + '%' (37) 35 39 140 381 + '&' (38) 148 297 388 497 505 635 636 641 + '(' (40) 58 68 69 70 93 102 108 115 116 248 249 250 270 271 286 287 288 334 335 336 337 339 349 350 354 355 356 357 358 399 409 410 411 412 441 442 443 444 445 447 448 449 450 451 452 453 454 455 456 478 507 561 602 603 627 628 630 707 708 709 710 718 721 724 730 733 737 740 743 744 747 748 751 755 756 757 + ')' (41) 58 68 69 70 93 102 108 115 116 248 249 250 270 271 286 287 288 334 335 336 337 339 349 350 354 355 356 357 358 399 409 410 411 412 441 442 443 444 445 447 448 449 450 451 452 453 454 455 456 478 507 561 602 603 627 628 630 707 708 709 710 718 721 724 730 733 737 740 743 744 747 748 751 755 756 757 + '*' (42) 138 379 408 642 + '+' (43) 136 371 377 + ',' (44) 48 82 95 111 269 290 302 335 509 510 529 563 564 608 705 706 709 710 753 761 + '-' (45) 137 372 378 631 634 636 639 + '.' (46) 40 165 167 168 347 348 349 350 353 401 403 405 449 451 452 + '/' (47) 41 139 380 + ':' (58) 50 51 118 270 414 482 488 498 499 511 512 541 546 + "end of expression" (59) 15 16 69 214 215 216 223 224 225 229 230 231 238 259 270 271 288 472 474 480 484 486 487 490 492 493 511 512 513 535 605 613 713 757 759 762 763 764 + '<' (60) 141 246 276 279 282 285 287 288 343 346 382 411 412 417 423 428 611 626 630 645 649 652 655 659 662 666 669 673 676 679 682 718 721 724 727 733 737 740 743 747 751 756 757 + '=' (61) 74 86 87 88 89 90 91 93 298 316 494 501 526 534 + '>' (62) 142 246 276 279 282 285 287 288 343 346 383 411 412 417 423 428 611 626 630 645 649 652 655 659 662 666 669 673 676 679 682 718 721 724 727 733 737 740 743 747 751 756 757 + '?' (63) 177 178 414 425 428 429 454 + '@' (64) 96 97 295 296 340 343 346 456 + '[' (91) 113 163 304 334 335 400 401 614 615 616 617 631 734 762 763 + ']' (93) 113 163 164 304 334 335 400 401 402 403 614 615 616 617 631 734 762 763 + '^' (94) 150 390 + "begin of code block" (123) 211 212 307 522 544 556 689 693 697 754 764 + '|' (124) 149 389 684 685 + "end of code block" (125) 211 212 307 522 544 556 689 693 697 754 764 + '~' (126) 121 370 + error (256) 234 353 "lexer error" (258) - "struct" (259) 550 717 736 - "class" (260) 549 720 - "let" (261) 260 263 - "def" (262) 204 473 475 + "struct" (259) 551 718 737 + "class" (260) 550 721 + "let" (261) 261 264 + "def" (262) 204 474 476 "while" (263) 72 "if" (264) 59 69 "static_if" (265) 60 "else" (266) 57 62 - "for" (267) 70 761 762 763 - "recover" (268) 259 - "true" (269) 79 90 364 - "false" (270) 80 91 365 - "new" (271) 246 247 248 249 250 - "typeinfo" (272) 285 286 287 - "type" (273) 84 284 416 422 427 625 - "in" (274) 70 85 761 762 763 - "is" (275) 173 175 416 417 418 454 - "as" (276) 43 174 176 177 178 419 422 423 424 427 428 452 453 + "for" (267) 70 762 763 764 + "recover" (268) 260 + "true" (269) 79 90 365 + "false" (270) 80 91 366 + "new" (271) 247 248 249 250 251 + "typeinfo" (272) 286 287 288 + "type" (273) 84 285 417 423 428 626 + "in" (274) 70 85 762 763 764 + "is" (275) 173 175 417 418 419 455 + "as" (276) 43 174 176 177 178 420 423 424 425 428 429 453 454 "elif" (277) 54 "static_elif" (278) 55 - "array" (279) 648 736 739 742 743 746 - "return" (280) 253 254 255 - "null" (281) 358 - "break" (282) 251 - "try" (283) 259 + "array" (279) 649 737 740 743 744 747 + "return" (280) 254 255 256 + "null" (281) 359 + "break" (282) 252 + "try" (283) 260 "options" (284) 36 - "table" (285) 651 754 755 756 + "table" (285) 652 755 756 757 "expect" (286) 46 - "const" (287) 462 632 633 639 + "const" (287) 463 633 634 640 "require" (288) 37 99 "operator" (289) 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 - "enum" (290) 543 + "enum" (290) 544 "finally" (291) 212 - "delete" (292) 171 241 242 - "deref" (293) 408 - "typedef" (294) 534 - "typedecl" (295) 626 + "delete" (292) 171 242 243 + "deref" (293) 409 + "typedef" (294) 535 + "typedecl" (295) 627 "with" (296) 73 - "aka" (297) 507 509 561 563 + "aka" (297) 508 510 562 564 "assume" (298) 74 - "cast" (299) 275 - "override" (300) 459 - "abstract" (301) 473 - "upcast" (302) 278 - "iterator" (303) 654 762 - "var" (304) 261 264 - "addr" (305) 409 - "continue" (306) 252 - "where" (307) 758 + "cast" (299) 276 + "override" (300) 460 + "abstract" (301) 474 + "upcast" (302) 279 + "iterator" (303) 655 763 + "var" (304) 262 265 + "addr" (305) 410 + "continue" (306) 253 + "where" (307) 759 "pass" (308) 231 - "reinterpret" (309) 281 + "reinterpret" (309) 282 "module" (310) 22 - "public" (311) 18 45 207 464 520 531 537 553 + "public" (311) 18 45 207 465 521 532 538 554 "label" (312) 51 52 "goto" (313) 52 53 - "implicit" (314) 637 - "explicit" (315) 242 631 - "shared" (316) 517 - "private" (317) 19 100 206 465 519 530 536 552 - "smart_ptr" (318) 644 + "implicit" (314) 638 + "explicit" (315) 243 632 + "shared" (316) 518 + "private" (317) 19 100 206 466 520 531 537 553 + "smart_ptr" (318) 645 "unsafe" (319) 71 - "inscope" (320) 265 - "static" (321) 467 - "fixed_array" (322) 747 750 - "default" (323) 726 - "uninitialized" (324) 714 - "bool" (325) 179 564 - "void" (326) 584 - "string" (327) 180 565 - "auto" (328) 600 601 - "int" (329) 181 566 591 - "int2" (330) 182 570 - "int3" (331) 183 571 - "int4" (332) 184 572 - "uint" (333) 185 573 594 - "bitfield" (334) 590 610 696 - "uint2" (335) 186 577 - "uint3" (336) 187 578 - "uint4" (337) 188 579 - "float" (338) 189 580 - "float2" (339) 190 581 - "float3" (340) 191 582 - "float4" (341) 192 583 - "range" (342) 193 585 - "urange" (343) 194 586 - "range64" (344) 195 587 - "urange64" (345) 196 588 - "block" (346) 655 658 661 - "int64" (347) 197 569 597 - "uint64" (348) 198 576 598 - "double" (349) 199 589 - "function" (350) 662 665 668 - "lambda" (351) 669 672 675 - "int8" (352) 200 567 592 - "uint8" (353) 201 574 595 - "int16" (354) 202 568 593 - "uint16" (355) 203 575 596 - "tuple" (356) 678 688 729 732 739 - "variant" (357) 681 692 723 742 - "generator" (358) 410 411 - "yield" (359) 256 257 - "sealed" (360) 460 547 - "+=" (361) 122 324 - "-=" (362) 123 325 - "/=" (363) 125 327 - "*=" (364) 124 326 - "%=" (365) 126 328 - "&=" (366) 127 318 - "|=" (367) 128 319 - "^=" (368) 129 320 - "<<" (369) 155 372 - ">>" (370) 156 373 - "++" (371) 151 153 394 396 - "--" (372) 152 154 395 397 - "<=" (373) 146 385 - "<<=" (374) 157 329 - ">>=" (375) 158 330 - ">=" (376) 147 386 - "==" (377) 144 383 639 640 - "!=" (378) 145 384 - "->" (379) 335 336 - "<-" (380) 255 257 292 298 316 494 501 - "??" (381) 172 412 645 - "?." (382) 166 169 403 404 449 451 - "?[" (383) 164 401 402 - "<|" (384) 436 - "|>" (385) 109 437 438 - ":=" (386) 168 170 299 317 502 703 705 707 709 - "<<<" (387) 159 374 - ">>>" (388) 160 375 - "<<<=" (389) 161 331 - ">>>=" (390) 162 332 - "=>" (391) 291 292 727 - "::" (392) 240 - "&&" (393) 105 133 390 - "||" (394) 106 134 391 - "^^" (395) 107 135 392 - "&&=" (396) 130 321 - "||=" (397) 131 322 - "^^=" (398) 132 323 - ".." (399) 143 393 - "$$" (400) 440 - "$i" (401) 338 441 506 560 - "$v" (402) 442 - "$b" (403) 443 - "$a" (404) 444 477 - "$t" (405) 602 - "$c" (406) 446 447 455 - "$f" (407) 448 449 450 451 452 453 454 706 707 708 709 - "..." (408) 445 - "integer constant" (409) 49 50 51 52 77 88 307 - "long integer constant" (410) 309 - "unsigned integer constant" (411) 308 - "unsigned long integer constant" (412) 310 - "unsigned int8 constant" (413) 311 - "floating point constant" (414) 78 89 312 - "double constant" (415) 313 - "name" (416) 21 38 40 41 43 74 76 83 87 119 167 168 169 175 176 178 239 240 267 268 286 287 296 297 298 299 335 336 346 347 348 349 403 404 418 419 424 481 487 505 507 508 509 524 525 533 538 548 559 561 562 563 601 603 604 606 607 688 692 696 702 703 704 705 + "inscope" (320) 266 + "static" (321) 468 + "fixed_array" (322) 748 751 + "default" (323) 727 + "uninitialized" (324) 715 + "bool" (325) 179 565 + "void" (326) 585 + "string" (327) 180 566 + "auto" (328) 601 602 + "int" (329) 181 567 592 + "int2" (330) 182 571 + "int3" (331) 183 572 + "int4" (332) 184 573 + "uint" (333) 185 574 595 + "bitfield" (334) 591 611 697 + "uint2" (335) 186 578 + "uint3" (336) 187 579 + "uint4" (337) 188 580 + "float" (338) 189 581 + "float2" (339) 190 582 + "float3" (340) 191 583 + "float4" (341) 192 584 + "range" (342) 193 586 + "urange" (343) 194 587 + "range64" (344) 195 588 + "urange64" (345) 196 589 + "block" (346) 656 659 662 + "int64" (347) 197 570 598 + "uint64" (348) 198 577 599 + "double" (349) 199 590 + "function" (350) 663 666 669 + "lambda" (351) 670 673 676 + "int8" (352) 200 568 593 + "uint8" (353) 201 575 596 + "int16" (354) 202 569 594 + "uint16" (355) 203 576 597 + "tuple" (356) 679 689 730 733 740 + "variant" (357) 682 693 724 743 + "generator" (358) 411 412 + "yield" (359) 257 258 + "sealed" (360) 461 548 + "+=" (361) 122 325 + "-=" (362) 123 326 + "/=" (363) 125 328 + "*=" (364) 124 327 + "%=" (365) 126 329 + "&=" (366) 127 319 + "|=" (367) 128 320 + "^=" (368) 129 321 + "<<" (369) 155 373 + ">>" (370) 156 374 + "++" (371) 151 153 395 397 + "--" (372) 152 154 396 398 + "<=" (373) 146 386 + "<<=" (374) 157 330 + ">>=" (375) 158 331 + ">=" (376) 147 387 + "==" (377) 144 384 640 641 + "!=" (378) 145 385 + "->" (379) 336 337 + "<-" (380) 256 258 293 299 317 495 502 + "??" (381) 172 413 646 + "?." (382) 166 169 404 405 450 452 + "?[" (383) 164 402 403 + "<|" (384) 437 + "|>" (385) 109 438 439 + ":=" (386) 168 170 300 318 503 704 706 708 710 + "<<<" (387) 159 375 + ">>>" (388) 160 376 + "<<<=" (389) 161 332 + ">>>=" (390) 162 333 + "=>" (391) 292 293 728 + "::" (392) 240 241 + "&&" (393) 105 133 391 + "||" (394) 106 134 392 + "^^" (395) 107 135 393 + "&&=" (396) 130 322 + "||=" (397) 131 323 + "^^=" (398) 132 324 + ".." (399) 143 394 + "$$" (400) 441 + "$i" (401) 339 442 507 561 + "$v" (402) 443 + "$b" (403) 444 + "$a" (404) 445 478 + "$t" (405) 603 + "$c" (406) 447 448 456 + "$f" (407) 449 450 451 452 453 454 455 707 708 709 710 + "..." (408) 446 + "integer constant" (409) 49 50 51 52 77 88 308 + "long integer constant" (410) 310 + "unsigned integer constant" (411) 309 + "unsigned long integer constant" (412) 311 + "unsigned int8 constant" (413) 312 + "floating point constant" (414) 78 89 313 + "double constant" (415) 314 + "name" (416) 21 38 40 41 43 74 76 83 87 119 167 168 169 175 176 178 239 240 241 268 269 287 288 297 298 299 300 336 337 347 348 349 350 404 405 419 420 425 482 488 506 508 509 510 525 526 534 539 549 560 562 563 564 602 604 605 607 608 689 693 697 703 704 705 706 "start of the string" (417) 27 31 STRING_CHARACTER (418) 23 25 32 33 STRING_CHARACTER_ESC (419) 24 26 @@ -1321,13 +1323,13 @@ Nonterminals, with rules where they appear on right: 29 30 31 string_builder (218) on left: 31 - on right: 362 + on right: 363 reader_character_sequence (219) on left: 32 33 on right: 33 35 expr_reader (220) on left: 35 - on right: 16 361 + on right: 16 362 $@1 (221) on left: 34 on right: 35 @@ -1411,7 +1413,7 @@ Nonterminals, with rules where they appear on right: 36 95 102 metadata_argument_list (248) on left: 96 97 - on right: 97 457 + on right: 97 458 annotation_declaration_name (249) on left: 98 99 100 on right: 101 102 @@ -1426,13 +1428,13 @@ Nonterminals, with rules where they appear on right: 111 113 optional_annotation_list (253) on left: 112 113 - on right: 204 304 305 473 475 543 558 + on right: 204 305 306 474 476 544 559 optional_function_argument_list (254) on left: 114 115 116 - on right: 208 304 305 345 661 668 675 + on right: 208 305 306 346 662 669 676 optional_function_type (255) on left: 117 118 - on right: 208 304 305 345 661 668 675 + on right: 208 305 306 346 662 669 676 function_name (256) on left: 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 on right: 208 @@ -1444,7 +1446,7 @@ Nonterminals, with rules where they appear on right: 210 function_declaration_header (259) on left: 208 - on right: 210 473 475 + on right: 210 474 476 function_declaration (260) on left: 210 on right: 204 @@ -1453,616 +1455,616 @@ Nonterminals, with rules where they appear on right: 210 expression_block (262) on left: 211 212 - on right: 57 58 68 70 71 72 73 210 259 290 305 475 + on right: 57 58 68 70 71 72 73 210 260 291 306 476 expr_call_pipe (263) on left: 213 - on right: 439 + on right: 440 expression_any (264) on left: 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 on right: 233 expressions (265) on left: 232 233 234 - on right: 211 212 233 234 306 + on right: 211 212 233 234 307 optional_expr_list (266) on left: 235 236 - on right: 247 627 629 + on right: 248 628 630 type_declaration_no_options_list (267) on left: 237 238 - on right: 238 629 + on right: 238 630 name_in_namespace (268) - on left: 239 240 - on right: 35 98 285 286 287 333 334 337 353 354 355 359 545 599 627 629 + on left: 239 240 241 + on right: 35 98 286 287 288 334 335 338 354 355 356 360 546 600 628 630 expression_delete (269) - on left: 241 242 + on left: 242 243 on right: 216 new_type_declaration (270) - on left: 245 - on right: 248 249 + on left: 246 + on right: 249 250 $@3 (271) - on left: 243 - on right: 245 - $@4 (272) on left: 244 - on right: 245 + on right: 246 + $@4 (272) + on left: 245 + on right: 246 expr_new (273) - on left: 246 247 248 249 250 - on right: 432 + on left: 247 248 249 250 251 + on right: 433 expression_break (274) - on left: 251 + on left: 252 on right: 66 223 expression_continue (275) - on left: 252 + on left: 253 on right: 67 224 expression_return (276) - on left: 253 254 255 + on left: 254 255 256 on right: 64 225 expression_yield_no_pipe (277) - on left: 256 257 - on right: 65 258 + on left: 257 258 + on right: 65 259 expression_yield (278) - on left: 258 + on left: 259 on right: 226 expression_try_catch (279) - on left: 259 + on left: 260 on right: 228 kwd_let_var_or_nothing (280) - on left: 260 261 262 - on right: 476 + on left: 261 262 263 + on right: 477 kwd_let (281) - on left: 263 264 - on right: 271 272 521 523 + on left: 264 265 + on right: 272 273 522 524 optional_in_scope (282) - on left: 265 266 - on right: 271 272 + on left: 266 267 + on right: 272 273 tuple_expansion (283) - on left: 267 268 - on right: 268 269 270 + on left: 268 269 + on right: 269 270 271 tuple_expansion_variable_declaration (284) - on left: 269 270 - on right: 272 + on left: 270 271 + on right: 273 expression_let (285) - on left: 271 272 + on left: 272 273 on right: 217 expr_cast (286) - on left: 275 278 281 - on right: 431 + on left: 276 279 282 + on right: 432 $@5 (287) - on left: 273 - on right: 275 - $@6 (288) on left: 274 - on right: 275 + on right: 276 + $@6 (288) + on left: 275 + on right: 276 $@7 (289) - on left: 276 - on right: 278 - $@8 (290) on left: 277 - on right: 278 + on right: 279 + $@8 (290) + on left: 278 + on right: 279 $@9 (291) - on left: 279 - on right: 281 - $@10 (292) on left: 280 - on right: 281 + on right: 282 + $@10 (292) + on left: 281 + on right: 282 expr_type_decl (293) - on left: 284 - on right: 430 + on left: 285 + on right: 431 $@11 (294) - on left: 282 - on right: 284 - $@12 (295) on left: 283 - on right: 284 + on right: 285 + $@12 (295) + on left: 284 + on right: 285 expr_type_info (296) - on left: 285 286 287 - on right: 429 + on left: 286 287 288 + on right: 430 expr_list (297) - on left: 288 289 - on right: 70 236 289 334 336 349 355 357 398 447 729 733 743 746 747 750 761 762 763 + on left: 289 290 + on right: 70 236 290 335 337 350 356 358 399 448 730 734 744 747 748 751 762 763 764 block_or_simple_block (298) - on left: 290 291 292 - on right: 304 + on left: 291 292 293 + on right: 305 block_or_lambda (299) - on left: 293 294 295 - on right: 304 305 + on left: 294 295 296 + on right: 305 306 capture_entry (300) - on left: 296 297 298 299 - on right: 300 301 + on left: 297 298 299 300 + on right: 301 302 capture_list (301) - on left: 300 301 - on right: 301 303 + on left: 301 302 + on right: 302 304 optional_capture_list (302) - on left: 302 303 - on right: 304 305 410 411 + on left: 303 304 + on right: 305 306 411 412 expr_full_block (303) - on left: 304 - on right: 435 + on left: 305 + on right: 436 expr_full_block_assumed_piped (304) - on left: 305 306 + on left: 306 307 on right: 213 expr_numeric_const (305) - on left: 307 308 309 310 311 312 313 - on right: 360 + on left: 308 309 310 311 312 313 314 + on right: 361 expr_assign (306) - on left: 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 + on left: 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 on right: 215 expr_named_call (307) - on left: 333 334 - on right: 434 + on left: 334 335 + on right: 435 expr_method_call (308) - on left: 335 336 - on right: 433 + on left: 336 337 + on right: 434 func_addr_name (309) - on left: 337 338 - on right: 339 342 345 + on left: 338 339 + on right: 340 343 346 func_addr_expr (310) - on left: 339 342 345 - on right: 405 + on left: 340 343 346 + on right: 406 $@13 (311) - on left: 340 - on right: 342 - $@14 (312) on left: 341 - on right: 342 + on right: 343 + $@14 (312) + on left: 342 + on right: 343 $@15 (313) - on left: 343 - on right: 345 - $@16 (314) on left: 344 - on right: 345 + on right: 346 + $@16 (314) + on left: 345 + on right: 346 expr_field (315) - on left: 346 347 348 349 352 - on right: 366 + on left: 347 348 349 350 353 + on right: 367 $@17 (316) - on left: 350 - on right: 352 - $@18 (317) on left: 351 - on right: 352 + on right: 353 + $@18 (317) + on left: 352 + on right: 353 expr_call (318) - on left: 353 354 355 356 357 - on right: 213 406 + on left: 354 355 356 357 358 + on right: 213 407 expr (319) - on left: 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 416 417 418 419 422 423 424 427 428 429 430 431 432 433 434 435 436 437 438 439 - on right: 30 53 58 63 68 69 72 73 74 241 242 254 255 256 257 269 270 275 278 281 285 286 287 288 289 291 292 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 335 336 338 346 347 348 349 352 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 399 400 401 402 403 404 407 408 409 411 412 413 416 417 418 419 422 423 424 427 428 436 437 438 440 441 442 443 444 446 447 448 449 450 451 452 453 454 455 477 498 499 506 511 512 525 560 602 613 615 626 702 703 704 705 706 707 708 709 727 728 758 761 762 + on left: 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 417 418 419 420 423 424 425 428 429 430 431 432 433 434 435 436 437 438 439 440 + on right: 30 53 58 63 68 69 72 73 74 242 243 255 256 257 258 270 271 276 279 282 286 287 288 289 290 292 293 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 336 337 339 347 348 349 350 353 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 400 401 402 403 404 405 408 409 410 412 413 414 417 418 419 420 423 424 425 428 429 437 438 439 441 442 443 444 445 447 448 449 450 451 452 453 454 455 456 478 499 500 507 512 513 526 561 603 614 616 627 703 704 705 706 707 708 709 710 728 729 759 762 763 $@19 (320) - on left: 414 - on right: 416 - $@20 (321) on left: 415 - on right: 416 + on right: 417 + $@20 (321) + on left: 416 + on right: 417 $@21 (322) - on left: 420 - on right: 422 - $@22 (323) on left: 421 - on right: 422 + on right: 423 + $@22 (323) + on left: 422 + on right: 423 $@23 (324) - on left: 425 - on right: 427 - $@24 (325) on left: 426 - on right: 427 + on right: 428 + $@24 (325) + on left: 427 + on right: 428 expr_mtag (326) - on left: 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 - on right: 367 + on left: 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 + on right: 368 optional_field_annotation (327) - on left: 456 457 - on right: 468 476 515 523 + on left: 457 458 + on right: 469 477 516 524 optional_override (328) - on left: 458 459 460 - on right: 468 475 + on left: 459 460 461 + on right: 469 476 optional_constant (329) - on left: 461 462 - on right: 473 475 + on left: 462 463 + on right: 474 476 optional_public_or_private_member_variable (330) - on left: 463 464 465 - on right: 468 473 475 + on left: 464 465 466 + on right: 469 474 476 optional_static_member_variable (331) - on left: 466 467 - on right: 468 475 + on left: 467 468 + on right: 469 476 structure_variable_declaration (332) - on left: 468 - on right: 471 + on left: 469 + on right: 472 struct_variable_declaration_list (333) - on left: 469 471 473 475 - on right: 471 473 475 555 + on left: 470 472 474 476 + on right: 472 474 476 556 $@25 (334) - on left: 470 - on right: 471 + on left: 471 + on right: 472 $@26 (335) - on left: 472 - on right: 473 + on left: 473 + on right: 474 $@27 (336) - on left: 474 - on right: 475 + on left: 475 + on right: 476 function_argument_declaration (337) - on left: 476 477 - on right: 478 479 + on left: 477 478 + on right: 479 480 function_argument_list (338) - on left: 478 479 - on right: 116 479 + on left: 479 480 + on right: 116 480 tuple_type (339) - on left: 480 481 - on right: 482 483 486 + on left: 481 482 + on right: 483 484 487 tuple_type_list (340) - on left: 482 483 - on right: 483 678 + on left: 483 484 + on right: 484 679 tuple_alias_type_list (341) - on left: 484 485 486 - on right: 485 486 688 + on left: 485 486 487 + on right: 486 487 689 variant_type (342) - on left: 487 - on right: 488 489 492 + on left: 488 + on right: 489 490 493 variant_type_list (343) - on left: 488 489 - on right: 489 681 + on left: 489 490 + on right: 490 682 variant_alias_type_list (344) - on left: 490 491 492 - on right: 491 492 692 + on left: 491 492 493 + on right: 492 493 693 copy_or_move (345) - on left: 493 494 - on right: 498 499 702 704 706 708 + on left: 494 495 + on right: 499 500 703 705 707 709 variable_declaration (346) - on left: 495 496 497 498 499 - on right: 468 476 + on left: 496 497 498 499 500 + on right: 469 477 copy_or_move_or_clone (347) - on left: 500 501 502 - on right: 269 270 511 512 + on left: 501 502 503 + on right: 270 271 512 513 optional_ref (348) - on left: 503 504 - on right: 270 512 + on left: 504 505 + on right: 271 513 let_variable_name_with_pos_list (349) - on left: 505 506 507 508 509 - on right: 508 509 510 511 512 + on left: 506 507 508 509 510 + on right: 509 510 511 512 513 let_variable_declaration (350) - on left: 510 511 512 - on right: 271 515 523 + on left: 511 512 513 + on right: 272 516 524 global_variable_declaration_list (351) - on left: 513 515 - on right: 515 521 + on left: 514 516 + on right: 516 522 $@28 (352) - on left: 514 - on right: 515 + on left: 515 + on right: 516 optional_shared (353) - on left: 516 517 - on right: 22 521 523 + on left: 517 518 + on right: 22 522 524 optional_public_or_private_variable (354) - on left: 518 519 520 - on right: 521 523 + on left: 519 520 521 + on right: 522 524 global_let (355) - on left: 521 523 + on left: 522 524 on right: 5 $@29 (356) - on left: 522 - on right: 523 + on left: 523 + on right: 524 enum_expression (357) - on left: 524 525 - on right: 527 528 + on left: 525 526 + on right: 528 529 enum_list (358) - on left: 526 527 528 - on right: 528 543 + on left: 527 528 529 + on right: 529 544 optional_public_or_private_alias (359) - on left: 529 530 531 - on right: 533 688 692 696 + on left: 530 531 532 + on right: 534 689 693 697 single_alias (360) + on left: 534 + on right: 535 + $@30 (361) on left: 533 on right: 534 - $@30 (361) - on left: 532 - on right: 533 alias_declaration (362) - on left: 534 + on left: 535 on right: 10 optional_public_or_private_enum (363) - on left: 535 536 537 - on right: 543 + on left: 536 537 538 + on right: 544 enum_name (364) - on left: 538 - on right: 543 + on left: 539 + on right: 544 optional_enum_basic_type_declaration (365) - on left: 539 540 - on right: 543 + on left: 540 541 + on right: 544 enum_declaration (366) - on left: 543 + on left: 544 on right: 4 $@31 (367) - on left: 541 - on right: 543 - $@32 (368) on left: 542 - on right: 543 + on right: 544 + $@32 (368) + on left: 543 + on right: 544 optional_structure_parent (369) - on left: 544 545 - on right: 548 + on left: 545 546 + on right: 549 optional_sealed (370) - on left: 546 547 - on right: 548 + on left: 547 548 + on right: 549 structure_name (371) - on left: 548 - on right: 558 + on left: 549 + on right: 559 class_or_struct (372) - on left: 549 550 - on right: 558 + on left: 550 551 + on right: 559 optional_public_or_private_structure (373) - on left: 551 552 553 - on right: 558 + on left: 552 553 554 + on right: 559 optional_struct_variable_declaration_list (374) - on left: 554 555 - on right: 558 + on left: 555 556 + on right: 559 structure_declaration (375) - on left: 558 + on left: 559 on right: 3 $@33 (376) - on left: 556 - on right: 558 - $@34 (377) on left: 557 - on right: 558 + on right: 559 + $@34 (377) + on left: 558 + on right: 559 variable_name_with_pos_list (378) - on left: 559 560 561 562 563 - on right: 70 495 496 497 498 499 562 563 761 762 763 + on left: 560 561 562 563 564 + on right: 70 496 497 498 499 500 563 564 762 763 764 basic_type_declaration (379) - on left: 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 - on right: 356 357 417 423 428 438 619 + on left: 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 + on right: 357 358 418 424 429 439 620 enum_basic_type_declaration (380) - on left: 591 592 593 594 595 596 597 598 - on right: 540 + on left: 592 593 594 595 596 597 598 599 + on right: 541 structure_type_declaration (381) - on left: 599 - on right: 246 247 622 + on left: 600 + on right: 247 248 623 auto_type_declaration (382) - on left: 600 601 602 - on right: 620 + on left: 601 602 603 + on right: 621 bitfield_bits (383) - on left: 603 604 - on right: 604 610 + on left: 604 605 + on right: 605 611 bitfield_alias_bits (384) - on left: 605 606 607 - on right: 607 696 + on left: 606 607 608 + on right: 608 697 bitfield_type_declaration (385) - on left: 610 - on right: 621 + on left: 611 + on right: 622 $@35 (386) - on left: 608 - on right: 610 - $@36 (387) on left: 609 - on right: 610 + on right: 611 + $@36 (387) + on left: 610 + on right: 611 table_type_pair (388) - on left: 611 612 - on right: 651 + on left: 612 613 + on right: 652 dim_list (389) - on left: 613 614 615 616 - on right: 615 616 618 + on left: 614 615 616 617 + on right: 616 617 619 type_declaration_no_options (390) - on left: 617 618 - on right: 269 275 278 281 342 410 411 416 510 511 682 683 717 720 723 726 732 736 739 742 746 750 755 756 + on left: 618 619 + on right: 270 276 279 282 343 411 412 417 511 512 683 684 718 721 724 727 733 737 740 743 747 751 756 757 type_declaration_no_options_no_dim (391) - on left: 619 620 621 622 625 626 627 629 630 631 632 633 634 635 636 637 638 639 640 641 644 645 648 651 654 655 658 661 662 665 668 669 672 675 678 681 - on right: 617 618 630 631 632 633 634 635 636 637 638 639 640 641 645 + on left: 620 621 622 623 626 627 628 630 631 632 633 634 635 636 637 638 639 640 641 642 645 646 649 652 655 656 659 662 663 666 669 670 673 676 679 682 + on right: 618 619 631 632 633 634 635 636 637 638 639 640 641 642 646 $@37 (392) - on left: 623 - on right: 625 - $@38 (393) on left: 624 - on right: 625 + on right: 626 + $@38 (393) + on left: 625 + on right: 626 $@39 (394) - on left: 628 - on right: 629 + on left: 629 + on right: 630 $@40 (395) - on left: 642 - on right: 644 - $@41 (396) on left: 643 - on right: 644 + on right: 645 + $@41 (396) + on left: 644 + on right: 645 $@42 (397) - on left: 646 - on right: 648 - $@43 (398) on left: 647 - on right: 648 + on right: 649 + $@43 (398) + on left: 648 + on right: 649 $@44 (399) - on left: 649 - on right: 651 - $@45 (400) on left: 650 - on right: 651 + on right: 652 + $@45 (400) + on left: 651 + on right: 652 $@46 (401) - on left: 652 - on right: 654 - $@47 (402) on left: 653 - on right: 654 + on right: 655 + $@47 (402) + on left: 654 + on right: 655 $@48 (403) - on left: 656 - on right: 658 - $@49 (404) on left: 657 - on right: 658 + on right: 659 + $@49 (404) + on left: 658 + on right: 659 $@50 (405) - on left: 659 - on right: 661 - $@51 (406) on left: 660 - on right: 661 + on right: 662 + $@51 (406) + on left: 661 + on right: 662 $@52 (407) - on left: 663 - on right: 665 - $@53 (408) on left: 664 - on right: 665 + on right: 666 + $@53 (408) + on left: 665 + on right: 666 $@54 (409) - on left: 666 - on right: 668 - $@55 (410) on left: 667 - on right: 668 + on right: 669 + $@55 (410) + on left: 668 + on right: 669 $@56 (411) - on left: 670 - on right: 672 - $@57 (412) on left: 671 - on right: 672 + on right: 673 + $@57 (412) + on left: 672 + on right: 673 $@58 (413) - on left: 673 - on right: 675 - $@59 (414) on left: 674 - on right: 675 + on right: 676 + $@59 (414) + on left: 675 + on right: 676 $@60 (415) - on left: 676 - on right: 678 - $@61 (416) on left: 677 - on right: 678 + on right: 679 + $@61 (416) + on left: 678 + on right: 679 $@62 (417) - on left: 679 - on right: 681 - $@63 (418) on left: 680 - on right: 681 + on right: 682 + $@63 (418) + on left: 681 + on right: 682 type_declaration (419) - on left: 682 683 684 - on right: 118 237 238 245 284 422 427 480 481 487 497 498 533 611 612 625 644 648 654 658 665 672 683 684 + on left: 683 684 685 + on right: 118 237 238 246 285 423 428 481 482 488 498 499 534 612 613 626 645 649 655 659 666 673 684 685 tuple_alias_declaration (420) - on left: 688 + on left: 689 on right: 12 $@64 (421) - on left: 685 - on right: 688 - $@65 (422) on left: 686 - on right: 688 - $@66 (423) + on right: 689 + $@65 (422) on left: 687 - on right: 688 + on right: 689 + $@66 (423) + on left: 688 + on right: 689 variant_alias_declaration (424) - on left: 692 + on left: 693 on right: 11 $@67 (425) - on left: 689 - on right: 692 - $@68 (426) on left: 690 - on right: 692 - $@69 (427) + on right: 693 + $@68 (426) on left: 691 - on right: 692 + on right: 693 + $@69 (427) + on left: 692 + on right: 693 bitfield_alias_declaration (428) - on left: 696 + on left: 697 on right: 13 $@70 (429) - on left: 693 - on right: 696 - $@71 (430) on left: 694 - on right: 696 - $@72 (431) + on right: 697 + $@71 (430) on left: 695 - on right: 696 + on right: 697 + $@72 (431) + on left: 696 + on right: 697 make_decl (432) - on left: 697 698 699 700 701 - on right: 250 363 + on left: 698 699 700 701 702 + on right: 251 364 make_struct_fields (433) - on left: 702 703 704 705 706 707 708 709 - on right: 333 334 704 705 708 709 710 711 712 + on left: 703 704 705 706 707 708 709 710 + on right: 334 335 705 706 709 710 711 712 713 make_struct_single (434) - on left: 710 - on right: 249 354 + on left: 711 + on right: 250 355 make_struct_dim (435) - on left: 711 712 - on right: 712 717 720 723 732 736 739 742 + on left: 712 713 + on right: 713 718 721 724 733 737 740 743 use_initializer (436) - on left: 713 714 - on right: 248 249 717 720 726 732 736 739 + on left: 714 715 + on right: 249 250 718 721 727 733 737 740 make_struct_decl (437) - on left: 717 720 723 726 - on right: 697 + on left: 718 721 724 727 + on right: 698 $@73 (438) - on left: 715 - on right: 717 - $@74 (439) on left: 716 - on right: 717 + on right: 718 + $@74 (439) + on left: 717 + on right: 718 $@75 (440) - on left: 718 - on right: 720 - $@76 (441) on left: 719 - on right: 720 + on right: 721 + $@76 (441) + on left: 720 + on right: 721 $@77 (442) - on left: 721 - on right: 723 - $@78 (443) on left: 722 - on right: 723 + on right: 724 + $@78 (443) + on left: 723 + on right: 724 $@79 (444) - on left: 724 - on right: 726 - $@80 (445) on left: 725 - on right: 726 + on right: 727 + $@80 (445) + on left: 726 + on right: 727 make_map_tuple (446) - on left: 727 728 - on right: 751 752 763 + on left: 728 729 + on right: 752 753 764 make_tuple_call (447) - on left: 729 732 - on right: 701 + on left: 730 733 + on right: 702 $@81 (448) - on left: 730 - on right: 732 - $@82 (449) on left: 731 - on right: 732 + on right: 733 + $@82 (449) + on left: 732 + on right: 733 make_dim_decl (450) - on left: 733 736 739 742 743 746 747 750 - on right: 698 + on left: 734 737 740 743 744 747 748 751 + on right: 699 $@83 (451) - on left: 734 - on right: 736 - $@84 (452) on left: 735 - on right: 736 + on right: 737 + $@84 (452) + on left: 736 + on right: 737 $@85 (453) - on left: 737 - on right: 739 - $@86 (454) on left: 738 - on right: 739 + on right: 740 + $@86 (454) + on left: 739 + on right: 740 $@87 (455) - on left: 740 - on right: 742 - $@88 (456) on left: 741 - on right: 742 + on right: 743 + $@88 (456) + on left: 742 + on right: 743 $@89 (457) - on left: 744 - on right: 746 - $@90 (458) on left: 745 - on right: 746 + on right: 747 + $@90 (458) + on left: 746 + on right: 747 $@91 (459) - on left: 748 - on right: 750 - $@92 (460) on left: 749 - on right: 750 + on right: 751 + $@92 (460) + on left: 750 + on right: 751 expr_map_tuple_list (461) - on left: 751 752 - on right: 752 753 754 755 756 + on left: 752 753 + on right: 753 754 755 756 757 make_table_decl (462) - on left: 753 754 755 756 - on right: 699 + on left: 754 755 756 757 + on right: 700 array_comprehension_where (463) - on left: 757 758 - on right: 761 762 763 + on left: 758 759 + on right: 762 763 764 optional_comma (464) - on left: 759 760 - on right: 398 543 696 729 733 743 746 747 750 753 754 755 756 + on left: 760 761 + on right: 399 544 697 730 734 744 747 748 751 754 755 756 757 array_comprehension (465) - on left: 761 762 763 - on right: 700 + on left: 762 763 764 + on right: 701 State 0 @@ -2136,9 +2138,9 @@ State 2 State 3 - 263 kwd_let: "let" . + 264 kwd_let: "let" . - $default reduce using rule 263 (kwd_let) + $default reduce using rule 264 (kwd_let) State 4 @@ -2177,12 +2179,12 @@ State 6 State 7 - 534 alias_declaration: "typedef" . single_alias "end of expression" + 535 alias_declaration: "typedef" . single_alias "end of expression" "public" shift, and go to state 45 "private" shift, and go to state 46 - $default reduce using rule 529 (optional_public_or_private_alias) + $default reduce using rule 530 (optional_public_or_private_alias) optional_public_or_private_alias go to state 47 single_alias go to state 48 @@ -2190,9 +2192,9 @@ State 7 State 8 - 264 kwd_let: "var" . + 265 kwd_let: "var" . - $default reduce using rule 264 (kwd_let) + $default reduce using rule 265 (kwd_let) State 9 @@ -2207,36 +2209,36 @@ State 9 State 10 - 696 bitfield_alias_declaration: "bitfield" . optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" + 697 bitfield_alias_declaration: "bitfield" . optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" "public" shift, and go to state 45 "private" shift, and go to state 46 - $default reduce using rule 529 (optional_public_or_private_alias) + $default reduce using rule 530 (optional_public_or_private_alias) optional_public_or_private_alias go to state 52 State 11 - 688 tuple_alias_declaration: "tuple" . optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" + 689 tuple_alias_declaration: "tuple" . optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" "public" shift, and go to state 45 "private" shift, and go to state 46 - $default reduce using rule 529 (optional_public_or_private_alias) + $default reduce using rule 530 (optional_public_or_private_alias) optional_public_or_private_alias go to state 53 State 12 - 692 variant_alias_declaration: "variant" . optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" + 693 variant_alias_declaration: "variant" . optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" "public" shift, and go to state 45 "private" shift, and go to state 46 - $default reduce using rule 529 (optional_public_or_private_alias) + $default reduce using rule 530 (optional_public_or_private_alias) optional_public_or_private_alias go to state 54 @@ -2252,27 +2254,29 @@ State 14 35 expr_reader: '%' . name_in_namespace $@1 reader_character_sequence - "name" shift, and go to state 55 + "::" shift, and go to state 55 + "name" shift, and go to state 56 - name_in_namespace go to state 56 + name_in_namespace go to state 57 State 15 113 optional_annotation_list: '[' . annotation_list ']' - "require" shift, and go to state 57 - "private" shift, and go to state 58 - "|>" shift, and go to state 59 - "name" shift, and go to state 55 - '!' shift, and go to state 60 - '(' shift, and go to state 61 + "require" shift, and go to state 58 + "private" shift, and go to state 59 + "|>" shift, and go to state 60 + "::" shift, and go to state 55 + "name" shift, and go to state 56 + '!' shift, and go to state 61 + '(' shift, and go to state 62 - annotation_declaration_name go to state 62 - annotation_declaration_basic go to state 63 - annotation_declaration go to state 64 - annotation_list go to state 65 - name_in_namespace go to state 66 + annotation_declaration_name go to state 63 + annotation_declaration_basic go to state 64 + annotation_declaration go to state 65 + annotation_list go to state 66 + name_in_namespace go to state 67 State 16 @@ -2293,7 +2297,7 @@ State 18 16 top_level_reader_macro: expr_reader . "end of expression" - "end of expression" shift, and go to state 67 + "end of expression" shift, and go to state 68 State 19 @@ -2320,15 +2324,15 @@ State 21 State 22 204 global_function_declaration: optional_annotation_list . "def" function_declaration - 543 enum_declaration: optional_annotation_list . "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" - 558 structure_declaration: optional_annotation_list . class_or_struct optional_public_or_private_structure $@33 structure_name $@34 optional_struct_variable_declaration_list + 544 enum_declaration: optional_annotation_list . "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" + 559 structure_declaration: optional_annotation_list . class_or_struct optional_public_or_private_structure $@33 structure_name $@34 optional_struct_variable_declaration_list - "struct" shift, and go to state 68 - "class" shift, and go to state 69 - "def" shift, and go to state 70 - "enum" shift, and go to state 71 + "struct" shift, and go to state 69 + "class" shift, and go to state 70 + "def" shift, and go to state 71 + "enum" shift, and go to state 72 - class_or_struct go to state 72 + class_or_struct go to state 73 State 23 @@ -2340,14 +2344,14 @@ State 23 State 24 - 521 global_let: kwd_let . optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" - 523 | kwd_let . optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration + 522 global_let: kwd_let . optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" + 524 | kwd_let . optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration - "shared" shift, and go to state 73 + "shared" shift, and go to state 74 - $default reduce using rule 516 (optional_shared) + $default reduce using rule 517 (optional_shared) - optional_shared go to state 74 + optional_shared go to state 75 State 25 @@ -2431,7 +2435,7 @@ State 35 92 | annotation_argument_name . 93 | annotation_argument_name . '=' '(' annotation_argument_value_list ')' - '=' shift, and go to state 75 + '=' shift, and go to state 76 $default reduce using rule 92 (annotation_argument) @@ -2448,7 +2452,7 @@ State 37 36 options_declaration: "options" annotation_argument_list . 95 annotation_argument_list: annotation_argument_list . ',' annotation_argument - ',' shift, and go to state 76 + ',' shift, and go to state 77 $default reduce using rule 36 (options_declaration) @@ -2458,7 +2462,7 @@ State 38 49 expect_error: "integer constant" . 50 | "integer constant" . ':' "integer constant" - ':' shift, and go to state 77 + ':' shift, and go to state 78 $default reduce using rule 49 (expect_error) @@ -2468,7 +2472,7 @@ State 39 46 expect_declaration: "expect" expect_list . 48 expect_list: expect_list . ',' expect_error - ',' shift, and go to state 78 + ',' shift, and go to state 79 $default reduce using rule 46 (expect_declaration) @@ -2494,7 +2498,7 @@ State 42 "name" shift, and go to state 41 '%' shift, and go to state 42 - require_module_name go to state 79 + require_module_name go to state 80 State 43 @@ -2504,14 +2508,14 @@ State 43 42 require_module: require_module_name . is_public_module 43 | require_module_name . "as" "name" is_public_module - "as" shift, and go to state 80 - "public" shift, and go to state 81 - '/' shift, and go to state 82 - '.' shift, and go to state 83 + "as" shift, and go to state 81 + "public" shift, and go to state 82 + '/' shift, and go to state 83 + '.' shift, and go to state 84 $default reduce using rule 44 (is_public_module) - is_public_module go to state 84 + is_public_module go to state 85 State 44 @@ -2523,30 +2527,30 @@ State 44 State 45 - 531 optional_public_or_private_alias: "public" . + 532 optional_public_or_private_alias: "public" . - $default reduce using rule 531 (optional_public_or_private_alias) + $default reduce using rule 532 (optional_public_or_private_alias) State 46 - 530 optional_public_or_private_alias: "private" . + 531 optional_public_or_private_alias: "private" . - $default reduce using rule 530 (optional_public_or_private_alias) + $default reduce using rule 531 (optional_public_or_private_alias) State 47 - 533 single_alias: optional_public_or_private_alias . "name" $@30 '=' type_declaration + 534 single_alias: optional_public_or_private_alias . "name" $@30 '=' type_declaration - "name" shift, and go to state 85 + "name" shift, and go to state 86 State 48 - 534 alias_declaration: "typedef" single_alias . "end of expression" + 535 alias_declaration: "typedef" single_alias . "end of expression" - "end of expression" shift, and go to state 86 + "end of expression" shift, and go to state 87 State 49 @@ -2567,244 +2571,282 @@ State 51 22 module_declaration: "module" module_name . optional_shared optional_public_or_private_module - "shared" shift, and go to state 73 + "shared" shift, and go to state 74 - $default reduce using rule 516 (optional_shared) + $default reduce using rule 517 (optional_shared) - optional_shared go to state 87 + optional_shared go to state 88 State 52 - 696 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias . "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" + 697 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias . "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" - "name" shift, and go to state 88 + "name" shift, and go to state 89 State 53 - 688 tuple_alias_declaration: "tuple" optional_public_or_private_alias . "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" + 689 tuple_alias_declaration: "tuple" optional_public_or_private_alias . "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" - "name" shift, and go to state 89 + "name" shift, and go to state 90 State 54 - 692 variant_alias_declaration: "variant" optional_public_or_private_alias . "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" + 693 variant_alias_declaration: "variant" optional_public_or_private_alias . "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" - "name" shift, and go to state 90 + "name" shift, and go to state 91 State 55 + 241 name_in_namespace: "::" . "name" + + "name" shift, and go to state 92 + + +State 56 + 239 name_in_namespace: "name" . 240 | "name" . "::" "name" - "::" shift, and go to state 91 + "::" shift, and go to state 93 + "::" [reduce using rule 239 (name_in_namespace)] $default reduce using rule 239 (name_in_namespace) + shift/reduce conflict on token "::": + 239 name_in_namespace: "name" . + 240 name_in_namespace: "name" . "::" "name" + First example: program kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation "$i" '(' "typeinfo" '(' "name" . "::" "name" expr ')' ')' ':' type_declaration_no_options "end of expression" $end + Shift derivation + $accept + `-> 0: program $end + `-> 5: program global_let + `-> 524: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration + `-> 511: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" + `-> 507: "$i" '(' expr_type_info ')' + `-> 286: "typeinfo" '(' name_in_namespace expr ')' + `-> 240: "name" . "::" "name" + Second example: program kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation "$i" '(' "typeinfo" '(' "name" . "::" "name" ')' ')' ':' type_declaration_no_options "end of expression" $end + Reduce derivation + $accept + `-> 0: program $end + `-> 5: program global_let + `-> 524: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration + `-> 511: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" + `-> 507: "$i" '(' expr ')' + `-> 430: expr_type_info + `-> 286: "typeinfo" '(' name_in_namespace expr ')' + `-> 239: "name" . `-> 360: name_in_namespace + `-> 241: "::" "name" + -State 56 + +State 57 35 expr_reader: '%' name_in_namespace . $@1 reader_character_sequence $default reduce using rule 34 ($@1) - $@1 go to state 92 + $@1 go to state 94 -State 57 +State 58 99 annotation_declaration_name: "require" . $default reduce using rule 99 (annotation_declaration_name) -State 58 +State 59 100 annotation_declaration_name: "private" . $default reduce using rule 100 (annotation_declaration_name) -State 59 +State 60 109 annotation_declaration: "|>" . annotation_declaration - "require" shift, and go to state 57 - "private" shift, and go to state 58 - "|>" shift, and go to state 59 - "name" shift, and go to state 55 - '!' shift, and go to state 60 - '(' shift, and go to state 61 + "require" shift, and go to state 58 + "private" shift, and go to state 59 + "|>" shift, and go to state 60 + "::" shift, and go to state 55 + "name" shift, and go to state 56 + '!' shift, and go to state 61 + '(' shift, and go to state 62 - annotation_declaration_name go to state 62 - annotation_declaration_basic go to state 63 - annotation_declaration go to state 93 - name_in_namespace go to state 66 + annotation_declaration_name go to state 63 + annotation_declaration_basic go to state 64 + annotation_declaration go to state 95 + name_in_namespace go to state 67 -State 60 +State 61 104 annotation_declaration: '!' . annotation_declaration - "require" shift, and go to state 57 - "private" shift, and go to state 58 - "|>" shift, and go to state 59 - "name" shift, and go to state 55 - '!' shift, and go to state 60 - '(' shift, and go to state 61 + "require" shift, and go to state 58 + "private" shift, and go to state 59 + "|>" shift, and go to state 60 + "::" shift, and go to state 55 + "name" shift, and go to state 56 + '!' shift, and go to state 61 + '(' shift, and go to state 62 - annotation_declaration_name go to state 62 - annotation_declaration_basic go to state 63 - annotation_declaration go to state 94 - name_in_namespace go to state 66 + annotation_declaration_name go to state 63 + annotation_declaration_basic go to state 64 + annotation_declaration go to state 96 + name_in_namespace go to state 67 -State 61 +State 62 108 annotation_declaration: '(' . annotation_declaration ')' - "require" shift, and go to state 57 - "private" shift, and go to state 58 - "|>" shift, and go to state 59 - "name" shift, and go to state 55 - '!' shift, and go to state 60 - '(' shift, and go to state 61 + "require" shift, and go to state 58 + "private" shift, and go to state 59 + "|>" shift, and go to state 60 + "::" shift, and go to state 55 + "name" shift, and go to state 56 + '!' shift, and go to state 61 + '(' shift, and go to state 62 - annotation_declaration_name go to state 62 - annotation_declaration_basic go to state 63 - annotation_declaration go to state 95 - name_in_namespace go to state 66 + annotation_declaration_name go to state 63 + annotation_declaration_basic go to state 64 + annotation_declaration go to state 97 + name_in_namespace go to state 67 -State 62 +State 63 101 annotation_declaration_basic: annotation_declaration_name . 102 | annotation_declaration_name . '(' annotation_argument_list ')' - '(' shift, and go to state 96 + '(' shift, and go to state 98 $default reduce using rule 101 (annotation_declaration_basic) -State 63 +State 64 103 annotation_declaration: annotation_declaration_basic . $default reduce using rule 103 (annotation_declaration) -State 64 +State 65 105 annotation_declaration: annotation_declaration . "&&" annotation_declaration 106 | annotation_declaration . "||" annotation_declaration 107 | annotation_declaration . "^^" annotation_declaration 110 annotation_list: annotation_declaration . - "&&" shift, and go to state 97 - "||" shift, and go to state 98 - "^^" shift, and go to state 99 + "&&" shift, and go to state 99 + "||" shift, and go to state 100 + "^^" shift, and go to state 101 $default reduce using rule 110 (annotation_list) -State 65 +State 66 111 annotation_list: annotation_list . ',' annotation_declaration 113 optional_annotation_list: '[' annotation_list . ']' - ',' shift, and go to state 100 - ']' shift, and go to state 101 + ',' shift, and go to state 102 + ']' shift, and go to state 103 -State 66 +State 67 98 annotation_declaration_name: name_in_namespace . $default reduce using rule 98 (annotation_declaration_name) -State 67 +State 68 16 top_level_reader_macro: expr_reader "end of expression" . $default reduce using rule 16 (top_level_reader_macro) -State 68 +State 69 - 550 class_or_struct: "struct" . + 551 class_or_struct: "struct" . - $default reduce using rule 550 (class_or_struct) + $default reduce using rule 551 (class_or_struct) -State 69 +State 70 - 549 class_or_struct: "class" . + 550 class_or_struct: "class" . - $default reduce using rule 549 (class_or_struct) + $default reduce using rule 550 (class_or_struct) -State 70 +State 71 204 global_function_declaration: optional_annotation_list "def" . function_declaration - "public" shift, and go to state 102 - "private" shift, and go to state 103 + "public" shift, and go to state 104 + "private" shift, and go to state 105 $default reduce using rule 205 (optional_public_or_private_function) - optional_public_or_private_function go to state 104 - function_declaration go to state 105 + optional_public_or_private_function go to state 106 + function_declaration go to state 107 -State 71 +State 72 - 543 enum_declaration: optional_annotation_list "enum" . optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" + 544 enum_declaration: optional_annotation_list "enum" . optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" - "public" shift, and go to state 106 - "private" shift, and go to state 107 + "public" shift, and go to state 108 + "private" shift, and go to state 109 - $default reduce using rule 535 (optional_public_or_private_enum) + $default reduce using rule 536 (optional_public_or_private_enum) - optional_public_or_private_enum go to state 108 + optional_public_or_private_enum go to state 110 -State 72 +State 73 - 558 structure_declaration: optional_annotation_list class_or_struct . optional_public_or_private_structure $@33 structure_name $@34 optional_struct_variable_declaration_list + 559 structure_declaration: optional_annotation_list class_or_struct . optional_public_or_private_structure $@33 structure_name $@34 optional_struct_variable_declaration_list - "public" shift, and go to state 109 - "private" shift, and go to state 110 + "public" shift, and go to state 111 + "private" shift, and go to state 112 - $default reduce using rule 551 (optional_public_or_private_structure) + $default reduce using rule 552 (optional_public_or_private_structure) - optional_public_or_private_structure go to state 111 + optional_public_or_private_structure go to state 113 -State 73 +State 74 - 517 optional_shared: "shared" . + 518 optional_shared: "shared" . - $default reduce using rule 517 (optional_shared) + $default reduce using rule 518 (optional_shared) -State 74 +State 75 - 521 global_let: kwd_let optional_shared . optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" - 523 | kwd_let optional_shared . optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration + 522 global_let: kwd_let optional_shared . optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" + 524 | kwd_let optional_shared . optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration - "public" shift, and go to state 112 - "private" shift, and go to state 113 + "public" shift, and go to state 114 + "private" shift, and go to state 115 - $default reduce using rule 518 (optional_public_or_private_variable) + $default reduce using rule 519 (optional_public_or_private_variable) - optional_public_or_private_variable go to state 114 + optional_public_or_private_variable go to state 116 -State 75 +State 76 86 annotation_argument: annotation_argument_name '=' . string_constant 87 | annotation_argument_name '=' . "name" @@ -2814,18 +2856,18 @@ State 75 91 | annotation_argument_name '=' . "false" 93 | annotation_argument_name '=' . '(' annotation_argument_value_list ')' - "true" shift, and go to state 115 - "false" shift, and go to state 116 - "integer constant" shift, and go to state 117 - "floating point constant" shift, and go to state 118 - "name" shift, and go to state 119 - "start of the string" shift, and go to state 120 - '(' shift, and go to state 121 + "true" shift, and go to state 117 + "false" shift, and go to state 118 + "integer constant" shift, and go to state 119 + "floating point constant" shift, and go to state 120 + "name" shift, and go to state 121 + "start of the string" shift, and go to state 122 + '(' shift, and go to state 123 - string_constant go to state 122 + string_constant go to state 124 -State 76 +State 77 95 annotation_argument_list: annotation_argument_list ',' . annotation_argument @@ -2834,144 +2876,151 @@ State 76 "name" shift, and go to state 34 annotation_argument_name go to state 35 - annotation_argument go to state 123 + annotation_argument go to state 125 -State 77 +State 78 50 expect_error: "integer constant" ':' . "integer constant" - "integer constant" shift, and go to state 124 + "integer constant" shift, and go to state 126 -State 78 +State 79 48 expect_list: expect_list ',' . expect_error "integer constant" shift, and go to state 38 - expect_error go to state 125 + expect_error go to state 127 -State 79 +State 80 39 require_module_name: '%' require_module_name . 40 | require_module_name . '.' "name" 41 | require_module_name . '/' "name" - '.' shift, and go to state 83 + '.' shift, and go to state 84 $default reduce using rule 39 (require_module_name) -State 80 +State 81 43 require_module: require_module_name "as" . "name" is_public_module - "name" shift, and go to state 126 + "name" shift, and go to state 128 -State 81 +State 82 45 is_public_module: "public" . $default reduce using rule 45 (is_public_module) -State 82 +State 83 41 require_module_name: require_module_name '/' . "name" - "name" shift, and go to state 127 + "name" shift, and go to state 129 -State 83 +State 84 40 require_module_name: require_module_name '.' . "name" - "name" shift, and go to state 128 + "name" shift, and go to state 130 -State 84 +State 85 42 require_module: require_module_name is_public_module . $default reduce using rule 42 (require_module) -State 85 +State 86 - 533 single_alias: optional_public_or_private_alias "name" . $@30 '=' type_declaration + 534 single_alias: optional_public_or_private_alias "name" . $@30 '=' type_declaration - $default reduce using rule 532 ($@30) + $default reduce using rule 533 ($@30) - $@30 go to state 129 + $@30 go to state 131 -State 86 +State 87 - 534 alias_declaration: "typedef" single_alias "end of expression" . + 535 alias_declaration: "typedef" single_alias "end of expression" . - $default reduce using rule 534 (alias_declaration) + $default reduce using rule 535 (alias_declaration) -State 87 +State 88 22 module_declaration: "module" module_name optional_shared . optional_public_or_private_module - "public" shift, and go to state 130 - "private" shift, and go to state 131 + "public" shift, and go to state 132 + "private" shift, and go to state 133 $default reduce using rule 17 (optional_public_or_private_module) - optional_public_or_private_module go to state 132 - - -State 88 - - 696 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" . $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" - - $default reduce using rule 693 ($@70) - - $@70 go to state 133 + optional_public_or_private_module go to state 134 State 89 - 688 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" . $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" + 697 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" . $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" - $default reduce using rule 685 ($@64) + $default reduce using rule 694 ($@70) - $@64 go to state 134 + $@70 go to state 135 State 90 - 692 variant_alias_declaration: "variant" optional_public_or_private_alias "name" . $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" + 689 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" . $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" - $default reduce using rule 689 ($@67) + $default reduce using rule 686 ($@64) - $@67 go to state 135 + $@64 go to state 136 State 91 - 240 name_in_namespace: "name" "::" . "name" + 693 variant_alias_declaration: "variant" optional_public_or_private_alias "name" . $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" - "name" shift, and go to state 136 + $default reduce using rule 690 ($@67) + $@67 go to state 137 -State 92 - 35 expr_reader: '%' name_in_namespace $@1 . reader_character_sequence +State 92 - STRING_CHARACTER shift, and go to state 137 + 241 name_in_namespace: "::" "name" . - reader_character_sequence go to state 138 + $default reduce using rule 241 (name_in_namespace) State 93 + 240 name_in_namespace: "name" "::" . "name" + + "name" shift, and go to state 138 + + +State 94 + + 35 expr_reader: '%' name_in_namespace $@1 . reader_character_sequence + + STRING_CHARACTER shift, and go to state 139 + + reader_character_sequence go to state 140 + + +State 95 + 105 annotation_declaration: annotation_declaration . "&&" annotation_declaration 106 | annotation_declaration . "||" annotation_declaration 107 | annotation_declaration . "^^" annotation_declaration @@ -2980,7 +3029,7 @@ State 93 $default reduce using rule 109 (annotation_declaration) -State 94 +State 96 104 annotation_declaration: '!' annotation_declaration . 105 | annotation_declaration . "&&" annotation_declaration @@ -2990,20 +3039,20 @@ State 94 $default reduce using rule 104 (annotation_declaration) -State 95 +State 97 105 annotation_declaration: annotation_declaration . "&&" annotation_declaration 106 | annotation_declaration . "||" annotation_declaration 107 | annotation_declaration . "^^" annotation_declaration 108 | '(' annotation_declaration . ')' - "&&" shift, and go to state 97 - "||" shift, and go to state 98 - "^^" shift, and go to state 99 - ')' shift, and go to state 139 + "&&" shift, and go to state 99 + "||" shift, and go to state 100 + "^^" shift, and go to state 101 + ')' shift, and go to state 141 -State 96 +State 98 102 annotation_declaration_basic: annotation_declaration_name '(' . annotation_argument_list ')' @@ -3013,390 +3062,394 @@ State 96 annotation_argument_name go to state 35 annotation_argument go to state 36 - annotation_argument_list go to state 140 + annotation_argument_list go to state 142 -State 97 +State 99 105 annotation_declaration: annotation_declaration "&&" . annotation_declaration - "require" shift, and go to state 57 - "private" shift, and go to state 58 - "|>" shift, and go to state 59 - "name" shift, and go to state 55 - '!' shift, and go to state 60 - '(' shift, and go to state 61 + "require" shift, and go to state 58 + "private" shift, and go to state 59 + "|>" shift, and go to state 60 + "::" shift, and go to state 55 + "name" shift, and go to state 56 + '!' shift, and go to state 61 + '(' shift, and go to state 62 - annotation_declaration_name go to state 62 - annotation_declaration_basic go to state 63 - annotation_declaration go to state 141 - name_in_namespace go to state 66 + annotation_declaration_name go to state 63 + annotation_declaration_basic go to state 64 + annotation_declaration go to state 143 + name_in_namespace go to state 67 -State 98 +State 100 106 annotation_declaration: annotation_declaration "||" . annotation_declaration - "require" shift, and go to state 57 - "private" shift, and go to state 58 - "|>" shift, and go to state 59 - "name" shift, and go to state 55 - '!' shift, and go to state 60 - '(' shift, and go to state 61 + "require" shift, and go to state 58 + "private" shift, and go to state 59 + "|>" shift, and go to state 60 + "::" shift, and go to state 55 + "name" shift, and go to state 56 + '!' shift, and go to state 61 + '(' shift, and go to state 62 - annotation_declaration_name go to state 62 - annotation_declaration_basic go to state 63 - annotation_declaration go to state 142 - name_in_namespace go to state 66 + annotation_declaration_name go to state 63 + annotation_declaration_basic go to state 64 + annotation_declaration go to state 144 + name_in_namespace go to state 67 -State 99 +State 101 107 annotation_declaration: annotation_declaration "^^" . annotation_declaration - "require" shift, and go to state 57 - "private" shift, and go to state 58 - "|>" shift, and go to state 59 - "name" shift, and go to state 55 - '!' shift, and go to state 60 - '(' shift, and go to state 61 + "require" shift, and go to state 58 + "private" shift, and go to state 59 + "|>" shift, and go to state 60 + "::" shift, and go to state 55 + "name" shift, and go to state 56 + '!' shift, and go to state 61 + '(' shift, and go to state 62 - annotation_declaration_name go to state 62 - annotation_declaration_basic go to state 63 - annotation_declaration go to state 143 - name_in_namespace go to state 66 + annotation_declaration_name go to state 63 + annotation_declaration_basic go to state 64 + annotation_declaration go to state 145 + name_in_namespace go to state 67 -State 100 +State 102 111 annotation_list: annotation_list ',' . annotation_declaration - "require" shift, and go to state 57 - "private" shift, and go to state 58 - "|>" shift, and go to state 59 - "name" shift, and go to state 55 - '!' shift, and go to state 60 - '(' shift, and go to state 61 + "require" shift, and go to state 58 + "private" shift, and go to state 59 + "|>" shift, and go to state 60 + "::" shift, and go to state 55 + "name" shift, and go to state 56 + '!' shift, and go to state 61 + '(' shift, and go to state 62 - annotation_declaration_name go to state 62 - annotation_declaration_basic go to state 63 - annotation_declaration go to state 144 - name_in_namespace go to state 66 + annotation_declaration_name go to state 63 + annotation_declaration_basic go to state 64 + annotation_declaration go to state 146 + name_in_namespace go to state 67 -State 101 +State 103 113 optional_annotation_list: '[' annotation_list ']' . $default reduce using rule 113 (optional_annotation_list) -State 102 +State 104 207 optional_public_or_private_function: "public" . $default reduce using rule 207 (optional_public_or_private_function) -State 103 +State 105 206 optional_public_or_private_function: "private" . $default reduce using rule 206 (optional_public_or_private_function) -State 104 +State 106 210 function_declaration: optional_public_or_private_function . $@2 function_declaration_header expression_block $default reduce using rule 209 ($@2) - $@2 go to state 145 + $@2 go to state 147 -State 105 +State 107 204 global_function_declaration: optional_annotation_list "def" function_declaration . $default reduce using rule 204 (global_function_declaration) -State 106 +State 108 - 537 optional_public_or_private_enum: "public" . + 538 optional_public_or_private_enum: "public" . - $default reduce using rule 537 (optional_public_or_private_enum) + $default reduce using rule 538 (optional_public_or_private_enum) -State 107 +State 109 - 536 optional_public_or_private_enum: "private" . + 537 optional_public_or_private_enum: "private" . - $default reduce using rule 536 (optional_public_or_private_enum) + $default reduce using rule 537 (optional_public_or_private_enum) -State 108 +State 110 - 543 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum . enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" + 544 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum . enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" - "name" shift, and go to state 146 + "name" shift, and go to state 148 - enum_name go to state 147 + enum_name go to state 149 -State 109 +State 111 - 553 optional_public_or_private_structure: "public" . + 554 optional_public_or_private_structure: "public" . - $default reduce using rule 553 (optional_public_or_private_structure) + $default reduce using rule 554 (optional_public_or_private_structure) -State 110 +State 112 - 552 optional_public_or_private_structure: "private" . + 553 optional_public_or_private_structure: "private" . - $default reduce using rule 552 (optional_public_or_private_structure) + $default reduce using rule 553 (optional_public_or_private_structure) -State 111 +State 113 - 558 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure . $@33 structure_name $@34 optional_struct_variable_declaration_list + 559 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure . $@33 structure_name $@34 optional_struct_variable_declaration_list - $default reduce using rule 556 ($@33) + $default reduce using rule 557 ($@33) - $@33 go to state 148 + $@33 go to state 150 -State 112 +State 114 - 520 optional_public_or_private_variable: "public" . + 521 optional_public_or_private_variable: "public" . - $default reduce using rule 520 (optional_public_or_private_variable) + $default reduce using rule 521 (optional_public_or_private_variable) -State 113 +State 115 - 519 optional_public_or_private_variable: "private" . + 520 optional_public_or_private_variable: "private" . - $default reduce using rule 519 (optional_public_or_private_variable) + $default reduce using rule 520 (optional_public_or_private_variable) -State 114 +State 116 - 521 global_let: kwd_let optional_shared optional_public_or_private_variable . "begin of code block" global_variable_declaration_list "end of code block" - 523 | kwd_let optional_shared optional_public_or_private_variable . $@29 optional_field_annotation let_variable_declaration + 522 global_let: kwd_let optional_shared optional_public_or_private_variable . "begin of code block" global_variable_declaration_list "end of code block" + 524 | kwd_let optional_shared optional_public_or_private_variable . $@29 optional_field_annotation let_variable_declaration - "begin of code block" shift, and go to state 149 + "begin of code block" shift, and go to state 151 - $default reduce using rule 522 ($@29) + $default reduce using rule 523 ($@29) - $@29 go to state 150 + $@29 go to state 152 -State 115 +State 117 90 annotation_argument: annotation_argument_name '=' "true" . $default reduce using rule 90 (annotation_argument) -State 116 +State 118 91 annotation_argument: annotation_argument_name '=' "false" . $default reduce using rule 91 (annotation_argument) -State 117 +State 119 88 annotation_argument: annotation_argument_name '=' "integer constant" . $default reduce using rule 88 (annotation_argument) -State 118 +State 120 89 annotation_argument: annotation_argument_name '=' "floating point constant" . $default reduce using rule 89 (annotation_argument) -State 119 +State 121 87 annotation_argument: annotation_argument_name '=' "name" . $default reduce using rule 87 (annotation_argument) -State 120 +State 122 27 string_constant: "start of the string" . character_sequence "end of the string" - STRING_CHARACTER shift, and go to state 151 - STRING_CHARACTER_ESC shift, and go to state 152 + STRING_CHARACTER shift, and go to state 153 + STRING_CHARACTER_ESC shift, and go to state 154 - character_sequence go to state 153 + character_sequence go to state 155 -State 121 +State 123 93 annotation_argument: annotation_argument_name '=' '(' . annotation_argument_value_list ')' - "true" shift, and go to state 154 - "false" shift, and go to state 155 - "integer constant" shift, and go to state 156 - "floating point constant" shift, and go to state 157 - "name" shift, and go to state 158 - "start of the string" shift, and go to state 120 + "true" shift, and go to state 156 + "false" shift, and go to state 157 + "integer constant" shift, and go to state 158 + "floating point constant" shift, and go to state 159 + "name" shift, and go to state 160 + "start of the string" shift, and go to state 122 - string_constant go to state 159 - annotation_argument_value go to state 160 - annotation_argument_value_list go to state 161 + string_constant go to state 161 + annotation_argument_value go to state 162 + annotation_argument_value_list go to state 163 -State 122 +State 124 86 annotation_argument: annotation_argument_name '=' string_constant . $default reduce using rule 86 (annotation_argument) -State 123 +State 125 95 annotation_argument_list: annotation_argument_list ',' annotation_argument . $default reduce using rule 95 (annotation_argument_list) -State 124 +State 126 50 expect_error: "integer constant" ':' "integer constant" . $default reduce using rule 50 (expect_error) -State 125 +State 127 48 expect_list: expect_list ',' expect_error . $default reduce using rule 48 (expect_list) -State 126 +State 128 43 require_module: require_module_name "as" "name" . is_public_module - "public" shift, and go to state 81 + "public" shift, and go to state 82 $default reduce using rule 44 (is_public_module) - is_public_module go to state 162 + is_public_module go to state 164 -State 127 +State 129 41 require_module_name: require_module_name '/' "name" . $default reduce using rule 41 (require_module_name) -State 128 +State 130 40 require_module_name: require_module_name '.' "name" . $default reduce using rule 40 (require_module_name) -State 129 +State 131 - 533 single_alias: optional_public_or_private_alias "name" $@30 . '=' type_declaration + 534 single_alias: optional_public_or_private_alias "name" $@30 . '=' type_declaration - '=' shift, and go to state 163 + '=' shift, and go to state 165 -State 130 +State 132 18 optional_public_or_private_module: "public" . $default reduce using rule 18 (optional_public_or_private_module) -State 131 +State 133 19 optional_public_or_private_module: "private" . $default reduce using rule 19 (optional_public_or_private_module) -State 132 +State 134 22 module_declaration: "module" module_name optional_shared optional_public_or_private_module . $default reduce using rule 22 (module_declaration) -State 133 +State 135 - 696 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 . "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" + 697 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 . "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" - "begin of code block" shift, and go to state 164 + "begin of code block" shift, and go to state 166 -State 134 +State 136 - 688 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 . "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" + 689 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 . "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" - "begin of code block" shift, and go to state 165 + "begin of code block" shift, and go to state 167 -State 135 +State 137 - 692 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 . "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" + 693 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 . "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" - "begin of code block" shift, and go to state 166 + "begin of code block" shift, and go to state 168 -State 136 +State 138 240 name_in_namespace: "name" "::" "name" . $default reduce using rule 240 (name_in_namespace) -State 137 +State 139 32 reader_character_sequence: STRING_CHARACTER . $default reduce using rule 32 (reader_character_sequence) -State 138 +State 140 33 reader_character_sequence: reader_character_sequence . STRING_CHARACTER 35 expr_reader: '%' name_in_namespace $@1 reader_character_sequence . - STRING_CHARACTER shift, and go to state 167 + STRING_CHARACTER shift, and go to state 169 $default reduce using rule 35 (expr_reader) -State 139 +State 141 108 annotation_declaration: '(' annotation_declaration ')' . $default reduce using rule 108 (annotation_declaration) -State 140 +State 142 95 annotation_argument_list: annotation_argument_list . ',' annotation_argument 102 annotation_declaration_basic: annotation_declaration_name '(' annotation_argument_list . ')' - ',' shift, and go to state 76 - ')' shift, and go to state 168 + ',' shift, and go to state 77 + ')' shift, and go to state 170 -State 141 +State 143 105 annotation_declaration: annotation_declaration . "&&" annotation_declaration 105 | annotation_declaration "&&" annotation_declaration . @@ -3406,323 +3459,324 @@ State 141 $default reduce using rule 105 (annotation_declaration) -State 142 +State 144 105 annotation_declaration: annotation_declaration . "&&" annotation_declaration 106 | annotation_declaration . "||" annotation_declaration 106 | annotation_declaration "||" annotation_declaration . 107 | annotation_declaration . "^^" annotation_declaration - "&&" shift, and go to state 97 - "^^" shift, and go to state 99 + "&&" shift, and go to state 99 + "^^" shift, and go to state 101 $default reduce using rule 106 (annotation_declaration) -State 143 +State 145 105 annotation_declaration: annotation_declaration . "&&" annotation_declaration 106 | annotation_declaration . "||" annotation_declaration 107 | annotation_declaration . "^^" annotation_declaration 107 | annotation_declaration "^^" annotation_declaration . - "&&" shift, and go to state 97 + "&&" shift, and go to state 99 $default reduce using rule 107 (annotation_declaration) -State 144 +State 146 105 annotation_declaration: annotation_declaration . "&&" annotation_declaration 106 | annotation_declaration . "||" annotation_declaration 107 | annotation_declaration . "^^" annotation_declaration 111 annotation_list: annotation_list ',' annotation_declaration . - "&&" shift, and go to state 97 - "||" shift, and go to state 98 - "^^" shift, and go to state 99 + "&&" shift, and go to state 99 + "||" shift, and go to state 100 + "^^" shift, and go to state 101 $default reduce using rule 111 (annotation_list) -State 145 +State 147 210 function_declaration: optional_public_or_private_function $@2 . function_declaration_header expression_block - "operator" shift, and go to state 169 - "bool" shift, and go to state 170 - "string" shift, and go to state 171 - "int" shift, and go to state 172 - "int2" shift, and go to state 173 - "int3" shift, and go to state 174 - "int4" shift, and go to state 175 - "uint" shift, and go to state 176 - "uint2" shift, and go to state 177 - "uint3" shift, and go to state 178 - "uint4" shift, and go to state 179 - "float" shift, and go to state 180 - "float2" shift, and go to state 181 - "float3" shift, and go to state 182 - "float4" shift, and go to state 183 - "range" shift, and go to state 184 - "urange" shift, and go to state 185 - "range64" shift, and go to state 186 - "urange64" shift, and go to state 187 - "int64" shift, and go to state 188 - "uint64" shift, and go to state 189 - "double" shift, and go to state 190 - "int8" shift, and go to state 191 - "uint8" shift, and go to state 192 - "int16" shift, and go to state 193 - "uint16" shift, and go to state 194 - "++" shift, and go to state 195 - "--" shift, and go to state 196 - "name" shift, and go to state 197 - - function_name go to state 198 - function_declaration_header go to state 199 + "operator" shift, and go to state 171 + "bool" shift, and go to state 172 + "string" shift, and go to state 173 + "int" shift, and go to state 174 + "int2" shift, and go to state 175 + "int3" shift, and go to state 176 + "int4" shift, and go to state 177 + "uint" shift, and go to state 178 + "uint2" shift, and go to state 179 + "uint3" shift, and go to state 180 + "uint4" shift, and go to state 181 + "float" shift, and go to state 182 + "float2" shift, and go to state 183 + "float3" shift, and go to state 184 + "float4" shift, and go to state 185 + "range" shift, and go to state 186 + "urange" shift, and go to state 187 + "range64" shift, and go to state 188 + "urange64" shift, and go to state 189 + "int64" shift, and go to state 190 + "uint64" shift, and go to state 191 + "double" shift, and go to state 192 + "int8" shift, and go to state 193 + "uint8" shift, and go to state 194 + "int16" shift, and go to state 195 + "uint16" shift, and go to state 196 + "++" shift, and go to state 197 + "--" shift, and go to state 198 + "name" shift, and go to state 199 + + function_name go to state 200 + function_declaration_header go to state 201 -State 146 +State 148 - 538 enum_name: "name" . + 539 enum_name: "name" . - $default reduce using rule 538 (enum_name) + $default reduce using rule 539 (enum_name) -State 147 +State 149 - 543 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name . optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" + 544 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name . optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" - ':' shift, and go to state 200 + ':' shift, and go to state 202 - $default reduce using rule 539 (optional_enum_basic_type_declaration) + $default reduce using rule 540 (optional_enum_basic_type_declaration) - optional_enum_basic_type_declaration go to state 201 + optional_enum_basic_type_declaration go to state 203 -State 148 +State 150 - 558 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 . structure_name $@34 optional_struct_variable_declaration_list + 559 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 . structure_name $@34 optional_struct_variable_declaration_list - "sealed" shift, and go to state 202 + "sealed" shift, and go to state 204 - $default reduce using rule 546 (optional_sealed) + $default reduce using rule 547 (optional_sealed) - optional_sealed go to state 203 - structure_name go to state 204 + optional_sealed go to state 205 + structure_name go to state 206 -State 149 +State 151 - 521 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" . global_variable_declaration_list "end of code block" + 522 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" . global_variable_declaration_list "end of code block" - $default reduce using rule 513 (global_variable_declaration_list) + $default reduce using rule 514 (global_variable_declaration_list) - global_variable_declaration_list go to state 205 + global_variable_declaration_list go to state 207 -State 150 +State 152 - 523 global_let: kwd_let optional_shared optional_public_or_private_variable $@29 . optional_field_annotation let_variable_declaration + 524 global_let: kwd_let optional_shared optional_public_or_private_variable $@29 . optional_field_annotation let_variable_declaration - '@' shift, and go to state 206 + '@' shift, and go to state 208 - $default reduce using rule 456 (optional_field_annotation) + $default reduce using rule 457 (optional_field_annotation) - metadata_argument_list go to state 207 - optional_field_annotation go to state 208 + metadata_argument_list go to state 209 + optional_field_annotation go to state 210 -State 151 +State 153 23 character_sequence: STRING_CHARACTER . $default reduce using rule 23 (character_sequence) -State 152 +State 154 24 character_sequence: STRING_CHARACTER_ESC . $default reduce using rule 24 (character_sequence) -State 153 +State 155 25 character_sequence: character_sequence . STRING_CHARACTER 26 | character_sequence . STRING_CHARACTER_ESC 27 string_constant: "start of the string" character_sequence . "end of the string" - STRING_CHARACTER shift, and go to state 209 - STRING_CHARACTER_ESC shift, and go to state 210 - "end of the string" shift, and go to state 211 + STRING_CHARACTER shift, and go to state 211 + STRING_CHARACTER_ESC shift, and go to state 212 + "end of the string" shift, and go to state 213 -State 154 +State 156 79 annotation_argument_value: "true" . $default reduce using rule 79 (annotation_argument_value) -State 155 +State 157 80 annotation_argument_value: "false" . $default reduce using rule 80 (annotation_argument_value) -State 156 +State 158 77 annotation_argument_value: "integer constant" . $default reduce using rule 77 (annotation_argument_value) -State 157 +State 159 78 annotation_argument_value: "floating point constant" . $default reduce using rule 78 (annotation_argument_value) -State 158 +State 160 76 annotation_argument_value: "name" . $default reduce using rule 76 (annotation_argument_value) -State 159 +State 161 75 annotation_argument_value: string_constant . $default reduce using rule 75 (annotation_argument_value) -State 160 +State 162 81 annotation_argument_value_list: annotation_argument_value . $default reduce using rule 81 (annotation_argument_value_list) -State 161 +State 163 82 annotation_argument_value_list: annotation_argument_value_list . ',' annotation_argument_value 93 annotation_argument: annotation_argument_name '=' '(' annotation_argument_value_list . ')' - ',' shift, and go to state 212 - ')' shift, and go to state 213 + ',' shift, and go to state 214 + ')' shift, and go to state 215 -State 162 +State 164 43 require_module: require_module_name "as" "name" is_public_module . $default reduce using rule 43 (require_module) -State 163 +State 165 - 533 single_alias: optional_public_or_private_alias "name" $@30 '=' . type_declaration - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 260 - type_declaration_no_options_no_dim go to state 261 - type_declaration go to state 262 + 534 single_alias: optional_public_or_private_alias "name" $@30 '=' . type_declaration + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 262 + type_declaration_no_options_no_dim go to state 263 + type_declaration go to state 264 -State 164 +State 166 - 696 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" . $@71 bitfield_alias_bits optional_comma $@72 "end of code block" + 697 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" . $@71 bitfield_alias_bits optional_comma $@72 "end of code block" - $default reduce using rule 694 ($@71) + $default reduce using rule 695 ($@71) - $@71 go to state 263 + $@71 go to state 265 -State 165 +State 167 - 688 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" . $@65 tuple_alias_type_list $@66 "end of code block" + 689 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" . $@65 tuple_alias_type_list $@66 "end of code block" - $default reduce using rule 686 ($@65) + $default reduce using rule 687 ($@65) - $@65 go to state 264 + $@65 go to state 266 -State 166 +State 168 - 692 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" . $@68 variant_alias_type_list $@69 "end of code block" + 693 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" . $@68 variant_alias_type_list $@69 "end of code block" - $default reduce using rule 690 ($@68) + $default reduce using rule 691 ($@68) - $@68 go to state 265 + $@68 go to state 267 -State 167 +State 169 33 reader_character_sequence: reader_character_sequence STRING_CHARACTER . $default reduce using rule 33 (reader_character_sequence) -State 168 +State 170 102 annotation_declaration_basic: annotation_declaration_name '(' annotation_argument_list ')' . $default reduce using rule 102 (annotation_declaration_basic) -State 169 +State 171 120 function_name: "operator" . '!' 121 | "operator" . '~' @@ -3782,334 +3836,334 @@ State 169 177 | "operator" . '?' "as" 178 | "operator" . '?' "as" "name" - "is" shift, and go to state 266 - "as" shift, and go to state 267 - "delete" shift, and go to state 268 - "+=" shift, and go to state 269 - "-=" shift, and go to state 270 - "/=" shift, and go to state 271 - "*=" shift, and go to state 272 - "%=" shift, and go to state 273 - "&=" shift, and go to state 274 - "|=" shift, and go to state 275 - "^=" shift, and go to state 276 - "<<" shift, and go to state 277 - ">>" shift, and go to state 278 - "++" shift, and go to state 279 - "--" shift, and go to state 280 - "<=" shift, and go to state 281 - "<<=" shift, and go to state 282 - ">>=" shift, and go to state 283 - ">=" shift, and go to state 284 - "==" shift, and go to state 285 - "!=" shift, and go to state 286 - "??" shift, and go to state 287 - "?." shift, and go to state 288 - "?[" shift, and go to state 289 - ":=" shift, and go to state 290 - "<<<" shift, and go to state 291 - ">>>" shift, and go to state 292 - "<<<=" shift, and go to state 293 - ">>>=" shift, and go to state 294 - "&&" shift, and go to state 295 - "||" shift, and go to state 296 - "^^" shift, and go to state 297 - "&&=" shift, and go to state 298 - "||=" shift, and go to state 299 - "^^=" shift, and go to state 300 - ".." shift, and go to state 301 - '?' shift, and go to state 302 - '|' shift, and go to state 303 - '^' shift, and go to state 304 - '&' shift, and go to state 305 - '<' shift, and go to state 306 - '>' shift, and go to state 307 - '-' shift, and go to state 308 - '+' shift, and go to state 309 - '*' shift, and go to state 310 - '/' shift, and go to state 311 - '%' shift, and go to state 312 - '~' shift, and go to state 313 - '!' shift, and go to state 314 - '.' shift, and go to state 315 - '[' shift, and go to state 316 + "is" shift, and go to state 268 + "as" shift, and go to state 269 + "delete" shift, and go to state 270 + "+=" shift, and go to state 271 + "-=" shift, and go to state 272 + "/=" shift, and go to state 273 + "*=" shift, and go to state 274 + "%=" shift, and go to state 275 + "&=" shift, and go to state 276 + "|=" shift, and go to state 277 + "^=" shift, and go to state 278 + "<<" shift, and go to state 279 + ">>" shift, and go to state 280 + "++" shift, and go to state 281 + "--" shift, and go to state 282 + "<=" shift, and go to state 283 + "<<=" shift, and go to state 284 + ">>=" shift, and go to state 285 + ">=" shift, and go to state 286 + "==" shift, and go to state 287 + "!=" shift, and go to state 288 + "??" shift, and go to state 289 + "?." shift, and go to state 290 + "?[" shift, and go to state 291 + ":=" shift, and go to state 292 + "<<<" shift, and go to state 293 + ">>>" shift, and go to state 294 + "<<<=" shift, and go to state 295 + ">>>=" shift, and go to state 296 + "&&" shift, and go to state 297 + "||" shift, and go to state 298 + "^^" shift, and go to state 299 + "&&=" shift, and go to state 300 + "||=" shift, and go to state 301 + "^^=" shift, and go to state 302 + ".." shift, and go to state 303 + '?' shift, and go to state 304 + '|' shift, and go to state 305 + '^' shift, and go to state 306 + '&' shift, and go to state 307 + '<' shift, and go to state 308 + '>' shift, and go to state 309 + '-' shift, and go to state 310 + '+' shift, and go to state 311 + '*' shift, and go to state 312 + '/' shift, and go to state 313 + '%' shift, and go to state 314 + '~' shift, and go to state 315 + '!' shift, and go to state 316 + '.' shift, and go to state 317 + '[' shift, and go to state 318 -State 170 +State 172 179 function_name: "bool" . $default reduce using rule 179 (function_name) -State 171 +State 173 180 function_name: "string" . $default reduce using rule 180 (function_name) -State 172 +State 174 181 function_name: "int" . $default reduce using rule 181 (function_name) -State 173 +State 175 182 function_name: "int2" . $default reduce using rule 182 (function_name) -State 174 +State 176 183 function_name: "int3" . $default reduce using rule 183 (function_name) -State 175 +State 177 184 function_name: "int4" . $default reduce using rule 184 (function_name) -State 176 +State 178 185 function_name: "uint" . $default reduce using rule 185 (function_name) -State 177 +State 179 186 function_name: "uint2" . $default reduce using rule 186 (function_name) -State 178 +State 180 187 function_name: "uint3" . $default reduce using rule 187 (function_name) -State 179 +State 181 188 function_name: "uint4" . $default reduce using rule 188 (function_name) -State 180 +State 182 189 function_name: "float" . $default reduce using rule 189 (function_name) -State 181 +State 183 190 function_name: "float2" . $default reduce using rule 190 (function_name) -State 182 +State 184 191 function_name: "float3" . $default reduce using rule 191 (function_name) -State 183 +State 185 192 function_name: "float4" . $default reduce using rule 192 (function_name) -State 184 +State 186 193 function_name: "range" . $default reduce using rule 193 (function_name) -State 185 +State 187 194 function_name: "urange" . $default reduce using rule 194 (function_name) -State 186 +State 188 195 function_name: "range64" . $default reduce using rule 195 (function_name) -State 187 +State 189 196 function_name: "urange64" . $default reduce using rule 196 (function_name) -State 188 +State 190 197 function_name: "int64" . $default reduce using rule 197 (function_name) -State 189 +State 191 198 function_name: "uint64" . $default reduce using rule 198 (function_name) -State 190 +State 192 199 function_name: "double" . $default reduce using rule 199 (function_name) -State 191 +State 193 200 function_name: "int8" . $default reduce using rule 200 (function_name) -State 192 +State 194 201 function_name: "uint8" . $default reduce using rule 201 (function_name) -State 193 +State 195 202 function_name: "int16" . $default reduce using rule 202 (function_name) -State 194 +State 196 203 function_name: "uint16" . $default reduce using rule 203 (function_name) -State 195 +State 197 151 function_name: "++" . "operator" - "operator" shift, and go to state 317 + "operator" shift, and go to state 319 -State 196 +State 198 152 function_name: "--" . "operator" - "operator" shift, and go to state 318 + "operator" shift, and go to state 320 -State 197 +State 199 119 function_name: "name" . $default reduce using rule 119 (function_name) -State 198 +State 200 208 function_declaration_header: function_name . optional_function_argument_list optional_function_type - '(' shift, and go to state 319 + '(' shift, and go to state 321 $default reduce using rule 114 (optional_function_argument_list) - optional_function_argument_list go to state 320 + optional_function_argument_list go to state 322 -State 199 +State 201 210 function_declaration: optional_public_or_private_function $@2 function_declaration_header . expression_block - "begin of code block" shift, and go to state 321 + "begin of code block" shift, and go to state 323 - expression_block go to state 322 + expression_block go to state 324 -State 200 +State 202 - 540 optional_enum_basic_type_declaration: ':' . enum_basic_type_declaration + 541 optional_enum_basic_type_declaration: ':' . enum_basic_type_declaration - "int" shift, and go to state 323 - "uint" shift, and go to state 324 - "int64" shift, and go to state 325 - "uint64" shift, and go to state 326 - "int8" shift, and go to state 327 - "uint8" shift, and go to state 328 - "int16" shift, and go to state 329 - "uint16" shift, and go to state 330 + "int" shift, and go to state 325 + "uint" shift, and go to state 326 + "int64" shift, and go to state 327 + "uint64" shift, and go to state 328 + "int8" shift, and go to state 329 + "uint8" shift, and go to state 330 + "int16" shift, and go to state 331 + "uint16" shift, and go to state 332 - enum_basic_type_declaration go to state 331 + enum_basic_type_declaration go to state 333 -State 201 +State 203 - 543 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration . "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" + 544 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration . "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" - "begin of code block" shift, and go to state 332 + "begin of code block" shift, and go to state 334 -State 202 +State 204 - 547 optional_sealed: "sealed" . + 548 optional_sealed: "sealed" . - $default reduce using rule 547 (optional_sealed) + $default reduce using rule 548 (optional_sealed) -State 203 +State 205 - 548 structure_name: optional_sealed . "name" optional_structure_parent + 549 structure_name: optional_sealed . "name" optional_structure_parent - "name" shift, and go to state 333 + "name" shift, and go to state 335 -State 204 +State 206 - 558 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 structure_name . $@34 optional_struct_variable_declaration_list + 559 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 structure_name . $@34 optional_struct_variable_declaration_list - $default reduce using rule 557 ($@34) + $default reduce using rule 558 ($@34) - $@34 go to state 334 + $@34 go to state 336 -State 205 +State 207 - 515 global_variable_declaration_list: global_variable_declaration_list . $@28 optional_field_annotation let_variable_declaration - 521 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list . "end of code block" + 516 global_variable_declaration_list: global_variable_declaration_list . $@28 optional_field_annotation let_variable_declaration + 522 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list . "end of code block" - "end of code block" shift, and go to state 335 + "end of code block" shift, and go to state 337 - $default reduce using rule 514 ($@28) + $default reduce using rule 515 ($@28) - $@28 go to state 336 + $@28 go to state 338 -State 206 +State 208 96 metadata_argument_list: '@' . annotation_argument @@ -4118,3994 +4172,4019 @@ State 206 "name" shift, and go to state 34 annotation_argument_name go to state 35 - annotation_argument go to state 337 + annotation_argument go to state 339 -State 207 +State 209 97 metadata_argument_list: metadata_argument_list . '@' annotation_argument - 457 optional_field_annotation: metadata_argument_list . + 458 optional_field_annotation: metadata_argument_list . - '@' shift, and go to state 338 + '@' shift, and go to state 340 - $default reduce using rule 457 (optional_field_annotation) + $default reduce using rule 458 (optional_field_annotation) -State 208 +State 210 - 523 global_let: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation . let_variable_declaration + 524 global_let: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation . let_variable_declaration - "$i" shift, and go to state 339 - "name" shift, and go to state 340 + "$i" shift, and go to state 341 + "name" shift, and go to state 342 - let_variable_name_with_pos_list go to state 341 - let_variable_declaration go to state 342 + let_variable_name_with_pos_list go to state 343 + let_variable_declaration go to state 344 -State 209 +State 211 25 character_sequence: character_sequence STRING_CHARACTER . $default reduce using rule 25 (character_sequence) -State 210 +State 212 26 character_sequence: character_sequence STRING_CHARACTER_ESC . $default reduce using rule 26 (character_sequence) -State 211 +State 213 27 string_constant: "start of the string" character_sequence "end of the string" . $default reduce using rule 27 (string_constant) -State 212 +State 214 82 annotation_argument_value_list: annotation_argument_value_list ',' . annotation_argument_value - "true" shift, and go to state 154 - "false" shift, and go to state 155 - "integer constant" shift, and go to state 156 - "floating point constant" shift, and go to state 157 - "name" shift, and go to state 158 - "start of the string" shift, and go to state 120 + "true" shift, and go to state 156 + "false" shift, and go to state 157 + "integer constant" shift, and go to state 158 + "floating point constant" shift, and go to state 159 + "name" shift, and go to state 160 + "start of the string" shift, and go to state 122 - string_constant go to state 159 - annotation_argument_value go to state 343 + string_constant go to state 161 + annotation_argument_value go to state 345 -State 213 +State 215 93 annotation_argument: annotation_argument_name '=' '(' annotation_argument_value_list ')' . $default reduce using rule 93 (annotation_argument) -State 214 - - 625 type_declaration_no_options_no_dim: "type" . '<' $@37 type_declaration '>' $@38 - - '<' shift, and go to state 344 - - -State 215 - - 648 type_declaration_no_options_no_dim: "array" . '<' $@42 type_declaration '>' $@43 - - '<' shift, and go to state 345 - - State 216 - 651 type_declaration_no_options_no_dim: "table" . '<' $@44 table_type_pair '>' $@45 + 626 type_declaration_no_options_no_dim: "type" . '<' $@37 type_declaration '>' $@38 '<' shift, and go to state 346 State 217 - 626 type_declaration_no_options_no_dim: "typedecl" . '(' expr ')' + 649 type_declaration_no_options_no_dim: "array" . '<' $@42 type_declaration '>' $@43 - '(' shift, and go to state 347 + '<' shift, and go to state 347 State 218 - 654 type_declaration_no_options_no_dim: "iterator" . '<' $@46 type_declaration '>' $@47 + 652 type_declaration_no_options_no_dim: "table" . '<' $@44 table_type_pair '>' $@45 '<' shift, and go to state 348 State 219 - 644 type_declaration_no_options_no_dim: "smart_ptr" . '<' $@40 type_declaration '>' $@41 + 627 type_declaration_no_options_no_dim: "typedecl" . '(' expr ')' - '<' shift, and go to state 349 + '(' shift, and go to state 349 State 220 - 564 basic_type_declaration: "bool" . + 655 type_declaration_no_options_no_dim: "iterator" . '<' $@46 type_declaration '>' $@47 - $default reduce using rule 564 (basic_type_declaration) + '<' shift, and go to state 350 State 221 - 584 basic_type_declaration: "void" . + 645 type_declaration_no_options_no_dim: "smart_ptr" . '<' $@40 type_declaration '>' $@41 - $default reduce using rule 584 (basic_type_declaration) + '<' shift, and go to state 351 State 222 - 565 basic_type_declaration: "string" . + 565 basic_type_declaration: "bool" . $default reduce using rule 565 (basic_type_declaration) State 223 - 600 auto_type_declaration: "auto" . - 601 | "auto" . '(' "name" ')' - - '(' shift, and go to state 350 + 585 basic_type_declaration: "void" . - $default reduce using rule 600 (auto_type_declaration) + $default reduce using rule 585 (basic_type_declaration) State 224 - 566 basic_type_declaration: "int" . + 566 basic_type_declaration: "string" . $default reduce using rule 566 (basic_type_declaration) State 225 - 570 basic_type_declaration: "int2" . + 601 auto_type_declaration: "auto" . + 602 | "auto" . '(' "name" ')' - $default reduce using rule 570 (basic_type_declaration) + '(' shift, and go to state 352 + + $default reduce using rule 601 (auto_type_declaration) State 226 - 571 basic_type_declaration: "int3" . + 567 basic_type_declaration: "int" . - $default reduce using rule 571 (basic_type_declaration) + $default reduce using rule 567 (basic_type_declaration) State 227 - 572 basic_type_declaration: "int4" . + 571 basic_type_declaration: "int2" . - $default reduce using rule 572 (basic_type_declaration) + $default reduce using rule 571 (basic_type_declaration) State 228 - 573 basic_type_declaration: "uint" . + 572 basic_type_declaration: "int3" . - $default reduce using rule 573 (basic_type_declaration) + $default reduce using rule 572 (basic_type_declaration) State 229 - 590 basic_type_declaration: "bitfield" . - 610 bitfield_type_declaration: "bitfield" . '<' $@35 bitfield_bits '>' $@36 + 573 basic_type_declaration: "int4" . - '<' shift, and go to state 351 - - $default reduce using rule 590 (basic_type_declaration) + $default reduce using rule 573 (basic_type_declaration) State 230 - 577 basic_type_declaration: "uint2" . + 574 basic_type_declaration: "uint" . - $default reduce using rule 577 (basic_type_declaration) + $default reduce using rule 574 (basic_type_declaration) State 231 - 578 basic_type_declaration: "uint3" . + 591 basic_type_declaration: "bitfield" . + 611 bitfield_type_declaration: "bitfield" . '<' $@35 bitfield_bits '>' $@36 - $default reduce using rule 578 (basic_type_declaration) + '<' shift, and go to state 353 + + $default reduce using rule 591 (basic_type_declaration) State 232 - 579 basic_type_declaration: "uint4" . + 578 basic_type_declaration: "uint2" . - $default reduce using rule 579 (basic_type_declaration) + $default reduce using rule 578 (basic_type_declaration) State 233 - 580 basic_type_declaration: "float" . + 579 basic_type_declaration: "uint3" . - $default reduce using rule 580 (basic_type_declaration) + $default reduce using rule 579 (basic_type_declaration) State 234 - 581 basic_type_declaration: "float2" . + 580 basic_type_declaration: "uint4" . - $default reduce using rule 581 (basic_type_declaration) + $default reduce using rule 580 (basic_type_declaration) State 235 - 582 basic_type_declaration: "float3" . + 581 basic_type_declaration: "float" . - $default reduce using rule 582 (basic_type_declaration) + $default reduce using rule 581 (basic_type_declaration) State 236 - 583 basic_type_declaration: "float4" . + 582 basic_type_declaration: "float2" . - $default reduce using rule 583 (basic_type_declaration) + $default reduce using rule 582 (basic_type_declaration) State 237 - 585 basic_type_declaration: "range" . + 583 basic_type_declaration: "float3" . - $default reduce using rule 585 (basic_type_declaration) + $default reduce using rule 583 (basic_type_declaration) State 238 - 586 basic_type_declaration: "urange" . + 584 basic_type_declaration: "float4" . - $default reduce using rule 586 (basic_type_declaration) + $default reduce using rule 584 (basic_type_declaration) State 239 - 587 basic_type_declaration: "range64" . + 586 basic_type_declaration: "range" . - $default reduce using rule 587 (basic_type_declaration) + $default reduce using rule 586 (basic_type_declaration) State 240 - 588 basic_type_declaration: "urange64" . + 587 basic_type_declaration: "urange" . - $default reduce using rule 588 (basic_type_declaration) + $default reduce using rule 587 (basic_type_declaration) State 241 - 655 type_declaration_no_options_no_dim: "block" . - 658 | "block" . '<' $@48 type_declaration '>' $@49 - 661 | "block" . '<' $@50 optional_function_argument_list optional_function_type '>' $@51 - - '<' shift, and go to state 352 + 588 basic_type_declaration: "range64" . - $default reduce using rule 655 (type_declaration_no_options_no_dim) + $default reduce using rule 588 (basic_type_declaration) State 242 - 569 basic_type_declaration: "int64" . + 589 basic_type_declaration: "urange64" . - $default reduce using rule 569 (basic_type_declaration) + $default reduce using rule 589 (basic_type_declaration) State 243 - 576 basic_type_declaration: "uint64" . + 656 type_declaration_no_options_no_dim: "block" . + 659 | "block" . '<' $@48 type_declaration '>' $@49 + 662 | "block" . '<' $@50 optional_function_argument_list optional_function_type '>' $@51 - $default reduce using rule 576 (basic_type_declaration) + '<' shift, and go to state 354 + + $default reduce using rule 656 (type_declaration_no_options_no_dim) State 244 - 589 basic_type_declaration: "double" . + 570 basic_type_declaration: "int64" . - $default reduce using rule 589 (basic_type_declaration) + $default reduce using rule 570 (basic_type_declaration) State 245 - 662 type_declaration_no_options_no_dim: "function" . - 665 | "function" . '<' $@52 type_declaration '>' $@53 - 668 | "function" . '<' $@54 optional_function_argument_list optional_function_type '>' $@55 - - '<' shift, and go to state 353 + 577 basic_type_declaration: "uint64" . - $default reduce using rule 662 (type_declaration_no_options_no_dim) + $default reduce using rule 577 (basic_type_declaration) State 246 - 669 type_declaration_no_options_no_dim: "lambda" . - 672 | "lambda" . '<' $@56 type_declaration '>' $@57 - 675 | "lambda" . '<' $@58 optional_function_argument_list optional_function_type '>' $@59 - - '<' shift, and go to state 354 + 590 basic_type_declaration: "double" . - $default reduce using rule 669 (type_declaration_no_options_no_dim) + $default reduce using rule 590 (basic_type_declaration) State 247 - 567 basic_type_declaration: "int8" . + 663 type_declaration_no_options_no_dim: "function" . + 666 | "function" . '<' $@52 type_declaration '>' $@53 + 669 | "function" . '<' $@54 optional_function_argument_list optional_function_type '>' $@55 - $default reduce using rule 567 (basic_type_declaration) + '<' shift, and go to state 355 + + $default reduce using rule 663 (type_declaration_no_options_no_dim) State 248 - 574 basic_type_declaration: "uint8" . + 670 type_declaration_no_options_no_dim: "lambda" . + 673 | "lambda" . '<' $@56 type_declaration '>' $@57 + 676 | "lambda" . '<' $@58 optional_function_argument_list optional_function_type '>' $@59 - $default reduce using rule 574 (basic_type_declaration) + '<' shift, and go to state 356 + + $default reduce using rule 670 (type_declaration_no_options_no_dim) State 249 - 568 basic_type_declaration: "int16" . + 568 basic_type_declaration: "int8" . $default reduce using rule 568 (basic_type_declaration) State 250 - 575 basic_type_declaration: "uint16" . + 575 basic_type_declaration: "uint8" . $default reduce using rule 575 (basic_type_declaration) State 251 - 678 type_declaration_no_options_no_dim: "tuple" . '<' $@60 tuple_type_list '>' $@61 + 569 basic_type_declaration: "int16" . - '<' shift, and go to state 355 + $default reduce using rule 569 (basic_type_declaration) State 252 - 681 type_declaration_no_options_no_dim: "variant" . '<' $@62 variant_type_list '>' $@63 + 576 basic_type_declaration: "uint16" . - '<' shift, and go to state 356 + $default reduce using rule 576 (basic_type_declaration) State 253 - 602 auto_type_declaration: "$t" . '(' expr ')' + 679 type_declaration_no_options_no_dim: "tuple" . '<' $@60 tuple_type_list '>' $@61 - '(' shift, and go to state 357 + '<' shift, and go to state 357 State 254 - 627 type_declaration_no_options_no_dim: '$' . name_in_namespace '(' optional_expr_list ')' - 629 | '$' . name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' - - "name" shift, and go to state 55 + 682 type_declaration_no_options_no_dim: "variant" . '<' $@62 variant_type_list '>' $@63 - name_in_namespace go to state 358 + '<' shift, and go to state 358 State 255 - 599 structure_type_declaration: name_in_namespace . + 603 auto_type_declaration: "$t" . '(' expr ')' - $default reduce using rule 599 (structure_type_declaration) + '(' shift, and go to state 359 State 256 - 619 type_declaration_no_options_no_dim: basic_type_declaration . + 628 type_declaration_no_options_no_dim: '$' . name_in_namespace '(' optional_expr_list ')' + 630 | '$' . name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' - $default reduce using rule 619 (type_declaration_no_options_no_dim) + "::" shift, and go to state 55 + "name" shift, and go to state 56 + + name_in_namespace go to state 360 State 257 - 622 type_declaration_no_options_no_dim: structure_type_declaration . + 600 structure_type_declaration: name_in_namespace . - $default reduce using rule 622 (type_declaration_no_options_no_dim) + $default reduce using rule 600 (structure_type_declaration) State 258 - 620 type_declaration_no_options_no_dim: auto_type_declaration . + 620 type_declaration_no_options_no_dim: basic_type_declaration . $default reduce using rule 620 (type_declaration_no_options_no_dim) State 259 - 621 type_declaration_no_options_no_dim: bitfield_type_declaration . + 623 type_declaration_no_options_no_dim: structure_type_declaration . - $default reduce using rule 621 (type_declaration_no_options_no_dim) + $default reduce using rule 623 (type_declaration_no_options_no_dim) State 260 - 682 type_declaration: type_declaration_no_options . + 621 type_declaration_no_options_no_dim: auto_type_declaration . - $default reduce using rule 682 (type_declaration) + $default reduce using rule 621 (type_declaration_no_options_no_dim) State 261 - 617 type_declaration_no_options: type_declaration_no_options_no_dim . - 618 | type_declaration_no_options_no_dim . dim_list - 630 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim . '-' '[' ']' - 631 | type_declaration_no_options_no_dim . "explicit" - 632 | type_declaration_no_options_no_dim . "const" - 633 | type_declaration_no_options_no_dim . '-' "const" - 634 | type_declaration_no_options_no_dim . '&' - 635 | type_declaration_no_options_no_dim . '-' '&' - 636 | type_declaration_no_options_no_dim . '#' - 637 | type_declaration_no_options_no_dim . "implicit" - 638 | type_declaration_no_options_no_dim . '-' '#' - 639 | type_declaration_no_options_no_dim . "==" "const" - 640 | type_declaration_no_options_no_dim . "==" '&' - 641 | type_declaration_no_options_no_dim . '*' - 645 | type_declaration_no_options_no_dim . "??" - - "const" shift, and go to state 359 - "implicit" shift, and go to state 360 - "explicit" shift, and go to state 361 - "==" shift, and go to state 362 - "??" shift, and go to state 363 - '&' shift, and go to state 364 - '-' shift, and go to state 365 - '*' shift, and go to state 366 - '[' shift, and go to state 367 - '#' shift, and go to state 368 - - $default reduce using rule 617 (type_declaration_no_options) - - dim_list go to state 369 + 622 type_declaration_no_options_no_dim: bitfield_type_declaration . + $default reduce using rule 622 (type_declaration_no_options_no_dim) -State 262 - 533 single_alias: optional_public_or_private_alias "name" $@30 '=' type_declaration . - 683 type_declaration: type_declaration . '|' type_declaration_no_options - 684 | type_declaration . '|' '#' +State 262 - '|' shift, and go to state 370 + 683 type_declaration: type_declaration_no_options . - $default reduce using rule 533 (single_alias) + $default reduce using rule 683 (type_declaration) State 263 - 696 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 . bitfield_alias_bits optional_comma $@72 "end of code block" + 618 type_declaration_no_options: type_declaration_no_options_no_dim . + 619 | type_declaration_no_options_no_dim . dim_list + 631 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim . '-' '[' ']' + 632 | type_declaration_no_options_no_dim . "explicit" + 633 | type_declaration_no_options_no_dim . "const" + 634 | type_declaration_no_options_no_dim . '-' "const" + 635 | type_declaration_no_options_no_dim . '&' + 636 | type_declaration_no_options_no_dim . '-' '&' + 637 | type_declaration_no_options_no_dim . '#' + 638 | type_declaration_no_options_no_dim . "implicit" + 639 | type_declaration_no_options_no_dim . '-' '#' + 640 | type_declaration_no_options_no_dim . "==" "const" + 641 | type_declaration_no_options_no_dim . "==" '&' + 642 | type_declaration_no_options_no_dim . '*' + 646 | type_declaration_no_options_no_dim . "??" + + "const" shift, and go to state 361 + "implicit" shift, and go to state 362 + "explicit" shift, and go to state 363 + "==" shift, and go to state 364 + "??" shift, and go to state 365 + '&' shift, and go to state 366 + '-' shift, and go to state 367 + '*' shift, and go to state 368 + '[' shift, and go to state 369 + '#' shift, and go to state 370 - "name" shift, and go to state 371 - - $default reduce using rule 605 (bitfield_alias_bits) + $default reduce using rule 618 (type_declaration_no_options) - bitfield_alias_bits go to state 372 + dim_list go to state 371 State 264 - 688 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 . tuple_alias_type_list $@66 "end of code block" + 534 single_alias: optional_public_or_private_alias "name" $@30 '=' type_declaration . + 684 type_declaration: type_declaration . '|' type_declaration_no_options + 685 | type_declaration . '|' '#' - $default reduce using rule 484 (tuple_alias_type_list) + '|' shift, and go to state 372 - tuple_alias_type_list go to state 373 + $default reduce using rule 534 (single_alias) State 265 - 692 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 . variant_alias_type_list $@69 "end of code block" + 697 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 . bitfield_alias_bits optional_comma $@72 "end of code block" - $default reduce using rule 490 (variant_alias_type_list) + "name" shift, and go to state 373 + + $default reduce using rule 606 (bitfield_alias_bits) - variant_alias_type_list go to state 374 + bitfield_alias_bits go to state 374 State 266 + 689 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 . tuple_alias_type_list $@66 "end of code block" + + $default reduce using rule 485 (tuple_alias_type_list) + + tuple_alias_type_list go to state 375 + + +State 267 + + 693 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 . variant_alias_type_list $@69 "end of code block" + + $default reduce using rule 491 (variant_alias_type_list) + + variant_alias_type_list go to state 376 + + +State 268 + 173 function_name: "operator" "is" . 175 | "operator" "is" . "name" - "name" shift, and go to state 375 + "name" shift, and go to state 377 $default reduce using rule 173 (function_name) -State 267 +State 269 174 function_name: "operator" "as" . 176 | "operator" "as" . "name" - "name" shift, and go to state 376 + "name" shift, and go to state 378 $default reduce using rule 174 (function_name) -State 268 +State 270 171 function_name: "operator" "delete" . $default reduce using rule 171 (function_name) -State 269 +State 271 122 function_name: "operator" "+=" . $default reduce using rule 122 (function_name) -State 270 +State 272 123 function_name: "operator" "-=" . $default reduce using rule 123 (function_name) -State 271 +State 273 125 function_name: "operator" "/=" . $default reduce using rule 125 (function_name) -State 272 +State 274 124 function_name: "operator" "*=" . $default reduce using rule 124 (function_name) -State 273 +State 275 126 function_name: "operator" "%=" . $default reduce using rule 126 (function_name) -State 274 +State 276 127 function_name: "operator" "&=" . $default reduce using rule 127 (function_name) -State 275 +State 277 128 function_name: "operator" "|=" . $default reduce using rule 128 (function_name) -State 276 +State 278 129 function_name: "operator" "^=" . $default reduce using rule 129 (function_name) -State 277 +State 279 155 function_name: "operator" "<<" . $default reduce using rule 155 (function_name) -State 278 +State 280 156 function_name: "operator" ">>" . $default reduce using rule 156 (function_name) -State 279 +State 281 153 function_name: "operator" "++" . $default reduce using rule 153 (function_name) -State 280 +State 282 154 function_name: "operator" "--" . $default reduce using rule 154 (function_name) -State 281 +State 283 146 function_name: "operator" "<=" . $default reduce using rule 146 (function_name) -State 282 +State 284 157 function_name: "operator" "<<=" . $default reduce using rule 157 (function_name) -State 283 +State 285 158 function_name: "operator" ">>=" . $default reduce using rule 158 (function_name) -State 284 +State 286 147 function_name: "operator" ">=" . $default reduce using rule 147 (function_name) -State 285 +State 287 144 function_name: "operator" "==" . $default reduce using rule 144 (function_name) -State 286 +State 288 145 function_name: "operator" "!=" . $default reduce using rule 145 (function_name) -State 287 +State 289 172 function_name: "operator" "??" . $default reduce using rule 172 (function_name) -State 288 +State 290 166 function_name: "operator" "?." . 169 | "operator" "?." . "name" - "name" shift, and go to state 377 + "name" shift, and go to state 379 $default reduce using rule 166 (function_name) -State 289 +State 291 164 function_name: "operator" "?[" . ']' - ']' shift, and go to state 378 + ']' shift, and go to state 380 -State 290 +State 292 170 function_name: "operator" ":=" . $default reduce using rule 170 (function_name) -State 291 +State 293 159 function_name: "operator" "<<<" . $default reduce using rule 159 (function_name) -State 292 +State 294 160 function_name: "operator" ">>>" . $default reduce using rule 160 (function_name) -State 293 +State 295 161 function_name: "operator" "<<<=" . $default reduce using rule 161 (function_name) -State 294 +State 296 162 function_name: "operator" ">>>=" . $default reduce using rule 162 (function_name) -State 295 +State 297 133 function_name: "operator" "&&" . $default reduce using rule 133 (function_name) -State 296 +State 298 134 function_name: "operator" "||" . $default reduce using rule 134 (function_name) -State 297 +State 299 135 function_name: "operator" "^^" . $default reduce using rule 135 (function_name) -State 298 +State 300 130 function_name: "operator" "&&=" . $default reduce using rule 130 (function_name) -State 299 +State 301 131 function_name: "operator" "||=" . $default reduce using rule 131 (function_name) -State 300 +State 302 132 function_name: "operator" "^^=" . $default reduce using rule 132 (function_name) -State 301 +State 303 143 function_name: "operator" ".." . $default reduce using rule 143 (function_name) -State 302 +State 304 177 function_name: "operator" '?' . "as" 178 | "operator" '?' . "as" "name" - "as" shift, and go to state 379 + "as" shift, and go to state 381 -State 303 +State 305 149 function_name: "operator" '|' . $default reduce using rule 149 (function_name) -State 304 +State 306 150 function_name: "operator" '^' . $default reduce using rule 150 (function_name) -State 305 +State 307 148 function_name: "operator" '&' . $default reduce using rule 148 (function_name) -State 306 +State 308 141 function_name: "operator" '<' . $default reduce using rule 141 (function_name) -State 307 +State 309 142 function_name: "operator" '>' . $default reduce using rule 142 (function_name) -State 308 +State 310 137 function_name: "operator" '-' . $default reduce using rule 137 (function_name) -State 309 +State 311 136 function_name: "operator" '+' . $default reduce using rule 136 (function_name) -State 310 +State 312 138 function_name: "operator" '*' . $default reduce using rule 138 (function_name) -State 311 +State 313 139 function_name: "operator" '/' . $default reduce using rule 139 (function_name) -State 312 +State 314 140 function_name: "operator" '%' . $default reduce using rule 140 (function_name) -State 313 +State 315 121 function_name: "operator" '~' . $default reduce using rule 121 (function_name) -State 314 +State 316 120 function_name: "operator" '!' . $default reduce using rule 120 (function_name) -State 315 +State 317 165 function_name: "operator" '.' . 167 | "operator" '.' . "name" 168 | "operator" '.' . "name" ":=" - "name" shift, and go to state 380 + "name" shift, and go to state 382 $default reduce using rule 165 (function_name) -State 316 +State 318 163 function_name: "operator" '[' . ']' - ']' shift, and go to state 381 + ']' shift, and go to state 383 -State 317 +State 319 151 function_name: "++" "operator" . $default reduce using rule 151 (function_name) -State 318 +State 320 152 function_name: "--" "operator" . $default reduce using rule 152 (function_name) -State 319 +State 321 115 optional_function_argument_list: '(' . ')' 116 | '(' . function_argument_list ')' - "$a" shift, and go to state 382 - ')' shift, and go to state 383 - '@' shift, and go to state 206 + "$a" shift, and go to state 384 + ')' shift, and go to state 385 + '@' shift, and go to state 208 - $default reduce using rule 456 (optional_field_annotation) + $default reduce using rule 457 (optional_field_annotation) - metadata_argument_list go to state 207 - optional_field_annotation go to state 384 - function_argument_declaration go to state 385 - function_argument_list go to state 386 + metadata_argument_list go to state 209 + optional_field_annotation go to state 386 + function_argument_declaration go to state 387 + function_argument_list go to state 388 -State 320 +State 322 208 function_declaration_header: function_name optional_function_argument_list . optional_function_type - ':' shift, and go to state 387 + ':' shift, and go to state 389 $default reduce using rule 117 (optional_function_type) - optional_function_type go to state 388 + optional_function_type go to state 390 -State 321 +State 323 211 expression_block: "begin of code block" . expressions "end of code block" 212 | "begin of code block" . expressions "end of code block" "finally" "begin of code block" expressions "end of code block" $default reduce using rule 232 (expressions) - expressions go to state 389 + expressions go to state 391 -State 322 +State 324 210 function_declaration: optional_public_or_private_function $@2 function_declaration_header expression_block . $default reduce using rule 210 (function_declaration) -State 323 - - 591 enum_basic_type_declaration: "int" . - - $default reduce using rule 591 (enum_basic_type_declaration) - - -State 324 - - 594 enum_basic_type_declaration: "uint" . - - $default reduce using rule 594 (enum_basic_type_declaration) - - State 325 - 597 enum_basic_type_declaration: "int64" . + 592 enum_basic_type_declaration: "int" . - $default reduce using rule 597 (enum_basic_type_declaration) + $default reduce using rule 592 (enum_basic_type_declaration) State 326 - 598 enum_basic_type_declaration: "uint64" . + 595 enum_basic_type_declaration: "uint" . - $default reduce using rule 598 (enum_basic_type_declaration) + $default reduce using rule 595 (enum_basic_type_declaration) State 327 - 592 enum_basic_type_declaration: "int8" . + 598 enum_basic_type_declaration: "int64" . - $default reduce using rule 592 (enum_basic_type_declaration) + $default reduce using rule 598 (enum_basic_type_declaration) State 328 - 595 enum_basic_type_declaration: "uint8" . + 599 enum_basic_type_declaration: "uint64" . - $default reduce using rule 595 (enum_basic_type_declaration) + $default reduce using rule 599 (enum_basic_type_declaration) State 329 - 593 enum_basic_type_declaration: "int16" . + 593 enum_basic_type_declaration: "int8" . $default reduce using rule 593 (enum_basic_type_declaration) State 330 - 596 enum_basic_type_declaration: "uint16" . + 596 enum_basic_type_declaration: "uint8" . $default reduce using rule 596 (enum_basic_type_declaration) State 331 - 540 optional_enum_basic_type_declaration: ':' enum_basic_type_declaration . + 594 enum_basic_type_declaration: "int16" . - $default reduce using rule 540 (optional_enum_basic_type_declaration) + $default reduce using rule 594 (enum_basic_type_declaration) State 332 - 543 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" . $@31 enum_list optional_comma $@32 "end of code block" - - $default reduce using rule 541 ($@31) + 597 enum_basic_type_declaration: "uint16" . - $@31 go to state 390 + $default reduce using rule 597 (enum_basic_type_declaration) State 333 - 548 structure_name: optional_sealed "name" . optional_structure_parent - - ':' shift, and go to state 391 + 541 optional_enum_basic_type_declaration: ':' enum_basic_type_declaration . - $default reduce using rule 544 (optional_structure_parent) - - optional_structure_parent go to state 392 + $default reduce using rule 541 (optional_enum_basic_type_declaration) State 334 - 558 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 structure_name $@34 . optional_struct_variable_declaration_list - - "begin of code block" shift, and go to state 393 + 544 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" . $@31 enum_list optional_comma $@32 "end of code block" - $default reduce using rule 554 (optional_struct_variable_declaration_list) + $default reduce using rule 542 ($@31) - optional_struct_variable_declaration_list go to state 394 + $@31 go to state 392 State 335 - 521 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" . + 549 structure_name: optional_sealed "name" . optional_structure_parent + + ':' shift, and go to state 393 + + $default reduce using rule 545 (optional_structure_parent) - $default reduce using rule 521 (global_let) + optional_structure_parent go to state 394 State 336 - 515 global_variable_declaration_list: global_variable_declaration_list $@28 . optional_field_annotation let_variable_declaration + 559 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 structure_name $@34 . optional_struct_variable_declaration_list - '@' shift, and go to state 206 + "begin of code block" shift, and go to state 395 - $default reduce using rule 456 (optional_field_annotation) + $default reduce using rule 555 (optional_struct_variable_declaration_list) - metadata_argument_list go to state 207 - optional_field_annotation go to state 395 + optional_struct_variable_declaration_list go to state 396 State 337 - 96 metadata_argument_list: '@' annotation_argument . + 522 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" . - $default reduce using rule 96 (metadata_argument_list) + $default reduce using rule 522 (global_let) State 338 - 97 metadata_argument_list: metadata_argument_list '@' . annotation_argument + 516 global_variable_declaration_list: global_variable_declaration_list $@28 . optional_field_annotation let_variable_declaration - "type" shift, and go to state 32 - "in" shift, and go to state 33 - "name" shift, and go to state 34 + '@' shift, and go to state 208 - annotation_argument_name go to state 35 - annotation_argument go to state 396 + $default reduce using rule 457 (optional_field_annotation) + + metadata_argument_list go to state 209 + optional_field_annotation go to state 397 State 339 - 506 let_variable_name_with_pos_list: "$i" . '(' expr ')' + 96 metadata_argument_list: '@' annotation_argument . - '(' shift, and go to state 397 + $default reduce using rule 96 (metadata_argument_list) State 340 - 505 let_variable_name_with_pos_list: "name" . - 507 | "name" . "aka" "name" + 97 metadata_argument_list: metadata_argument_list '@' . annotation_argument - "aka" shift, and go to state 398 + "type" shift, and go to state 32 + "in" shift, and go to state 33 + "name" shift, and go to state 34 - $default reduce using rule 505 (let_variable_name_with_pos_list) + annotation_argument_name go to state 35 + annotation_argument go to state 398 State 341 - 508 let_variable_name_with_pos_list: let_variable_name_with_pos_list . ',' "name" - 509 | let_variable_name_with_pos_list . ',' "name" "aka" "name" - 510 let_variable_declaration: let_variable_name_with_pos_list . ':' type_declaration_no_options "end of expression" - 511 | let_variable_name_with_pos_list . ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 512 | let_variable_name_with_pos_list . optional_ref copy_or_move_or_clone expr "end of expression" - - ',' shift, and go to state 399 - ':' shift, and go to state 400 - '&' shift, and go to state 401 - - $default reduce using rule 503 (optional_ref) + 507 let_variable_name_with_pos_list: "$i" . '(' expr ')' - optional_ref go to state 402 + '(' shift, and go to state 399 State 342 - 523 global_let: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration . + 506 let_variable_name_with_pos_list: "name" . + 508 | "name" . "aka" "name" - $default reduce using rule 523 (global_let) + "aka" shift, and go to state 400 + + $default reduce using rule 506 (let_variable_name_with_pos_list) State 343 - 82 annotation_argument_value_list: annotation_argument_value_list ',' annotation_argument_value . + 509 let_variable_name_with_pos_list: let_variable_name_with_pos_list . ',' "name" + 510 | let_variable_name_with_pos_list . ',' "name" "aka" "name" + 511 let_variable_declaration: let_variable_name_with_pos_list . ':' type_declaration_no_options "end of expression" + 512 | let_variable_name_with_pos_list . ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 513 | let_variable_name_with_pos_list . optional_ref copy_or_move_or_clone expr "end of expression" - $default reduce using rule 82 (annotation_argument_value_list) + ',' shift, and go to state 401 + ':' shift, and go to state 402 + '&' shift, and go to state 403 + $default reduce using rule 504 (optional_ref) -State 344 + optional_ref go to state 404 - 625 type_declaration_no_options_no_dim: "type" '<' . $@37 type_declaration '>' $@38 - $default reduce using rule 623 ($@37) +State 344 - $@37 go to state 403 + 524 global_let: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration . + $default reduce using rule 524 (global_let) -State 345 - 648 type_declaration_no_options_no_dim: "array" '<' . $@42 type_declaration '>' $@43 +State 345 - $default reduce using rule 646 ($@42) + 82 annotation_argument_value_list: annotation_argument_value_list ',' annotation_argument_value . - $@42 go to state 404 + $default reduce using rule 82 (annotation_argument_value_list) State 346 - 651 type_declaration_no_options_no_dim: "table" '<' . $@44 table_type_pair '>' $@45 + 626 type_declaration_no_options_no_dim: "type" '<' . $@37 type_declaration '>' $@38 - $default reduce using rule 649 ($@44) + $default reduce using rule 624 ($@37) - $@44 go to state 405 + $@37 go to state 405 State 347 - 626 type_declaration_no_options_no_dim: "typedecl" '(' . expr ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 470 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 649 type_declaration_no_options_no_dim: "array" '<' . $@42 type_declaration '>' $@43 + $default reduce using rule 647 ($@42) -State 348 + $@42 go to state 406 - 654 type_declaration_no_options_no_dim: "iterator" '<' . $@46 type_declaration '>' $@47 - $default reduce using rule 652 ($@46) +State 348 - $@46 go to state 479 + 652 type_declaration_no_options_no_dim: "table" '<' . $@44 table_type_pair '>' $@45 + $default reduce using rule 650 ($@44) -State 349 + $@44 go to state 407 - 644 type_declaration_no_options_no_dim: "smart_ptr" '<' . $@40 type_declaration '>' $@41 - $default reduce using rule 642 ($@40) +State 349 - $@40 go to state 480 + 627 type_declaration_no_options_no_dim: "typedecl" '(' . expr ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 472 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 350 - 601 auto_type_declaration: "auto" '(' . "name" ')' + 655 type_declaration_no_options_no_dim: "iterator" '<' . $@46 type_declaration '>' $@47 + + $default reduce using rule 653 ($@46) - "name" shift, and go to state 481 + $@46 go to state 481 State 351 - 610 bitfield_type_declaration: "bitfield" '<' . $@35 bitfield_bits '>' $@36 + 645 type_declaration_no_options_no_dim: "smart_ptr" '<' . $@40 type_declaration '>' $@41 - $default reduce using rule 608 ($@35) + $default reduce using rule 643 ($@40) - $@35 go to state 482 + $@40 go to state 482 State 352 - 658 type_declaration_no_options_no_dim: "block" '<' . $@48 type_declaration '>' $@49 - 661 | "block" '<' . $@50 optional_function_argument_list optional_function_type '>' $@51 + 602 auto_type_declaration: "auto" '(' . "name" ')' - ':' reduce using rule 659 ($@50) - '>' reduce using rule 659 ($@50) - '(' reduce using rule 659 ($@50) - $default reduce using rule 656 ($@48) - - $@48 go to state 483 - $@50 go to state 484 + "name" shift, and go to state 483 State 353 - 665 type_declaration_no_options_no_dim: "function" '<' . $@52 type_declaration '>' $@53 - 668 | "function" '<' . $@54 optional_function_argument_list optional_function_type '>' $@55 + 611 bitfield_type_declaration: "bitfield" '<' . $@35 bitfield_bits '>' $@36 - ':' reduce using rule 666 ($@54) - '>' reduce using rule 666 ($@54) - '(' reduce using rule 666 ($@54) - $default reduce using rule 663 ($@52) + $default reduce using rule 609 ($@35) - $@52 go to state 485 - $@54 go to state 486 + $@35 go to state 484 State 354 - 672 type_declaration_no_options_no_dim: "lambda" '<' . $@56 type_declaration '>' $@57 - 675 | "lambda" '<' . $@58 optional_function_argument_list optional_function_type '>' $@59 + 659 type_declaration_no_options_no_dim: "block" '<' . $@48 type_declaration '>' $@49 + 662 | "block" '<' . $@50 optional_function_argument_list optional_function_type '>' $@51 - ':' reduce using rule 673 ($@58) - '>' reduce using rule 673 ($@58) - '(' reduce using rule 673 ($@58) - $default reduce using rule 670 ($@56) + ':' reduce using rule 660 ($@50) + '>' reduce using rule 660 ($@50) + '(' reduce using rule 660 ($@50) + $default reduce using rule 657 ($@48) - $@56 go to state 487 - $@58 go to state 488 + $@48 go to state 485 + $@50 go to state 486 State 355 - 678 type_declaration_no_options_no_dim: "tuple" '<' . $@60 tuple_type_list '>' $@61 + 666 type_declaration_no_options_no_dim: "function" '<' . $@52 type_declaration '>' $@53 + 669 | "function" '<' . $@54 optional_function_argument_list optional_function_type '>' $@55 - $default reduce using rule 676 ($@60) + ':' reduce using rule 667 ($@54) + '>' reduce using rule 667 ($@54) + '(' reduce using rule 667 ($@54) + $default reduce using rule 664 ($@52) - $@60 go to state 489 + $@52 go to state 487 + $@54 go to state 488 State 356 - 681 type_declaration_no_options_no_dim: "variant" '<' . $@62 variant_type_list '>' $@63 + 673 type_declaration_no_options_no_dim: "lambda" '<' . $@56 type_declaration '>' $@57 + 676 | "lambda" '<' . $@58 optional_function_argument_list optional_function_type '>' $@59 - $default reduce using rule 679 ($@62) + ':' reduce using rule 674 ($@58) + '>' reduce using rule 674 ($@58) + '(' reduce using rule 674 ($@58) + $default reduce using rule 671 ($@56) - $@62 go to state 490 + $@56 go to state 489 + $@58 go to state 490 State 357 - 602 auto_type_declaration: "$t" '(' . expr ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 491 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 679 type_declaration_no_options_no_dim: "tuple" '<' . $@60 tuple_type_list '>' $@61 + + $default reduce using rule 677 ($@60) + + $@60 go to state 491 State 358 - 627 type_declaration_no_options_no_dim: '$' name_in_namespace . '(' optional_expr_list ')' - 629 | '$' name_in_namespace . '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' + 682 type_declaration_no_options_no_dim: "variant" '<' . $@62 variant_type_list '>' $@63 - '<' shift, and go to state 492 - '(' shift, and go to state 493 + $default reduce using rule 680 ($@62) + $@62 go to state 492 -State 359 - 632 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "const" . +State 359 - $default reduce using rule 632 (type_declaration_no_options_no_dim) + 603 auto_type_declaration: "$t" '(' . expr ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 493 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 360 - 637 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "implicit" . + 628 type_declaration_no_options_no_dim: '$' name_in_namespace . '(' optional_expr_list ')' + 630 | '$' name_in_namespace . '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' - $default reduce using rule 637 (type_declaration_no_options_no_dim) + '<' shift, and go to state 494 + '(' shift, and go to state 495 State 361 - 631 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "explicit" . + 633 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "const" . - $default reduce using rule 631 (type_declaration_no_options_no_dim) + $default reduce using rule 633 (type_declaration_no_options_no_dim) State 362 - 639 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "==" . "const" - 640 | type_declaration_no_options_no_dim "==" . '&' + 638 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "implicit" . - "const" shift, and go to state 494 - '&' shift, and go to state 495 + $default reduce using rule 638 (type_declaration_no_options_no_dim) State 363 - 645 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "??" . + 632 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "explicit" . - $default reduce using rule 645 (type_declaration_no_options_no_dim) + $default reduce using rule 632 (type_declaration_no_options_no_dim) State 364 - 634 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '&' . + 640 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "==" . "const" + 641 | type_declaration_no_options_no_dim "==" . '&' - $default reduce using rule 634 (type_declaration_no_options_no_dim) + "const" shift, and go to state 496 + '&' shift, and go to state 497 State 365 - 630 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' . '[' ']' - 633 | type_declaration_no_options_no_dim '-' . "const" - 635 | type_declaration_no_options_no_dim '-' . '&' - 638 | type_declaration_no_options_no_dim '-' . '#' + 646 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "??" . - "const" shift, and go to state 496 - '&' shift, and go to state 497 - '[' shift, and go to state 498 - '#' shift, and go to state 499 + $default reduce using rule 646 (type_declaration_no_options_no_dim) State 366 - 641 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '*' . + 635 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '&' . - $default reduce using rule 641 (type_declaration_no_options_no_dim) + $default reduce using rule 635 (type_declaration_no_options_no_dim) State 367 - 613 dim_list: '[' . expr ']' - 614 | '[' . ']' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - ']' shift, and go to state 500 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 501 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 631 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' . '[' ']' + 634 | type_declaration_no_options_no_dim '-' . "const" + 636 | type_declaration_no_options_no_dim '-' . '&' + 639 | type_declaration_no_options_no_dim '-' . '#' + + "const" shift, and go to state 498 + '&' shift, and go to state 499 + '[' shift, and go to state 500 + '#' shift, and go to state 501 State 368 - 636 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '#' . + 642 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '*' . - $default reduce using rule 636 (type_declaration_no_options_no_dim) + $default reduce using rule 642 (type_declaration_no_options_no_dim) State 369 - 615 dim_list: dim_list . '[' expr ']' - 616 | dim_list . '[' ']' - 618 type_declaration_no_options: type_declaration_no_options_no_dim dim_list . - - '[' shift, and go to state 502 - - $default reduce using rule 618 (type_declaration_no_options) + 614 dim_list: '[' . expr ']' + 615 | '[' . ']' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + ']' shift, and go to state 502 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 503 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 370 - 683 type_declaration: type_declaration '|' . type_declaration_no_options - 684 | type_declaration '|' . '#' - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - '#' shift, and go to state 503 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 504 - type_declaration_no_options_no_dim go to state 261 + 637 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '#' . + $default reduce using rule 637 (type_declaration_no_options_no_dim) -State 371 - - 606 bitfield_alias_bits: "name" . - $default reduce using rule 606 (bitfield_alias_bits) +State 371 + 616 dim_list: dim_list . '[' expr ']' + 617 | dim_list . '[' ']' + 619 type_declaration_no_options: type_declaration_no_options_no_dim dim_list . -State 372 + '[' shift, and go to state 504 - 607 bitfield_alias_bits: bitfield_alias_bits . ',' "name" - 696 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits . optional_comma $@72 "end of code block" + $default reduce using rule 619 (type_declaration_no_options) - ',' shift, and go to state 505 - $default reduce using rule 759 (optional_comma) +State 372 - optional_comma go to state 506 + 684 type_declaration: type_declaration '|' . type_declaration_no_options + 685 | type_declaration '|' . '#' + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + '#' shift, and go to state 505 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 506 + type_declaration_no_options_no_dim go to state 263 State 373 - 485 tuple_alias_type_list: tuple_alias_type_list . "end of expression" - 486 | tuple_alias_type_list . tuple_type "end of expression" - 688 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list . $@66 "end of code block" - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 507 - "end of expression" shift, and go to state 508 - '$' shift, and go to state 254 - - $default reduce using rule 687 ($@66) - - name_in_namespace go to state 255 - tuple_type go to state 509 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 260 - type_declaration_no_options_no_dim go to state 261 - type_declaration go to state 510 - $@66 go to state 511 + 607 bitfield_alias_bits: "name" . + + $default reduce using rule 607 (bitfield_alias_bits) State 374 - 491 variant_alias_type_list: variant_alias_type_list . "end of expression" - 492 | variant_alias_type_list . variant_type "end of expression" - 692 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list . $@69 "end of code block" + 608 bitfield_alias_bits: bitfield_alias_bits . ',' "name" + 697 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits . optional_comma $@72 "end of code block" - "name" shift, and go to state 512 - "end of expression" shift, and go to state 513 + ',' shift, and go to state 507 - $default reduce using rule 691 ($@69) + $default reduce using rule 760 (optional_comma) - variant_type go to state 514 - $@69 go to state 515 + optional_comma go to state 508 State 375 + 486 tuple_alias_type_list: tuple_alias_type_list . "end of expression" + 487 | tuple_alias_type_list . tuple_type "end of expression" + 689 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list . $@66 "end of code block" + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 509 + "end of expression" shift, and go to state 510 + '$' shift, and go to state 256 + + $default reduce using rule 688 ($@66) + + name_in_namespace go to state 257 + tuple_type go to state 511 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 262 + type_declaration_no_options_no_dim go to state 263 + type_declaration go to state 512 + $@66 go to state 513 + + +State 376 + + 492 variant_alias_type_list: variant_alias_type_list . "end of expression" + 493 | variant_alias_type_list . variant_type "end of expression" + 693 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list . $@69 "end of code block" + + "name" shift, and go to state 514 + "end of expression" shift, and go to state 515 + + $default reduce using rule 692 ($@69) + + variant_type go to state 516 + $@69 go to state 517 + + +State 377 + 175 function_name: "operator" "is" "name" . $default reduce using rule 175 (function_name) -State 376 +State 378 176 function_name: "operator" "as" "name" . $default reduce using rule 176 (function_name) -State 377 +State 379 169 function_name: "operator" "?." "name" . $default reduce using rule 169 (function_name) -State 378 +State 380 164 function_name: "operator" "?[" ']' . $default reduce using rule 164 (function_name) -State 379 +State 381 177 function_name: "operator" '?' "as" . 178 | "operator" '?' "as" . "name" - "name" shift, and go to state 516 + "name" shift, and go to state 518 $default reduce using rule 177 (function_name) -State 380 +State 382 167 function_name: "operator" '.' "name" . 168 | "operator" '.' "name" . ":=" - ":=" shift, and go to state 517 + ":=" shift, and go to state 519 $default reduce using rule 167 (function_name) -State 381 +State 383 163 function_name: "operator" '[' ']' . $default reduce using rule 163 (function_name) -State 382 +State 384 - 477 function_argument_declaration: "$a" . '(' expr ')' + 478 function_argument_declaration: "$a" . '(' expr ')' - '(' shift, and go to state 518 + '(' shift, and go to state 520 -State 383 +State 385 115 optional_function_argument_list: '(' ')' . $default reduce using rule 115 (optional_function_argument_list) -State 384 +State 386 - 476 function_argument_declaration: optional_field_annotation . kwd_let_var_or_nothing variable_declaration + 477 function_argument_declaration: optional_field_annotation . kwd_let_var_or_nothing variable_declaration - "let" shift, and go to state 519 - "var" shift, and go to state 520 + "let" shift, and go to state 521 + "var" shift, and go to state 522 - $default reduce using rule 262 (kwd_let_var_or_nothing) + $default reduce using rule 263 (kwd_let_var_or_nothing) - kwd_let_var_or_nothing go to state 521 + kwd_let_var_or_nothing go to state 523 -State 385 +State 387 - 478 function_argument_list: function_argument_declaration . + 479 function_argument_list: function_argument_declaration . - $default reduce using rule 478 (function_argument_list) + $default reduce using rule 479 (function_argument_list) -State 386 +State 388 116 optional_function_argument_list: '(' function_argument_list . ')' - 479 function_argument_list: function_argument_list . "end of expression" function_argument_declaration + 480 function_argument_list: function_argument_list . "end of expression" function_argument_declaration - "end of expression" shift, and go to state 522 - ')' shift, and go to state 523 + "end of expression" shift, and go to state 524 + ')' shift, and go to state 525 -State 387 +State 389 118 optional_function_type: ':' . type_declaration - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 260 - type_declaration_no_options_no_dim go to state 261 - type_declaration go to state 524 + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 262 + type_declaration_no_options_no_dim go to state 263 + type_declaration go to state 526 -State 388 +State 390 208 function_declaration_header: function_name optional_function_argument_list optional_function_type . $default reduce using rule 208 (function_declaration_header) -State 389 +State 391 211 expression_block: "begin of code block" expressions . "end of code block" 212 | "begin of code block" expressions . "end of code block" "finally" "begin of code block" expressions "end of code block" 233 expressions: expressions . expression_any 234 | expressions . error - error shift, and go to state 525 - "struct" shift, and go to state 406 - "class" shift, and go to state 407 + error shift, and go to state 527 + "struct" shift, and go to state 408 + "class" shift, and go to state 409 "let" shift, and go to state 3 - "while" shift, and go to state 526 - "if" shift, and go to state 527 - "static_if" shift, and go to state 528 - "for" shift, and go to state 529 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "return" shift, and go to state 530 - "null" shift, and go to state 414 - "break" shift, and go to state 531 - "try" shift, and go to state 532 - "table" shift, and go to state 415 - "delete" shift, and go to state 533 - "deref" shift, and go to state 416 - "with" shift, and go to state 534 - "assume" shift, and go to state 535 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 + "while" shift, and go to state 528 + "if" shift, and go to state 529 + "static_if" shift, and go to state 530 + "for" shift, and go to state 531 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "return" shift, and go to state 532 + "null" shift, and go to state 416 + "break" shift, and go to state 533 + "try" shift, and go to state 534 + "table" shift, and go to state 417 + "delete" shift, and go to state 535 + "deref" shift, and go to state 418 + "with" shift, and go to state 536 + "assume" shift, and go to state 537 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 "var" shift, and go to state 8 - "addr" shift, and go to state 419 - "continue" shift, and go to state 536 - "pass" shift, and go to state 537 - "reinterpret" shift, and go to state 420 - "label" shift, and go to state 538 - "goto" shift, and go to state 539 - "unsafe" shift, and go to state 540 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "yield" shift, and go to state 541 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - "end of code block" shift, and go to state 542 - "end of expression" shift, and go to state 543 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + "addr" shift, and go to state 421 + "continue" shift, and go to state 538 + "pass" shift, and go to state 539 + "reinterpret" shift, and go to state 422 + "label" shift, and go to state 540 + "goto" shift, and go to state 541 + "unsafe" shift, and go to state 542 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "yield" shift, and go to state 543 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + "end of code block" shift, and go to state 544 + "end of expression" shift, and go to state 545 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expression_label go to state 544 - expression_goto go to state 545 - if_or_static_if go to state 546 - expression_if_one_liner go to state 547 - expression_if_then_else go to state 548 - expression_for_loop go to state 549 - expression_unsafe go to state 550 - expression_while_loop go to state 551 - expression_with go to state 552 - expression_with_alias go to state 553 - expr_call_pipe go to state 456 - expression_any go to state 554 - name_in_namespace go to state 457 - expression_delete go to state 555 - expr_new go to state 458 - expression_break go to state 556 - expression_continue go to state 557 - expression_return go to state 558 - expression_yield_no_pipe go to state 559 - expression_yield go to state 560 - expression_try_catch go to state 561 - kwd_let go to state 562 - expression_let go to state 563 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_assign go to state 564 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 565 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 - - -State 390 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expression_label go to state 546 + expression_goto go to state 547 + if_or_static_if go to state 548 + expression_if_one_liner go to state 549 + expression_if_then_else go to state 550 + expression_for_loop go to state 551 + expression_unsafe go to state 552 + expression_while_loop go to state 553 + expression_with go to state 554 + expression_with_alias go to state 555 + expr_call_pipe go to state 458 + expression_any go to state 556 + name_in_namespace go to state 459 + expression_delete go to state 557 + expr_new go to state 460 + expression_break go to state 558 + expression_continue go to state 559 + expression_return go to state 560 + expression_yield_no_pipe go to state 561 + expression_yield go to state 562 + expression_try_catch go to state 563 + kwd_let go to state 564 + expression_let go to state 565 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_assign go to state 566 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 567 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 - 543 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 . enum_list optional_comma $@32 "end of code block" - "name" shift, and go to state 566 - - $default reduce using rule 526 (enum_list) - - enum_expression go to state 567 - enum_list go to state 568 - - -State 391 - - 545 optional_structure_parent: ':' . name_in_namespace - - "name" shift, and go to state 55 - - name_in_namespace go to state 569 +State 392 + 544 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 . enum_list optional_comma $@32 "end of code block" -State 392 + "name" shift, and go to state 568 - 548 structure_name: optional_sealed "name" optional_structure_parent . + $default reduce using rule 527 (enum_list) - $default reduce using rule 548 (structure_name) + enum_expression go to state 569 + enum_list go to state 570 State 393 - 555 optional_struct_variable_declaration_list: "begin of code block" . struct_variable_declaration_list "end of code block" + 546 optional_structure_parent: ':' . name_in_namespace - $default reduce using rule 469 (struct_variable_declaration_list) + "::" shift, and go to state 55 + "name" shift, and go to state 56 - struct_variable_declaration_list go to state 570 + name_in_namespace go to state 571 State 394 - 558 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 structure_name $@34 optional_struct_variable_declaration_list . + 549 structure_name: optional_sealed "name" optional_structure_parent . - $default reduce using rule 558 (structure_declaration) + $default reduce using rule 549 (structure_name) State 395 - 515 global_variable_declaration_list: global_variable_declaration_list $@28 optional_field_annotation . let_variable_declaration + 556 optional_struct_variable_declaration_list: "begin of code block" . struct_variable_declaration_list "end of code block" - "$i" shift, and go to state 339 - "name" shift, and go to state 340 + $default reduce using rule 470 (struct_variable_declaration_list) - let_variable_name_with_pos_list go to state 341 - let_variable_declaration go to state 571 + struct_variable_declaration_list go to state 572 State 396 - 97 metadata_argument_list: metadata_argument_list '@' annotation_argument . + 559 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 structure_name $@34 optional_struct_variable_declaration_list . - $default reduce using rule 97 (metadata_argument_list) + $default reduce using rule 559 (structure_declaration) State 397 - 506 let_variable_name_with_pos_list: "$i" '(' . expr ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 572 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 516 global_variable_declaration_list: global_variable_declaration_list $@28 optional_field_annotation . let_variable_declaration + + "$i" shift, and go to state 341 + "name" shift, and go to state 342 + + let_variable_name_with_pos_list go to state 343 + let_variable_declaration go to state 573 State 398 - 507 let_variable_name_with_pos_list: "name" "aka" . "name" + 97 metadata_argument_list: metadata_argument_list '@' annotation_argument . - "name" shift, and go to state 573 + $default reduce using rule 97 (metadata_argument_list) State 399 - 508 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' . "name" - 509 | let_variable_name_with_pos_list ',' . "name" "aka" "name" - - "name" shift, and go to state 574 + 507 let_variable_name_with_pos_list: "$i" '(' . expr ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 574 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 400 - 510 let_variable_declaration: let_variable_name_with_pos_list ':' . type_declaration_no_options "end of expression" - 511 | let_variable_name_with_pos_list ':' . type_declaration_no_options copy_or_move_or_clone expr "end of expression" - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 575 - type_declaration_no_options_no_dim go to state 261 + 508 let_variable_name_with_pos_list: "name" "aka" . "name" + + "name" shift, and go to state 575 State 401 - 504 optional_ref: '&' . + 509 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' . "name" + 510 | let_variable_name_with_pos_list ',' . "name" "aka" "name" - $default reduce using rule 504 (optional_ref) + "name" shift, and go to state 576 State 402 - 512 let_variable_declaration: let_variable_name_with_pos_list optional_ref . copy_or_move_or_clone expr "end of expression" - - "<-" shift, and go to state 576 - ":=" shift, and go to state 577 - '=' shift, and go to state 578 - - copy_or_move_or_clone go to state 579 + 511 let_variable_declaration: let_variable_name_with_pos_list ':' . type_declaration_no_options "end of expression" + 512 | let_variable_name_with_pos_list ':' . type_declaration_no_options copy_or_move_or_clone expr "end of expression" + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 577 + type_declaration_no_options_no_dim go to state 263 State 403 - 625 type_declaration_no_options_no_dim: "type" '<' $@37 . type_declaration '>' $@38 - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 260 - type_declaration_no_options_no_dim go to state 261 - type_declaration go to state 580 + 505 optional_ref: '&' . + + $default reduce using rule 505 (optional_ref) State 404 - 648 type_declaration_no_options_no_dim: "array" '<' $@42 . type_declaration '>' $@43 - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 260 - type_declaration_no_options_no_dim go to state 261 - type_declaration go to state 581 + 513 let_variable_declaration: let_variable_name_with_pos_list optional_ref . copy_or_move_or_clone expr "end of expression" + + "<-" shift, and go to state 578 + ":=" shift, and go to state 579 + '=' shift, and go to state 580 + + copy_or_move_or_clone go to state 581 State 405 - 651 type_declaration_no_options_no_dim: "table" '<' $@44 . table_type_pair '>' $@45 - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - table_type_pair go to state 582 - type_declaration_no_options go to state 260 - type_declaration_no_options_no_dim go to state 261 - type_declaration go to state 583 + 626 type_declaration_no_options_no_dim: "type" '<' $@37 . type_declaration '>' $@38 + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 262 + type_declaration_no_options_no_dim go to state 263 + type_declaration go to state 582 State 406 - 717 make_struct_decl: "struct" . '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' - - '<' shift, and go to state 584 + 649 type_declaration_no_options_no_dim: "array" '<' $@42 . type_declaration '>' $@43 + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 262 + type_declaration_no_options_no_dim go to state 263 + type_declaration go to state 583 State 407 - 720 make_struct_decl: "class" . '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' - - '<' shift, and go to state 585 + 652 type_declaration_no_options_no_dim: "table" '<' $@44 . table_type_pair '>' $@45 + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + table_type_pair go to state 584 + type_declaration_no_options go to state 262 + type_declaration_no_options_no_dim go to state 263 + type_declaration go to state 585 State 408 - 364 expr: "true" . + 718 make_struct_decl: "struct" . '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' - $default reduce using rule 364 (expr) + '<' shift, and go to state 586 State 409 - 365 expr: "false" . + 721 make_struct_decl: "class" . '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' - $default reduce using rule 365 (expr) + '<' shift, and go to state 587 State 410 - 246 expr_new: "new" . structure_type_declaration - 247 | "new" . structure_type_declaration '(' optional_expr_list ')' - 248 | "new" . new_type_declaration '(' use_initializer ')' - 249 | "new" . new_type_declaration '(' use_initializer make_struct_single ')' - 250 | "new" . make_decl - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "array" shift, and go to state 413 - "table" shift, and go to state 415 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "name" shift, and go to state 55 - "begin of code block" shift, and go to state 444 - '<' shift, and go to state 586 - '[' shift, and go to state 450 - - name_in_namespace go to state 255 - new_type_declaration go to state 587 - structure_type_declaration go to state 588 - make_decl go to state 589 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 365 expr: "true" . + + $default reduce using rule 365 (expr) State 411 - 285 expr_type_info: "typeinfo" . '(' name_in_namespace expr ')' - 286 | "typeinfo" . '(' name_in_namespace '<' "name" '>' expr ')' - 287 | "typeinfo" . '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' + 366 expr: "false" . - '(' shift, and go to state 590 + $default reduce using rule 366 (expr) State 412 - 284 expr_type_decl: "type" . '<' $@11 type_declaration '>' $@12 - - '<' shift, and go to state 591 + 247 expr_new: "new" . structure_type_declaration + 248 | "new" . structure_type_declaration '(' optional_expr_list ')' + 249 | "new" . new_type_declaration '(' use_initializer ')' + 250 | "new" . new_type_declaration '(' use_initializer make_struct_single ')' + 251 | "new" . make_decl + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "array" shift, and go to state 415 + "table" shift, and go to state 417 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "::" shift, and go to state 55 + "name" shift, and go to state 56 + "begin of code block" shift, and go to state 446 + '<' shift, and go to state 588 + '[' shift, and go to state 452 + + name_in_namespace go to state 257 + new_type_declaration go to state 589 + structure_type_declaration go to state 590 + make_decl go to state 591 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 413 - 736 make_dim_decl: "array" . "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' - 739 | "array" . "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' - 742 | "array" . "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' - 743 | "array" . '(' expr_list optional_comma ')' - 746 | "array" . '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' + 286 expr_type_info: "typeinfo" . '(' name_in_namespace expr ')' + 287 | "typeinfo" . '(' name_in_namespace '<' "name" '>' expr ')' + 288 | "typeinfo" . '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' - "struct" shift, and go to state 592 - "tuple" shift, and go to state 593 - "variant" shift, and go to state 594 - '<' shift, and go to state 595 - '(' shift, and go to state 596 + '(' shift, and go to state 592 State 414 - 358 expr: "null" . + 285 expr_type_decl: "type" . '<' $@11 type_declaration '>' $@12 - $default reduce using rule 358 (expr) + '<' shift, and go to state 593 State 415 - 754 make_table_decl: "table" . '(' expr_map_tuple_list optional_comma ')' - 755 | "table" . '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - 756 | "table" . '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + 737 make_dim_decl: "array" . "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' + 740 | "array" . "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' + 743 | "array" . "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' + 744 | "array" . '(' expr_list optional_comma ')' + 747 | "array" . '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' - '<' shift, and go to state 597 - '(' shift, and go to state 598 + "struct" shift, and go to state 594 + "tuple" shift, and go to state 595 + "variant" shift, and go to state 596 + '<' shift, and go to state 597 + '(' shift, and go to state 598 State 416 - 408 expr: "deref" . '(' expr ')' + 359 expr: "null" . - '(' shift, and go to state 599 + $default reduce using rule 359 (expr) State 417 - 275 expr_cast: "cast" . '<' $@5 type_declaration_no_options '>' $@6 expr + 755 make_table_decl: "table" . '(' expr_map_tuple_list optional_comma ')' + 756 | "table" . '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + 757 | "table" . '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - '<' shift, and go to state 600 + '<' shift, and go to state 599 + '(' shift, and go to state 600 State 418 - 278 expr_cast: "upcast" . '<' $@7 type_declaration_no_options '>' $@8 expr + 409 expr: "deref" . '(' expr ')' - '<' shift, and go to state 601 + '(' shift, and go to state 601 State 419 - 409 expr: "addr" . '(' expr ')' + 276 expr_cast: "cast" . '<' $@5 type_declaration_no_options '>' $@6 expr - '(' shift, and go to state 602 + '<' shift, and go to state 602 State 420 - 281 expr_cast: "reinterpret" . '<' $@9 type_declaration_no_options '>' $@10 expr + 279 expr_cast: "upcast" . '<' $@7 type_declaration_no_options '>' $@8 expr '<' shift, and go to state 603 State 421 - 747 make_dim_decl: "fixed_array" . '(' expr_list optional_comma ')' - 750 | "fixed_array" . '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' + 410 expr: "addr" . '(' expr ')' - '<' shift, and go to state 604 - '(' shift, and go to state 605 + '(' shift, and go to state 604 State 422 - 726 make_struct_decl: "default" . '<' $@79 type_declaration_no_options '>' $@80 use_initializer + 282 expr_cast: "reinterpret" . '<' $@9 type_declaration_no_options '>' $@10 expr - '<' shift, and go to state 606 + '<' shift, and go to state 605 State 423 - 590 basic_type_declaration: "bitfield" . + 748 make_dim_decl: "fixed_array" . '(' expr_list optional_comma ')' + 751 | "fixed_array" . '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' - $default reduce using rule 590 (basic_type_declaration) + '<' shift, and go to state 606 + '(' shift, and go to state 607 State 424 - 729 make_tuple_call: "tuple" . '(' expr_list optional_comma ')' - 732 | "tuple" . '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' + 727 make_struct_decl: "default" . '<' $@79 type_declaration_no_options '>' $@80 use_initializer - '<' shift, and go to state 607 - '(' shift, and go to state 608 + '<' shift, and go to state 608 State 425 - 723 make_struct_decl: "variant" . '<' $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim ')' + 591 basic_type_declaration: "bitfield" . - '<' shift, and go to state 609 + $default reduce using rule 591 (basic_type_declaration) State 426 - 410 expr: "generator" . '<' type_declaration_no_options '>' optional_capture_list '(' ')' - 411 | "generator" . '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' + 730 make_tuple_call: "tuple" . '(' expr_list optional_comma ')' + 733 | "tuple" . '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' - '<' shift, and go to state 610 + '<' shift, and go to state 609 + '(' shift, and go to state 610 State 427 - 394 expr: "++" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 611 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 724 make_struct_decl: "variant" . '<' $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim ')' + + '<' shift, and go to state 611 State 428 - 395 expr: "--" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 612 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 411 expr: "generator" . '<' type_declaration_no_options '>' optional_capture_list '(' ')' + 412 | "generator" . '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' + '<' shift, and go to state 612 -State 429 - 440 expr_mtag: "$$" . '(' expr ')' +State 429 - '(' shift, and go to state 613 + 395 expr: "++" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 613 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 430 - 441 expr_mtag: "$i" . '(' expr ')' - - '(' shift, and go to state 614 + 396 expr: "--" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 614 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 431 - 442 expr_mtag: "$v" . '(' expr ')' + 441 expr_mtag: "$$" . '(' expr ')' '(' shift, and go to state 615 State 432 - 443 expr_mtag: "$b" . '(' expr ')' + 442 expr_mtag: "$i" . '(' expr ')' '(' shift, and go to state 616 State 433 - 444 expr_mtag: "$a" . '(' expr ')' + 443 expr_mtag: "$v" . '(' expr ')' '(' shift, and go to state 617 State 434 - 446 expr_mtag: "$c" . '(' expr ')' '(' ')' - 447 | "$c" . '(' expr ')' '(' expr_list ')' + 444 expr_mtag: "$b" . '(' expr ')' '(' shift, and go to state 618 State 435 - 445 expr_mtag: "..." . + 445 expr_mtag: "$a" . '(' expr ')' - $default reduce using rule 445 (expr_mtag) + '(' shift, and go to state 619 State 436 - 307 expr_numeric_const: "integer constant" . + 447 expr_mtag: "$c" . '(' expr ')' '(' ')' + 448 | "$c" . '(' expr ')' '(' expr_list ')' - $default reduce using rule 307 (expr_numeric_const) + '(' shift, and go to state 620 State 437 - 309 expr_numeric_const: "long integer constant" . + 446 expr_mtag: "..." . - $default reduce using rule 309 (expr_numeric_const) + $default reduce using rule 446 (expr_mtag) State 438 - 308 expr_numeric_const: "unsigned integer constant" . + 308 expr_numeric_const: "integer constant" . $default reduce using rule 308 (expr_numeric_const) State 439 - 310 expr_numeric_const: "unsigned long integer constant" . + 310 expr_numeric_const: "long integer constant" . $default reduce using rule 310 (expr_numeric_const) State 440 - 311 expr_numeric_const: "unsigned int8 constant" . + 309 expr_numeric_const: "unsigned integer constant" . - $default reduce using rule 311 (expr_numeric_const) + $default reduce using rule 309 (expr_numeric_const) State 441 - 312 expr_numeric_const: "floating point constant" . + 311 expr_numeric_const: "unsigned long integer constant" . - $default reduce using rule 312 (expr_numeric_const) + $default reduce using rule 311 (expr_numeric_const) State 442 - 313 expr_numeric_const: "double constant" . + 312 expr_numeric_const: "unsigned int8 constant" . - $default reduce using rule 313 (expr_numeric_const) + $default reduce using rule 312 (expr_numeric_const) State 443 - 31 string_builder: "start of the string" . string_builder_body "end of the string" - - $default reduce using rule 28 (string_builder_body) + 313 expr_numeric_const: "floating point constant" . - string_builder_body go to state 619 + $default reduce using rule 313 (expr_numeric_const) State 444 - 753 make_table_decl: "begin of code block" . expr_map_tuple_list optional_comma "end of code block" - 763 array_comprehension: "begin of code block" . "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "for" shift, and go to state 620 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 621 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_map_tuple go to state 622 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - expr_map_tuple_list go to state 623 - make_table_decl go to state 477 - array_comprehension go to state 478 + 314 expr_numeric_const: "double constant" . + + $default reduce using rule 314 (expr_numeric_const) State 445 - 371 expr: '-' . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 624 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 31 string_builder: "start of the string" . string_builder_body "end of the string" + + $default reduce using rule 28 (string_builder_body) + + string_builder_body go to state 621 State 446 - 370 expr: '+' . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 754 make_table_decl: "begin of code block" . expr_map_tuple_list optional_comma "end of code block" + 764 array_comprehension: "begin of code block" . "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "for" shift, and go to state 622 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 625 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 623 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_map_tuple go to state 624 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + expr_map_tuple_list go to state 625 + make_table_decl go to state 479 + array_comprehension go to state 480 State 447 - 407 expr: '*' . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 372 expr: '-' . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 626 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 448 - 369 expr: '~' . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 371 expr: '+' . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 627 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 449 - 368 expr: '!' . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 408 expr: '*' . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 628 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 450 - 733 make_dim_decl: '[' . expr_list optional_comma ']' - 761 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - 762 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "for" shift, and go to state 629 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "iterator" shift, and go to state 630 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 370 expr: '~' . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - expr_list go to state 631 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 632 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 629 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 451 - 398 expr: '(' . expr_list optional_comma ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 369 expr: '!' . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - expr_list go to state 633 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 632 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 630 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 452 - 293 block_or_lambda: '$' . - - $default reduce using rule 293 (block_or_lambda) + 734 make_dim_decl: '[' . expr_list optional_comma ']' + 762 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 763 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "for" shift, and go to state 631 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "iterator" shift, and go to state 632 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + expr_list go to state 633 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 634 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 453 - 294 block_or_lambda: '@' . - 295 | '@' . '@' - 339 func_addr_expr: '@' . '@' func_addr_name - 342 | '@' . '@' '<' $@13 type_declaration_no_options '>' $@14 func_addr_name - 345 | '@' . '@' '<' $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name - 455 expr_mtag: '@' . '@' "$c" '(' expr ')' - - '@' shift, and go to state 634 - - $default reduce using rule 294 (block_or_lambda) + 399 expr: '(' . expr_list optional_comma ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + expr_list go to state 635 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 634 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 454 - 362 expr: string_builder . + 294 block_or_lambda: '$' . - $default reduce using rule 362 (expr) + $default reduce using rule 294 (block_or_lambda) State 455 - 361 expr: expr_reader . + 295 block_or_lambda: '@' . + 296 | '@' . '@' + 340 func_addr_expr: '@' . '@' func_addr_name + 343 | '@' . '@' '<' $@13 type_declaration_no_options '>' $@14 func_addr_name + 346 | '@' . '@' '<' $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name + 456 expr_mtag: '@' . '@' "$c" '(' expr ')' - $default reduce using rule 361 (expr) + '@' shift, and go to state 636 + + $default reduce using rule 295 (block_or_lambda) State 456 - 439 expr: expr_call_pipe . + 363 expr: string_builder . - $default reduce using rule 439 (expr) + $default reduce using rule 363 (expr) State 457 - 333 expr_named_call: name_in_namespace . '(' '[' make_struct_fields ']' ')' - 334 | name_in_namespace . '(' expr_list ',' '[' make_struct_fields ']' ')' - 353 expr_call: name_in_namespace . '(' ')' - 354 | name_in_namespace . '(' make_struct_single ')' - 355 | name_in_namespace . '(' expr_list ')' - 359 expr: name_in_namespace . + 362 expr: expr_reader . - '(' shift, and go to state 635 + $default reduce using rule 362 (expr) - '(' [reduce using rule 359 (expr)] - $default reduce using rule 359 (expr) + +State 458 + + 440 expr: expr_call_pipe . + + $default reduce using rule 440 (expr) + + +State 459 + + 334 expr_named_call: name_in_namespace . '(' '[' make_struct_fields ']' ')' + 335 | name_in_namespace . '(' expr_list ',' '[' make_struct_fields ']' ')' + 354 expr_call: name_in_namespace . '(' ')' + 355 | name_in_namespace . '(' make_struct_single ')' + 356 | name_in_namespace . '(' expr_list ')' + 360 expr: name_in_namespace . + + '(' shift, and go to state 637 + + '(' [reduce using rule 360 (expr)] + $default reduce using rule 360 (expr) shift/reduce conflict on token '(': - 359 expr: name_in_namespace . - 333 expr_named_call: name_in_namespace . '(' '[' make_struct_fields ']' ')' + 360 expr: name_in_namespace . + 334 expr_named_call: name_in_namespace . '(' '[' make_struct_fields ']' ')' First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' name_in_namespace . '(' '[' make_struct_fields ']' ')' expression_any "end of code block" $end Shift derivation $accept @@ -8117,8 +8196,8 @@ State 457 `-> 233: expressions expression_any `-> 233: expressions expression_with_alias `-> 74: "assume" "name" '=' expr - `-> 434: expr_named_call - `-> 333: name_in_namespace . '(' '[' make_struct_fields ']' ')' + `-> 435: expr_named_call + `-> 334: name_in_namespace . '(' '[' make_struct_fields ']' ')' Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' name_in_namespace . '(' expr_list optional_comma ')' "end of expression" "end of code block" $end Reduce derivation $accept @@ -8129,13 +8208,13 @@ State 457 `-> 211: "begin of code block" expressions "end of code block" `-> 233: expressions expression_any `-> 233: expressions expression_any `-> 215: expr_assign "end of expression" - `-> 221: expression_with_alias `-> 314: expr - `-> 74: "assume" "name" '=' expr `-> 398: '(' expr_list optional_comma ')' - `-> 359: name_in_namespace . + `-> 221: expression_with_alias `-> 315: expr + `-> 74: "assume" "name" '=' expr `-> 399: '(' expr_list optional_comma ')' + `-> 360: name_in_namespace . shift/reduce conflict on token '(': - 359 expr: name_in_namespace . - 334 expr_named_call: name_in_namespace . '(' expr_list ',' '[' make_struct_fields ']' ')' + 360 expr: name_in_namespace . + 335 expr_named_call: name_in_namespace . '(' expr_list ',' '[' make_struct_fields ']' ')' First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' name_in_namespace . '(' expr_list ',' '[' make_struct_fields ']' ')' expression_any "end of code block" $end Shift derivation $accept @@ -8147,8 +8226,8 @@ State 457 `-> 233: expressions expression_any `-> 233: expressions expression_with_alias `-> 74: "assume" "name" '=' expr - `-> 434: expr_named_call - `-> 334: name_in_namespace . '(' expr_list ',' '[' make_struct_fields ']' ')' + `-> 435: expr_named_call + `-> 335: name_in_namespace . '(' expr_list ',' '[' make_struct_fields ']' ')' Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' name_in_namespace . '(' expr_list optional_comma ')' "end of expression" "end of code block" $end Reduce derivation $accept @@ -8159,13 +8238,13 @@ State 457 `-> 211: "begin of code block" expressions "end of code block" `-> 233: expressions expression_any `-> 233: expressions expression_any `-> 215: expr_assign "end of expression" - `-> 221: expression_with_alias `-> 314: expr - `-> 74: "assume" "name" '=' expr `-> 398: '(' expr_list optional_comma ')' - `-> 359: name_in_namespace . + `-> 221: expression_with_alias `-> 315: expr + `-> 74: "assume" "name" '=' expr `-> 399: '(' expr_list optional_comma ')' + `-> 360: name_in_namespace . shift/reduce conflict on token '(': - 359 expr: name_in_namespace . - 353 expr_call: name_in_namespace . '(' ')' + 360 expr: name_in_namespace . + 354 expr_call: name_in_namespace . '(' ')' First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' name_in_namespace . '(' ')' expression_any "end of code block" $end Shift derivation $accept @@ -8177,8 +8256,8 @@ State 457 `-> 233: expressions expression_any `-> 233: expressions expression_with_alias `-> 74: "assume" "name" '=' expr - `-> 406: expr_call - `-> 353: name_in_namespace . '(' ')' + `-> 407: expr_call + `-> 354: name_in_namespace . '(' ')' Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' name_in_namespace . '(' expr_list optional_comma ')' "end of expression" "end of code block" $end Reduce derivation $accept @@ -8189,13 +8268,13 @@ State 457 `-> 211: "begin of code block" expressions "end of code block" `-> 233: expressions expression_any `-> 233: expressions expression_any `-> 215: expr_assign "end of expression" - `-> 221: expression_with_alias `-> 314: expr - `-> 74: "assume" "name" '=' expr `-> 398: '(' expr_list optional_comma ')' - `-> 359: name_in_namespace . + `-> 221: expression_with_alias `-> 315: expr + `-> 74: "assume" "name" '=' expr `-> 399: '(' expr_list optional_comma ')' + `-> 360: name_in_namespace . shift/reduce conflict on token '(': - 359 expr: name_in_namespace . - 354 expr_call: name_in_namespace . '(' make_struct_single ')' + 360 expr: name_in_namespace . + 355 expr_call: name_in_namespace . '(' make_struct_single ')' First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' name_in_namespace . '(' make_struct_single ')' expression_any "end of code block" $end Shift derivation $accept @@ -8207,8 +8286,8 @@ State 457 `-> 233: expressions expression_any `-> 233: expressions expression_with_alias `-> 74: "assume" "name" '=' expr - `-> 406: expr_call - `-> 354: name_in_namespace . '(' make_struct_single ')' + `-> 407: expr_call + `-> 355: name_in_namespace . '(' make_struct_single ')' Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' name_in_namespace . '(' expr_list optional_comma ')' "end of expression" "end of code block" $end Reduce derivation $accept @@ -8219,13 +8298,13 @@ State 457 `-> 211: "begin of code block" expressions "end of code block" `-> 233: expressions expression_any `-> 233: expressions expression_any `-> 215: expr_assign "end of expression" - `-> 221: expression_with_alias `-> 314: expr - `-> 74: "assume" "name" '=' expr `-> 398: '(' expr_list optional_comma ')' - `-> 359: name_in_namespace . + `-> 221: expression_with_alias `-> 315: expr + `-> 74: "assume" "name" '=' expr `-> 399: '(' expr_list optional_comma ')' + `-> 360: name_in_namespace . shift/reduce conflict on token '(': - 359 expr: name_in_namespace . - 355 expr_call: name_in_namespace . '(' expr_list ')' + 360 expr: name_in_namespace . + 356 expr_call: name_in_namespace . '(' expr_list ')' First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' name_in_namespace . '(' expr_list ')' expression_any "end of code block" $end Shift derivation $accept @@ -8237,8 +8316,8 @@ State 457 `-> 233: expressions expression_any `-> 233: expressions expression_with_alias `-> 74: "assume" "name" '=' expr - `-> 406: expr_call - `-> 355: name_in_namespace . '(' expr_list ')' + `-> 407: expr_call + `-> 356: name_in_namespace . '(' expr_list ')' Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' name_in_namespace . '(' expr_list optional_comma ')' "end of expression" "end of code block" $end Reduce derivation $accept @@ -8249,50 +8328,50 @@ State 457 `-> 211: "begin of code block" expressions "end of code block" `-> 233: expressions expression_any `-> 233: expressions expression_any `-> 215: expr_assign "end of expression" - `-> 221: expression_with_alias `-> 314: expr - `-> 74: "assume" "name" '=' expr `-> 398: '(' expr_list optional_comma ')' - `-> 359: name_in_namespace . + `-> 221: expression_with_alias `-> 315: expr + `-> 74: "assume" "name" '=' expr `-> 399: '(' expr_list optional_comma ')' + `-> 360: name_in_namespace . -State 458 +State 460 - 432 expr: expr_new . + 433 expr: expr_new . - $default reduce using rule 432 (expr) + $default reduce using rule 433 (expr) -State 459 +State 461 - 431 expr: expr_cast . + 432 expr: expr_cast . - $default reduce using rule 431 (expr) + $default reduce using rule 432 (expr) -State 460 +State 462 - 430 expr: expr_type_decl . + 431 expr: expr_type_decl . - $default reduce using rule 430 (expr) + $default reduce using rule 431 (expr) -State 461 +State 463 - 429 expr: expr_type_info . + 430 expr: expr_type_info . - $default reduce using rule 429 (expr) + $default reduce using rule 430 (expr) -State 462 +State 464 - 304 expr_full_block: block_or_lambda . optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block + 305 expr_full_block: block_or_lambda . optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block '[' shift, and go to state 15 '[' [reduce using rule 112 (optional_annotation_list)] $default reduce using rule 112 (optional_annotation_list) - optional_annotation_list go to state 636 + optional_annotation_list go to state 638 shift/reduce conflict on token '[': 112 optional_annotation_list: %empty . @@ -8302,87 +8381,87 @@ State 462 $accept `-> 0: program $end `-> 5: program global_let - `-> 523: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration - `-> 510: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" - `-> 506: "$i" '(' expr_full_block ')' - `-> 304: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block + `-> 524: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration + `-> 511: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" + `-> 507: "$i" '(' expr_full_block ')' + `-> 305: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block `-> 113: . '[' annotation_list ']' Second example: program kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation "$i" '(' block_or_lambda . '[' '[' capture_list ']' ']' optional_function_argument_list optional_function_type block_or_simple_block ')' ':' type_declaration_no_options "end of expression" $end Reduce derivation $accept `-> 0: program $end `-> 5: program global_let - `-> 523: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration - `-> 510: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" - `-> 506: "$i" '(' expr ')' - `-> 435: expr_full_block - `-> 304: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block - `-> 112: %empty . `-> 303: '[' '[' capture_list ']' ']' + `-> 524: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration + `-> 511: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" + `-> 507: "$i" '(' expr ')' + `-> 436: expr_full_block + `-> 305: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block + `-> 112: %empty . `-> 304: '[' '[' capture_list ']' ']' -State 463 +State 465 - 435 expr: expr_full_block . + 436 expr: expr_full_block . - $default reduce using rule 435 (expr) + $default reduce using rule 436 (expr) -State 464 +State 466 - 360 expr: expr_numeric_const . + 361 expr: expr_numeric_const . - $default reduce using rule 360 (expr) + $default reduce using rule 361 (expr) -State 465 +State 467 - 434 expr: expr_named_call . + 435 expr: expr_named_call . - $default reduce using rule 434 (expr) + $default reduce using rule 435 (expr) -State 466 +State 468 - 433 expr: expr_method_call . + 434 expr: expr_method_call . - $default reduce using rule 433 (expr) + $default reduce using rule 434 (expr) -State 467 +State 469 - 405 expr: func_addr_expr . + 406 expr: func_addr_expr . - $default reduce using rule 405 (expr) + $default reduce using rule 406 (expr) -State 468 +State 470 - 366 expr: expr_field . + 367 expr: expr_field . - $default reduce using rule 366 (expr) + $default reduce using rule 367 (expr) -State 469 +State 471 213 expr_call_pipe: expr_call . expr_full_block_assumed_piped - 406 expr: expr_call . + 407 expr: expr_call . - "begin of code block" shift, and go to state 637 - '$' shift, and go to state 452 - '@' shift, and go to state 638 + "begin of code block" shift, and go to state 639 + '$' shift, and go to state 454 + '@' shift, and go to state 640 - "begin of code block" [reduce using rule 406 (expr)] - '$' [reduce using rule 406 (expr)] - '@' [reduce using rule 406 (expr)] - $default reduce using rule 406 (expr) + "begin of code block" [reduce using rule 407 (expr)] + '$' [reduce using rule 407 (expr)] + '@' [reduce using rule 407 (expr)] + $default reduce using rule 407 (expr) - block_or_lambda go to state 639 - expr_full_block_assumed_piped go to state 640 + block_or_lambda go to state 641 + expr_full_block_assumed_piped go to state 642 shift/reduce conflict on token '$': - 406 expr: expr_call . - 293 block_or_lambda: . '$' + 407 expr: expr_call . + 294 block_or_lambda: . '$' First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' expr_call . '$' optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block expression_any "end of code block" $end Shift derivation $accept @@ -8394,10 +8473,10 @@ State 469 `-> 233: expressions expression_any `-> 233: expressions expression_with_alias `-> 74: "assume" "name" '=' expr - `-> 439: expr_call_pipe + `-> 440: expr_call_pipe `-> 213: expr_call expr_full_block_assumed_piped - `-> 305: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block - `-> 293: . '$' + `-> 306: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block + `-> 294: . '$' Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' expr_call . '$' optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block "end of expression" "end of code block" $end Reduce derivation $accept @@ -8408,14 +8487,14 @@ State 469 `-> 211: "begin of code block" expressions "end of code block" `-> 233: expressions expression_any `-> 233: expressions expression_any `-> 215: expr_assign "end of expression" - `-> 221: expression_with_alias `-> 314: expr - `-> 74: "assume" "name" '=' expr `-> 435: expr_full_block - `-> 406: expr_call . `-> 304: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block - `-> 293: '$' + `-> 221: expression_with_alias `-> 315: expr + `-> 74: "assume" "name" '=' expr `-> 436: expr_full_block + `-> 407: expr_call . `-> 305: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block + `-> 294: '$' shift/reduce conflict on token '@': - 406 expr: expr_call . - 294 block_or_lambda: . '@' + 407 expr: expr_call . + 295 block_or_lambda: . '@' First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' expr_call . '@' optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block expression_any "end of code block" $end Shift derivation $accept @@ -8427,10 +8506,10 @@ State 469 `-> 233: expressions expression_any `-> 233: expressions expression_with_alias `-> 74: "assume" "name" '=' expr - `-> 439: expr_call_pipe + `-> 440: expr_call_pipe `-> 213: expr_call expr_full_block_assumed_piped - `-> 305: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block - `-> 294: . '@' + `-> 306: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block + `-> 295: . '@' Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' expr_call . '@' '@' "$c" '(' expr ')' "end of expression" "end of code block" $end Reduce derivation $accept @@ -8441,13 +8520,13 @@ State 469 `-> 211: "begin of code block" expressions "end of code block" `-> 233: expressions expression_any `-> 233: expressions expression_any `-> 215: expr_assign "end of expression" - `-> 221: expression_with_alias `-> 314: expr - `-> 74: "assume" "name" '=' expr `-> 367: expr_mtag - `-> 406: expr_call . `-> 455: '@' '@' "$c" '(' expr ')' + `-> 221: expression_with_alias `-> 315: expr + `-> 74: "assume" "name" '=' expr `-> 368: expr_mtag + `-> 407: expr_call . `-> 456: '@' '@' "$c" '(' expr ')' shift/reduce conflict on token '@': - 406 expr: expr_call . - 295 block_or_lambda: . '@' '@' + 407 expr: expr_call . + 296 block_or_lambda: . '@' '@' First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' expr_call . '@' '@' optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block expression_any "end of code block" $end Shift derivation $accept @@ -8459,10 +8538,10 @@ State 469 `-> 233: expressions expression_any `-> 233: expressions expression_with_alias `-> 74: "assume" "name" '=' expr - `-> 439: expr_call_pipe + `-> 440: expr_call_pipe `-> 213: expr_call expr_full_block_assumed_piped - `-> 305: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block - `-> 295: . '@' '@' + `-> 306: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block + `-> 296: . '@' '@' Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' expr_call . '@' '@' "$c" '(' expr ')' "end of expression" "end of code block" $end Reduce derivation $accept @@ -8473,13 +8552,13 @@ State 469 `-> 211: "begin of code block" expressions "end of code block" `-> 233: expressions expression_any `-> 233: expressions expression_any `-> 215: expr_assign "end of expression" - `-> 221: expression_with_alias `-> 314: expr - `-> 74: "assume" "name" '=' expr `-> 367: expr_mtag - `-> 406: expr_call . `-> 455: '@' '@' "$c" '(' expr ')' + `-> 221: expression_with_alias `-> 315: expr + `-> 74: "assume" "name" '=' expr `-> 368: expr_mtag + `-> 407: expr_call . `-> 456: '@' '@' "$c" '(' expr ')' shift/reduce conflict on token "begin of code block": - 406 expr: expr_call . - 306 expr_full_block_assumed_piped: . "begin of code block" expressions "end of code block" + 407 expr: expr_call . + 307 expr_full_block_assumed_piped: . "begin of code block" expressions "end of code block" First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "while" expr_call . "begin of code block" expressions "end of code block" expression_block "end of code block" $end Shift derivation $accept @@ -8490,9 +8569,9 @@ State 469 `-> 211: "begin of code block" expressions "end of code block" `-> 233: expressions expression_while_loop `-> 72: "while" expr expression_block - `-> 439: expr_call_pipe + `-> 440: expr_call_pipe `-> 213: expr_call expr_full_block_assumed_piped - `-> 306: . "begin of code block" expressions "end of code block" + `-> 307: . "begin of code block" expressions "end of code block" Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "while" expr_call . "begin of code block" expressions "end of code block" "end of code block" $end Reduce derivation $accept @@ -8504,427 +8583,362 @@ State 469 `-> 233: expressions expression_any `-> 218: expression_while_loop `-> 72: "while" expr expression_block - `-> 406: expr_call . `-> 211: "begin of code block" expressions "end of code block" - - + `-> 407: expr_call . `-> 211: "begin of code block" expressions "end of code block" -State 470 - - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - 626 type_declaration_no_options_no_dim: "typedecl" '(' expr . ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - ')' shift, and go to state 676 - - -State 471 - - 367 expr: expr_mtag . - - $default reduce using rule 367 (expr) State 472 - 356 expr_call: basic_type_declaration . '(' ')' - 357 | basic_type_declaration . '(' expr_list ')' - - '(' shift, and go to state 677 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + 627 type_declaration_no_options_no_dim: "typedecl" '(' expr . ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + ')' shift, and go to state 678 State 473 - 363 expr: make_decl . + 368 expr: expr_mtag . - $default reduce using rule 363 (expr) + $default reduce using rule 368 (expr) State 474 - 697 make_decl: make_struct_decl . + 357 expr_call: basic_type_declaration . '(' ')' + 358 | basic_type_declaration . '(' expr_list ')' - $default reduce using rule 697 (make_decl) + '(' shift, and go to state 679 State 475 - 701 make_decl: make_tuple_call . + 364 expr: make_decl . - $default reduce using rule 701 (make_decl) + $default reduce using rule 364 (expr) State 476 - 698 make_decl: make_dim_decl . + 698 make_decl: make_struct_decl . $default reduce using rule 698 (make_decl) State 477 - 699 make_decl: make_table_decl . + 702 make_decl: make_tuple_call . - $default reduce using rule 699 (make_decl) + $default reduce using rule 702 (make_decl) State 478 - 700 make_decl: array_comprehension . + 699 make_decl: make_dim_decl . - $default reduce using rule 700 (make_decl) + $default reduce using rule 699 (make_decl) State 479 - 654 type_declaration_no_options_no_dim: "iterator" '<' $@46 . type_declaration '>' $@47 - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 260 - type_declaration_no_options_no_dim go to state 261 - type_declaration go to state 678 + 700 make_decl: make_table_decl . + + $default reduce using rule 700 (make_decl) State 480 - 644 type_declaration_no_options_no_dim: "smart_ptr" '<' $@40 . type_declaration '>' $@41 - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 260 - type_declaration_no_options_no_dim go to state 261 - type_declaration go to state 679 + 701 make_decl: array_comprehension . + $default reduce using rule 701 (make_decl) -State 481 - 601 auto_type_declaration: "auto" '(' "name" . ')' +State 481 - ')' shift, and go to state 680 + 655 type_declaration_no_options_no_dim: "iterator" '<' $@46 . type_declaration '>' $@47 + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 262 + type_declaration_no_options_no_dim go to state 263 + type_declaration go to state 680 State 482 - 610 bitfield_type_declaration: "bitfield" '<' $@35 . bitfield_bits '>' $@36 - - "name" shift, and go to state 681 - - bitfield_bits go to state 682 + 645 type_declaration_no_options_no_dim: "smart_ptr" '<' $@40 . type_declaration '>' $@41 + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 262 + type_declaration_no_options_no_dim go to state 263 + type_declaration go to state 681 State 483 - 658 type_declaration_no_options_no_dim: "block" '<' $@48 . type_declaration '>' $@49 - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 260 - type_declaration_no_options_no_dim go to state 261 - type_declaration go to state 683 + 602 auto_type_declaration: "auto" '(' "name" . ')' + ')' shift, and go to state 682 -State 484 - 661 type_declaration_no_options_no_dim: "block" '<' $@50 . optional_function_argument_list optional_function_type '>' $@51 +State 484 - '(' shift, and go to state 319 + 611 bitfield_type_declaration: "bitfield" '<' $@35 . bitfield_bits '>' $@36 - $default reduce using rule 114 (optional_function_argument_list) + "name" shift, and go to state 683 - optional_function_argument_list go to state 684 + bitfield_bits go to state 684 State 485 - 665 type_declaration_no_options_no_dim: "function" '<' $@52 . type_declaration '>' $@53 - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 260 - type_declaration_no_options_no_dim go to state 261 + 659 type_declaration_no_options_no_dim: "block" '<' $@48 . type_declaration '>' $@49 + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 262 + type_declaration_no_options_no_dim go to state 263 type_declaration go to state 685 State 486 - 668 type_declaration_no_options_no_dim: "function" '<' $@54 . optional_function_argument_list optional_function_type '>' $@55 + 662 type_declaration_no_options_no_dim: "block" '<' $@50 . optional_function_argument_list optional_function_type '>' $@51 - '(' shift, and go to state 319 + '(' shift, and go to state 321 $default reduce using rule 114 (optional_function_argument_list) @@ -8933,66 +8947,67 @@ State 486 State 487 - 672 type_declaration_no_options_no_dim: "lambda" '<' $@56 . type_declaration '>' $@57 - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 260 - type_declaration_no_options_no_dim go to state 261 + 666 type_declaration_no_options_no_dim: "function" '<' $@52 . type_declaration '>' $@53 + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 262 + type_declaration_no_options_no_dim go to state 263 type_declaration go to state 687 State 488 - 675 type_declaration_no_options_no_dim: "lambda" '<' $@58 . optional_function_argument_list optional_function_type '>' $@59 + 669 type_declaration_no_options_no_dim: "function" '<' $@54 . optional_function_argument_list optional_function_type '>' $@55 - '(' shift, and go to state 319 + '(' shift, and go to state 321 $default reduce using rule 114 (optional_function_argument_list) @@ -9001,2304 +9016,2384 @@ State 488 State 489 - 678 type_declaration_no_options_no_dim: "tuple" '<' $@60 . tuple_type_list '>' $@61 - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 507 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - tuple_type go to state 689 - tuple_type_list go to state 690 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 260 - type_declaration_no_options_no_dim go to state 261 - type_declaration go to state 510 + 673 type_declaration_no_options_no_dim: "lambda" '<' $@56 . type_declaration '>' $@57 + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 262 + type_declaration_no_options_no_dim go to state 263 + type_declaration go to state 689 State 490 - 681 type_declaration_no_options_no_dim: "variant" '<' $@62 . variant_type_list '>' $@63 + 676 type_declaration_no_options_no_dim: "lambda" '<' $@58 . optional_function_argument_list optional_function_type '>' $@59 - "name" shift, and go to state 512 + '(' shift, and go to state 321 + + $default reduce using rule 114 (optional_function_argument_list) - variant_type go to state 691 - variant_type_list go to state 692 + optional_function_argument_list go to state 690 State 491 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - 602 auto_type_declaration: "$t" '(' expr . ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - ')' shift, and go to state 693 + 679 type_declaration_no_options_no_dim: "tuple" '<' $@60 . tuple_type_list '>' $@61 + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 509 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + tuple_type go to state 691 + tuple_type_list go to state 692 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 262 + type_declaration_no_options_no_dim go to state 263 + type_declaration go to state 512 State 492 - 629 type_declaration_no_options_no_dim: '$' name_in_namespace '<' . $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' + 682 type_declaration_no_options_no_dim: "variant" '<' $@62 . variant_type_list '>' $@63 - $default reduce using rule 628 ($@39) + "name" shift, and go to state 514 - $@39 go to state 694 + variant_type go to state 693 + variant_type_list go to state 694 State 493 - 627 type_declaration_no_options_no_dim: '$' name_in_namespace '(' . optional_expr_list ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - $default reduce using rule 235 (optional_expr_list) - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - optional_expr_list go to state 695 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - expr_list go to state 696 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 632 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + 603 auto_type_declaration: "$t" '(' expr . ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + ')' shift, and go to state 695 State 494 - 639 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "==" "const" . + 630 type_declaration_no_options_no_dim: '$' name_in_namespace '<' . $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' - $default reduce using rule 639 (type_declaration_no_options_no_dim) + $default reduce using rule 629 ($@39) + + $@39 go to state 696 State 495 - 640 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "==" '&' . + 628 type_declaration_no_options_no_dim: '$' name_in_namespace '(' . optional_expr_list ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 - $default reduce using rule 640 (type_declaration_no_options_no_dim) + $default reduce using rule 235 (optional_expr_list) + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + optional_expr_list go to state 697 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + expr_list go to state 698 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 634 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 496 - 633 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' "const" . + 640 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "==" "const" . - $default reduce using rule 633 (type_declaration_no_options_no_dim) + $default reduce using rule 640 (type_declaration_no_options_no_dim) State 497 - 635 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '&' . + 641 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "==" '&' . - $default reduce using rule 635 (type_declaration_no_options_no_dim) + $default reduce using rule 641 (type_declaration_no_options_no_dim) State 498 - 630 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '[' . ']' + 634 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' "const" . - ']' shift, and go to state 697 + $default reduce using rule 634 (type_declaration_no_options_no_dim) State 499 - 638 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '#' . + 636 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '&' . - $default reduce using rule 638 (type_declaration_no_options_no_dim) + $default reduce using rule 636 (type_declaration_no_options_no_dim) State 500 - 614 dim_list: '[' ']' . + 631 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '[' . ']' - $default reduce using rule 614 (dim_list) + ']' shift, and go to state 699 State 501 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - 613 dim_list: '[' expr . ']' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - ']' shift, and go to state 698 + 639 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '#' . + + $default reduce using rule 639 (type_declaration_no_options_no_dim) State 502 - 615 dim_list: dim_list '[' . expr ']' - 616 | dim_list '[' . ']' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - ']' shift, and go to state 699 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 700 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 615 dim_list: '[' ']' . + + $default reduce using rule 615 (dim_list) State 503 - 684 type_declaration: type_declaration '|' '#' . - - $default reduce using rule 684 (type_declaration) + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + 614 dim_list: '[' expr . ']' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + ']' shift, and go to state 700 State 504 - 683 type_declaration: type_declaration '|' type_declaration_no_options . - - $default reduce using rule 683 (type_declaration) + 616 dim_list: dim_list '[' . expr ']' + 617 | dim_list '[' . ']' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + ']' shift, and go to state 701 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 702 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 505 - 607 bitfield_alias_bits: bitfield_alias_bits ',' . "name" - 760 optional_comma: ',' . + 685 type_declaration: type_declaration '|' '#' . - "name" shift, and go to state 701 - - $default reduce using rule 760 (optional_comma) + $default reduce using rule 685 (type_declaration) State 506 - 696 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma . $@72 "end of code block" + 684 type_declaration: type_declaration '|' type_declaration_no_options . - $default reduce using rule 695 ($@72) - - $@72 go to state 702 + $default reduce using rule 684 (type_declaration) State 507 - 239 name_in_namespace: "name" . - 240 | "name" . "::" "name" - 481 tuple_type: "name" . ':' type_declaration + 608 bitfield_alias_bits: bitfield_alias_bits ',' . "name" + 761 optional_comma: ',' . - "::" shift, and go to state 91 - ':' shift, and go to state 703 + "name" shift, and go to state 703 - $default reduce using rule 239 (name_in_namespace) + $default reduce using rule 761 (optional_comma) State 508 - 485 tuple_alias_type_list: tuple_alias_type_list "end of expression" . + 697 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma . $@72 "end of code block" - $default reduce using rule 485 (tuple_alias_type_list) + $default reduce using rule 696 ($@72) + + $@72 go to state 704 State 509 - 486 tuple_alias_type_list: tuple_alias_type_list tuple_type . "end of expression" + 239 name_in_namespace: "name" . + 240 | "name" . "::" "name" + 482 tuple_type: "name" . ':' type_declaration + + "::" shift, and go to state 93 + ':' shift, and go to state 705 - "end of expression" shift, and go to state 704 + $default reduce using rule 239 (name_in_namespace) State 510 - 480 tuple_type: type_declaration . - 683 type_declaration: type_declaration . '|' type_declaration_no_options - 684 | type_declaration . '|' '#' - - '|' shift, and go to state 370 + 486 tuple_alias_type_list: tuple_alias_type_list "end of expression" . - $default reduce using rule 480 (tuple_type) + $default reduce using rule 486 (tuple_alias_type_list) State 511 - 688 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 . "end of code block" + 487 tuple_alias_type_list: tuple_alias_type_list tuple_type . "end of expression" - "end of code block" shift, and go to state 705 + "end of expression" shift, and go to state 706 State 512 - 487 variant_type: "name" . ':' type_declaration + 481 tuple_type: type_declaration . + 684 type_declaration: type_declaration . '|' type_declaration_no_options + 685 | type_declaration . '|' '#' + + '|' shift, and go to state 372 - ':' shift, and go to state 706 + $default reduce using rule 481 (tuple_type) State 513 - 491 variant_alias_type_list: variant_alias_type_list "end of expression" . + 689 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 . "end of code block" - $default reduce using rule 491 (variant_alias_type_list) + "end of code block" shift, and go to state 707 State 514 - 492 variant_alias_type_list: variant_alias_type_list variant_type . "end of expression" + 488 variant_type: "name" . ':' type_declaration - "end of expression" shift, and go to state 707 + ':' shift, and go to state 708 State 515 - 692 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 . "end of code block" + 492 variant_alias_type_list: variant_alias_type_list "end of expression" . - "end of code block" shift, and go to state 708 + $default reduce using rule 492 (variant_alias_type_list) State 516 - 178 function_name: "operator" '?' "as" "name" . + 493 variant_alias_type_list: variant_alias_type_list variant_type . "end of expression" - $default reduce using rule 178 (function_name) + "end of expression" shift, and go to state 709 State 517 - 168 function_name: "operator" '.' "name" ":=" . + 693 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 . "end of code block" - $default reduce using rule 168 (function_name) + "end of code block" shift, and go to state 710 State 518 - 477 function_argument_declaration: "$a" '(' . expr ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 709 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 178 function_name: "operator" '?' "as" "name" . + + $default reduce using rule 178 (function_name) State 519 - 260 kwd_let_var_or_nothing: "let" . + 168 function_name: "operator" '.' "name" ":=" . - $default reduce using rule 260 (kwd_let_var_or_nothing) + $default reduce using rule 168 (function_name) State 520 - 261 kwd_let_var_or_nothing: "var" . + 478 function_argument_declaration: "$a" '(' . expr ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 711 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 + + +State 521 + + 261 kwd_let_var_or_nothing: "let" . $default reduce using rule 261 (kwd_let_var_or_nothing) -State 521 +State 522 - 476 function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing . variable_declaration + 262 kwd_let_var_or_nothing: "var" . + + $default reduce using rule 262 (kwd_let_var_or_nothing) - "$i" shift, and go to state 710 - "name" shift, and go to state 711 - variable_declaration go to state 712 - variable_name_with_pos_list go to state 713 +State 523 + 477 function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing . variable_declaration -State 522 + "$i" shift, and go to state 712 + "name" shift, and go to state 713 - 479 function_argument_list: function_argument_list "end of expression" . function_argument_declaration + variable_declaration go to state 714 + variable_name_with_pos_list go to state 715 - "$a" shift, and go to state 382 - '@' shift, and go to state 206 - $default reduce using rule 456 (optional_field_annotation) +State 524 - metadata_argument_list go to state 207 - optional_field_annotation go to state 384 - function_argument_declaration go to state 714 + 480 function_argument_list: function_argument_list "end of expression" . function_argument_declaration + "$a" shift, and go to state 384 + '@' shift, and go to state 208 -State 523 + $default reduce using rule 457 (optional_field_annotation) + + metadata_argument_list go to state 209 + optional_field_annotation go to state 386 + function_argument_declaration go to state 716 + + +State 525 116 optional_function_argument_list: '(' function_argument_list ')' . $default reduce using rule 116 (optional_function_argument_list) -State 524 +State 526 118 optional_function_type: ':' type_declaration . - 683 type_declaration: type_declaration . '|' type_declaration_no_options - 684 | type_declaration . '|' '#' + 684 type_declaration: type_declaration . '|' type_declaration_no_options + 685 | type_declaration . '|' '#' - '|' shift, and go to state 370 + '|' shift, and go to state 372 $default reduce using rule 118 (optional_function_type) -State 525 +State 527 234 expressions: expressions error . $default reduce using rule 234 (expressions) -State 526 +State 528 72 expression_while_loop: "while" . expr expression_block - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 715 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 717 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 -State 527 +State 529 59 if_or_static_if: "if" . $default reduce using rule 59 (if_or_static_if) -State 528 +State 530 60 if_or_static_if: "static_if" . $default reduce using rule 60 (if_or_static_if) -State 529 +State 531 70 expression_for_loop: "for" . '(' variable_name_with_pos_list "in" expr_list ')' expression_block - '(' shift, and go to state 716 + '(' shift, and go to state 718 -State 530 +State 532 - 253 expression_return: "return" . - 254 | "return" . expr - 255 | "return" . "<-" expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "<-" shift, and go to state 717 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 254 expression_return: "return" . + 255 | "return" . expr + 256 | "return" . "<-" expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "<-" shift, and go to state 719 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - $default reduce using rule 253 (expression_return) - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 718 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + $default reduce using rule 254 (expression_return) + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 720 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 -State 531 - 251 expression_break: "break" . +State 533 - $default reduce using rule 251 (expression_break) + 252 expression_break: "break" . + $default reduce using rule 252 (expression_break) -State 532 - 259 expression_try_catch: "try" . expression_block "recover" expression_block +State 534 - "begin of code block" shift, and go to state 321 + 260 expression_try_catch: "try" . expression_block "recover" expression_block - expression_block go to state 719 + "begin of code block" shift, and go to state 323 + expression_block go to state 721 -State 533 - 241 expression_delete: "delete" . expr - 242 | "delete" . "explicit" expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "explicit" shift, and go to state 720 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 +State 535 + + 242 expression_delete: "delete" . expr + 243 | "delete" . "explicit" expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "explicit" shift, and go to state 722 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 721 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 723 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 -State 534 +State 536 73 expression_with: "with" . expr expression_block - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 722 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 724 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 -State 535 +State 537 74 expression_with_alias: "assume" . "name" '=' expr - "name" shift, and go to state 723 + "name" shift, and go to state 725 -State 536 +State 538 - 252 expression_continue: "continue" . + 253 expression_continue: "continue" . - $default reduce using rule 252 (expression_continue) + $default reduce using rule 253 (expression_continue) -State 537 +State 539 231 expression_any: "pass" . "end of expression" - "end of expression" shift, and go to state 724 + "end of expression" shift, and go to state 726 -State 538 +State 540 51 expression_label: "label" . "integer constant" ':' - "integer constant" shift, and go to state 725 + "integer constant" shift, and go to state 727 -State 539 +State 541 52 expression_goto: "goto" . "label" "integer constant" 53 | "goto" . expr - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "label" shift, and go to state 726 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "label" shift, and go to state 728 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 727 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 729 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 -State 540 +State 542 71 expression_unsafe: "unsafe" . expression_block - "begin of code block" shift, and go to state 321 + "begin of code block" shift, and go to state 323 - expression_block go to state 728 + expression_block go to state 730 -State 541 +State 543 - 256 expression_yield_no_pipe: "yield" . expr - 257 | "yield" . "<-" expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "<-" shift, and go to state 729 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 257 expression_yield_no_pipe: "yield" . expr + 258 | "yield" . "<-" expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "<-" shift, and go to state 731 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 730 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 732 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 -State 542 +State 544 211 expression_block: "begin of code block" expressions "end of code block" . 212 | "begin of code block" expressions "end of code block" . "finally" "begin of code block" expressions "end of code block" - "finally" shift, and go to state 731 + "finally" shift, and go to state 733 $default reduce using rule 211 (expression_block) -State 543 +State 545 214 expression_any: "end of expression" . $default reduce using rule 214 (expression_any) -State 544 +State 546 229 expression_any: expression_label . "end of expression" - "end of expression" shift, and go to state 732 + "end of expression" shift, and go to state 734 -State 545 +State 547 230 expression_any: expression_goto . "end of expression" - "end of expression" shift, and go to state 733 + "end of expression" shift, and go to state 735 -State 546 +State 548 68 expression_if_then_else: if_or_static_if . '(' expr ')' expression_block expression_else - '(' shift, and go to state 734 + '(' shift, and go to state 736 -State 547 +State 549 69 expression_if_then_else: expression_if_one_liner . "if" '(' expr ')' expression_else_one_liner "end of expression" - "if" shift, and go to state 735 + "if" shift, and go to state 737 -State 548 +State 550 227 expression_any: expression_if_then_else . $default reduce using rule 227 (expression_any) -State 549 +State 551 222 expression_any: expression_for_loop . $default reduce using rule 222 (expression_any) -State 550 +State 552 219 expression_any: expression_unsafe . $default reduce using rule 219 (expression_any) -State 551 +State 553 218 expression_any: expression_while_loop . $default reduce using rule 218 (expression_any) -State 552 +State 554 220 expression_any: expression_with . $default reduce using rule 220 (expression_any) -State 553 +State 555 221 expression_any: expression_with_alias . $default reduce using rule 221 (expression_any) -State 554 +State 556 233 expressions: expressions expression_any . $default reduce using rule 233 (expressions) -State 555 +State 557 216 expression_any: expression_delete . "end of expression" - "end of expression" shift, and go to state 736 + "end of expression" shift, and go to state 738 -State 556 +State 558 66 expression_if_one_liner: expression_break . 223 expression_any: expression_break . "end of expression" - "end of expression" shift, and go to state 737 + "end of expression" shift, and go to state 739 $default reduce using rule 66 (expression_if_one_liner) -State 557 +State 559 67 expression_if_one_liner: expression_continue . 224 expression_any: expression_continue . "end of expression" - "end of expression" shift, and go to state 738 + "end of expression" shift, and go to state 740 $default reduce using rule 67 (expression_if_one_liner) -State 558 +State 560 64 expression_if_one_liner: expression_return . 225 expression_any: expression_return . "end of expression" - "end of expression" shift, and go to state 739 + "end of expression" shift, and go to state 741 $default reduce using rule 64 (expression_if_one_liner) -State 559 +State 561 65 expression_if_one_liner: expression_yield_no_pipe . - 258 expression_yield: expression_yield_no_pipe . "end of expression" + 259 expression_yield: expression_yield_no_pipe . "end of expression" - "end of expression" shift, and go to state 740 + "end of expression" shift, and go to state 742 $default reduce using rule 65 (expression_if_one_liner) -State 560 +State 562 226 expression_any: expression_yield . $default reduce using rule 226 (expression_any) -State 561 +State 563 228 expression_any: expression_try_catch . $default reduce using rule 228 (expression_any) -State 562 +State 564 - 271 expression_let: kwd_let . optional_in_scope let_variable_declaration - 272 | kwd_let . optional_in_scope tuple_expansion_variable_declaration + 272 expression_let: kwd_let . optional_in_scope let_variable_declaration + 273 | kwd_let . optional_in_scope tuple_expansion_variable_declaration - "inscope" shift, and go to state 741 + "inscope" shift, and go to state 743 - $default reduce using rule 266 (optional_in_scope) + $default reduce using rule 267 (optional_in_scope) - optional_in_scope go to state 742 + optional_in_scope go to state 744 -State 563 +State 565 217 expression_any: expression_let . $default reduce using rule 217 (expression_any) -State 564 +State 566 215 expression_any: expr_assign . "end of expression" - "end of expression" shift, and go to state 743 + "end of expression" shift, and go to state 745 -State 565 +State 567 63 expression_if_one_liner: expr . - 314 expr_assign: expr . - 315 | expr . '=' expr - 316 | expr . "<-" expr - 317 | expr . ":=" expr - 318 | expr . "&=" expr - 319 | expr . "|=" expr - 320 | expr . "^=" expr - 321 | expr . "&&=" expr - 322 | expr . "||=" expr - 323 | expr . "^^=" expr - 324 | expr . "+=" expr - 325 | expr . "-=" expr - 326 | expr . "*=" expr - 327 | expr . "/=" expr - 328 | expr . "%=" expr - 329 | expr . "<<=" expr - 330 | expr . ">>=" expr - 331 | expr . "<<<=" expr - 332 | expr . ">>>=" expr - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "+=" shift, and go to state 744 - "-=" shift, and go to state 745 - "/=" shift, and go to state 746 - "*=" shift, and go to state 747 - "%=" shift, and go to state 748 - "&=" shift, and go to state 749 - "|=" shift, and go to state 750 - "^=" shift, and go to state 751 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - "<<=" shift, and go to state 752 - ">>=" shift, and go to state 753 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "<-" shift, and go to state 754 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - ":=" shift, and go to state 755 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "<<<=" shift, and go to state 756 - ">>>=" shift, and go to state 757 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - "&&=" shift, and go to state 758 - "||=" shift, and go to state 759 - "^^=" shift, and go to state 760 - ".." shift, and go to state 662 - '=' shift, and go to state 761 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - - "end of expression" reduce using rule 314 (expr_assign) + 315 expr_assign: expr . + 316 | expr . '=' expr + 317 | expr . "<-" expr + 318 | expr . ":=" expr + 319 | expr . "&=" expr + 320 | expr . "|=" expr + 321 | expr . "^=" expr + 322 | expr . "&&=" expr + 323 | expr . "||=" expr + 324 | expr . "^^=" expr + 325 | expr . "+=" expr + 326 | expr . "-=" expr + 327 | expr . "*=" expr + 328 | expr . "/=" expr + 329 | expr . "%=" expr + 330 | expr . "<<=" expr + 331 | expr . ">>=" expr + 332 | expr . "<<<=" expr + 333 | expr . ">>>=" expr + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "+=" shift, and go to state 746 + "-=" shift, and go to state 747 + "/=" shift, and go to state 748 + "*=" shift, and go to state 749 + "%=" shift, and go to state 750 + "&=" shift, and go to state 751 + "|=" shift, and go to state 752 + "^=" shift, and go to state 753 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + "<<=" shift, and go to state 754 + ">>=" shift, and go to state 755 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "<-" shift, and go to state 756 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + ":=" shift, and go to state 757 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "<<<=" shift, and go to state 758 + ">>>=" shift, and go to state 759 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + "&&=" shift, and go to state 760 + "||=" shift, and go to state 761 + "^^=" shift, and go to state 762 + ".." shift, and go to state 664 + '=' shift, and go to state 763 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + + "end of expression" reduce using rule 315 (expr_assign) $default reduce using rule 63 (expression_if_one_liner) -State 566 - - 524 enum_expression: "name" . - 525 | "name" . '=' expr - - '=' shift, and go to state 762 - - $default reduce using rule 524 (enum_expression) - - -State 567 - - 527 enum_list: enum_expression . - - $default reduce using rule 527 (enum_list) - - State 568 - 528 enum_list: enum_list . ',' enum_expression - 543 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list . optional_comma $@32 "end of code block" - - ',' shift, and go to state 763 + 525 enum_expression: "name" . + 526 | "name" . '=' expr - $default reduce using rule 759 (optional_comma) + '=' shift, and go to state 764 - optional_comma go to state 764 + $default reduce using rule 525 (enum_expression) State 569 - 545 optional_structure_parent: ':' name_in_namespace . + 528 enum_list: enum_expression . - $default reduce using rule 545 (optional_structure_parent) + $default reduce using rule 528 (enum_list) State 570 - 471 struct_variable_declaration_list: struct_variable_declaration_list . $@25 structure_variable_declaration "end of expression" - 473 | struct_variable_declaration_list . optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" - 475 | struct_variable_declaration_list . optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block - 555 optional_struct_variable_declaration_list: "begin of code block" struct_variable_declaration_list . "end of code block" + 529 enum_list: enum_list . ',' enum_expression + 544 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list . optional_comma $@32 "end of code block" - "end of code block" shift, and go to state 765 - '[' shift, and go to state 15 + ',' shift, and go to state 765 - "def" reduce using rule 112 (optional_annotation_list) - $default reduce using rule 470 ($@25) + $default reduce using rule 760 (optional_comma) - optional_annotation_list go to state 766 - $@25 go to state 767 + optional_comma go to state 766 State 571 - 515 global_variable_declaration_list: global_variable_declaration_list $@28 optional_field_annotation let_variable_declaration . + 546 optional_structure_parent: ':' name_in_namespace . - $default reduce using rule 515 (global_variable_declaration_list) + $default reduce using rule 546 (optional_structure_parent) State 572 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - 506 let_variable_name_with_pos_list: "$i" '(' expr . ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - ')' shift, and go to state 768 + 472 struct_variable_declaration_list: struct_variable_declaration_list . $@25 structure_variable_declaration "end of expression" + 474 | struct_variable_declaration_list . optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" + 476 | struct_variable_declaration_list . optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block + 556 optional_struct_variable_declaration_list: "begin of code block" struct_variable_declaration_list . "end of code block" + "end of code block" shift, and go to state 767 + '[' shift, and go to state 15 -State 573 + "def" reduce using rule 112 (optional_annotation_list) + $default reduce using rule 471 ($@25) - 507 let_variable_name_with_pos_list: "name" "aka" "name" . + optional_annotation_list go to state 768 + $@25 go to state 769 - $default reduce using rule 507 (let_variable_name_with_pos_list) +State 573 -State 574 + 516 global_variable_declaration_list: global_variable_declaration_list $@28 optional_field_annotation let_variable_declaration . - 508 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" . - 509 | let_variable_name_with_pos_list ',' "name" . "aka" "name" + $default reduce using rule 516 (global_variable_declaration_list) - "aka" shift, and go to state 769 - $default reduce using rule 508 (let_variable_name_with_pos_list) +State 574 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + 507 let_variable_name_with_pos_list: "$i" '(' expr . ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + ')' shift, and go to state 770 -State 575 - 510 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options . "end of expression" - 511 | let_variable_name_with_pos_list ':' type_declaration_no_options . copy_or_move_or_clone expr "end of expression" +State 575 - "<-" shift, and go to state 576 - ":=" shift, and go to state 577 - "end of expression" shift, and go to state 770 - '=' shift, and go to state 578 + 508 let_variable_name_with_pos_list: "name" "aka" "name" . - copy_or_move_or_clone go to state 771 + $default reduce using rule 508 (let_variable_name_with_pos_list) State 576 - 501 copy_or_move_or_clone: "<-" . + 509 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" . + 510 | let_variable_name_with_pos_list ',' "name" . "aka" "name" - $default reduce using rule 501 (copy_or_move_or_clone) + "aka" shift, and go to state 771 + + $default reduce using rule 509 (let_variable_name_with_pos_list) State 577 - 502 copy_or_move_or_clone: ":=" . + 511 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options . "end of expression" + 512 | let_variable_name_with_pos_list ':' type_declaration_no_options . copy_or_move_or_clone expr "end of expression" - $default reduce using rule 502 (copy_or_move_or_clone) + "<-" shift, and go to state 578 + ":=" shift, and go to state 579 + "end of expression" shift, and go to state 772 + '=' shift, and go to state 580 + + copy_or_move_or_clone go to state 773 State 578 - 500 copy_or_move_or_clone: '=' . + 502 copy_or_move_or_clone: "<-" . - $default reduce using rule 500 (copy_or_move_or_clone) + $default reduce using rule 502 (copy_or_move_or_clone) State 579 - 512 let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone . expr "end of expression" - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 772 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 503 copy_or_move_or_clone: ":=" . + + $default reduce using rule 503 (copy_or_move_or_clone) State 580 - 625 type_declaration_no_options_no_dim: "type" '<' $@37 type_declaration . '>' $@38 - 683 type_declaration: type_declaration . '|' type_declaration_no_options - 684 | type_declaration . '|' '#' + 501 copy_or_move_or_clone: '=' . - '|' shift, and go to state 370 - '>' shift, and go to state 773 + $default reduce using rule 501 (copy_or_move_or_clone) State 581 - 648 type_declaration_no_options_no_dim: "array" '<' $@42 type_declaration . '>' $@43 - 683 type_declaration: type_declaration . '|' type_declaration_no_options - 684 | type_declaration . '|' '#' - - '|' shift, and go to state 370 - '>' shift, and go to state 774 + 513 let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone . expr "end of expression" + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 774 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 582 - 651 type_declaration_no_options_no_dim: "table" '<' $@44 table_type_pair . '>' $@45 + 626 type_declaration_no_options_no_dim: "type" '<' $@37 type_declaration . '>' $@38 + 684 type_declaration: type_declaration . '|' type_declaration_no_options + 685 | type_declaration . '|' '#' + '|' shift, and go to state 372 '>' shift, and go to state 775 State 583 - 611 table_type_pair: type_declaration . - 612 | type_declaration . "end of expression" type_declaration - 683 type_declaration: type_declaration . '|' type_declaration_no_options - 684 | type_declaration . '|' '#' + 649 type_declaration_no_options_no_dim: "array" '<' $@42 type_declaration . '>' $@43 + 684 type_declaration: type_declaration . '|' type_declaration_no_options + 685 | type_declaration . '|' '#' - "end of expression" shift, and go to state 776 - '|' shift, and go to state 370 - - $default reduce using rule 611 (table_type_pair) + '|' shift, and go to state 372 + '>' shift, and go to state 776 State 584 - 717 make_struct_decl: "struct" '<' . $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' - - $default reduce using rule 715 ($@73) + 652 type_declaration_no_options_no_dim: "table" '<' $@44 table_type_pair . '>' $@45 - $@73 go to state 777 + '>' shift, and go to state 777 State 585 - 720 make_struct_decl: "class" '<' . $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' + 612 table_type_pair: type_declaration . + 613 | type_declaration . "end of expression" type_declaration + 684 type_declaration: type_declaration . '|' type_declaration_no_options + 685 | type_declaration . '|' '#' - $default reduce using rule 718 ($@75) + "end of expression" shift, and go to state 778 + '|' shift, and go to state 372 - $@75 go to state 778 + $default reduce using rule 612 (table_type_pair) State 586 - 245 new_type_declaration: '<' . $@3 type_declaration '>' $@4 + 718 make_struct_decl: "struct" '<' . $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' - $default reduce using rule 243 ($@3) + $default reduce using rule 716 ($@73) - $@3 go to state 779 + $@73 go to state 779 State 587 - 248 expr_new: "new" new_type_declaration . '(' use_initializer ')' - 249 | "new" new_type_declaration . '(' use_initializer make_struct_single ')' + 721 make_struct_decl: "class" '<' . $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' + + $default reduce using rule 719 ($@75) - '(' shift, and go to state 780 + $@75 go to state 780 State 588 - 246 expr_new: "new" structure_type_declaration . - 247 | "new" structure_type_declaration . '(' optional_expr_list ')' + 246 new_type_declaration: '<' . $@3 type_declaration '>' $@4 + + $default reduce using rule 244 ($@3) + + $@3 go to state 781 + + +State 589 + + 249 expr_new: "new" new_type_declaration . '(' use_initializer ')' + 250 | "new" new_type_declaration . '(' use_initializer make_struct_single ')' - '(' shift, and go to state 781 + '(' shift, and go to state 782 - '(' [reduce using rule 246 (expr_new)] - $default reduce using rule 246 (expr_new) + +State 590 + + 247 expr_new: "new" structure_type_declaration . + 248 | "new" structure_type_declaration . '(' optional_expr_list ')' + + '(' shift, and go to state 783 + + '(' [reduce using rule 247 (expr_new)] + $default reduce using rule 247 (expr_new) shift/reduce conflict on token '(': - 246 expr_new: "new" structure_type_declaration . - 247 expr_new: "new" structure_type_declaration . '(' optional_expr_list ')' + 247 expr_new: "new" structure_type_declaration . + 248 expr_new: "new" structure_type_declaration . '(' optional_expr_list ')' First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' "new" structure_type_declaration . '(' optional_expr_list ')' expression_any "end of code block" $end Shift derivation $accept @@ -11310,8 +11405,8 @@ State 588 `-> 233: expressions expression_any `-> 233: expressions expression_with_alias `-> 74: "assume" "name" '=' expr - `-> 432: expr_new - `-> 247: "new" structure_type_declaration . '(' optional_expr_list ')' + `-> 433: expr_new + `-> 248: "new" structure_type_declaration . '(' optional_expr_list ')' Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' "new" structure_type_declaration . '(' expr_list optional_comma ')' "end of expression" "end of code block" $end Reduce derivation $accept @@ -11322,2545 +11417,2562 @@ State 588 `-> 211: "begin of code block" expressions "end of code block" `-> 233: expressions expression_any `-> 233: expressions expression_any `-> 215: expr_assign "end of expression" - `-> 221: expression_with_alias `-> 314: expr - `-> 74: "assume" "name" '=' expr `-> 398: '(' expr_list optional_comma ')' - `-> 432: expr_new - `-> 246: "new" structure_type_declaration . - - + `-> 221: expression_with_alias `-> 315: expr + `-> 74: "assume" "name" '=' expr `-> 399: '(' expr_list optional_comma ')' + `-> 433: expr_new + `-> 247: "new" structure_type_declaration . -State 589 - - 250 expr_new: "new" make_decl . - - $default reduce using rule 250 (expr_new) - - -State 590 - - 285 expr_type_info: "typeinfo" '(' . name_in_namespace expr ')' - 286 | "typeinfo" '(' . name_in_namespace '<' "name" '>' expr ')' - 287 | "typeinfo" '(' . name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' - - "name" shift, and go to state 55 - - name_in_namespace go to state 782 State 591 - 284 expr_type_decl: "type" '<' . $@11 type_declaration '>' $@12 + 251 expr_new: "new" make_decl . - $default reduce using rule 282 ($@11) - - $@11 go to state 783 + $default reduce using rule 251 (expr_new) State 592 - 736 make_dim_decl: "array" "struct" . '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' + 286 expr_type_info: "typeinfo" '(' . name_in_namespace expr ')' + 287 | "typeinfo" '(' . name_in_namespace '<' "name" '>' expr ')' + 288 | "typeinfo" '(' . name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' + + "::" shift, and go to state 55 + "name" shift, and go to state 56 - '<' shift, and go to state 784 + name_in_namespace go to state 784 State 593 - 739 make_dim_decl: "array" "tuple" . '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' + 285 expr_type_decl: "type" '<' . $@11 type_declaration '>' $@12 - '<' shift, and go to state 785 + $default reduce using rule 283 ($@11) + + $@11 go to state 785 State 594 - 742 make_dim_decl: "array" "variant" . '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' + 737 make_dim_decl: "array" "struct" . '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' '<' shift, and go to state 786 State 595 - 746 make_dim_decl: "array" '<' . $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' - - $default reduce using rule 744 ($@89) + 740 make_dim_decl: "array" "tuple" . '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' - $@89 go to state 787 + '<' shift, and go to state 787 State 596 - 743 make_dim_decl: "array" '(' . expr_list optional_comma ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - expr_list go to state 788 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 632 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 743 make_dim_decl: "array" "variant" . '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' + + '<' shift, and go to state 788 State 597 - 755 make_table_decl: "table" '<' . type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - 756 | "table" '<' . type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 789 - type_declaration_no_options_no_dim go to state 261 + 747 make_dim_decl: "array" '<' . $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' + + $default reduce using rule 745 ($@89) + + $@89 go to state 789 State 598 - 754 make_table_decl: "table" '(' . expr_map_tuple_list optional_comma ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 744 make_dim_decl: "array" '(' . expr_list optional_comma ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 621 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_map_tuple go to state 622 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - expr_map_tuple_list go to state 790 - make_table_decl go to state 477 - array_comprehension go to state 478 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + expr_list go to state 790 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 634 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 599 - 408 expr: "deref" '(' . expr ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 791 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 756 make_table_decl: "table" '<' . type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + 757 | "table" '<' . type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 791 + type_declaration_no_options_no_dim go to state 263 State 600 - 275 expr_cast: "cast" '<' . $@5 type_declaration_no_options '>' $@6 expr - - $default reduce using rule 273 ($@5) - - $@5 go to state 792 + 755 make_table_decl: "table" '(' . expr_map_tuple_list optional_comma ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 623 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_map_tuple go to state 624 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + expr_map_tuple_list go to state 792 + make_table_decl go to state 479 + array_comprehension go to state 480 State 601 - 278 expr_cast: "upcast" '<' . $@7 type_declaration_no_options '>' $@8 expr + 409 expr: "deref" '(' . expr ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 793 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 - $default reduce using rule 276 ($@7) - $@7 go to state 793 +State 602 + 276 expr_cast: "cast" '<' . $@5 type_declaration_no_options '>' $@6 expr -State 602 + $default reduce using rule 274 ($@5) - 409 expr: "addr" '(' . expr ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 794 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + $@5 go to state 794 State 603 - 281 expr_cast: "reinterpret" '<' . $@9 type_declaration_no_options '>' $@10 expr + 279 expr_cast: "upcast" '<' . $@7 type_declaration_no_options '>' $@8 expr - $default reduce using rule 279 ($@9) + $default reduce using rule 277 ($@7) - $@9 go to state 795 + $@7 go to state 795 State 604 - 750 make_dim_decl: "fixed_array" '<' . $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' + 410 expr: "addr" '(' . expr ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 796 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 - $default reduce using rule 748 ($@91) - $@91 go to state 796 +State 605 + 282 expr_cast: "reinterpret" '<' . $@9 type_declaration_no_options '>' $@10 expr -State 605 + $default reduce using rule 280 ($@9) - 747 make_dim_decl: "fixed_array" '(' . expr_list optional_comma ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - expr_list go to state 797 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 632 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + $@9 go to state 797 State 606 - 726 make_struct_decl: "default" '<' . $@79 type_declaration_no_options '>' $@80 use_initializer + 751 make_dim_decl: "fixed_array" '<' . $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' - $default reduce using rule 724 ($@79) + $default reduce using rule 749 ($@91) - $@79 go to state 798 + $@91 go to state 798 State 607 - 732 make_tuple_call: "tuple" '<' . $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' + 748 make_dim_decl: "fixed_array" '(' . expr_list optional_comma ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + expr_list go to state 799 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 634 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 - $default reduce using rule 730 ($@81) - $@81 go to state 799 +State 608 + 727 make_struct_decl: "default" '<' . $@79 type_declaration_no_options '>' $@80 use_initializer -State 608 + $default reduce using rule 725 ($@79) - 729 make_tuple_call: "tuple" '(' . expr_list optional_comma ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - expr_list go to state 800 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 632 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + $@79 go to state 800 State 609 - 723 make_struct_decl: "variant" '<' . $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim ')' + 733 make_tuple_call: "tuple" '<' . $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' - $default reduce using rule 721 ($@77) + $default reduce using rule 731 ($@81) - $@77 go to state 801 + $@81 go to state 801 State 610 - 410 expr: "generator" '<' . type_declaration_no_options '>' optional_capture_list '(' ')' - 411 | "generator" '<' . type_declaration_no_options '>' optional_capture_list '(' expr ')' - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 802 - type_declaration_no_options_no_dim go to state 261 + 730 make_tuple_call: "tuple" '(' . expr_list optional_comma ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + expr_list go to state 802 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 634 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 611 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 394 | "++" expr . - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "->" shift, and go to state 651 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 724 make_struct_decl: "variant" '<' . $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim ')' - $default reduce using rule 394 (expr) + $default reduce using rule 722 ($@77) + $@77 go to state 803 -State 612 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 395 | "--" expr . - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "->" shift, and go to state 651 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - '.' shift, and go to state 674 - '[' shift, and go to state 675 +State 612 - $default reduce using rule 395 (expr) + 411 expr: "generator" '<' . type_declaration_no_options '>' optional_capture_list '(' ')' + 412 | "generator" '<' . type_declaration_no_options '>' optional_capture_list '(' expr ')' + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 804 + type_declaration_no_options_no_dim go to state 263 State 613 - 440 expr_mtag: "$$" '(' . expr ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 803 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 395 | "++" expr . + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "->" shift, and go to state 653 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + + $default reduce using rule 395 (expr) State 614 - 441 expr_mtag: "$i" '(' . expr ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 804 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 396 | "--" expr . + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "->" shift, and go to state 653 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + + $default reduce using rule 396 (expr) State 615 - 442 expr_mtag: "$v" '(' . expr ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 441 expr_mtag: "$$" '(' . expr ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 805 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 616 - 443 expr_mtag: "$b" '(' . expr ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 442 expr_mtag: "$i" '(' . expr ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 806 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 617 - 444 expr_mtag: "$a" '(' . expr ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 443 expr_mtag: "$v" '(' . expr ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 807 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 618 - 446 expr_mtag: "$c" '(' . expr ')' '(' ')' - 447 | "$c" '(' . expr ')' '(' expr_list ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 444 expr_mtag: "$b" '(' . expr ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 808 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 619 - 29 string_builder_body: string_builder_body . character_sequence - 30 | string_builder_body . "{" expr "}" - 31 string_builder: "start of the string" string_builder_body . "end of the string" - - STRING_CHARACTER shift, and go to state 151 - STRING_CHARACTER_ESC shift, and go to state 152 - "end of the string" shift, and go to state 809 - "{" shift, and go to state 810 - - character_sequence go to state 811 + 445 expr_mtag: "$a" '(' . expr ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 809 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 620 - 763 array_comprehension: "begin of code block" "for" . variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" - - "$i" shift, and go to state 710 - "name" shift, and go to state 711 - - variable_name_with_pos_list go to state 812 + 447 expr_mtag: "$c" '(' . expr ')' '(' ')' + 448 | "$c" '(' . expr ')' '(' expr_list ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 810 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 621 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - 727 make_map_tuple: expr . "=>" expr - 728 | expr . - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "=>" shift, and go to state 813 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - - $default reduce using rule 728 (make_map_tuple) + 29 string_builder_body: string_builder_body . character_sequence + 30 | string_builder_body . "{" expr "}" + 31 string_builder: "start of the string" string_builder_body . "end of the string" + STRING_CHARACTER shift, and go to state 153 + STRING_CHARACTER_ESC shift, and go to state 154 + "end of the string" shift, and go to state 811 + "{" shift, and go to state 812 -State 622 + character_sequence go to state 813 - 751 expr_map_tuple_list: make_map_tuple . - $default reduce using rule 751 (expr_map_tuple_list) +State 622 + 764 array_comprehension: "begin of code block" "for" . variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" -State 623 + "$i" shift, and go to state 712 + "name" shift, and go to state 713 - 752 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple - 753 make_table_decl: "begin of code block" expr_map_tuple_list . optional_comma "end of code block" + variable_name_with_pos_list go to state 814 - ',' shift, and go to state 814 - $default reduce using rule 759 (optional_comma) +State 623 - optional_comma go to state 815 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + 728 make_map_tuple: expr . "=>" expr + 729 | expr . + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "=>" shift, and go to state 815 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + + $default reduce using rule 729 (make_map_tuple) State 624 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 371 expr: '-' expr . - 372 | expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "->" shift, and go to state 651 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 752 expr_map_tuple_list: make_map_tuple . - $default reduce using rule 371 (expr) + $default reduce using rule 752 (expr_map_tuple_list) State 625 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 370 expr: '+' expr . - 372 | expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "->" shift, and go to state 651 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 753 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple + 754 make_table_decl: "begin of code block" expr_map_tuple_list . optional_comma "end of code block" - $default reduce using rule 370 (expr) + ',' shift, and go to state 816 + + $default reduce using rule 760 (optional_comma) + + optional_comma go to state 817 State 626 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 407 | '*' expr . - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - - $default reduce using rule 407 (expr) + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 372 expr: '-' expr . + 373 | expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "->" shift, and go to state 653 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + + $default reduce using rule 372 (expr) State 627 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 369 expr: '~' expr . - 372 | expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "->" shift, and go to state 651 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 371 expr: '+' expr . + 373 | expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "->" shift, and go to state 653 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 369 (expr) + $default reduce using rule 371 (expr) State 628 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 368 expr: '!' expr . - 372 | expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "->" shift, and go to state 651 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 408 | '*' expr . + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 368 (expr) + $default reduce using rule 408 (expr) State 629 - 761 array_comprehension: '[' "for" . variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - - "$i" shift, and go to state 710 - "name" shift, and go to state 711 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 370 expr: '~' expr . + 373 | expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "->" shift, and go to state 653 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - variable_name_with_pos_list go to state 816 + $default reduce using rule 370 (expr) State 630 - 762 array_comprehension: '[' "iterator" . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 369 expr: '!' expr . + 373 | expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "->" shift, and go to state 653 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - "for" shift, and go to state 817 + $default reduce using rule 369 (expr) State 631 - 289 expr_list: expr_list . ',' expr - 733 make_dim_decl: '[' expr_list . optional_comma ']' + 762 array_comprehension: '[' "for" . variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - ',' shift, and go to state 818 + "$i" shift, and go to state 712 + "name" shift, and go to state 713 - $default reduce using rule 759 (optional_comma) - - optional_comma go to state 819 + variable_name_with_pos_list go to state 818 State 632 - 288 expr_list: expr . - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - - $default reduce using rule 288 (expr_list) + 763 array_comprehension: '[' "iterator" . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + + "for" shift, and go to state 819 State 633 - 289 expr_list: expr_list . ',' expr - 398 expr: '(' expr_list . optional_comma ')' + 290 expr_list: expr_list . ',' expr + 734 make_dim_decl: '[' expr_list . optional_comma ']' - ',' shift, and go to state 818 + ',' shift, and go to state 820 - $default reduce using rule 759 (optional_comma) + $default reduce using rule 760 (optional_comma) - optional_comma go to state 820 + optional_comma go to state 821 State 634 - 295 block_or_lambda: '@' '@' . - 339 func_addr_expr: '@' '@' . func_addr_name - 342 | '@' '@' . '<' $@13 type_declaration_no_options '>' $@14 func_addr_name - 345 | '@' '@' . '<' $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name - 455 expr_mtag: '@' '@' . "$c" '(' expr ')' + 289 expr_list: expr . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + + $default reduce using rule 289 (expr_list) - "$i" shift, and go to state 821 - "$c" shift, and go to state 822 - "name" shift, and go to state 55 - '<' shift, and go to state 823 - $default reduce using rule 295 (block_or_lambda) +State 635 - name_in_namespace go to state 824 - func_addr_name go to state 825 + 290 expr_list: expr_list . ',' expr + 399 expr: '(' expr_list . optional_comma ')' + ',' shift, and go to state 820 -State 635 + $default reduce using rule 760 (optional_comma) - 333 expr_named_call: name_in_namespace '(' . '[' make_struct_fields ']' ')' - 334 | name_in_namespace '(' . expr_list ',' '[' make_struct_fields ']' ')' - 353 expr_call: name_in_namespace '(' . ')' - 354 | name_in_namespace '(' . make_struct_single ')' - 355 | name_in_namespace '(' . expr_list ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "$f" shift, and go to state 826 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 827 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 828 - '(' shift, and go to state 451 - ')' shift, and go to state 829 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - expr_list go to state 830 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 632 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_fields go to state 831 - make_struct_single go to state 832 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + optional_comma go to state 822 State 636 - 304 expr_full_block: block_or_lambda optional_annotation_list . optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block + 296 block_or_lambda: '@' '@' . + 340 func_addr_expr: '@' '@' . func_addr_name + 343 | '@' '@' . '<' $@13 type_declaration_no_options '>' $@14 func_addr_name + 346 | '@' '@' . '<' $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name + 456 expr_mtag: '@' '@' . "$c" '(' expr ')' - '[' shift, and go to state 833 + "::" shift, and go to state 55 + "$i" shift, and go to state 823 + "$c" shift, and go to state 824 + "name" shift, and go to state 56 + '<' shift, and go to state 825 - $default reduce using rule 302 (optional_capture_list) + $default reduce using rule 296 (block_or_lambda) - optional_capture_list go to state 834 + name_in_namespace go to state 826 + func_addr_name go to state 827 State 637 - 306 expr_full_block_assumed_piped: "begin of code block" . expressions "end of code block" + 334 expr_named_call: name_in_namespace '(' . '[' make_struct_fields ']' ')' + 335 | name_in_namespace '(' . expr_list ',' '[' make_struct_fields ']' ')' + 354 expr_call: name_in_namespace '(' . ')' + 355 | name_in_namespace '(' . make_struct_single ')' + 356 | name_in_namespace '(' . expr_list ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "$f" shift, and go to state 828 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 829 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 830 + '(' shift, and go to state 453 + ')' shift, and go to state 831 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + expr_list go to state 832 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 634 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_fields go to state 833 + make_struct_single go to state 834 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 + + +State 638 + + 305 expr_full_block: block_or_lambda optional_annotation_list . optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block + + '[' shift, and go to state 835 + + $default reduce using rule 303 (optional_capture_list) + + optional_capture_list go to state 836 + + +State 639 + + 307 expr_full_block_assumed_piped: "begin of code block" . expressions "end of code block" $default reduce using rule 232 (expressions) - expressions go to state 835 + expressions go to state 837 -State 638 +State 640 - 294 block_or_lambda: '@' . - 295 | '@' . '@' + 295 block_or_lambda: '@' . + 296 | '@' . '@' - '@' shift, and go to state 836 + '@' shift, and go to state 838 - $default reduce using rule 294 (block_or_lambda) + $default reduce using rule 295 (block_or_lambda) -State 639 +State 641 - 305 expr_full_block_assumed_piped: block_or_lambda . optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block + 306 expr_full_block_assumed_piped: block_or_lambda . optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block '[' shift, and go to state 15 '[' [reduce using rule 112 (optional_annotation_list)] $default reduce using rule 112 (optional_annotation_list) - optional_annotation_list go to state 837 + optional_annotation_list go to state 839 shift/reduce conflict on token '[': 112 optional_annotation_list: %empty . @@ -13870,3401 +13982,3409 @@ State 639 $accept `-> 0: program $end `-> 5: program global_let - `-> 523: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration - `-> 510: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" - `-> 506: "$i" '(' expr ')' - `-> 439: expr_call_pipe + `-> 524: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration + `-> 511: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" + `-> 507: "$i" '(' expr ')' + `-> 440: expr_call_pipe `-> 213: expr_full_block_assumed_piped expr_full_block_assumed_piped - `-> 305: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block + `-> 306: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block `-> 113: . '[' annotation_list ']' Second example: program kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation "$i" '(' expr_call block_or_lambda . '[' '[' capture_list ']' ']' optional_function_argument_list optional_function_type expression_block ')' ':' type_declaration_no_options "end of expression" $end Reduce derivation $accept `-> 0: program $end `-> 5: program global_let - `-> 523: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration - `-> 510: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" - `-> 506: "$i" '(' expr ')' - `-> 439: expr_call_pipe + `-> 524: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration + `-> 511: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" + `-> 507: "$i" '(' expr ')' + `-> 440: expr_call_pipe `-> 213: expr_call expr_full_block_assumed_piped - `-> 305: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block - `-> 112: %empty . `-> 303: '[' '[' capture_list ']' ']' + `-> 306: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block + `-> 112: %empty . `-> 304: '[' '[' capture_list ']' ']' -State 640 +State 642 213 expr_call_pipe: expr_call expr_full_block_assumed_piped . $default reduce using rule 213 (expr_call_pipe) -State 641 - - 416 expr: expr "is" . "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr "is" . basic_type_declaration - 418 | expr "is" . "name" - 454 expr_mtag: expr "is" . "$f" '(' expr ')' - - "type" shift, and go to state 838 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "$f" shift, and go to state 839 - "name" shift, and go to state 840 - - basic_type_declaration go to state 841 - - -State 642 - - 419 expr: expr "as" . "name" - 422 | expr "as" . "type" '<' $@21 type_declaration '>' $@22 - 423 | expr "as" . basic_type_declaration - 452 expr_mtag: expr "as" . "$f" '(' expr ')' - - "type" shift, and go to state 842 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "$f" shift, and go to state 843 - "name" shift, and go to state 844 - - basic_type_declaration go to state 845 - - State 643 - 372 expr: expr "<<" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 846 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 417 expr: expr "is" . "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr "is" . basic_type_declaration + 419 | expr "is" . "name" + 455 expr_mtag: expr "is" . "$f" '(' expr ')' + + "type" shift, and go to state 840 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "$f" shift, and go to state 841 + "name" shift, and go to state 842 + + basic_type_declaration go to state 843 State 644 - 373 expr: expr ">>" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 847 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 420 expr: expr "as" . "name" + 423 | expr "as" . "type" '<' $@21 type_declaration '>' $@22 + 424 | expr "as" . basic_type_declaration + 453 expr_mtag: expr "as" . "$f" '(' expr ')' + + "type" shift, and go to state 844 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "$f" shift, and go to state 845 + "name" shift, and go to state 846 + + basic_type_declaration go to state 847 State 645 - 396 expr: expr "++" . - - $default reduce using rule 396 (expr) + 373 expr: expr "<<" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 848 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 646 - 397 expr: expr "--" . - - $default reduce using rule 397 (expr) + 374 expr: expr ">>" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 849 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 647 - 385 expr: expr "<=" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 848 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 397 expr: expr "++" . + + $default reduce using rule 397 (expr) State 648 - 386 expr: expr ">=" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 849 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 398 expr: expr "--" . + + $default reduce using rule 398 (expr) State 649 - 383 expr: expr "==" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 386 expr: expr "<=" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 850 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 650 - 384 expr: expr "!=" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 387 expr: expr ">=" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 851 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 651 - 335 expr_method_call: expr "->" . "name" '(' ')' - 336 | expr "->" . "name" '(' expr_list ')' - - "name" shift, and go to state 852 + 384 expr: expr "==" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 852 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 652 - 412 expr: expr "??" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 385 expr: expr "!=" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 853 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 653 - 403 expr: expr "?." . "name" - 449 expr_mtag: expr "?." . "$f" '(' expr ')' + 336 expr_method_call: expr "->" . "name" '(' ')' + 337 | expr "->" . "name" '(' expr_list ')' - "$f" shift, and go to state 854 - "name" shift, and go to state 855 + "name" shift, and go to state 854 State 654 - 401 expr: expr "?[" . expr ']' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 413 expr: expr "??" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 856 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 855 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 655 - 436 expr: expr "<|" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 857 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 404 expr: expr "?." . "name" + 450 expr_mtag: expr "?." . "$f" '(' expr ')' + + "$f" shift, and go to state 856 + "name" shift, and go to state 857 State 656 - 437 expr: expr "|>" . expr - 438 | expr "|>" . basic_type_declaration - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 402 expr: expr "?[" . expr ']' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 858 - expr_mtag go to state 471 - basic_type_declaration go to state 859 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 657 - 374 expr: expr "<<<" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 437 expr: expr "<|" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 860 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 859 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 658 - 375 expr: expr ">>>" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 438 expr: expr "|>" . expr + 439 | expr "|>" . basic_type_declaration + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 861 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 860 + expr_mtag go to state 473 + basic_type_declaration go to state 861 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 659 - 390 expr: expr "&&" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 375 expr: expr "<<<" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 862 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 660 - 391 expr: expr "||" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 376 expr: expr ">>>" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 863 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 661 - 392 expr: expr "^^" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 391 expr: expr "&&" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 864 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 662 - 393 expr: expr ".." . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 392 expr: expr "||" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 865 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 663 - 413 expr: expr '?' . expr ':' expr - 424 | expr '?' . "as" "name" - 427 | expr '?' . "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr '?' . "as" basic_type_declaration - 453 expr_mtag: expr '?' . "as" "$f" '(' expr ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "as" shift, and go to state 866 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 393 expr: expr "^^" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 867 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 866 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 664 - 388 expr: expr '|' . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 394 expr: expr ".." . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 868 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 867 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 665 - 389 expr: expr '^' . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 414 expr: expr '?' . expr ':' expr + 425 | expr '?' . "as" "name" + 428 | expr '?' . "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr '?' . "as" basic_type_declaration + 454 expr_mtag: expr '?' . "as" "$f" '(' expr ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "as" shift, and go to state 868 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 869 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 666 - 387 expr: expr '&' . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 389 expr: expr '|' . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 870 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 667 - 381 expr: expr '<' . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 390 expr: expr '^' . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 871 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 668 - 382 expr: expr '>' . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 388 expr: expr '&' . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 872 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 669 - 377 expr: expr '-' . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 382 expr: expr '<' . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 873 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 670 - 376 expr: expr '+' . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 383 expr: expr '>' . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 874 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 671 - 378 expr: expr '*' . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 378 expr: expr '-' . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 875 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 672 - 379 expr: expr '/' . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 377 expr: expr '+' . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 876 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 673 - 380 expr: expr '%' . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 379 expr: expr '*' . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 877 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 674 - 346 expr_field: expr '.' . "name" - 347 | expr '.' . '.' "name" - 348 | expr '.' . "name" '(' ')' - 349 | expr '.' . "name" '(' expr_list ')' - 352 | expr '.' . $@17 error $@18 - 400 expr: expr '.' . '[' expr ']' - 402 | expr '.' . "?[" expr ']' - 404 | expr '.' . "?." "name" - 448 expr_mtag: expr '.' . "$f" '(' expr ')' - 450 | expr '.' . '.' "$f" '(' expr ')' - 451 | expr '.' . "?." "$f" '(' expr ')' - - "?." shift, and go to state 878 - "?[" shift, and go to state 879 - "$f" shift, and go to state 880 - "name" shift, and go to state 881 - '.' shift, and go to state 882 - '[' shift, and go to state 883 - - $default reduce using rule 350 ($@17) - - $@17 go to state 884 + 380 expr: expr '/' . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 878 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 675 - 399 expr: expr '[' . expr ']' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 381 expr: expr '%' . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 885 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 879 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 676 - 626 type_declaration_no_options_no_dim: "typedecl" '(' expr ')' . + 347 expr_field: expr '.' . "name" + 348 | expr '.' . '.' "name" + 349 | expr '.' . "name" '(' ')' + 350 | expr '.' . "name" '(' expr_list ')' + 353 | expr '.' . $@17 error $@18 + 401 expr: expr '.' . '[' expr ']' + 403 | expr '.' . "?[" expr ']' + 405 | expr '.' . "?." "name" + 449 expr_mtag: expr '.' . "$f" '(' expr ')' + 451 | expr '.' . '.' "$f" '(' expr ')' + 452 | expr '.' . "?." "$f" '(' expr ')' - $default reduce using rule 626 (type_declaration_no_options_no_dim) + "?." shift, and go to state 880 + "?[" shift, and go to state 881 + "$f" shift, and go to state 882 + "name" shift, and go to state 883 + '.' shift, and go to state 884 + '[' shift, and go to state 885 + + $default reduce using rule 351 ($@17) + + $@17 go to state 886 State 677 - 356 expr_call: basic_type_declaration '(' . ')' - 357 | basic_type_declaration '(' . expr_list ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 400 expr: expr '[' . expr ']' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - ')' shift, and go to state 886 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - expr_list go to state 887 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 632 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 887 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 678 - 654 type_declaration_no_options_no_dim: "iterator" '<' $@46 type_declaration . '>' $@47 - 683 type_declaration: type_declaration . '|' type_declaration_no_options - 684 | type_declaration . '|' '#' + 627 type_declaration_no_options_no_dim: "typedecl" '(' expr ')' . - '|' shift, and go to state 370 - '>' shift, and go to state 888 + $default reduce using rule 627 (type_declaration_no_options_no_dim) State 679 - 644 type_declaration_no_options_no_dim: "smart_ptr" '<' $@40 type_declaration . '>' $@41 - 683 type_declaration: type_declaration . '|' type_declaration_no_options - 684 | type_declaration . '|' '#' - - '|' shift, and go to state 370 - '>' shift, and go to state 889 + 357 expr_call: basic_type_declaration '(' . ')' + 358 | basic_type_declaration '(' . expr_list ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + ')' shift, and go to state 888 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + expr_list go to state 889 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 634 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 680 - 601 auto_type_declaration: "auto" '(' "name" ')' . + 655 type_declaration_no_options_no_dim: "iterator" '<' $@46 type_declaration . '>' $@47 + 684 type_declaration: type_declaration . '|' type_declaration_no_options + 685 | type_declaration . '|' '#' - $default reduce using rule 601 (auto_type_declaration) + '|' shift, and go to state 372 + '>' shift, and go to state 890 State 681 - 603 bitfield_bits: "name" . + 645 type_declaration_no_options_no_dim: "smart_ptr" '<' $@40 type_declaration . '>' $@41 + 684 type_declaration: type_declaration . '|' type_declaration_no_options + 685 | type_declaration . '|' '#' - $default reduce using rule 603 (bitfield_bits) + '|' shift, and go to state 372 + '>' shift, and go to state 891 State 682 - 604 bitfield_bits: bitfield_bits . "end of expression" "name" - 610 bitfield_type_declaration: "bitfield" '<' $@35 bitfield_bits . '>' $@36 + 602 auto_type_declaration: "auto" '(' "name" ')' . - "end of expression" shift, and go to state 890 - '>' shift, and go to state 891 + $default reduce using rule 602 (auto_type_declaration) State 683 - 658 type_declaration_no_options_no_dim: "block" '<' $@48 type_declaration . '>' $@49 - 683 type_declaration: type_declaration . '|' type_declaration_no_options - 684 | type_declaration . '|' '#' + 604 bitfield_bits: "name" . - '|' shift, and go to state 370 - '>' shift, and go to state 892 + $default reduce using rule 604 (bitfield_bits) State 684 - 661 type_declaration_no_options_no_dim: "block" '<' $@50 optional_function_argument_list . optional_function_type '>' $@51 + 605 bitfield_bits: bitfield_bits . "end of expression" "name" + 611 bitfield_type_declaration: "bitfield" '<' $@35 bitfield_bits . '>' $@36 - ':' shift, and go to state 387 - - $default reduce using rule 117 (optional_function_type) - - optional_function_type go to state 893 + "end of expression" shift, and go to state 892 + '>' shift, and go to state 893 State 685 - 665 type_declaration_no_options_no_dim: "function" '<' $@52 type_declaration . '>' $@53 - 683 type_declaration: type_declaration . '|' type_declaration_no_options - 684 | type_declaration . '|' '#' + 659 type_declaration_no_options_no_dim: "block" '<' $@48 type_declaration . '>' $@49 + 684 type_declaration: type_declaration . '|' type_declaration_no_options + 685 | type_declaration . '|' '#' - '|' shift, and go to state 370 + '|' shift, and go to state 372 '>' shift, and go to state 894 State 686 - 668 type_declaration_no_options_no_dim: "function" '<' $@54 optional_function_argument_list . optional_function_type '>' $@55 + 662 type_declaration_no_options_no_dim: "block" '<' $@50 optional_function_argument_list . optional_function_type '>' $@51 - ':' shift, and go to state 387 + ':' shift, and go to state 389 $default reduce using rule 117 (optional_function_type) @@ -17273,19 +17393,19 @@ State 686 State 687 - 672 type_declaration_no_options_no_dim: "lambda" '<' $@56 type_declaration . '>' $@57 - 683 type_declaration: type_declaration . '|' type_declaration_no_options - 684 | type_declaration . '|' '#' + 666 type_declaration_no_options_no_dim: "function" '<' $@52 type_declaration . '>' $@53 + 684 type_declaration: type_declaration . '|' type_declaration_no_options + 685 | type_declaration . '|' '#' - '|' shift, and go to state 370 + '|' shift, and go to state 372 '>' shift, and go to state 896 State 688 - 675 type_declaration_no_options_no_dim: "lambda" '<' $@58 optional_function_argument_list . optional_function_type '>' $@59 + 669 type_declaration_no_options_no_dim: "function" '<' $@54 optional_function_argument_list . optional_function_type '>' $@55 - ':' shift, and go to state 387 + ':' shift, and go to state 389 $default reduce using rule 117 (optional_function_type) @@ -17294,31 +17414,36 @@ State 688 State 689 - 482 tuple_type_list: tuple_type . + 673 type_declaration_no_options_no_dim: "lambda" '<' $@56 type_declaration . '>' $@57 + 684 type_declaration: type_declaration . '|' type_declaration_no_options + 685 | type_declaration . '|' '#' - $default reduce using rule 482 (tuple_type_list) + '|' shift, and go to state 372 + '>' shift, and go to state 898 State 690 - 483 tuple_type_list: tuple_type_list . "end of expression" tuple_type - 678 type_declaration_no_options_no_dim: "tuple" '<' $@60 tuple_type_list . '>' $@61 + 676 type_declaration_no_options_no_dim: "lambda" '<' $@58 optional_function_argument_list . optional_function_type '>' $@59 + + ':' shift, and go to state 389 - "end of expression" shift, and go to state 898 - '>' shift, and go to state 899 + $default reduce using rule 117 (optional_function_type) + + optional_function_type go to state 899 State 691 - 488 variant_type_list: variant_type . + 483 tuple_type_list: tuple_type . - $default reduce using rule 488 (variant_type_list) + $default reduce using rule 483 (tuple_type_list) State 692 - 489 variant_type_list: variant_type_list . "end of expression" variant_type - 681 type_declaration_no_options_no_dim: "variant" '<' $@62 variant_type_list . '>' $@63 + 484 tuple_type_list: tuple_type_list . "end of expression" tuple_type + 679 type_declaration_no_options_no_dim: "tuple" '<' $@60 tuple_type_list . '>' $@61 "end of expression" shift, and go to state 900 '>' shift, and go to state 901 @@ -17326,6037 +17451,6096 @@ State 692 State 693 - 602 auto_type_declaration: "$t" '(' expr ')' . + 489 variant_type_list: variant_type . - $default reduce using rule 602 (auto_type_declaration) + $default reduce using rule 489 (variant_type_list) State 694 - 629 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 . type_declaration_no_options_list '>' '(' optional_expr_list ')' - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - type_declaration_no_options_list go to state 902 - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 260 - type_declaration_no_options_no_dim go to state 261 - type_declaration go to state 903 + 490 variant_type_list: variant_type_list . "end of expression" variant_type + 682 type_declaration_no_options_no_dim: "variant" '<' $@62 variant_type_list . '>' $@63 + + "end of expression" shift, and go to state 902 + '>' shift, and go to state 903 State 695 - 627 type_declaration_no_options_no_dim: '$' name_in_namespace '(' optional_expr_list . ')' + 603 auto_type_declaration: "$t" '(' expr ')' . - ')' shift, and go to state 904 + $default reduce using rule 603 (auto_type_declaration) State 696 - 236 optional_expr_list: expr_list . - 289 expr_list: expr_list . ',' expr - - ',' shift, and go to state 905 - - $default reduce using rule 236 (optional_expr_list) + 630 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 . type_declaration_no_options_list '>' '(' optional_expr_list ')' + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + type_declaration_no_options_list go to state 904 + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 262 + type_declaration_no_options_no_dim go to state 263 + type_declaration go to state 905 State 697 - 630 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '[' ']' . + 628 type_declaration_no_options_no_dim: '$' name_in_namespace '(' optional_expr_list . ')' - $default reduce using rule 630 (type_declaration_no_options_no_dim) + ')' shift, and go to state 906 State 698 - 613 dim_list: '[' expr ']' . + 236 optional_expr_list: expr_list . + 290 expr_list: expr_list . ',' expr + + ',' shift, and go to state 907 - $default reduce using rule 613 (dim_list) + $default reduce using rule 236 (optional_expr_list) State 699 - 616 dim_list: dim_list '[' ']' . + 631 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '[' ']' . - $default reduce using rule 616 (dim_list) + $default reduce using rule 631 (type_declaration_no_options_no_dim) State 700 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - 615 dim_list: dim_list '[' expr . ']' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - ']' shift, and go to state 906 + 614 dim_list: '[' expr ']' . + + $default reduce using rule 614 (dim_list) State 701 - 607 bitfield_alias_bits: bitfield_alias_bits ',' "name" . + 617 dim_list: dim_list '[' ']' . - $default reduce using rule 607 (bitfield_alias_bits) + $default reduce using rule 617 (dim_list) State 702 - 696 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 . "end of code block" - - "end of code block" shift, and go to state 907 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + 616 dim_list: dim_list '[' expr . ']' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + ']' shift, and go to state 908 State 703 - 481 tuple_type: "name" ':' . type_declaration - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 260 - type_declaration_no_options_no_dim go to state 261 - type_declaration go to state 908 + 608 bitfield_alias_bits: bitfield_alias_bits ',' "name" . + + $default reduce using rule 608 (bitfield_alias_bits) State 704 - 486 tuple_alias_type_list: tuple_alias_type_list tuple_type "end of expression" . + 697 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 . "end of code block" - $default reduce using rule 486 (tuple_alias_type_list) + "end of code block" shift, and go to state 909 State 705 - 688 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" . - - $default reduce using rule 688 (tuple_alias_declaration) + 482 tuple_type: "name" ':' . type_declaration + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 262 + type_declaration_no_options_no_dim go to state 263 + type_declaration go to state 910 State 706 - 487 variant_type: "name" ':' . type_declaration - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 260 - type_declaration_no_options_no_dim go to state 261 - type_declaration go to state 909 + 487 tuple_alias_type_list: tuple_alias_type_list tuple_type "end of expression" . + + $default reduce using rule 487 (tuple_alias_type_list) State 707 - 492 variant_alias_type_list: variant_alias_type_list variant_type "end of expression" . + 689 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" . - $default reduce using rule 492 (variant_alias_type_list) + $default reduce using rule 689 (tuple_alias_declaration) State 708 - 692 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" . - - $default reduce using rule 692 (variant_alias_declaration) + 488 variant_type: "name" ':' . type_declaration + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 262 + type_declaration_no_options_no_dim go to state 263 + type_declaration go to state 911 State 709 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - 477 function_argument_declaration: "$a" '(' expr . ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - ')' shift, and go to state 910 + 493 variant_alias_type_list: variant_alias_type_list variant_type "end of expression" . + + $default reduce using rule 493 (variant_alias_type_list) State 710 - 560 variable_name_with_pos_list: "$i" . '(' expr ')' + 693 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" . - '(' shift, and go to state 911 + $default reduce using rule 693 (variant_alias_declaration) State 711 - 559 variable_name_with_pos_list: "name" . - 561 | "name" . "aka" "name" - - "aka" shift, and go to state 912 - - $default reduce using rule 559 (variable_name_with_pos_list) + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + 478 function_argument_declaration: "$a" '(' expr . ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + ')' shift, and go to state 912 State 712 - 476 function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing variable_declaration . + 561 variable_name_with_pos_list: "$i" . '(' expr ')' - $default reduce using rule 476 (function_argument_declaration) + '(' shift, and go to state 913 State 713 - 495 variable_declaration: variable_name_with_pos_list . - 496 | variable_name_with_pos_list . '&' - 497 | variable_name_with_pos_list . ':' type_declaration - 498 | variable_name_with_pos_list . ':' type_declaration copy_or_move expr - 499 | variable_name_with_pos_list . copy_or_move expr - 562 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" - 563 | variable_name_with_pos_list . ',' "name" "aka" "name" - - "<-" shift, and go to state 913 - ',' shift, and go to state 914 - '=' shift, and go to state 915 - ':' shift, and go to state 916 - '&' shift, and go to state 917 + 560 variable_name_with_pos_list: "name" . + 562 | "name" . "aka" "name" - $default reduce using rule 495 (variable_declaration) + "aka" shift, and go to state 914 - copy_or_move go to state 918 + $default reduce using rule 560 (variable_name_with_pos_list) State 714 - 479 function_argument_list: function_argument_list "end of expression" function_argument_declaration . + 477 function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing variable_declaration . - $default reduce using rule 479 (function_argument_list) + $default reduce using rule 477 (function_argument_declaration) State 715 - 72 expression_while_loop: "while" expr . expression_block - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - "begin of code block" shift, and go to state 321 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - - expression_block go to state 919 + 496 variable_declaration: variable_name_with_pos_list . + 497 | variable_name_with_pos_list . '&' + 498 | variable_name_with_pos_list . ':' type_declaration + 499 | variable_name_with_pos_list . ':' type_declaration copy_or_move expr + 500 | variable_name_with_pos_list . copy_or_move expr + 563 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" + 564 | variable_name_with_pos_list . ',' "name" "aka" "name" + "<-" shift, and go to state 915 + ',' shift, and go to state 916 + '=' shift, and go to state 917 + ':' shift, and go to state 918 + '&' shift, and go to state 919 -State 716 + $default reduce using rule 496 (variable_declaration) - 70 expression_for_loop: "for" '(' . variable_name_with_pos_list "in" expr_list ')' expression_block + copy_or_move go to state 920 + + +State 716 - "$i" shift, and go to state 710 - "name" shift, and go to state 711 + 480 function_argument_list: function_argument_list "end of expression" function_argument_declaration . - variable_name_with_pos_list go to state 920 + $default reduce using rule 480 (function_argument_list) State 717 - 255 expression_return: "return" "<-" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 921 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 72 expression_while_loop: "while" expr . expression_block + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + "begin of code block" shift, and go to state 323 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + + expression_block go to state 921 State 718 - 254 expression_return: "return" expr . - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 70 expression_for_loop: "for" '(' . variable_name_with_pos_list "in" expr_list ')' expression_block - $default reduce using rule 254 (expression_return) + "$i" shift, and go to state 712 + "name" shift, and go to state 713 + variable_name_with_pos_list go to state 922 -State 719 - 259 expression_try_catch: "try" expression_block . "recover" expression_block +State 719 - "recover" shift, and go to state 922 + 256 expression_return: "return" "<-" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 923 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 720 - 242 expression_delete: "delete" "explicit" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 923 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 255 expression_return: "return" expr . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + + $default reduce using rule 255 (expression_return) State 721 - 241 expression_delete: "delete" expr . - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - - $default reduce using rule 241 (expression_delete) + 260 expression_try_catch: "try" expression_block . "recover" expression_block + + "recover" shift, and go to state 924 State 722 - 73 expression_with: "with" expr . expression_block - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - "begin of code block" shift, and go to state 321 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - - expression_block go to state 924 + 243 expression_delete: "delete" "explicit" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 925 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 723 - 74 expression_with_alias: "assume" "name" . '=' expr + 242 expression_delete: "delete" expr . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - '=' shift, and go to state 925 + $default reduce using rule 242 (expression_delete) State 724 - 231 expression_any: "pass" "end of expression" . - - $default reduce using rule 231 (expression_any) + 73 expression_with: "with" expr . expression_block + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + "begin of code block" shift, and go to state 323 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + + expression_block go to state 926 State 725 - 51 expression_label: "label" "integer constant" . ':' + 74 expression_with_alias: "assume" "name" . '=' expr - ':' shift, and go to state 926 + '=' shift, and go to state 927 State 726 - 52 expression_goto: "goto" "label" . "integer constant" + 231 expression_any: "pass" "end of expression" . - "integer constant" shift, and go to state 927 + $default reduce using rule 231 (expression_any) State 727 - 53 expression_goto: "goto" expr . - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 51 expression_label: "label" "integer constant" . ':' - $default reduce using rule 53 (expression_goto) + ':' shift, and go to state 928 State 728 - 71 expression_unsafe: "unsafe" expression_block . + 52 expression_goto: "goto" "label" . "integer constant" - $default reduce using rule 71 (expression_unsafe) + "integer constant" shift, and go to state 929 State 729 - 257 expression_yield_no_pipe: "yield" "<-" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 928 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 53 expression_goto: "goto" expr . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + + $default reduce using rule 53 (expression_goto) State 730 - 256 expression_yield_no_pipe: "yield" expr . - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - - $default reduce using rule 256 (expression_yield_no_pipe) + 71 expression_unsafe: "unsafe" expression_block . + + $default reduce using rule 71 (expression_unsafe) State 731 - 212 expression_block: "begin of code block" expressions "end of code block" "finally" . "begin of code block" expressions "end of code block" - - "begin of code block" shift, and go to state 929 + 258 expression_yield_no_pipe: "yield" "<-" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 930 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 732 - 229 expression_any: expression_label "end of expression" . + 257 expression_yield_no_pipe: "yield" expr . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 229 (expression_any) + $default reduce using rule 257 (expression_yield_no_pipe) State 733 - 230 expression_any: expression_goto "end of expression" . + 212 expression_block: "begin of code block" expressions "end of code block" "finally" . "begin of code block" expressions "end of code block" - $default reduce using rule 230 (expression_any) + "begin of code block" shift, and go to state 931 State 734 - 68 expression_if_then_else: if_or_static_if '(' . expr ')' expression_block expression_else + 229 expression_any: expression_label "end of expression" . - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 930 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + $default reduce using rule 229 (expression_any) State 735 - 69 expression_if_then_else: expression_if_one_liner "if" . '(' expr ')' expression_else_one_liner "end of expression" + 230 expression_any: expression_goto "end of expression" . - '(' shift, and go to state 931 + $default reduce using rule 230 (expression_any) State 736 - 216 expression_any: expression_delete "end of expression" . + 68 expression_if_then_else: if_or_static_if '(' . expr ')' expression_block expression_else - $default reduce using rule 216 (expression_any) + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 932 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 737 - 223 expression_any: expression_break "end of expression" . + 69 expression_if_then_else: expression_if_one_liner "if" . '(' expr ')' expression_else_one_liner "end of expression" - $default reduce using rule 223 (expression_any) + '(' shift, and go to state 933 State 738 - 224 expression_any: expression_continue "end of expression" . + 216 expression_any: expression_delete "end of expression" . - $default reduce using rule 224 (expression_any) + $default reduce using rule 216 (expression_any) State 739 - 225 expression_any: expression_return "end of expression" . + 223 expression_any: expression_break "end of expression" . - $default reduce using rule 225 (expression_any) + $default reduce using rule 223 (expression_any) State 740 - 258 expression_yield: expression_yield_no_pipe "end of expression" . + 224 expression_any: expression_continue "end of expression" . - $default reduce using rule 258 (expression_yield) + $default reduce using rule 224 (expression_any) State 741 - 265 optional_in_scope: "inscope" . + 225 expression_any: expression_return "end of expression" . - $default reduce using rule 265 (optional_in_scope) + $default reduce using rule 225 (expression_any) State 742 - 271 expression_let: kwd_let optional_in_scope . let_variable_declaration - 272 | kwd_let optional_in_scope . tuple_expansion_variable_declaration + 259 expression_yield: expression_yield_no_pipe "end of expression" . - "$i" shift, and go to state 339 - "name" shift, and go to state 340 - '(' shift, and go to state 932 - - tuple_expansion_variable_declaration go to state 933 - let_variable_name_with_pos_list go to state 341 - let_variable_declaration go to state 934 + $default reduce using rule 259 (expression_yield) State 743 - 215 expression_any: expr_assign "end of expression" . + 266 optional_in_scope: "inscope" . - $default reduce using rule 215 (expression_any) + $default reduce using rule 266 (optional_in_scope) State 744 - 324 expr_assign: expr "+=" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 935 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 272 expression_let: kwd_let optional_in_scope . let_variable_declaration + 273 | kwd_let optional_in_scope . tuple_expansion_variable_declaration + + "$i" shift, and go to state 341 + "name" shift, and go to state 342 + '(' shift, and go to state 934 + + tuple_expansion_variable_declaration go to state 935 + let_variable_name_with_pos_list go to state 343 + let_variable_declaration go to state 936 State 745 - 325 expr_assign: expr "-=" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 936 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 215 expression_any: expr_assign "end of expression" . + + $default reduce using rule 215 (expression_any) State 746 - 327 expr_assign: expr "/=" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 325 expr_assign: expr "+=" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 937 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 747 - 326 expr_assign: expr "*=" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 326 expr_assign: expr "-=" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 938 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 748 - 328 expr_assign: expr "%=" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 328 expr_assign: expr "/=" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 939 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 749 - 318 expr_assign: expr "&=" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 327 expr_assign: expr "*=" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 940 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 750 - 319 expr_assign: expr "|=" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 329 expr_assign: expr "%=" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 941 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 751 - 320 expr_assign: expr "^=" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 319 expr_assign: expr "&=" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 942 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 752 - 329 expr_assign: expr "<<=" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 320 expr_assign: expr "|=" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 943 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 753 - 330 expr_assign: expr ">>=" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 321 expr_assign: expr "^=" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 944 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 754 - 316 expr_assign: expr "<-" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 330 expr_assign: expr "<<=" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 945 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 755 - 317 expr_assign: expr ":=" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 331 expr_assign: expr ">>=" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 946 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 756 - 331 expr_assign: expr "<<<=" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 317 expr_assign: expr "<-" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 947 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 757 - 332 expr_assign: expr ">>>=" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 318 expr_assign: expr ":=" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 948 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 758 - 321 expr_assign: expr "&&=" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 332 expr_assign: expr "<<<=" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 949 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 759 - 322 expr_assign: expr "||=" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 333 expr_assign: expr ">>>=" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 950 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 760 - 323 expr_assign: expr "^^=" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 322 expr_assign: expr "&&=" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 951 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 761 - 315 expr_assign: expr '=' . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 323 expr_assign: expr "||=" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 952 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 762 - 525 enum_expression: "name" '=' . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 324 expr_assign: expr "^^=" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 953 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 763 - 528 enum_list: enum_list ',' . enum_expression - 760 optional_comma: ',' . - - "name" shift, and go to state 566 - - $default reduce using rule 760 (optional_comma) - - enum_expression go to state 954 + 316 expr_assign: expr '=' . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 954 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 764 - 543 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma . $@32 "end of code block" + 526 enum_expression: "name" '=' . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 955 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 - $default reduce using rule 542 ($@32) - $@32 go to state 955 +State 765 + 529 enum_list: enum_list ',' . enum_expression + 761 optional_comma: ',' . -State 765 + "name" shift, and go to state 568 - 555 optional_struct_variable_declaration_list: "begin of code block" struct_variable_declaration_list "end of code block" . + $default reduce using rule 761 (optional_comma) - $default reduce using rule 555 (optional_struct_variable_declaration_list) + enum_expression go to state 956 State 766 - 473 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list . "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" - 475 | struct_variable_declaration_list optional_annotation_list . "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block + 544 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma . $@32 "end of code block" - "def" shift, and go to state 956 + $default reduce using rule 543 ($@32) + $@32 go to state 957 -State 767 - - 471 struct_variable_declaration_list: struct_variable_declaration_list $@25 . structure_variable_declaration "end of expression" - '@' shift, and go to state 206 +State 767 - $default reduce using rule 456 (optional_field_annotation) + 556 optional_struct_variable_declaration_list: "begin of code block" struct_variable_declaration_list "end of code block" . - metadata_argument_list go to state 207 - optional_field_annotation go to state 957 - structure_variable_declaration go to state 958 + $default reduce using rule 556 (optional_struct_variable_declaration_list) State 768 - 506 let_variable_name_with_pos_list: "$i" '(' expr ')' . + 474 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list . "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" + 476 | struct_variable_declaration_list optional_annotation_list . "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block - $default reduce using rule 506 (let_variable_name_with_pos_list) + "def" shift, and go to state 958 State 769 - 509 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" "aka" . "name" + 472 struct_variable_declaration_list: struct_variable_declaration_list $@25 . structure_variable_declaration "end of expression" - "name" shift, and go to state 959 + '@' shift, and go to state 208 + + $default reduce using rule 457 (optional_field_annotation) + + metadata_argument_list go to state 209 + optional_field_annotation go to state 959 + structure_variable_declaration go to state 960 State 770 - 510 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" . + 507 let_variable_name_with_pos_list: "$i" '(' expr ')' . - $default reduce using rule 510 (let_variable_declaration) + $default reduce using rule 507 (let_variable_name_with_pos_list) State 771 - 511 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone . expr "end of expression" - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 960 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 510 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" "aka" . "name" + "name" shift, and go to state 961 -State 772 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - 512 let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr . "end of expression" - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - "end of expression" shift, and go to state 961 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 +State 772 + 511 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" . -State 773 + $default reduce using rule 511 (let_variable_declaration) - 625 type_declaration_no_options_no_dim: "type" '<' $@37 type_declaration '>' . $@38 - $default reduce using rule 624 ($@38) +State 773 - $@38 go to state 962 + 512 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone . expr "end of expression" + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 962 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 774 - 648 type_declaration_no_options_no_dim: "array" '<' $@42 type_declaration '>' . $@43 - - $default reduce using rule 647 ($@43) - - $@43 go to state 963 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + 513 let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr . "end of expression" + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + "end of expression" shift, and go to state 963 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 State 775 - 651 type_declaration_no_options_no_dim: "table" '<' $@44 table_type_pair '>' . $@45 + 626 type_declaration_no_options_no_dim: "type" '<' $@37 type_declaration '>' . $@38 - $default reduce using rule 650 ($@45) + $default reduce using rule 625 ($@38) - $@45 go to state 964 + $@38 go to state 964 State 776 - 612 table_type_pair: type_declaration "end of expression" . type_declaration - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 260 - type_declaration_no_options_no_dim go to state 261 - type_declaration go to state 965 + 649 type_declaration_no_options_no_dim: "array" '<' $@42 type_declaration '>' . $@43 + + $default reduce using rule 648 ($@43) + + $@43 go to state 965 State 777 - 717 make_struct_decl: "struct" '<' $@73 . type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 966 - type_declaration_no_options_no_dim go to state 261 + 652 type_declaration_no_options_no_dim: "table" '<' $@44 table_type_pair '>' . $@45 + + $default reduce using rule 651 ($@45) + + $@45 go to state 966 State 778 - 720 make_struct_decl: "class" '<' $@75 . type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 967 - type_declaration_no_options_no_dim go to state 261 + 613 table_type_pair: type_declaration "end of expression" . type_declaration + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 262 + type_declaration_no_options_no_dim go to state 263 + type_declaration go to state 967 State 779 - 245 new_type_declaration: '<' $@3 . type_declaration '>' $@4 - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 260 - type_declaration_no_options_no_dim go to state 261 - type_declaration go to state 968 + 718 make_struct_decl: "struct" '<' $@73 . type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 968 + type_declaration_no_options_no_dim go to state 263 State 780 - 248 expr_new: "new" new_type_declaration '(' . use_initializer ')' - 249 | "new" new_type_declaration '(' . use_initializer make_struct_single ')' - - "uninitialized" shift, and go to state 969 - - $default reduce using rule 713 (use_initializer) - - use_initializer go to state 970 + 721 make_struct_decl: "class" '<' $@75 . type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 969 + type_declaration_no_options_no_dim go to state 263 State 781 - 247 expr_new: "new" structure_type_declaration '(' . optional_expr_list ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 + 246 new_type_declaration: '<' $@3 . type_declaration '>' $@4 + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 262 + type_declaration_no_options_no_dim go to state 263 + type_declaration go to state 970 - $default reduce using rule 235 (optional_expr_list) - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - optional_expr_list go to state 971 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - expr_list go to state 696 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 632 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 +State 782 + 249 expr_new: "new" new_type_declaration '(' . use_initializer ')' + 250 | "new" new_type_declaration '(' . use_initializer make_struct_single ')' -State 782 + "uninitialized" shift, and go to state 971 - 285 expr_type_info: "typeinfo" '(' name_in_namespace . expr ')' - 286 | "typeinfo" '(' name_in_namespace . '<' "name" '>' expr ')' - 287 | "typeinfo" '(' name_in_namespace . '<' "name" "end of expression" "name" '>' expr ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '<' shift, and go to state 972 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 973 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + $default reduce using rule 714 (use_initializer) + + use_initializer go to state 972 State 783 - 284 expr_type_decl: "type" '<' $@11 . type_declaration '>' $@12 - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 260 - type_declaration_no_options_no_dim go to state 261 - type_declaration go to state 974 + 248 expr_new: "new" structure_type_declaration '(' . optional_expr_list ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + $default reduce using rule 235 (optional_expr_list) -State 784 + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + optional_expr_list go to state 973 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + expr_list go to state 698 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 634 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 - 736 make_dim_decl: "array" "struct" '<' . $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' - $default reduce using rule 734 ($@83) +State 784 - $@83 go to state 975 + 286 expr_type_info: "typeinfo" '(' name_in_namespace . expr ')' + 287 | "typeinfo" '(' name_in_namespace . '<' "name" '>' expr ')' + 288 | "typeinfo" '(' name_in_namespace . '<' "name" "end of expression" "name" '>' expr ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '<' shift, and go to state 974 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 975 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 785 - 739 make_dim_decl: "array" "tuple" '<' . $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' - - $default reduce using rule 737 ($@85) - - $@85 go to state 976 + 285 expr_type_decl: "type" '<' $@11 . type_declaration '>' $@12 + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 262 + type_declaration_no_options_no_dim go to state 263 + type_declaration go to state 976 State 786 - 742 make_dim_decl: "array" "variant" '<' . $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' + 737 make_dim_decl: "array" "struct" '<' . $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' - $default reduce using rule 740 ($@87) + $default reduce using rule 735 ($@83) - $@87 go to state 977 + $@83 go to state 977 State 787 - 746 make_dim_decl: "array" '<' $@89 . type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 978 - type_declaration_no_options_no_dim go to state 261 + 740 make_dim_decl: "array" "tuple" '<' . $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' + $default reduce using rule 738 ($@85) + + $@85 go to state 978 -State 788 - 289 expr_list: expr_list . ',' expr - 743 make_dim_decl: "array" '(' expr_list . optional_comma ')' +State 788 - ',' shift, and go to state 818 + 743 make_dim_decl: "array" "variant" '<' . $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' - $default reduce using rule 759 (optional_comma) + $default reduce using rule 741 ($@87) - optional_comma go to state 979 + $@87 go to state 979 State 789 - 755 make_table_decl: "table" '<' type_declaration_no_options . '>' '(' expr_map_tuple_list optional_comma ')' - 756 | "table" '<' type_declaration_no_options . "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - - "end of expression" shift, and go to state 980 - '>' shift, and go to state 981 + 747 make_dim_decl: "array" '<' $@89 . type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 980 + type_declaration_no_options_no_dim go to state 263 State 790 - 752 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple - 754 make_table_decl: "table" '(' expr_map_tuple_list . optional_comma ')' + 290 expr_list: expr_list . ',' expr + 744 make_dim_decl: "array" '(' expr_list . optional_comma ')' - ',' shift, and go to state 814 + ',' shift, and go to state 820 - $default reduce using rule 759 (optional_comma) + $default reduce using rule 760 (optional_comma) - optional_comma go to state 982 + optional_comma go to state 981 State 791 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 408 | "deref" '(' expr . ')' - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - ')' shift, and go to state 983 + 756 make_table_decl: "table" '<' type_declaration_no_options . '>' '(' expr_map_tuple_list optional_comma ')' + 757 | "table" '<' type_declaration_no_options . "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + + "end of expression" shift, and go to state 982 + '>' shift, and go to state 983 State 792 - 275 expr_cast: "cast" '<' $@5 . type_declaration_no_options '>' $@6 expr - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 984 - type_declaration_no_options_no_dim go to state 261 + 753 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple + 755 make_table_decl: "table" '(' expr_map_tuple_list . optional_comma ')' + + ',' shift, and go to state 816 + + $default reduce using rule 760 (optional_comma) + + optional_comma go to state 984 State 793 - 278 expr_cast: "upcast" '<' $@7 . type_declaration_no_options '>' $@8 expr - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 985 - type_declaration_no_options_no_dim go to state 261 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 409 | "deref" '(' expr . ')' + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + ')' shift, and go to state 985 State 794 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 409 | "addr" '(' expr . ')' - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - ')' shift, and go to state 986 + 276 expr_cast: "cast" '<' $@5 . type_declaration_no_options '>' $@6 expr + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 986 + type_declaration_no_options_no_dim go to state 263 State 795 - 281 expr_cast: "reinterpret" '<' $@9 . type_declaration_no_options '>' $@10 expr - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 + 279 expr_cast: "upcast" '<' $@7 . type_declaration_no_options '>' $@8 expr + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 type_declaration_no_options go to state 987 - type_declaration_no_options_no_dim go to state 261 + type_declaration_no_options_no_dim go to state 263 State 796 - 750 make_dim_decl: "fixed_array" '<' $@91 . type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 988 - type_declaration_no_options_no_dim go to state 261 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 410 | "addr" '(' expr . ')' + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + ')' shift, and go to state 988 State 797 - 289 expr_list: expr_list . ',' expr - 747 make_dim_decl: "fixed_array" '(' expr_list . optional_comma ')' - - ',' shift, and go to state 818 - - $default reduce using rule 759 (optional_comma) - - optional_comma go to state 989 + 282 expr_cast: "reinterpret" '<' $@9 . type_declaration_no_options '>' $@10 expr + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 989 + type_declaration_no_options_no_dim go to state 263 State 798 - 726 make_struct_decl: "default" '<' $@79 . type_declaration_no_options '>' $@80 use_initializer - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 + 751 make_dim_decl: "fixed_array" '<' $@91 . type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 type_declaration_no_options go to state 990 - type_declaration_no_options_no_dim go to state 261 + type_declaration_no_options_no_dim go to state 263 State 799 - 732 make_tuple_call: "tuple" '<' $@81 . type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 991 - type_declaration_no_options_no_dim go to state 261 + 290 expr_list: expr_list . ',' expr + 748 make_dim_decl: "fixed_array" '(' expr_list . optional_comma ')' + ',' shift, and go to state 820 -State 800 + $default reduce using rule 760 (optional_comma) - 289 expr_list: expr_list . ',' expr - 729 make_tuple_call: "tuple" '(' expr_list . optional_comma ')' + optional_comma go to state 991 - ',' shift, and go to state 818 - $default reduce using rule 759 (optional_comma) +State 800 - optional_comma go to state 992 + 727 make_struct_decl: "default" '<' $@79 . type_declaration_no_options '>' $@80 use_initializer + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 992 + type_declaration_no_options_no_dim go to state 263 State 801 - 723 make_struct_decl: "variant" '<' $@77 . type_declaration_no_options '>' $@78 '(' make_struct_dim ')' - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 + 733 make_tuple_call: "tuple" '<' $@81 . type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 type_declaration_no_options go to state 993 - type_declaration_no_options_no_dim go to state 261 + type_declaration_no_options_no_dim go to state 263 State 802 - 410 expr: "generator" '<' type_declaration_no_options . '>' optional_capture_list '(' ')' - 411 | "generator" '<' type_declaration_no_options . '>' optional_capture_list '(' expr ')' + 290 expr_list: expr_list . ',' expr + 730 make_tuple_call: "tuple" '(' expr_list . optional_comma ')' + + ',' shift, and go to state 820 + + $default reduce using rule 760 (optional_comma) - '>' shift, and go to state 994 + optional_comma go to state 994 State 803 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 440 expr_mtag: "$$" '(' expr . ')' - 448 | expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - ')' shift, and go to state 995 + 724 make_struct_decl: "variant" '<' $@77 . type_declaration_no_options '>' $@78 '(' make_struct_dim ')' + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 995 + type_declaration_no_options_no_dim go to state 263 State 804 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 441 expr_mtag: "$i" '(' expr . ')' - 448 | expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - ')' shift, and go to state 996 + 411 expr: "generator" '<' type_declaration_no_options . '>' optional_capture_list '(' ')' + 412 | "generator" '<' type_declaration_no_options . '>' optional_capture_list '(' expr ')' + + '>' shift, and go to state 996 State 805 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 442 expr_mtag: "$v" '(' expr . ')' - 448 | expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 441 expr_mtag: "$$" '(' expr . ')' + 449 | expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 ')' shift, and go to state 997 State 806 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 443 expr_mtag: "$b" '(' expr . ')' - 448 | expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 442 expr_mtag: "$i" '(' expr . ')' + 449 | expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 ')' shift, and go to state 998 State 807 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 444 expr_mtag: "$a" '(' expr . ')' - 448 | expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 443 expr_mtag: "$v" '(' expr . ')' + 449 | expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 ')' shift, and go to state 999 State 808 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 446 expr_mtag: "$c" '(' expr . ')' '(' ')' - 447 | "$c" '(' expr . ')' '(' expr_list ')' - 448 | expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 444 expr_mtag: "$b" '(' expr . ')' + 449 | expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 ')' shift, and go to state 1000 State 809 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 445 expr_mtag: "$a" '(' expr . ')' + 449 | expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + ')' shift, and go to state 1001 + + +State 810 + + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 447 expr_mtag: "$c" '(' expr . ')' '(' ')' + 448 | "$c" '(' expr . ')' '(' expr_list ')' + 449 | expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + ')' shift, and go to state 1002 + + +State 811 + 31 string_builder: "start of the string" string_builder_body "end of the string" . $default reduce using rule 31 (string_builder) -State 810 +State 812 30 string_builder_body: string_builder_body "{" . expr "}" - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1001 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1003 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 -State 811 +State 813 25 character_sequence: character_sequence . STRING_CHARACTER 26 | character_sequence . STRING_CHARACTER_ESC 29 string_builder_body: string_builder_body character_sequence . - STRING_CHARACTER shift, and go to state 209 - STRING_CHARACTER_ESC shift, and go to state 210 + STRING_CHARACTER shift, and go to state 211 + STRING_CHARACTER_ESC shift, and go to state 212 STRING_CHARACTER [reduce using rule 29 (string_builder_body)] STRING_CHARACTER_ESC [reduce using rule 29 (string_builder_body)] @@ -23370,10 +23554,10 @@ State 811 $accept `-> 0: program $end `-> 5: program global_let - `-> 523: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration - `-> 510: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" - `-> 506: "$i" '(' expr ')' - `-> 362: string_builder + `-> 524: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration + `-> 511: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" + `-> 507: "$i" '(' expr ')' + `-> 363: string_builder `-> 31: "start of the string" string_builder_body "end of the string" `-> 29: string_builder_body character_sequence `-> 25: character_sequence . STRING_CHARACTER @@ -23382,10 +23566,10 @@ State 811 $accept `-> 0: program $end `-> 5: program global_let - `-> 523: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration - `-> 510: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" - `-> 506: "$i" '(' expr ')' - `-> 362: string_builder + `-> 524: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration + `-> 511: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" + `-> 507: "$i" '(' expr ')' + `-> 363: string_builder `-> 31: "start of the string" string_builder_body "end of the string" `-> 29: string_builder_body character_sequence `-> 29: string_builder_body character_sequence . `-> 23: STRING_CHARACTER @@ -23398,10 +23582,10 @@ State 811 $accept `-> 0: program $end `-> 5: program global_let - `-> 523: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration - `-> 510: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" - `-> 506: "$i" '(' expr ')' - `-> 362: string_builder + `-> 524: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration + `-> 511: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" + `-> 507: "$i" '(' expr ')' + `-> 363: string_builder `-> 31: "start of the string" string_builder_body "end of the string" `-> 29: string_builder_body character_sequence `-> 26: character_sequence . STRING_CHARACTER_ESC @@ -23410,3427 +23594,3433 @@ State 811 $accept `-> 0: program $end `-> 5: program global_let - `-> 523: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration - `-> 510: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" - `-> 506: "$i" '(' expr ')' - `-> 362: string_builder + `-> 524: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration + `-> 511: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" + `-> 507: "$i" '(' expr ')' + `-> 363: string_builder `-> 31: "start of the string" string_builder_body "end of the string" `-> 29: string_builder_body character_sequence `-> 29: string_builder_body character_sequence . `-> 24: STRING_CHARACTER_ESC -State 812 - - 562 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" - 563 | variable_name_with_pos_list . ',' "name" "aka" "name" - 763 array_comprehension: "begin of code block" "for" variable_name_with_pos_list . "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" - - "in" shift, and go to state 1002 - ',' shift, and go to state 914 - - -State 813 - - 727 make_map_tuple: expr "=>" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1003 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 - - State 814 - 752 expr_map_tuple_list: expr_map_tuple_list ',' . make_map_tuple - 760 optional_comma: ',' . - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - $default reduce using rule 760 (optional_comma) + 563 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" + 564 | variable_name_with_pos_list . ',' "name" "aka" "name" + 764 array_comprehension: "begin of code block" "for" variable_name_with_pos_list . "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 621 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_map_tuple go to state 1004 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + "in" shift, and go to state 1004 + ',' shift, and go to state 916 State 815 - 753 make_table_decl: "begin of code block" expr_map_tuple_list optional_comma . "end of code block" - - "end of code block" shift, and go to state 1005 + 728 make_map_tuple: expr "=>" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1005 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 816 - 562 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" - 563 | variable_name_with_pos_list . ',' "name" "aka" "name" - 761 array_comprehension: '[' "for" variable_name_with_pos_list . "in" expr_list "end of expression" expr array_comprehension_where ']' - - "in" shift, and go to state 1006 - ',' shift, and go to state 914 + 753 expr_map_tuple_list: expr_map_tuple_list ',' . make_map_tuple + 761 optional_comma: ',' . + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + $default reduce using rule 761 (optional_comma) + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 623 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_map_tuple go to state 1006 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 817 - 762 array_comprehension: '[' "iterator" "for" . variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - - "$i" shift, and go to state 710 - "name" shift, and go to state 711 + 754 make_table_decl: "begin of code block" expr_map_tuple_list optional_comma . "end of code block" - variable_name_with_pos_list go to state 1007 + "end of code block" shift, and go to state 1007 State 818 - 289 expr_list: expr_list ',' . expr - 760 optional_comma: ',' . - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - $default reduce using rule 760 (optional_comma) + 563 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" + 564 | variable_name_with_pos_list . ',' "name" "aka" "name" + 762 array_comprehension: '[' "for" variable_name_with_pos_list . "in" expr_list "end of expression" expr array_comprehension_where ']' - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1008 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + "in" shift, and go to state 1008 + ',' shift, and go to state 916 State 819 - 733 make_dim_decl: '[' expr_list optional_comma . ']' + 763 array_comprehension: '[' "iterator" "for" . variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - ']' shift, and go to state 1009 + "$i" shift, and go to state 712 + "name" shift, and go to state 713 + variable_name_with_pos_list go to state 1009 -State 820 - 398 expr: '(' expr_list optional_comma . ')' +State 820 - ')' shift, and go to state 1010 + 290 expr_list: expr_list ',' . expr + 761 optional_comma: ',' . + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + $default reduce using rule 761 (optional_comma) + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1010 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 821 - 338 func_addr_name: "$i" . '(' expr ')' + 734 make_dim_decl: '[' expr_list optional_comma . ']' - '(' shift, and go to state 1011 + ']' shift, and go to state 1011 State 822 - 455 expr_mtag: '@' '@' "$c" . '(' expr ')' + 399 expr: '(' expr_list optional_comma . ')' - '(' shift, and go to state 1012 + ')' shift, and go to state 1012 State 823 - 342 func_addr_expr: '@' '@' '<' . $@13 type_declaration_no_options '>' $@14 func_addr_name - 345 | '@' '@' '<' . $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name + 339 func_addr_name: "$i" . '(' expr ')' - ':' reduce using rule 343 ($@15) - '>' reduce using rule 343 ($@15) - '(' reduce using rule 343 ($@15) - $default reduce using rule 340 ($@13) - - $@13 go to state 1013 - $@15 go to state 1014 + '(' shift, and go to state 1013 State 824 - 337 func_addr_name: name_in_namespace . + 456 expr_mtag: '@' '@' "$c" . '(' expr ')' - $default reduce using rule 337 (func_addr_name) + '(' shift, and go to state 1014 State 825 - 339 func_addr_expr: '@' '@' func_addr_name . + 343 func_addr_expr: '@' '@' '<' . $@13 type_declaration_no_options '>' $@14 func_addr_name + 346 | '@' '@' '<' . $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name + + ':' reduce using rule 344 ($@15) + '>' reduce using rule 344 ($@15) + '(' reduce using rule 344 ($@15) + $default reduce using rule 341 ($@13) - $default reduce using rule 339 (func_addr_expr) + $@13 go to state 1015 + $@15 go to state 1016 State 826 - 706 make_struct_fields: "$f" . '(' expr ')' copy_or_move expr - 707 | "$f" . '(' expr ')' ":=" expr + 338 func_addr_name: name_in_namespace . - '(' shift, and go to state 1015 + $default reduce using rule 338 (func_addr_name) State 827 - 239 name_in_namespace: "name" . - 240 | "name" . "::" "name" - 702 make_struct_fields: "name" . copy_or_move expr - 703 | "name" . ":=" expr - - "<-" shift, and go to state 913 - ":=" shift, and go to state 1016 - "::" shift, and go to state 91 - '=' shift, and go to state 915 - - $default reduce using rule 239 (name_in_namespace) + 340 func_addr_expr: '@' '@' func_addr_name . - copy_or_move go to state 1017 + $default reduce using rule 340 (func_addr_expr) State 828 - 333 expr_named_call: name_in_namespace '(' '[' . make_struct_fields ']' ')' - 733 make_dim_decl: '[' . expr_list optional_comma ']' - 761 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - 762 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "for" shift, and go to state 629 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "iterator" shift, and go to state 630 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "$f" shift, and go to state 826 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 827 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - expr_list go to state 631 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 632 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_fields go to state 1018 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 707 make_struct_fields: "$f" . '(' expr ')' copy_or_move expr + 708 | "$f" . '(' expr ')' ":=" expr + + '(' shift, and go to state 1017 State 829 - 353 expr_call: name_in_namespace '(' ')' . + 239 name_in_namespace: "name" . + 240 | "name" . "::" "name" + 703 make_struct_fields: "name" . copy_or_move expr + 704 | "name" . ":=" expr + + "<-" shift, and go to state 915 + ":=" shift, and go to state 1018 + "::" shift, and go to state 93 + '=' shift, and go to state 917 + + $default reduce using rule 239 (name_in_namespace) - $default reduce using rule 353 (expr_call) + copy_or_move go to state 1019 State 830 - 289 expr_list: expr_list . ',' expr - 334 expr_named_call: name_in_namespace '(' expr_list . ',' '[' make_struct_fields ']' ')' - 355 expr_call: name_in_namespace '(' expr_list . ')' - - ',' shift, and go to state 1019 - ')' shift, and go to state 1020 + 334 expr_named_call: name_in_namespace '(' '[' . make_struct_fields ']' ')' + 734 make_dim_decl: '[' . expr_list optional_comma ']' + 762 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 763 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "for" shift, and go to state 631 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "iterator" shift, and go to state 632 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "$f" shift, and go to state 828 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 829 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + expr_list go to state 633 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 634 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_fields go to state 1020 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 831 - 704 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr - 705 | make_struct_fields . ',' "name" ":=" expr - 708 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr - 709 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr - 710 make_struct_single: make_struct_fields . - - ',' shift, and go to state 1021 + 354 expr_call: name_in_namespace '(' ')' . - $default reduce using rule 710 (make_struct_single) + $default reduce using rule 354 (expr_call) State 832 - 354 expr_call: name_in_namespace '(' make_struct_single . ')' + 290 expr_list: expr_list . ',' expr + 335 expr_named_call: name_in_namespace '(' expr_list . ',' '[' make_struct_fields ']' ')' + 356 expr_call: name_in_namespace '(' expr_list . ')' + ',' shift, and go to state 1021 ')' shift, and go to state 1022 State 833 - 303 optional_capture_list: '[' . '[' capture_list ']' ']' + 705 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr + 706 | make_struct_fields . ',' "name" ":=" expr + 709 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr + 710 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr + 711 make_struct_single: make_struct_fields . - '[' shift, and go to state 1023 + ',' shift, and go to state 1023 + $default reduce using rule 711 (make_struct_single) -State 834 - - 304 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list . optional_function_argument_list optional_function_type block_or_simple_block - '(' shift, and go to state 319 +State 834 - $default reduce using rule 114 (optional_function_argument_list) + 355 expr_call: name_in_namespace '(' make_struct_single . ')' - optional_function_argument_list go to state 1024 + ')' shift, and go to state 1024 State 835 - 233 expressions: expressions . expression_any - 234 | expressions . error - 306 expr_full_block_assumed_piped: "begin of code block" expressions . "end of code block" + 304 optional_capture_list: '[' . '[' capture_list ']' ']' - error shift, and go to state 525 - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "let" shift, and go to state 3 - "while" shift, and go to state 526 - "if" shift, and go to state 527 - "static_if" shift, and go to state 528 - "for" shift, and go to state 529 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "return" shift, and go to state 530 - "null" shift, and go to state 414 - "break" shift, and go to state 531 - "try" shift, and go to state 532 - "table" shift, and go to state 415 - "delete" shift, and go to state 533 - "deref" shift, and go to state 416 - "with" shift, and go to state 534 - "assume" shift, and go to state 535 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "var" shift, and go to state 8 - "addr" shift, and go to state 419 - "continue" shift, and go to state 536 - "pass" shift, and go to state 537 - "reinterpret" shift, and go to state 420 - "label" shift, and go to state 538 - "goto" shift, and go to state 539 - "unsafe" shift, and go to state 540 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "yield" shift, and go to state 541 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - "end of code block" shift, and go to state 1025 - "end of expression" shift, and go to state 543 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expression_label go to state 544 - expression_goto go to state 545 - if_or_static_if go to state 546 - expression_if_one_liner go to state 547 - expression_if_then_else go to state 548 - expression_for_loop go to state 549 - expression_unsafe go to state 550 - expression_while_loop go to state 551 - expression_with go to state 552 - expression_with_alias go to state 553 - expr_call_pipe go to state 456 - expression_any go to state 554 - name_in_namespace go to state 457 - expression_delete go to state 555 - expr_new go to state 458 - expression_break go to state 556 - expression_continue go to state 557 - expression_return go to state 558 - expression_yield_no_pipe go to state 559 - expression_yield go to state 560 - expression_try_catch go to state 561 - kwd_let go to state 562 - expression_let go to state 563 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_assign go to state 564 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 565 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + '[' shift, and go to state 1025 State 836 - 295 block_or_lambda: '@' '@' . + 305 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list . optional_function_argument_list optional_function_type block_or_simple_block - $default reduce using rule 295 (block_or_lambda) + '(' shift, and go to state 321 + $default reduce using rule 114 (optional_function_argument_list) -State 837 + optional_function_argument_list go to state 1026 - 305 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list . optional_capture_list optional_function_argument_list optional_function_type expression_block - '[' shift, and go to state 833 +State 837 - $default reduce using rule 302 (optional_capture_list) + 233 expressions: expressions . expression_any + 234 | expressions . error + 307 expr_full_block_assumed_piped: "begin of code block" expressions . "end of code block" - optional_capture_list go to state 1026 + error shift, and go to state 527 + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "let" shift, and go to state 3 + "while" shift, and go to state 528 + "if" shift, and go to state 529 + "static_if" shift, and go to state 530 + "for" shift, and go to state 531 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "return" shift, and go to state 532 + "null" shift, and go to state 416 + "break" shift, and go to state 533 + "try" shift, and go to state 534 + "table" shift, and go to state 417 + "delete" shift, and go to state 535 + "deref" shift, and go to state 418 + "with" shift, and go to state 536 + "assume" shift, and go to state 537 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "var" shift, and go to state 8 + "addr" shift, and go to state 421 + "continue" shift, and go to state 538 + "pass" shift, and go to state 539 + "reinterpret" shift, and go to state 422 + "label" shift, and go to state 540 + "goto" shift, and go to state 541 + "unsafe" shift, and go to state 542 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "yield" shift, and go to state 543 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + "end of code block" shift, and go to state 1027 + "end of expression" shift, and go to state 545 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expression_label go to state 546 + expression_goto go to state 547 + if_or_static_if go to state 548 + expression_if_one_liner go to state 549 + expression_if_then_else go to state 550 + expression_for_loop go to state 551 + expression_unsafe go to state 552 + expression_while_loop go to state 553 + expression_with go to state 554 + expression_with_alias go to state 555 + expr_call_pipe go to state 458 + expression_any go to state 556 + name_in_namespace go to state 459 + expression_delete go to state 557 + expr_new go to state 460 + expression_break go to state 558 + expression_continue go to state 559 + expression_return go to state 560 + expression_yield_no_pipe go to state 561 + expression_yield go to state 562 + expression_try_catch go to state 563 + kwd_let go to state 564 + expression_let go to state 565 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_assign go to state 566 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 567 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 838 - 416 expr: expr "is" "type" . '<' $@19 type_declaration_no_options '>' $@20 + 296 block_or_lambda: '@' '@' . - '<' shift, and go to state 1027 + $default reduce using rule 296 (block_or_lambda) State 839 - 454 expr_mtag: expr "is" "$f" . '(' expr ')' + 306 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list . optional_capture_list optional_function_argument_list optional_function_type expression_block - '(' shift, and go to state 1028 + '[' shift, and go to state 835 + + $default reduce using rule 303 (optional_capture_list) + + optional_capture_list go to state 1028 State 840 - 418 expr: expr "is" "name" . + 417 expr: expr "is" "type" . '<' $@19 type_declaration_no_options '>' $@20 - $default reduce using rule 418 (expr) + '<' shift, and go to state 1029 State 841 - 417 expr: expr "is" basic_type_declaration . + 455 expr_mtag: expr "is" "$f" . '(' expr ')' - $default reduce using rule 417 (expr) + '(' shift, and go to state 1030 State 842 - 422 expr: expr "as" "type" . '<' $@21 type_declaration '>' $@22 + 419 expr: expr "is" "name" . - '<' shift, and go to state 1029 + $default reduce using rule 419 (expr) State 843 - 452 expr_mtag: expr "as" "$f" . '(' expr ')' + 418 expr: expr "is" basic_type_declaration . - '(' shift, and go to state 1030 + $default reduce using rule 418 (expr) State 844 - 419 expr: expr "as" "name" . + 423 expr: expr "as" "type" . '<' $@21 type_declaration '>' $@22 - $default reduce using rule 419 (expr) + '<' shift, and go to state 1031 State 845 - 423 expr: expr "as" basic_type_declaration . + 453 expr_mtag: expr "as" "$f" . '(' expr ')' - $default reduce using rule 423 (expr) + '(' shift, and go to state 1032 State 846 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 372 | expr "<<" expr . - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 420 expr: expr "as" "name" . - $default reduce using rule 372 (expr) + $default reduce using rule 420 (expr) State 847 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 373 | expr ">>" expr . - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 424 expr: expr "as" basic_type_declaration . - $default reduce using rule 373 (expr) + $default reduce using rule 424 (expr) State 848 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 385 | expr "<=" expr . - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 373 | expr "<<" expr . + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 385 (expr) + $default reduce using rule 373 (expr) State 849 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 386 | expr ">=" expr . - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 374 | expr ">>" expr . + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 386 (expr) + $default reduce using rule 374 (expr) State 850 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 383 | expr "==" expr . - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 386 | expr "<=" expr . + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 383 (expr) + $default reduce using rule 386 (expr) State 851 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 384 | expr "!=" expr . - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 387 | expr ">=" expr . + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 384 (expr) + $default reduce using rule 387 (expr) State 852 - 335 expr_method_call: expr "->" "name" . '(' ')' - 336 | expr "->" "name" . '(' expr_list ')' + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 384 | expr "==" expr . + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - '(' shift, and go to state 1031 + $default reduce using rule 384 (expr) State 853 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 412 | expr "??" expr . - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 385 | expr "!=" expr . + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 412 (expr) + $default reduce using rule 385 (expr) State 854 - 449 expr_mtag: expr "?." "$f" . '(' expr ')' + 336 expr_method_call: expr "->" "name" . '(' ')' + 337 | expr "->" "name" . '(' expr_list ')' - '(' shift, and go to state 1032 + '(' shift, and go to state 1033 State 855 - 403 expr: expr "?." "name" . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 413 | expr "??" expr . + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 403 (expr) + $default reduce using rule 413 (expr) State 856 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 401 | expr "?[" expr . ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - ']' shift, and go to state 1033 + 450 expr_mtag: expr "?." "$f" . '(' expr ')' + + '(' shift, and go to state 1034 State 857 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 436 | expr "<|" expr . - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "->" shift, and go to state 651 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 404 expr: expr "?." "name" . - $default reduce using rule 436 (expr) + $default reduce using rule 404 (expr) State 858 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 437 | expr "|>" expr . - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "->" shift, and go to state 651 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - - $default reduce using rule 437 (expr) + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 402 | expr "?[" expr . ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + ']' shift, and go to state 1035 State 859 - 356 expr_call: basic_type_declaration . '(' ')' - 357 | basic_type_declaration . '(' expr_list ')' - 438 expr: expr "|>" basic_type_declaration . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 437 | expr "<|" expr . + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "->" shift, and go to state 653 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - '(' shift, and go to state 677 - - $default reduce using rule 438 (expr) + $default reduce using rule 437 (expr) State 860 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 374 | expr "<<<" expr . - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 438 | expr "|>" expr . + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "->" shift, and go to state 653 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 374 (expr) + $default reduce using rule 438 (expr) State 861 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 375 | expr ">>>" expr . - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 357 expr_call: basic_type_declaration . '(' ')' + 358 | basic_type_declaration . '(' expr_list ')' + 439 expr: expr "|>" basic_type_declaration . - $default reduce using rule 375 (expr) + '(' shift, and go to state 679 + + $default reduce using rule 439 (expr) State 862 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 390 | expr "&&" expr . - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 375 | expr "<<<" expr . + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 390 (expr) + $default reduce using rule 375 (expr) State 863 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 391 | expr "||" expr . - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "^^" shift, and go to state 661 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 376 | expr ">>>" expr . + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 391 (expr) + $default reduce using rule 376 (expr) State 864 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 392 | expr "^^" expr . - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 391 | expr "&&" expr . + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 392 (expr) + $default reduce using rule 391 (expr) State 865 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 393 | expr ".." expr . - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - - ".." error (nonassociative) + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 392 | expr "||" expr . + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "^^" shift, and go to state 663 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 393 (expr) + $default reduce using rule 392 (expr) State 866 - 424 expr: expr '?' "as" . "name" - 427 | expr '?' "as" . "type" '<' $@23 type_declaration '>' $@24 - 428 | expr '?' "as" . basic_type_declaration - 453 expr_mtag: expr '?' "as" . "$f" '(' expr ')' - - "type" shift, and go to state 1034 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "$f" shift, and go to state 1035 - "name" shift, and go to state 1036 - - basic_type_declaration go to state 1037 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 393 | expr "^^" expr . + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + + $default reduce using rule 393 (expr) State 867 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 413 | expr '?' expr . ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - ':' shift, and go to state 1038 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 394 | expr ".." expr . + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + ".." error (nonassociative) -State 868 + $default reduce using rule 394 (expr) - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 388 | expr '|' expr . - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - $default reduce using rule 388 (expr) +State 868 + 425 expr: expr '?' "as" . "name" + 428 | expr '?' "as" . "type" '<' $@23 type_declaration '>' $@24 + 429 | expr '?' "as" . basic_type_declaration + 454 expr_mtag: expr '?' "as" . "$f" '(' expr ')' + + "type" shift, and go to state 1036 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "$f" shift, and go to state 1037 + "name" shift, and go to state 1038 + + basic_type_declaration go to state 1039 -State 869 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 389 | expr '^' expr . - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 +State 869 - $default reduce using rule 389 (expr) + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 414 | expr '?' expr . ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + ':' shift, and go to state 1040 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 State 870 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 387 | expr '&' expr . - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 389 | expr '|' expr . + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 387 (expr) + $default reduce using rule 389 (expr) State 871 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 381 | expr '<' expr . - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 390 | expr '^' expr . + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 381 (expr) + $default reduce using rule 390 (expr) State 872 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 382 | expr '>' expr . - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 388 | expr '&' expr . + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 382 (expr) + $default reduce using rule 388 (expr) State 873 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 377 | expr '-' expr . - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 382 | expr '<' expr . + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 377 (expr) + $default reduce using rule 382 (expr) State 874 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 376 | expr '+' expr . - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 383 | expr '>' expr . + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 376 (expr) + $default reduce using rule 383 (expr) State 875 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 378 | expr '*' expr . - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 378 | expr '-' expr . + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 $default reduce using rule 378 (expr) State 876 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 379 | expr '/' expr . - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 377 | expr '+' expr . + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 379 (expr) + $default reduce using rule 377 (expr) State 877 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 380 | expr '%' expr . - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 379 | expr '*' expr . + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 380 (expr) + $default reduce using rule 379 (expr) State 878 - 404 expr: expr '.' "?." . "name" - 451 expr_mtag: expr '.' "?." . "$f" '(' expr ')' + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 380 | expr '/' expr . + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - "$f" shift, and go to state 1039 - "name" shift, and go to state 1040 + $default reduce using rule 380 (expr) State 879 - 402 expr: expr '.' "?[" . expr ']' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1041 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 381 | expr '%' expr . + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + + $default reduce using rule 381 (expr) State 880 - 448 expr_mtag: expr '.' "$f" . '(' expr ')' + 405 expr: expr '.' "?." . "name" + 452 expr_mtag: expr '.' "?." . "$f" '(' expr ')' - '(' shift, and go to state 1042 + "$f" shift, and go to state 1041 + "name" shift, and go to state 1042 State 881 - 346 expr_field: expr '.' "name" . - 348 | expr '.' "name" . '(' ')' - 349 | expr '.' "name" . '(' expr_list ')' + 403 expr: expr '.' "?[" . expr ']' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1043 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 + + +State 882 + + 449 expr_mtag: expr '.' "$f" . '(' expr ')' + + '(' shift, and go to state 1044 - '(' shift, and go to state 1043 - '(' [reduce using rule 346 (expr_field)] - $default reduce using rule 346 (expr_field) +State 883 + + 347 expr_field: expr '.' "name" . + 349 | expr '.' "name" . '(' ')' + 350 | expr '.' "name" . '(' expr_list ')' + + '(' shift, and go to state 1045 + + '(' [reduce using rule 347 (expr_field)] + $default reduce using rule 347 (expr_field) shift/reduce conflict on token '(': - 346 expr_field: expr '.' "name" . - 348 expr_field: expr '.' "name" . '(' ')' + 347 expr_field: expr '.' "name" . + 349 expr_field: expr '.' "name" . '(' ')' First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' expr '.' "name" . '(' ')' expression_any "end of code block" $end Shift derivation $accept @@ -26842,8 +27032,8 @@ State 881 `-> 233: expressions expression_any `-> 233: expressions expression_with_alias `-> 74: "assume" "name" '=' expr - `-> 366: expr_field - `-> 348: expr '.' "name" . '(' ')' + `-> 367: expr_field + `-> 349: expr '.' "name" . '(' ')' Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' expr '.' "name" . '(' expr_list optional_comma ')' "end of expression" "end of code block" $end Reduce derivation $accept @@ -26854,14 +27044,14 @@ State 881 `-> 211: "begin of code block" expressions "end of code block" `-> 233: expressions expression_any `-> 233: expressions expression_any `-> 215: expr_assign "end of expression" - `-> 221: expression_with_alias `-> 314: expr - `-> 74: "assume" "name" '=' expr `-> 398: '(' expr_list optional_comma ')' - `-> 366: expr_field - `-> 346: expr '.' "name" . + `-> 221: expression_with_alias `-> 315: expr + `-> 74: "assume" "name" '=' expr `-> 399: '(' expr_list optional_comma ')' + `-> 367: expr_field + `-> 347: expr '.' "name" . shift/reduce conflict on token '(': - 346 expr_field: expr '.' "name" . - 349 expr_field: expr '.' "name" . '(' expr_list ')' + 347 expr_field: expr '.' "name" . + 350 expr_field: expr '.' "name" . '(' expr_list ')' First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' expr '.' "name" . '(' expr_list ')' expression_any "end of code block" $end Shift derivation $accept @@ -26873,8 +27063,8 @@ State 881 `-> 233: expressions expression_any `-> 233: expressions expression_with_alias `-> 74: "assume" "name" '=' expr - `-> 366: expr_field - `-> 349: expr '.' "name" . '(' expr_list ')' + `-> 367: expr_field + `-> 350: expr '.' "name" . '(' expr_list ')' Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' expr '.' "name" . '(' expr_list optional_comma ')' "end of expression" "end of code block" $end Reduce derivation $accept @@ -26885,17229 +27075,17301 @@ State 881 `-> 211: "begin of code block" expressions "end of code block" `-> 233: expressions expression_any `-> 233: expressions expression_any `-> 215: expr_assign "end of expression" - `-> 221: expression_with_alias `-> 314: expr - `-> 74: "assume" "name" '=' expr `-> 398: '(' expr_list optional_comma ')' - `-> 366: expr_field - `-> 346: expr '.' "name" . - - - -State 882 - - 347 expr_field: expr '.' '.' . "name" - 450 expr_mtag: expr '.' '.' . "$f" '(' expr ')' - - "$f" shift, and go to state 1044 - "name" shift, and go to state 1045 - + `-> 221: expression_with_alias `-> 315: expr + `-> 74: "assume" "name" '=' expr `-> 399: '(' expr_list optional_comma ')' + `-> 367: expr_field + `-> 347: expr '.' "name" . -State 883 - - 400 expr: expr '.' '[' . expr ']' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1046 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 State 884 - 352 expr_field: expr '.' $@17 . error $@18 + 348 expr_field: expr '.' '.' . "name" + 451 expr_mtag: expr '.' '.' . "$f" '(' expr ')' - error shift, and go to state 1047 + "$f" shift, and go to state 1046 + "name" shift, and go to state 1047 State 885 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 399 | expr '[' expr . ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - ']' shift, and go to state 1048 + 401 expr: expr '.' '[' . expr ']' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1048 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 886 - 356 expr_call: basic_type_declaration '(' ')' . + 353 expr_field: expr '.' $@17 . error $@18 - $default reduce using rule 356 (expr_call) + error shift, and go to state 1049 State 887 - 289 expr_list: expr_list . ',' expr - 357 expr_call: basic_type_declaration '(' expr_list . ')' - - ',' shift, and go to state 905 - ')' shift, and go to state 1049 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 400 | expr '[' expr . ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + ']' shift, and go to state 1050 State 888 - 654 type_declaration_no_options_no_dim: "iterator" '<' $@46 type_declaration '>' . $@47 + 357 expr_call: basic_type_declaration '(' ')' . - $default reduce using rule 653 ($@47) - - $@47 go to state 1050 + $default reduce using rule 357 (expr_call) State 889 - 644 type_declaration_no_options_no_dim: "smart_ptr" '<' $@40 type_declaration '>' . $@41 + 290 expr_list: expr_list . ',' expr + 358 expr_call: basic_type_declaration '(' expr_list . ')' - $default reduce using rule 643 ($@41) - - $@41 go to state 1051 + ',' shift, and go to state 907 + ')' shift, and go to state 1051 State 890 - 604 bitfield_bits: bitfield_bits "end of expression" . "name" + 655 type_declaration_no_options_no_dim: "iterator" '<' $@46 type_declaration '>' . $@47 + + $default reduce using rule 654 ($@47) - "name" shift, and go to state 1052 + $@47 go to state 1052 State 891 - 610 bitfield_type_declaration: "bitfield" '<' $@35 bitfield_bits '>' . $@36 + 645 type_declaration_no_options_no_dim: "smart_ptr" '<' $@40 type_declaration '>' . $@41 - $default reduce using rule 609 ($@36) + $default reduce using rule 644 ($@41) - $@36 go to state 1053 + $@41 go to state 1053 State 892 - 658 type_declaration_no_options_no_dim: "block" '<' $@48 type_declaration '>' . $@49 + 605 bitfield_bits: bitfield_bits "end of expression" . "name" - $default reduce using rule 657 ($@49) - - $@49 go to state 1054 + "name" shift, and go to state 1054 State 893 - 661 type_declaration_no_options_no_dim: "block" '<' $@50 optional_function_argument_list optional_function_type . '>' $@51 + 611 bitfield_type_declaration: "bitfield" '<' $@35 bitfield_bits '>' . $@36 + + $default reduce using rule 610 ($@36) - '>' shift, and go to state 1055 + $@36 go to state 1055 State 894 - 665 type_declaration_no_options_no_dim: "function" '<' $@52 type_declaration '>' . $@53 + 659 type_declaration_no_options_no_dim: "block" '<' $@48 type_declaration '>' . $@49 - $default reduce using rule 664 ($@53) + $default reduce using rule 658 ($@49) - $@53 go to state 1056 + $@49 go to state 1056 State 895 - 668 type_declaration_no_options_no_dim: "function" '<' $@54 optional_function_argument_list optional_function_type . '>' $@55 + 662 type_declaration_no_options_no_dim: "block" '<' $@50 optional_function_argument_list optional_function_type . '>' $@51 '>' shift, and go to state 1057 State 896 - 672 type_declaration_no_options_no_dim: "lambda" '<' $@56 type_declaration '>' . $@57 + 666 type_declaration_no_options_no_dim: "function" '<' $@52 type_declaration '>' . $@53 - $default reduce using rule 671 ($@57) + $default reduce using rule 665 ($@53) - $@57 go to state 1058 + $@53 go to state 1058 State 897 - 675 type_declaration_no_options_no_dim: "lambda" '<' $@58 optional_function_argument_list optional_function_type . '>' $@59 + 669 type_declaration_no_options_no_dim: "function" '<' $@54 optional_function_argument_list optional_function_type . '>' $@55 '>' shift, and go to state 1059 State 898 - 483 tuple_type_list: tuple_type_list "end of expression" . tuple_type - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 507 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - tuple_type go to state 1060 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 260 - type_declaration_no_options_no_dim go to state 261 - type_declaration go to state 510 + 673 type_declaration_no_options_no_dim: "lambda" '<' $@56 type_declaration '>' . $@57 + $default reduce using rule 672 ($@57) -State 899 - - 678 type_declaration_no_options_no_dim: "tuple" '<' $@60 tuple_type_list '>' . $@61 + $@57 go to state 1060 - $default reduce using rule 677 ($@61) - $@61 go to state 1061 +State 899 + 676 type_declaration_no_options_no_dim: "lambda" '<' $@58 optional_function_argument_list optional_function_type . '>' $@59 -State 900 + '>' shift, and go to state 1061 - 489 variant_type_list: variant_type_list "end of expression" . variant_type - "name" shift, and go to state 512 +State 900 - variant_type go to state 1062 + 484 tuple_type_list: tuple_type_list "end of expression" . tuple_type + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 509 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + tuple_type go to state 1062 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 262 + type_declaration_no_options_no_dim go to state 263 + type_declaration go to state 512 State 901 - 681 type_declaration_no_options_no_dim: "variant" '<' $@62 variant_type_list '>' . $@63 + 679 type_declaration_no_options_no_dim: "tuple" '<' $@60 tuple_type_list '>' . $@61 - $default reduce using rule 680 ($@63) + $default reduce using rule 678 ($@61) - $@63 go to state 1063 + $@61 go to state 1063 State 902 - 238 type_declaration_no_options_list: type_declaration_no_options_list . "end of expression" type_declaration - 629 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list . '>' '(' optional_expr_list ')' + 490 variant_type_list: variant_type_list "end of expression" . variant_type - "end of expression" shift, and go to state 1064 - '>' shift, and go to state 1065 + "name" shift, and go to state 514 + + variant_type go to state 1064 State 903 - 237 type_declaration_no_options_list: type_declaration . - 683 type_declaration: type_declaration . '|' type_declaration_no_options - 684 | type_declaration . '|' '#' + 682 type_declaration_no_options_no_dim: "variant" '<' $@62 variant_type_list '>' . $@63 - '|' shift, and go to state 370 + $default reduce using rule 681 ($@63) - $default reduce using rule 237 (type_declaration_no_options_list) + $@63 go to state 1065 State 904 - 627 type_declaration_no_options_no_dim: '$' name_in_namespace '(' optional_expr_list ')' . + 238 type_declaration_no_options_list: type_declaration_no_options_list . "end of expression" type_declaration + 630 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list . '>' '(' optional_expr_list ')' - $default reduce using rule 627 (type_declaration_no_options_no_dim) + "end of expression" shift, and go to state 1066 + '>' shift, and go to state 1067 State 905 - 289 expr_list: expr_list ',' . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1008 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 237 type_declaration_no_options_list: type_declaration . + 684 type_declaration: type_declaration . '|' type_declaration_no_options + 685 | type_declaration . '|' '#' + + '|' shift, and go to state 372 + + $default reduce using rule 237 (type_declaration_no_options_list) State 906 - 615 dim_list: dim_list '[' expr ']' . + 628 type_declaration_no_options_no_dim: '$' name_in_namespace '(' optional_expr_list ')' . - $default reduce using rule 615 (dim_list) + $default reduce using rule 628 (type_declaration_no_options_no_dim) State 907 - 696 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" . - - $default reduce using rule 696 (bitfield_alias_declaration) + 290 expr_list: expr_list ',' . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1010 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 908 - 481 tuple_type: "name" ':' type_declaration . - 683 type_declaration: type_declaration . '|' type_declaration_no_options - 684 | type_declaration . '|' '#' - - '|' shift, and go to state 370 + 616 dim_list: dim_list '[' expr ']' . - $default reduce using rule 481 (tuple_type) + $default reduce using rule 616 (dim_list) State 909 - 487 variant_type: "name" ':' type_declaration . - 683 type_declaration: type_declaration . '|' type_declaration_no_options - 684 | type_declaration . '|' '#' + 697 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" . - '|' shift, and go to state 370 - - $default reduce using rule 487 (variant_type) + $default reduce using rule 697 (bitfield_alias_declaration) State 910 - 477 function_argument_declaration: "$a" '(' expr ')' . + 482 tuple_type: "name" ':' type_declaration . + 684 type_declaration: type_declaration . '|' type_declaration_no_options + 685 | type_declaration . '|' '#' - $default reduce using rule 477 (function_argument_declaration) + '|' shift, and go to state 372 + + $default reduce using rule 482 (tuple_type) State 911 - 560 variable_name_with_pos_list: "$i" '(' . expr ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1066 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 488 variant_type: "name" ':' type_declaration . + 684 type_declaration: type_declaration . '|' type_declaration_no_options + 685 | type_declaration . '|' '#' + + '|' shift, and go to state 372 + + $default reduce using rule 488 (variant_type) State 912 - 561 variable_name_with_pos_list: "name" "aka" . "name" + 478 function_argument_declaration: "$a" '(' expr ')' . - "name" shift, and go to state 1067 + $default reduce using rule 478 (function_argument_declaration) State 913 - 494 copy_or_move: "<-" . - - $default reduce using rule 494 (copy_or_move) + 561 variable_name_with_pos_list: "$i" '(' . expr ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1068 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 914 - 562 variable_name_with_pos_list: variable_name_with_pos_list ',' . "name" - 563 | variable_name_with_pos_list ',' . "name" "aka" "name" + 562 variable_name_with_pos_list: "name" "aka" . "name" - "name" shift, and go to state 1068 + "name" shift, and go to state 1069 State 915 - 493 copy_or_move: '=' . + 495 copy_or_move: "<-" . - $default reduce using rule 493 (copy_or_move) + $default reduce using rule 495 (copy_or_move) State 916 - 497 variable_declaration: variable_name_with_pos_list ':' . type_declaration - 498 | variable_name_with_pos_list ':' . type_declaration copy_or_move expr - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 260 - type_declaration_no_options_no_dim go to state 261 - type_declaration go to state 1069 + 563 variable_name_with_pos_list: variable_name_with_pos_list ',' . "name" + 564 | variable_name_with_pos_list ',' . "name" "aka" "name" + + "name" shift, and go to state 1070 State 917 - 496 variable_declaration: variable_name_with_pos_list '&' . + 494 copy_or_move: '=' . - $default reduce using rule 496 (variable_declaration) + $default reduce using rule 494 (copy_or_move) State 918 - 499 variable_declaration: variable_name_with_pos_list copy_or_move . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1070 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 498 variable_declaration: variable_name_with_pos_list ':' . type_declaration + 499 | variable_name_with_pos_list ':' . type_declaration copy_or_move expr + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 262 + type_declaration_no_options_no_dim go to state 263 + type_declaration go to state 1071 State 919 - 72 expression_while_loop: "while" expr expression_block . + 497 variable_declaration: variable_name_with_pos_list '&' . - $default reduce using rule 72 (expression_while_loop) + $default reduce using rule 497 (variable_declaration) State 920 - 70 expression_for_loop: "for" '(' variable_name_with_pos_list . "in" expr_list ')' expression_block - 562 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" - 563 | variable_name_with_pos_list . ',' "name" "aka" "name" - - "in" shift, and go to state 1071 - ',' shift, and go to state 914 + 500 variable_declaration: variable_name_with_pos_list copy_or_move . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1072 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 921 - 255 expression_return: "return" "<-" expr . - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 72 expression_while_loop: "while" expr expression_block . - $default reduce using rule 255 (expression_return) + $default reduce using rule 72 (expression_while_loop) State 922 - 259 expression_try_catch: "try" expression_block "recover" . expression_block - - "begin of code block" shift, and go to state 321 + 70 expression_for_loop: "for" '(' variable_name_with_pos_list . "in" expr_list ')' expression_block + 563 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" + 564 | variable_name_with_pos_list . ',' "name" "aka" "name" - expression_block go to state 1072 + "in" shift, and go to state 1073 + ',' shift, and go to state 916 State 923 - 242 expression_delete: "delete" "explicit" expr . - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - - $default reduce using rule 242 (expression_delete) + 256 expression_return: "return" "<-" expr . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + + $default reduce using rule 256 (expression_return) State 924 - 73 expression_with: "with" expr expression_block . + 260 expression_try_catch: "try" expression_block "recover" . expression_block - $default reduce using rule 73 (expression_with) + "begin of code block" shift, and go to state 323 + expression_block go to state 1074 -State 925 - 74 expression_with_alias: "assume" "name" '=' . expr +State 925 - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1073 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 243 expression_delete: "delete" "explicit" expr . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + + $default reduce using rule 243 (expression_delete) State 926 - 51 expression_label: "label" "integer constant" ':' . + 73 expression_with: "with" expr expression_block . - $default reduce using rule 51 (expression_label) + $default reduce using rule 73 (expression_with) State 927 - 52 expression_goto: "goto" "label" "integer constant" . + 74 expression_with_alias: "assume" "name" '=' . expr - $default reduce using rule 52 (expression_goto) + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1075 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 928 - 257 expression_yield_no_pipe: "yield" "<-" expr . - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 51 expression_label: "label" "integer constant" ':' . - $default reduce using rule 257 (expression_yield_no_pipe) + $default reduce using rule 51 (expression_label) State 929 - 212 expression_block: "begin of code block" expressions "end of code block" "finally" "begin of code block" . expressions "end of code block" - - $default reduce using rule 232 (expressions) + 52 expression_goto: "goto" "label" "integer constant" . - expressions go to state 1074 + $default reduce using rule 52 (expression_goto) State 930 - 68 expression_if_then_else: if_or_static_if '(' expr . ')' expression_block expression_else - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - ')' shift, and go to state 1075 + 258 expression_yield_no_pipe: "yield" "<-" expr . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + + $default reduce using rule 258 (expression_yield_no_pipe) State 931 - 69 expression_if_then_else: expression_if_one_liner "if" '(' . expr ')' expression_else_one_liner "end of expression" - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1076 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 212 expression_block: "begin of code block" expressions "end of code block" "finally" "begin of code block" . expressions "end of code block" + $default reduce using rule 232 (expressions) -State 932 + expressions go to state 1076 - 269 tuple_expansion_variable_declaration: '(' . tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 270 | '(' . tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" - "name" shift, and go to state 1077 +State 932 - tuple_expansion go to state 1078 + 68 expression_if_then_else: if_or_static_if '(' expr . ')' expression_block expression_else + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + ')' shift, and go to state 1077 State 933 - 272 expression_let: kwd_let optional_in_scope tuple_expansion_variable_declaration . + 69 expression_if_then_else: expression_if_one_liner "if" '(' . expr ')' expression_else_one_liner "end of expression" - $default reduce using rule 272 (expression_let) + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1078 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 934 - 271 expression_let: kwd_let optional_in_scope let_variable_declaration . + 270 tuple_expansion_variable_declaration: '(' . tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 271 | '(' . tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" - $default reduce using rule 271 (expression_let) + "name" shift, and go to state 1079 + + tuple_expansion go to state 1080 State 935 - 324 expr_assign: expr "+=" expr . - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 273 expression_let: kwd_let optional_in_scope tuple_expansion_variable_declaration . - $default reduce using rule 324 (expr_assign) + $default reduce using rule 273 (expression_let) State 936 - 325 expr_assign: expr "-=" expr . - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 272 expression_let: kwd_let optional_in_scope let_variable_declaration . - $default reduce using rule 325 (expr_assign) + $default reduce using rule 272 (expression_let) State 937 - 327 expr_assign: expr "/=" expr . - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 325 expr_assign: expr "+=" expr . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 327 (expr_assign) + $default reduce using rule 325 (expr_assign) State 938 - 326 expr_assign: expr "*=" expr . - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 326 expr_assign: expr "-=" expr . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 $default reduce using rule 326 (expr_assign) State 939 - 328 expr_assign: expr "%=" expr . - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 328 expr_assign: expr "/=" expr . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 $default reduce using rule 328 (expr_assign) State 940 - 318 expr_assign: expr "&=" expr . - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 327 expr_assign: expr "*=" expr . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 318 (expr_assign) + $default reduce using rule 327 (expr_assign) State 941 - 319 expr_assign: expr "|=" expr . - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 329 expr_assign: expr "%=" expr . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 319 (expr_assign) + $default reduce using rule 329 (expr_assign) State 942 - 320 expr_assign: expr "^=" expr . - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 319 expr_assign: expr "&=" expr . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 320 (expr_assign) + $default reduce using rule 319 (expr_assign) State 943 - 329 expr_assign: expr "<<=" expr . - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 320 expr_assign: expr "|=" expr . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 329 (expr_assign) + $default reduce using rule 320 (expr_assign) State 944 - 330 expr_assign: expr ">>=" expr . - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 321 expr_assign: expr "^=" expr . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 330 (expr_assign) + $default reduce using rule 321 (expr_assign) State 945 - 316 expr_assign: expr "<-" expr . - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 330 expr_assign: expr "<<=" expr . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 316 (expr_assign) + $default reduce using rule 330 (expr_assign) State 946 - 317 expr_assign: expr ":=" expr . - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 331 expr_assign: expr ">>=" expr . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 317 (expr_assign) + $default reduce using rule 331 (expr_assign) State 947 - 331 expr_assign: expr "<<<=" expr . - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 317 expr_assign: expr "<-" expr . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 331 (expr_assign) + $default reduce using rule 317 (expr_assign) State 948 - 332 expr_assign: expr ">>>=" expr . - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 318 expr_assign: expr ":=" expr . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 332 (expr_assign) + $default reduce using rule 318 (expr_assign) State 949 - 321 expr_assign: expr "&&=" expr . - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 332 expr_assign: expr "<<<=" expr . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 321 (expr_assign) + $default reduce using rule 332 (expr_assign) State 950 - 322 expr_assign: expr "||=" expr . - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - - $default reduce using rule 322 (expr_assign) + 333 expr_assign: expr ">>>=" expr . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + + $default reduce using rule 333 (expr_assign) State 951 - 323 expr_assign: expr "^^=" expr . - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 322 expr_assign: expr "&&=" expr . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 323 (expr_assign) + $default reduce using rule 322 (expr_assign) State 952 - 315 expr_assign: expr '=' expr . - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - - $default reduce using rule 315 (expr_assign) + 323 expr_assign: expr "||=" expr . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + + $default reduce using rule 323 (expr_assign) State 953 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - 525 enum_expression: "name" '=' expr . - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 324 expr_assign: expr "^^=" expr . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 525 (enum_expression) + $default reduce using rule 324 (expr_assign) State 954 - 528 enum_list: enum_list ',' enum_expression . + 316 expr_assign: expr '=' expr . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 528 (enum_list) + $default reduce using rule 316 (expr_assign) State 955 - 543 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 . "end of code block" - - "end of code block" shift, and go to state 1079 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + 526 enum_expression: "name" '=' expr . + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + + $default reduce using rule 526 (enum_expression) State 956 - 473 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" . optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" - 475 | struct_variable_declaration_list optional_annotation_list "def" . optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block - - "public" shift, and go to state 1080 - "private" shift, and go to state 1081 + 529 enum_list: enum_list ',' enum_expression . - $default reduce using rule 463 (optional_public_or_private_member_variable) - - optional_public_or_private_member_variable go to state 1082 + $default reduce using rule 529 (enum_list) State 957 - 468 structure_variable_declaration: optional_field_annotation . optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration + 544 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 . "end of code block" - "static" shift, and go to state 1083 + "end of code block" shift, and go to state 1081 - $default reduce using rule 466 (optional_static_member_variable) - optional_static_member_variable go to state 1084 +State 958 + 474 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" . optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" + 476 | struct_variable_declaration_list optional_annotation_list "def" . optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block -State 958 + "public" shift, and go to state 1082 + "private" shift, and go to state 1083 - 471 struct_variable_declaration_list: struct_variable_declaration_list $@25 structure_variable_declaration . "end of expression" + $default reduce using rule 464 (optional_public_or_private_member_variable) - "end of expression" shift, and go to state 1085 + optional_public_or_private_member_variable go to state 1084 State 959 - 509 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" "aka" "name" . + 469 structure_variable_declaration: optional_field_annotation . optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration - $default reduce using rule 509 (let_variable_name_with_pos_list) + "static" shift, and go to state 1085 + + $default reduce using rule 467 (optional_static_member_variable) + + optional_static_member_variable go to state 1086 State 960 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - 511 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr . "end of expression" - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - "end of expression" shift, and go to state 1086 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 472 struct_variable_declaration_list: struct_variable_declaration_list $@25 structure_variable_declaration . "end of expression" + + "end of expression" shift, and go to state 1087 State 961 - 512 let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr "end of expression" . + 510 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" "aka" "name" . - $default reduce using rule 512 (let_variable_declaration) + $default reduce using rule 510 (let_variable_name_with_pos_list) State 962 - 625 type_declaration_no_options_no_dim: "type" '<' $@37 type_declaration '>' $@38 . - - $default reduce using rule 625 (type_declaration_no_options_no_dim) + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + 512 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr . "end of expression" + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + "end of expression" shift, and go to state 1088 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 State 963 - 648 type_declaration_no_options_no_dim: "array" '<' $@42 type_declaration '>' $@43 . + 513 let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr "end of expression" . - $default reduce using rule 648 (type_declaration_no_options_no_dim) + $default reduce using rule 513 (let_variable_declaration) State 964 - 651 type_declaration_no_options_no_dim: "table" '<' $@44 table_type_pair '>' $@45 . + 626 type_declaration_no_options_no_dim: "type" '<' $@37 type_declaration '>' $@38 . - $default reduce using rule 651 (type_declaration_no_options_no_dim) + $default reduce using rule 626 (type_declaration_no_options_no_dim) State 965 - 612 table_type_pair: type_declaration "end of expression" type_declaration . - 683 type_declaration: type_declaration . '|' type_declaration_no_options - 684 | type_declaration . '|' '#' + 649 type_declaration_no_options_no_dim: "array" '<' $@42 type_declaration '>' $@43 . - '|' shift, and go to state 370 - - $default reduce using rule 612 (table_type_pair) + $default reduce using rule 649 (type_declaration_no_options_no_dim) State 966 - 717 make_struct_decl: "struct" '<' $@73 type_declaration_no_options . '>' $@74 '(' use_initializer make_struct_dim ')' + 652 type_declaration_no_options_no_dim: "table" '<' $@44 table_type_pair '>' $@45 . - '>' shift, and go to state 1087 + $default reduce using rule 652 (type_declaration_no_options_no_dim) State 967 - 720 make_struct_decl: "class" '<' $@75 type_declaration_no_options . '>' $@76 '(' use_initializer make_struct_dim ')' + 613 table_type_pair: type_declaration "end of expression" type_declaration . + 684 type_declaration: type_declaration . '|' type_declaration_no_options + 685 | type_declaration . '|' '#' - '>' shift, and go to state 1088 + '|' shift, and go to state 372 + + $default reduce using rule 613 (table_type_pair) State 968 - 245 new_type_declaration: '<' $@3 type_declaration . '>' $@4 - 683 type_declaration: type_declaration . '|' type_declaration_no_options - 684 | type_declaration . '|' '#' + 718 make_struct_decl: "struct" '<' $@73 type_declaration_no_options . '>' $@74 '(' use_initializer make_struct_dim ')' - '|' shift, and go to state 370 '>' shift, and go to state 1089 State 969 - 714 use_initializer: "uninitialized" . + 721 make_struct_decl: "class" '<' $@75 type_declaration_no_options . '>' $@76 '(' use_initializer make_struct_dim ')' - $default reduce using rule 714 (use_initializer) + '>' shift, and go to state 1090 State 970 - 248 expr_new: "new" new_type_declaration '(' use_initializer . ')' - 249 | "new" new_type_declaration '(' use_initializer . make_struct_single ')' + 246 new_type_declaration: '<' $@3 type_declaration . '>' $@4 + 684 type_declaration: type_declaration . '|' type_declaration_no_options + 685 | type_declaration . '|' '#' - "$f" shift, and go to state 826 - "name" shift, and go to state 1090 - ')' shift, and go to state 1091 - - make_struct_fields go to state 831 - make_struct_single go to state 1092 + '|' shift, and go to state 372 + '>' shift, and go to state 1091 State 971 - 247 expr_new: "new" structure_type_declaration '(' optional_expr_list . ')' + 715 use_initializer: "uninitialized" . - ')' shift, and go to state 1093 + $default reduce using rule 715 (use_initializer) State 972 - 286 expr_type_info: "typeinfo" '(' name_in_namespace '<' . "name" '>' expr ')' - 287 | "typeinfo" '(' name_in_namespace '<' . "name" "end of expression" "name" '>' expr ')' + 249 expr_new: "new" new_type_declaration '(' use_initializer . ')' + 250 | "new" new_type_declaration '(' use_initializer . make_struct_single ')' + + "$f" shift, and go to state 828 + "name" shift, and go to state 1092 + ')' shift, and go to state 1093 - "name" shift, and go to state 1094 + make_struct_fields go to state 833 + make_struct_single go to state 1094 State 973 - 285 expr_type_info: "typeinfo" '(' name_in_namespace expr . ')' - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - ')' shift, and go to state 1095 + 248 expr_new: "new" structure_type_declaration '(' optional_expr_list . ')' + + ')' shift, and go to state 1095 State 974 - 284 expr_type_decl: "type" '<' $@11 type_declaration . '>' $@12 - 683 type_declaration: type_declaration . '|' type_declaration_no_options - 684 | type_declaration . '|' '#' + 287 expr_type_info: "typeinfo" '(' name_in_namespace '<' . "name" '>' expr ')' + 288 | "typeinfo" '(' name_in_namespace '<' . "name" "end of expression" "name" '>' expr ')' - '|' shift, and go to state 370 - '>' shift, and go to state 1096 + "name" shift, and go to state 1096 State 975 - 736 make_dim_decl: "array" "struct" '<' $@83 . type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 1097 - type_declaration_no_options_no_dim go to state 261 + 286 expr_type_info: "typeinfo" '(' name_in_namespace expr . ')' + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + ')' shift, and go to state 1097 State 976 - 739 make_dim_decl: "array" "tuple" '<' $@85 . type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 1098 - type_declaration_no_options_no_dim go to state 261 + 285 expr_type_decl: "type" '<' $@11 type_declaration . '>' $@12 + 684 type_declaration: type_declaration . '|' type_declaration_no_options + 685 | type_declaration . '|' '#' + + '|' shift, and go to state 372 + '>' shift, and go to state 1098 State 977 - 742 make_dim_decl: "array" "variant" '<' $@87 . type_declaration_no_options '>' $@88 '(' make_struct_dim ')' - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 + 737 make_dim_decl: "array" "struct" '<' $@83 . type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 type_declaration_no_options go to state 1099 - type_declaration_no_options_no_dim go to state 261 + type_declaration_no_options_no_dim go to state 263 State 978 - 746 make_dim_decl: "array" '<' $@89 type_declaration_no_options . '>' $@90 '(' expr_list optional_comma ')' - - '>' shift, and go to state 1100 + 740 make_dim_decl: "array" "tuple" '<' $@85 . type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 1100 + type_declaration_no_options_no_dim go to state 263 State 979 - 743 make_dim_decl: "array" '(' expr_list optional_comma . ')' - - ')' shift, and go to state 1101 + 743 make_dim_decl: "array" "variant" '<' $@87 . type_declaration_no_options '>' $@88 '(' make_struct_dim ')' + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 1101 + type_declaration_no_options_no_dim go to state 263 State 980 - 756 make_table_decl: "table" '<' type_declaration_no_options "end of expression" . type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 1102 - type_declaration_no_options_no_dim go to state 261 + 747 make_dim_decl: "array" '<' $@89 type_declaration_no_options . '>' $@90 '(' expr_list optional_comma ')' + + '>' shift, and go to state 1102 State 981 - 755 make_table_decl: "table" '<' type_declaration_no_options '>' . '(' expr_map_tuple_list optional_comma ')' + 744 make_dim_decl: "array" '(' expr_list optional_comma . ')' - '(' shift, and go to state 1103 + ')' shift, and go to state 1103 State 982 - 754 make_table_decl: "table" '(' expr_map_tuple_list optional_comma . ')' - - ')' shift, and go to state 1104 + 757 make_table_decl: "table" '<' type_declaration_no_options "end of expression" . type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 1104 + type_declaration_no_options_no_dim go to state 263 State 983 - 408 expr: "deref" '(' expr ')' . + 756 make_table_decl: "table" '<' type_declaration_no_options '>' . '(' expr_map_tuple_list optional_comma ')' - $default reduce using rule 408 (expr) + '(' shift, and go to state 1105 State 984 - 275 expr_cast: "cast" '<' $@5 type_declaration_no_options . '>' $@6 expr + 755 make_table_decl: "table" '(' expr_map_tuple_list optional_comma . ')' - '>' shift, and go to state 1105 + ')' shift, and go to state 1106 State 985 - 278 expr_cast: "upcast" '<' $@7 type_declaration_no_options . '>' $@8 expr + 409 expr: "deref" '(' expr ')' . - '>' shift, and go to state 1106 + $default reduce using rule 409 (expr) State 986 - 409 expr: "addr" '(' expr ')' . + 276 expr_cast: "cast" '<' $@5 type_declaration_no_options . '>' $@6 expr - $default reduce using rule 409 (expr) + '>' shift, and go to state 1107 State 987 - 281 expr_cast: "reinterpret" '<' $@9 type_declaration_no_options . '>' $@10 expr + 279 expr_cast: "upcast" '<' $@7 type_declaration_no_options . '>' $@8 expr - '>' shift, and go to state 1107 + '>' shift, and go to state 1108 State 988 - 750 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options . '>' $@92 '(' expr_list optional_comma ')' + 410 expr: "addr" '(' expr ')' . - '>' shift, and go to state 1108 + $default reduce using rule 410 (expr) State 989 - 747 make_dim_decl: "fixed_array" '(' expr_list optional_comma . ')' + 282 expr_cast: "reinterpret" '<' $@9 type_declaration_no_options . '>' $@10 expr - ')' shift, and go to state 1109 + '>' shift, and go to state 1109 State 990 - 726 make_struct_decl: "default" '<' $@79 type_declaration_no_options . '>' $@80 use_initializer + 751 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options . '>' $@92 '(' expr_list optional_comma ')' '>' shift, and go to state 1110 State 991 - 732 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options . '>' $@82 '(' use_initializer make_struct_dim ')' + 748 make_dim_decl: "fixed_array" '(' expr_list optional_comma . ')' - '>' shift, and go to state 1111 + ')' shift, and go to state 1111 State 992 - 729 make_tuple_call: "tuple" '(' expr_list optional_comma . ')' + 727 make_struct_decl: "default" '<' $@79 type_declaration_no_options . '>' $@80 use_initializer - ')' shift, and go to state 1112 + '>' shift, and go to state 1112 State 993 - 723 make_struct_decl: "variant" '<' $@77 type_declaration_no_options . '>' $@78 '(' make_struct_dim ')' + 733 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options . '>' $@82 '(' use_initializer make_struct_dim ')' '>' shift, and go to state 1113 State 994 - 410 expr: "generator" '<' type_declaration_no_options '>' . optional_capture_list '(' ')' - 411 | "generator" '<' type_declaration_no_options '>' . optional_capture_list '(' expr ')' + 730 make_tuple_call: "tuple" '(' expr_list optional_comma . ')' - '[' shift, and go to state 833 - - $default reduce using rule 302 (optional_capture_list) - - optional_capture_list go to state 1114 + ')' shift, and go to state 1114 State 995 - 440 expr_mtag: "$$" '(' expr ')' . + 724 make_struct_decl: "variant" '<' $@77 type_declaration_no_options . '>' $@78 '(' make_struct_dim ')' - $default reduce using rule 440 (expr_mtag) + '>' shift, and go to state 1115 State 996 - 441 expr_mtag: "$i" '(' expr ')' . + 411 expr: "generator" '<' type_declaration_no_options '>' . optional_capture_list '(' ')' + 412 | "generator" '<' type_declaration_no_options '>' . optional_capture_list '(' expr ')' - $default reduce using rule 441 (expr_mtag) + '[' shift, and go to state 835 + + $default reduce using rule 303 (optional_capture_list) + + optional_capture_list go to state 1116 State 997 - 442 expr_mtag: "$v" '(' expr ')' . + 441 expr_mtag: "$$" '(' expr ')' . - $default reduce using rule 442 (expr_mtag) + $default reduce using rule 441 (expr_mtag) State 998 - 443 expr_mtag: "$b" '(' expr ')' . + 442 expr_mtag: "$i" '(' expr ')' . - $default reduce using rule 443 (expr_mtag) + $default reduce using rule 442 (expr_mtag) State 999 - 444 expr_mtag: "$a" '(' expr ')' . + 443 expr_mtag: "$v" '(' expr ')' . - $default reduce using rule 444 (expr_mtag) + $default reduce using rule 443 (expr_mtag) State 1000 - 446 expr_mtag: "$c" '(' expr ')' . '(' ')' - 447 | "$c" '(' expr ')' . '(' expr_list ')' + 444 expr_mtag: "$b" '(' expr ')' . - '(' shift, and go to state 1115 + $default reduce using rule 444 (expr_mtag) State 1001 - 30 string_builder_body: string_builder_body "{" expr . "}" - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - "}" shift, and go to state 1116 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 445 expr_mtag: "$a" '(' expr ')' . + + $default reduce using rule 445 (expr_mtag) State 1002 - 763 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" . expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - expr_list go to state 1117 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 632 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 447 expr_mtag: "$c" '(' expr ')' . '(' ')' + 448 | "$c" '(' expr ')' . '(' expr_list ')' + + '(' shift, and go to state 1117 State 1003 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - 727 make_map_tuple: expr "=>" expr . - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - - $default reduce using rule 727 (make_map_tuple) + 30 string_builder_body: string_builder_body "{" expr . "}" + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + "}" shift, and go to state 1118 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 State 1004 - 752 expr_map_tuple_list: expr_map_tuple_list ',' make_map_tuple . - - $default reduce using rule 752 (expr_map_tuple_list) + 764 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" . expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + expr_list go to state 1119 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 634 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1005 - 753 make_table_decl: "begin of code block" expr_map_tuple_list optional_comma "end of code block" . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + 728 make_map_tuple: expr "=>" expr . + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 753 (make_table_decl) + $default reduce using rule 728 (make_map_tuple) State 1006 - 761 array_comprehension: '[' "for" variable_name_with_pos_list "in" . expr_list "end of expression" expr array_comprehension_where ']' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - expr_list go to state 1118 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 632 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 753 expr_map_tuple_list: expr_map_tuple_list ',' make_map_tuple . + + $default reduce using rule 753 (expr_map_tuple_list) State 1007 - 562 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" - 563 | variable_name_with_pos_list . ',' "name" "aka" "name" - 762 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list . "in" expr_list "end of expression" expr array_comprehension_where ']' + 754 make_table_decl: "begin of code block" expr_map_tuple_list optional_comma "end of code block" . - "in" shift, and go to state 1119 - ',' shift, and go to state 914 + $default reduce using rule 754 (make_table_decl) State 1008 - 289 expr_list: expr_list ',' expr . - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - - $default reduce using rule 289 (expr_list) + 762 array_comprehension: '[' "for" variable_name_with_pos_list "in" . expr_list "end of expression" expr array_comprehension_where ']' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + expr_list go to state 1120 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 634 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1009 - 733 make_dim_decl: '[' expr_list optional_comma ']' . + 563 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" + 564 | variable_name_with_pos_list . ',' "name" "aka" "name" + 763 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list . "in" expr_list "end of expression" expr array_comprehension_where ']' - $default reduce using rule 733 (make_dim_decl) + "in" shift, and go to state 1121 + ',' shift, and go to state 916 State 1010 - 398 expr: '(' expr_list optional_comma ')' . - - $default reduce using rule 398 (expr) + 290 expr_list: expr_list ',' expr . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + + $default reduce using rule 290 (expr_list) State 1011 - 338 func_addr_name: "$i" '(' . expr ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1120 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 734 make_dim_decl: '[' expr_list optional_comma ']' . + + $default reduce using rule 734 (make_dim_decl) State 1012 - 455 expr_mtag: '@' '@' "$c" '(' . expr ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1121 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 399 expr: '(' expr_list optional_comma ')' . + + $default reduce using rule 399 (expr) State 1013 - 342 func_addr_expr: '@' '@' '<' $@13 . type_declaration_no_options '>' $@14 func_addr_name - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 1122 - type_declaration_no_options_no_dim go to state 261 + 339 func_addr_name: "$i" '(' . expr ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1122 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1014 - 345 func_addr_expr: '@' '@' '<' $@15 . optional_function_argument_list optional_function_type '>' $@16 func_addr_name + 456 expr_mtag: '@' '@' "$c" '(' . expr ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1123 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 - '(' shift, and go to state 319 - $default reduce using rule 114 (optional_function_argument_list) +State 1015 - optional_function_argument_list go to state 1123 + 343 func_addr_expr: '@' '@' '<' $@13 . type_declaration_no_options '>' $@14 func_addr_name + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 1124 + type_declaration_no_options_no_dim go to state 263 -State 1015 +State 1016 - 706 make_struct_fields: "$f" '(' . expr ')' copy_or_move expr - 707 | "$f" '(' . expr ')' ":=" expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1124 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 346 func_addr_expr: '@' '@' '<' $@15 . optional_function_argument_list optional_function_type '>' $@16 func_addr_name + '(' shift, and go to state 321 -State 1016 + $default reduce using rule 114 (optional_function_argument_list) - 703 make_struct_fields: "name" ":=" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1125 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + optional_function_argument_list go to state 1125 State 1017 - 702 make_struct_fields: "name" copy_or_move . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 707 make_struct_fields: "$f" '(' . expr ')' copy_or_move expr + 708 | "$f" '(' . expr ')' ":=" expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 1126 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1018 - 333 expr_named_call: name_in_namespace '(' '[' make_struct_fields . ']' ')' - 704 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr - 705 | make_struct_fields . ',' "name" ":=" expr - 708 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr - 709 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr - - ',' shift, and go to state 1021 - ']' shift, and go to state 1127 + 704 make_struct_fields: "name" ":=" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1127 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1019 - 289 expr_list: expr_list ',' . expr - 334 expr_named_call: name_in_namespace '(' expr_list ',' . '[' make_struct_fields ']' ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 703 make_struct_fields: "name" copy_or_move . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 1128 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1008 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1128 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1020 - 355 expr_call: name_in_namespace '(' expr_list ')' . + 334 expr_named_call: name_in_namespace '(' '[' make_struct_fields . ']' ')' + 705 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr + 706 | make_struct_fields . ',' "name" ":=" expr + 709 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr + 710 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr - $default reduce using rule 355 (expr_call) + ',' shift, and go to state 1023 + ']' shift, and go to state 1129 State 1021 - 704 make_struct_fields: make_struct_fields ',' . "name" copy_or_move expr - 705 | make_struct_fields ',' . "name" ":=" expr - 708 | make_struct_fields ',' . "$f" '(' expr ')' copy_or_move expr - 709 | make_struct_fields ',' . "$f" '(' expr ')' ":=" expr - - "$f" shift, and go to state 1129 - "name" shift, and go to state 1130 + 290 expr_list: expr_list ',' . expr + 335 expr_named_call: name_in_namespace '(' expr_list ',' . '[' make_struct_fields ']' ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 1130 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1010 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1022 - 354 expr_call: name_in_namespace '(' make_struct_single ')' . + 356 expr_call: name_in_namespace '(' expr_list ')' . - $default reduce using rule 354 (expr_call) + $default reduce using rule 356 (expr_call) State 1023 - 303 optional_capture_list: '[' '[' . capture_list ']' ']' + 705 make_struct_fields: make_struct_fields ',' . "name" copy_or_move expr + 706 | make_struct_fields ',' . "name" ":=" expr + 709 | make_struct_fields ',' . "$f" '(' expr ')' copy_or_move expr + 710 | make_struct_fields ',' . "$f" '(' expr ')' ":=" expr - "<-" shift, and go to state 1131 - ":=" shift, and go to state 1132 - '=' shift, and go to state 1133 - '&' shift, and go to state 1134 - - capture_entry go to state 1135 - capture_list go to state 1136 + "$f" shift, and go to state 1131 + "name" shift, and go to state 1132 State 1024 - 304 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list . optional_function_type block_or_simple_block + 355 expr_call: name_in_namespace '(' make_struct_single ')' . - ':' shift, and go to state 387 - - $default reduce using rule 117 (optional_function_type) - - optional_function_type go to state 1137 + $default reduce using rule 355 (expr_call) State 1025 - 306 expr_full_block_assumed_piped: "begin of code block" expressions "end of code block" . + 304 optional_capture_list: '[' '[' . capture_list ']' ']' - $default reduce using rule 306 (expr_full_block_assumed_piped) + "<-" shift, and go to state 1133 + ":=" shift, and go to state 1134 + '=' shift, and go to state 1135 + '&' shift, and go to state 1136 + + capture_entry go to state 1137 + capture_list go to state 1138 State 1026 - 305 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list . optional_function_argument_list optional_function_type expression_block + 305 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list . optional_function_type block_or_simple_block - '(' shift, and go to state 319 + ':' shift, and go to state 389 - $default reduce using rule 114 (optional_function_argument_list) + $default reduce using rule 117 (optional_function_type) - optional_function_argument_list go to state 1138 + optional_function_type go to state 1139 State 1027 - 416 expr: expr "is" "type" '<' . $@19 type_declaration_no_options '>' $@20 - - $default reduce using rule 414 ($@19) + 307 expr_full_block_assumed_piped: "begin of code block" expressions "end of code block" . - $@19 go to state 1139 + $default reduce using rule 307 (expr_full_block_assumed_piped) State 1028 - 454 expr_mtag: expr "is" "$f" '(' . expr ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1140 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 306 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list . optional_function_argument_list optional_function_type expression_block + + '(' shift, and go to state 321 + + $default reduce using rule 114 (optional_function_argument_list) + + optional_function_argument_list go to state 1140 State 1029 - 422 expr: expr "as" "type" '<' . $@21 type_declaration '>' $@22 + 417 expr: expr "is" "type" '<' . $@19 type_declaration_no_options '>' $@20 - $default reduce using rule 420 ($@21) + $default reduce using rule 415 ($@19) - $@21 go to state 1141 + $@19 go to state 1141 State 1030 - 452 expr_mtag: expr "as" "$f" '(' . expr ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 455 expr_mtag: expr "is" "$f" '(' . expr ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 1142 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1031 - 335 expr_method_call: expr "->" "name" '(' . ')' - 336 | expr "->" "name" '(' . expr_list ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - ')' shift, and go to state 1143 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - expr_list go to state 1144 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 632 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 423 expr: expr "as" "type" '<' . $@21 type_declaration '>' $@22 + + $default reduce using rule 421 ($@21) + + $@21 go to state 1143 State 1032 - 449 expr_mtag: expr "?." "$f" '(' . expr ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 453 expr_mtag: expr "as" "$f" '(' . expr ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1145 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1144 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1033 - 401 expr: expr "?[" expr ']' . - - $default reduce using rule 401 (expr) + 336 expr_method_call: expr "->" "name" '(' . ')' + 337 | expr "->" "name" '(' . expr_list ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + ')' shift, and go to state 1145 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + expr_list go to state 1146 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 634 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1034 - 427 expr: expr '?' "as" "type" . '<' $@23 type_declaration '>' $@24 - - '<' shift, and go to state 1146 + 450 expr_mtag: expr "?." "$f" '(' . expr ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1147 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1035 - 453 expr_mtag: expr '?' "as" "$f" . '(' expr ')' + 402 expr: expr "?[" expr ']' . - '(' shift, and go to state 1147 + $default reduce using rule 402 (expr) State 1036 - 424 expr: expr '?' "as" "name" . + 428 expr: expr '?' "as" "type" . '<' $@23 type_declaration '>' $@24 - $default reduce using rule 424 (expr) + '<' shift, and go to state 1148 State 1037 - 428 expr: expr '?' "as" basic_type_declaration . + 454 expr_mtag: expr '?' "as" "$f" . '(' expr ')' - $default reduce using rule 428 (expr) + '(' shift, and go to state 1149 State 1038 - 413 expr: expr '?' expr ':' . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1148 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 425 expr: expr '?' "as" "name" . + + $default reduce using rule 425 (expr) State 1039 - 451 expr_mtag: expr '.' "?." "$f" . '(' expr ')' + 429 expr: expr '?' "as" basic_type_declaration . - '(' shift, and go to state 1149 + $default reduce using rule 429 (expr) State 1040 - 404 expr: expr '.' "?." "name" . - - $default reduce using rule 404 (expr) + 414 expr: expr '?' expr ':' . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1150 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1041 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 402 | expr '.' "?[" expr . ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - ']' shift, and go to state 1150 + 452 expr_mtag: expr '.' "?." "$f" . '(' expr ')' + + '(' shift, and go to state 1151 State 1042 - 448 expr_mtag: expr '.' "$f" '(' . expr ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1151 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 405 expr: expr '.' "?." "name" . + + $default reduce using rule 405 (expr) State 1043 - 348 expr_field: expr '.' "name" '(' . ')' - 349 | expr '.' "name" '(' . expr_list ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - ')' shift, and go to state 1152 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - expr_list go to state 1153 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 632 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 403 | expr '.' "?[" expr . ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + ']' shift, and go to state 1152 State 1044 - 450 expr_mtag: expr '.' '.' "$f" . '(' expr ')' - - '(' shift, and go to state 1154 + 449 expr_mtag: expr '.' "$f" '(' . expr ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1153 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1045 - 347 expr_field: expr '.' '.' "name" . - - $default reduce using rule 347 (expr_field) + 349 expr_field: expr '.' "name" '(' . ')' + 350 | expr '.' "name" '(' . expr_list ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + ')' shift, and go to state 1154 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + expr_list go to state 1155 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 634 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1046 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 400 | expr '.' '[' expr . ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - ']' shift, and go to state 1155 + 451 expr_mtag: expr '.' '.' "$f" . '(' expr ')' + '(' shift, and go to state 1156 -State 1047 - 352 expr_field: expr '.' $@17 error . $@18 +State 1047 - $default reduce using rule 351 ($@18) + 348 expr_field: expr '.' '.' "name" . - $@18 go to state 1156 + $default reduce using rule 348 (expr_field) State 1048 - 399 expr: expr '[' expr ']' . - - $default reduce using rule 399 (expr) + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 401 | expr '.' '[' expr . ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + ']' shift, and go to state 1157 State 1049 - 357 expr_call: basic_type_declaration '(' expr_list ')' . + 353 expr_field: expr '.' $@17 error . $@18 - $default reduce using rule 357 (expr_call) + $default reduce using rule 352 ($@18) + + $@18 go to state 1158 State 1050 - 654 type_declaration_no_options_no_dim: "iterator" '<' $@46 type_declaration '>' $@47 . + 400 expr: expr '[' expr ']' . - $default reduce using rule 654 (type_declaration_no_options_no_dim) + $default reduce using rule 400 (expr) State 1051 - 644 type_declaration_no_options_no_dim: "smart_ptr" '<' $@40 type_declaration '>' $@41 . + 358 expr_call: basic_type_declaration '(' expr_list ')' . - $default reduce using rule 644 (type_declaration_no_options_no_dim) + $default reduce using rule 358 (expr_call) State 1052 - 604 bitfield_bits: bitfield_bits "end of expression" "name" . + 655 type_declaration_no_options_no_dim: "iterator" '<' $@46 type_declaration '>' $@47 . - $default reduce using rule 604 (bitfield_bits) + $default reduce using rule 655 (type_declaration_no_options_no_dim) State 1053 - 610 bitfield_type_declaration: "bitfield" '<' $@35 bitfield_bits '>' $@36 . + 645 type_declaration_no_options_no_dim: "smart_ptr" '<' $@40 type_declaration '>' $@41 . - $default reduce using rule 610 (bitfield_type_declaration) + $default reduce using rule 645 (type_declaration_no_options_no_dim) State 1054 - 658 type_declaration_no_options_no_dim: "block" '<' $@48 type_declaration '>' $@49 . + 605 bitfield_bits: bitfield_bits "end of expression" "name" . - $default reduce using rule 658 (type_declaration_no_options_no_dim) + $default reduce using rule 605 (bitfield_bits) State 1055 - 661 type_declaration_no_options_no_dim: "block" '<' $@50 optional_function_argument_list optional_function_type '>' . $@51 - - $default reduce using rule 660 ($@51) + 611 bitfield_type_declaration: "bitfield" '<' $@35 bitfield_bits '>' $@36 . - $@51 go to state 1157 + $default reduce using rule 611 (bitfield_type_declaration) State 1056 - 665 type_declaration_no_options_no_dim: "function" '<' $@52 type_declaration '>' $@53 . + 659 type_declaration_no_options_no_dim: "block" '<' $@48 type_declaration '>' $@49 . - $default reduce using rule 665 (type_declaration_no_options_no_dim) + $default reduce using rule 659 (type_declaration_no_options_no_dim) State 1057 - 668 type_declaration_no_options_no_dim: "function" '<' $@54 optional_function_argument_list optional_function_type '>' . $@55 + 662 type_declaration_no_options_no_dim: "block" '<' $@50 optional_function_argument_list optional_function_type '>' . $@51 - $default reduce using rule 667 ($@55) + $default reduce using rule 661 ($@51) - $@55 go to state 1158 + $@51 go to state 1159 State 1058 - 672 type_declaration_no_options_no_dim: "lambda" '<' $@56 type_declaration '>' $@57 . + 666 type_declaration_no_options_no_dim: "function" '<' $@52 type_declaration '>' $@53 . - $default reduce using rule 672 (type_declaration_no_options_no_dim) + $default reduce using rule 666 (type_declaration_no_options_no_dim) State 1059 - 675 type_declaration_no_options_no_dim: "lambda" '<' $@58 optional_function_argument_list optional_function_type '>' . $@59 + 669 type_declaration_no_options_no_dim: "function" '<' $@54 optional_function_argument_list optional_function_type '>' . $@55 - $default reduce using rule 674 ($@59) + $default reduce using rule 668 ($@55) - $@59 go to state 1159 + $@55 go to state 1160 State 1060 - 483 tuple_type_list: tuple_type_list "end of expression" tuple_type . + 673 type_declaration_no_options_no_dim: "lambda" '<' $@56 type_declaration '>' $@57 . - $default reduce using rule 483 (tuple_type_list) + $default reduce using rule 673 (type_declaration_no_options_no_dim) State 1061 - 678 type_declaration_no_options_no_dim: "tuple" '<' $@60 tuple_type_list '>' $@61 . + 676 type_declaration_no_options_no_dim: "lambda" '<' $@58 optional_function_argument_list optional_function_type '>' . $@59 + + $default reduce using rule 675 ($@59) - $default reduce using rule 678 (type_declaration_no_options_no_dim) + $@59 go to state 1161 State 1062 - 489 variant_type_list: variant_type_list "end of expression" variant_type . + 484 tuple_type_list: tuple_type_list "end of expression" tuple_type . - $default reduce using rule 489 (variant_type_list) + $default reduce using rule 484 (tuple_type_list) State 1063 - 681 type_declaration_no_options_no_dim: "variant" '<' $@62 variant_type_list '>' $@63 . + 679 type_declaration_no_options_no_dim: "tuple" '<' $@60 tuple_type_list '>' $@61 . - $default reduce using rule 681 (type_declaration_no_options_no_dim) + $default reduce using rule 679 (type_declaration_no_options_no_dim) State 1064 - 238 type_declaration_no_options_list: type_declaration_no_options_list "end of expression" . type_declaration + 490 variant_type_list: variant_type_list "end of expression" variant_type . - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 260 - type_declaration_no_options_no_dim go to state 261 - type_declaration go to state 1160 + $default reduce using rule 490 (variant_type_list) State 1065 - 629 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' . '(' optional_expr_list ')' + 682 type_declaration_no_options_no_dim: "variant" '<' $@62 variant_type_list '>' $@63 . - '(' shift, and go to state 1161 + $default reduce using rule 682 (type_declaration_no_options_no_dim) State 1066 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - 560 variable_name_with_pos_list: "$i" '(' expr . ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - ')' shift, and go to state 1162 + 238 type_declaration_no_options_list: type_declaration_no_options_list "end of expression" . type_declaration + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 262 + type_declaration_no_options_no_dim go to state 263 + type_declaration go to state 1162 State 1067 - 561 variable_name_with_pos_list: "name" "aka" "name" . + 630 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' . '(' optional_expr_list ')' - $default reduce using rule 561 (variable_name_with_pos_list) + '(' shift, and go to state 1163 State 1068 - 562 variable_name_with_pos_list: variable_name_with_pos_list ',' "name" . - 563 | variable_name_with_pos_list ',' "name" . "aka" "name" + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + 561 variable_name_with_pos_list: "$i" '(' expr . ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + ')' shift, and go to state 1164 + + +State 1069 - "aka" shift, and go to state 1163 + 562 variable_name_with_pos_list: "name" "aka" "name" . $default reduce using rule 562 (variable_name_with_pos_list) -State 1069 +State 1070 - 497 variable_declaration: variable_name_with_pos_list ':' type_declaration . - 498 | variable_name_with_pos_list ':' type_declaration . copy_or_move expr - 683 type_declaration: type_declaration . '|' type_declaration_no_options - 684 | type_declaration . '|' '#' + 563 variable_name_with_pos_list: variable_name_with_pos_list ',' "name" . + 564 | variable_name_with_pos_list ',' "name" . "aka" "name" - "<-" shift, and go to state 913 - '=' shift, and go to state 915 - '|' shift, and go to state 370 + "aka" shift, and go to state 1165 - $default reduce using rule 497 (variable_declaration) + $default reduce using rule 563 (variable_name_with_pos_list) - copy_or_move go to state 1164 +State 1071 -State 1070 + 498 variable_declaration: variable_name_with_pos_list ':' type_declaration . + 499 | variable_name_with_pos_list ':' type_declaration . copy_or_move expr + 684 type_declaration: type_declaration . '|' type_declaration_no_options + 685 | type_declaration . '|' '#' - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - 499 variable_declaration: variable_name_with_pos_list copy_or_move expr . - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + "<-" shift, and go to state 915 + '=' shift, and go to state 917 + '|' shift, and go to state 372 - $default reduce using rule 499 (variable_declaration) + $default reduce using rule 498 (variable_declaration) + copy_or_move go to state 1166 -State 1071 + +State 1072 + + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + 500 variable_declaration: variable_name_with_pos_list copy_or_move expr . + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + + $default reduce using rule 500 (variable_declaration) + + +State 1073 70 expression_for_loop: "for" '(' variable_name_with_pos_list "in" . expr_list ')' expression_block - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - expr_list go to state 1165 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 632 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + expr_list go to state 1167 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 634 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 -State 1072 +State 1074 - 259 expression_try_catch: "try" expression_block "recover" expression_block . + 260 expression_try_catch: "try" expression_block "recover" expression_block . - $default reduce using rule 259 (expression_try_catch) + $default reduce using rule 260 (expression_try_catch) -State 1073 +State 1075 74 expression_with_alias: "assume" "name" '=' expr . - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 $default reduce using rule 74 (expression_with_alias) -State 1074 +State 1076 212 expression_block: "begin of code block" expressions "end of code block" "finally" "begin of code block" expressions . "end of code block" 233 expressions: expressions . expression_any 234 | expressions . error - error shift, and go to state 525 - "struct" shift, and go to state 406 - "class" shift, and go to state 407 + error shift, and go to state 527 + "struct" shift, and go to state 408 + "class" shift, and go to state 409 "let" shift, and go to state 3 - "while" shift, and go to state 526 - "if" shift, and go to state 527 - "static_if" shift, and go to state 528 - "for" shift, and go to state 529 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "return" shift, and go to state 530 - "null" shift, and go to state 414 - "break" shift, and go to state 531 - "try" shift, and go to state 532 - "table" shift, and go to state 415 - "delete" shift, and go to state 533 - "deref" shift, and go to state 416 - "with" shift, and go to state 534 - "assume" shift, and go to state 535 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 + "while" shift, and go to state 528 + "if" shift, and go to state 529 + "static_if" shift, and go to state 530 + "for" shift, and go to state 531 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "return" shift, and go to state 532 + "null" shift, and go to state 416 + "break" shift, and go to state 533 + "try" shift, and go to state 534 + "table" shift, and go to state 417 + "delete" shift, and go to state 535 + "deref" shift, and go to state 418 + "with" shift, and go to state 536 + "assume" shift, and go to state 537 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 "var" shift, and go to state 8 - "addr" shift, and go to state 419 - "continue" shift, and go to state 536 - "pass" shift, and go to state 537 - "reinterpret" shift, and go to state 420 - "label" shift, and go to state 538 - "goto" shift, and go to state 539 - "unsafe" shift, and go to state 540 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "yield" shift, and go to state 541 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - "end of code block" shift, and go to state 1166 - "end of expression" shift, and go to state 543 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + "addr" shift, and go to state 421 + "continue" shift, and go to state 538 + "pass" shift, and go to state 539 + "reinterpret" shift, and go to state 422 + "label" shift, and go to state 540 + "goto" shift, and go to state 541 + "unsafe" shift, and go to state 542 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "yield" shift, and go to state 543 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + "end of code block" shift, and go to state 1168 + "end of expression" shift, and go to state 545 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expression_label go to state 544 - expression_goto go to state 545 - if_or_static_if go to state 546 - expression_if_one_liner go to state 547 - expression_if_then_else go to state 548 - expression_for_loop go to state 549 - expression_unsafe go to state 550 - expression_while_loop go to state 551 - expression_with go to state 552 - expression_with_alias go to state 553 - expr_call_pipe go to state 456 - expression_any go to state 554 - name_in_namespace go to state 457 - expression_delete go to state 555 - expr_new go to state 458 - expression_break go to state 556 - expression_continue go to state 557 - expression_return go to state 558 - expression_yield_no_pipe go to state 559 - expression_yield go to state 560 - expression_try_catch go to state 561 - kwd_let go to state 562 - expression_let go to state 563 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_assign go to state 564 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 565 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expression_label go to state 546 + expression_goto go to state 547 + if_or_static_if go to state 548 + expression_if_one_liner go to state 549 + expression_if_then_else go to state 550 + expression_for_loop go to state 551 + expression_unsafe go to state 552 + expression_while_loop go to state 553 + expression_with go to state 554 + expression_with_alias go to state 555 + expr_call_pipe go to state 458 + expression_any go to state 556 + name_in_namespace go to state 459 + expression_delete go to state 557 + expr_new go to state 460 + expression_break go to state 558 + expression_continue go to state 559 + expression_return go to state 560 + expression_yield_no_pipe go to state 561 + expression_yield go to state 562 + expression_try_catch go to state 563 + kwd_let go to state 564 + expression_let go to state 565 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_assign go to state 566 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 567 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 -State 1075 +State 1077 68 expression_if_then_else: if_or_static_if '(' expr ')' . expression_block expression_else - "begin of code block" shift, and go to state 321 - - expression_block go to state 1167 - - -State 1076 - - 69 expression_if_then_else: expression_if_one_liner "if" '(' expr . ')' expression_else_one_liner "end of expression" - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - ')' shift, and go to state 1168 - - -State 1077 - - 267 tuple_expansion: "name" . + "begin of code block" shift, and go to state 323 - $default reduce using rule 267 (tuple_expansion) + expression_block go to state 1169 State 1078 - 268 tuple_expansion: tuple_expansion . ',' "name" - 269 tuple_expansion_variable_declaration: '(' tuple_expansion . ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 270 | '(' tuple_expansion . ')' optional_ref copy_or_move_or_clone expr "end of expression" - - ',' shift, and go to state 1169 - ')' shift, and go to state 1170 + 69 expression_if_then_else: expression_if_one_liner "if" '(' expr . ')' expression_else_one_liner "end of expression" + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + ')' shift, and go to state 1170 State 1079 - 543 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" . + 268 tuple_expansion: "name" . - $default reduce using rule 543 (enum_declaration) + $default reduce using rule 268 (tuple_expansion) State 1080 - 464 optional_public_or_private_member_variable: "public" . + 269 tuple_expansion: tuple_expansion . ',' "name" + 270 tuple_expansion_variable_declaration: '(' tuple_expansion . ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 271 | '(' tuple_expansion . ')' optional_ref copy_or_move_or_clone expr "end of expression" - $default reduce using rule 464 (optional_public_or_private_member_variable) + ',' shift, and go to state 1171 + ')' shift, and go to state 1172 State 1081 - 465 optional_public_or_private_member_variable: "private" . + 544 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" . - $default reduce using rule 465 (optional_public_or_private_member_variable) + $default reduce using rule 544 (enum_declaration) State 1082 - 473 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable . "abstract" optional_constant $@26 function_declaration_header "end of expression" - 475 | struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable . optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block - - "abstract" shift, and go to state 1171 - "static" shift, and go to state 1083 - - $default reduce using rule 466 (optional_static_member_variable) + 465 optional_public_or_private_member_variable: "public" . - optional_static_member_variable go to state 1172 + $default reduce using rule 465 (optional_public_or_private_member_variable) State 1083 - 467 optional_static_member_variable: "static" . + 466 optional_public_or_private_member_variable: "private" . - $default reduce using rule 467 (optional_static_member_variable) + $default reduce using rule 466 (optional_public_or_private_member_variable) State 1084 - 468 structure_variable_declaration: optional_field_annotation optional_static_member_variable . optional_override optional_public_or_private_member_variable variable_declaration + 474 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable . "abstract" optional_constant $@26 function_declaration_header "end of expression" + 476 | struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable . optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block - "override" shift, and go to state 1173 - "sealed" shift, and go to state 1174 + "abstract" shift, and go to state 1173 + "static" shift, and go to state 1085 - $default reduce using rule 458 (optional_override) + $default reduce using rule 467 (optional_static_member_variable) - optional_override go to state 1175 + optional_static_member_variable go to state 1174 State 1085 - 471 struct_variable_declaration_list: struct_variable_declaration_list $@25 structure_variable_declaration "end of expression" . + 468 optional_static_member_variable: "static" . - $default reduce using rule 471 (struct_variable_declaration_list) + $default reduce using rule 468 (optional_static_member_variable) State 1086 - 511 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" . + 469 structure_variable_declaration: optional_field_annotation optional_static_member_variable . optional_override optional_public_or_private_member_variable variable_declaration - $default reduce using rule 511 (let_variable_declaration) + "override" shift, and go to state 1175 + "sealed" shift, and go to state 1176 + $default reduce using rule 459 (optional_override) -State 1087 + optional_override go to state 1177 - 717 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' . $@74 '(' use_initializer make_struct_dim ')' - $default reduce using rule 716 ($@74) +State 1087 - $@74 go to state 1176 + 472 struct_variable_declaration_list: struct_variable_declaration_list $@25 structure_variable_declaration "end of expression" . + $default reduce using rule 472 (struct_variable_declaration_list) -State 1088 - 720 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' . $@76 '(' use_initializer make_struct_dim ')' +State 1088 - $default reduce using rule 719 ($@76) + 512 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" . - $@76 go to state 1177 + $default reduce using rule 512 (let_variable_declaration) State 1089 - 245 new_type_declaration: '<' $@3 type_declaration '>' . $@4 + 718 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' . $@74 '(' use_initializer make_struct_dim ')' - $default reduce using rule 244 ($@4) + $default reduce using rule 717 ($@74) - $@4 go to state 1178 + $@74 go to state 1178 State 1090 - 702 make_struct_fields: "name" . copy_or_move expr - 703 | "name" . ":=" expr + 721 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' . $@76 '(' use_initializer make_struct_dim ')' - "<-" shift, and go to state 913 - ":=" shift, and go to state 1016 - '=' shift, and go to state 915 + $default reduce using rule 720 ($@76) - copy_or_move go to state 1017 + $@76 go to state 1179 State 1091 - 248 expr_new: "new" new_type_declaration '(' use_initializer ')' . + 246 new_type_declaration: '<' $@3 type_declaration '>' . $@4 - $default reduce using rule 248 (expr_new) + $default reduce using rule 245 ($@4) + + $@4 go to state 1180 State 1092 - 249 expr_new: "new" new_type_declaration '(' use_initializer make_struct_single . ')' + 703 make_struct_fields: "name" . copy_or_move expr + 704 | "name" . ":=" expr - ')' shift, and go to state 1179 + "<-" shift, and go to state 915 + ":=" shift, and go to state 1018 + '=' shift, and go to state 917 + + copy_or_move go to state 1019 State 1093 - 247 expr_new: "new" structure_type_declaration '(' optional_expr_list ')' . + 249 expr_new: "new" new_type_declaration '(' use_initializer ')' . - $default reduce using rule 247 (expr_new) + $default reduce using rule 249 (expr_new) State 1094 - 286 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" . '>' expr ')' - 287 | "typeinfo" '(' name_in_namespace '<' "name" . "end of expression" "name" '>' expr ')' + 250 expr_new: "new" new_type_declaration '(' use_initializer make_struct_single . ')' - "end of expression" shift, and go to state 1180 - '>' shift, and go to state 1181 + ')' shift, and go to state 1181 State 1095 - 285 expr_type_info: "typeinfo" '(' name_in_namespace expr ')' . + 248 expr_new: "new" structure_type_declaration '(' optional_expr_list ')' . - $default reduce using rule 285 (expr_type_info) + $default reduce using rule 248 (expr_new) State 1096 - 284 expr_type_decl: "type" '<' $@11 type_declaration '>' . $@12 + 287 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" . '>' expr ')' + 288 | "typeinfo" '(' name_in_namespace '<' "name" . "end of expression" "name" '>' expr ')' - $default reduce using rule 283 ($@12) - - $@12 go to state 1182 + "end of expression" shift, and go to state 1182 + '>' shift, and go to state 1183 State 1097 - 736 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options . '>' $@84 '(' use_initializer make_struct_dim ')' + 286 expr_type_info: "typeinfo" '(' name_in_namespace expr ')' . - '>' shift, and go to state 1183 + $default reduce using rule 286 (expr_type_info) State 1098 - 739 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options . '>' $@86 '(' use_initializer make_struct_dim ')' + 285 expr_type_decl: "type" '<' $@11 type_declaration '>' . $@12 - '>' shift, and go to state 1184 + $default reduce using rule 284 ($@12) + + $@12 go to state 1184 State 1099 - 742 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options . '>' $@88 '(' make_struct_dim ')' + 737 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options . '>' $@84 '(' use_initializer make_struct_dim ')' '>' shift, and go to state 1185 State 1100 - 746 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' . $@90 '(' expr_list optional_comma ')' - - $default reduce using rule 745 ($@90) + 740 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options . '>' $@86 '(' use_initializer make_struct_dim ')' - $@90 go to state 1186 + '>' shift, and go to state 1186 State 1101 - 743 make_dim_decl: "array" '(' expr_list optional_comma ')' . + 743 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options . '>' $@88 '(' make_struct_dim ')' - $default reduce using rule 743 (make_dim_decl) + '>' shift, and go to state 1187 State 1102 - 756 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options . '>' '(' expr_map_tuple_list optional_comma ')' + 747 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' . $@90 '(' expr_list optional_comma ')' - '>' shift, and go to state 1187 + $default reduce using rule 746 ($@90) + + $@90 go to state 1188 State 1103 - 755 make_table_decl: "table" '<' type_declaration_no_options '>' '(' . expr_map_tuple_list optional_comma ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 621 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_map_tuple go to state 622 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - expr_map_tuple_list go to state 1188 - make_table_decl go to state 477 - array_comprehension go to state 478 + 744 make_dim_decl: "array" '(' expr_list optional_comma ')' . + + $default reduce using rule 744 (make_dim_decl) State 1104 - 754 make_table_decl: "table" '(' expr_map_tuple_list optional_comma ')' . + 757 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options . '>' '(' expr_map_tuple_list optional_comma ')' - $default reduce using rule 754 (make_table_decl) + '>' shift, and go to state 1189 State 1105 - 275 expr_cast: "cast" '<' $@5 type_declaration_no_options '>' . $@6 expr - - $default reduce using rule 274 ($@6) - - $@6 go to state 1189 + 756 make_table_decl: "table" '<' type_declaration_no_options '>' '(' . expr_map_tuple_list optional_comma ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 623 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_map_tuple go to state 624 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + expr_map_tuple_list go to state 1190 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1106 - 278 expr_cast: "upcast" '<' $@7 type_declaration_no_options '>' . $@8 expr + 755 make_table_decl: "table" '(' expr_map_tuple_list optional_comma ')' . - $default reduce using rule 277 ($@8) - - $@8 go to state 1190 + $default reduce using rule 755 (make_table_decl) State 1107 - 281 expr_cast: "reinterpret" '<' $@9 type_declaration_no_options '>' . $@10 expr + 276 expr_cast: "cast" '<' $@5 type_declaration_no_options '>' . $@6 expr - $default reduce using rule 280 ($@10) + $default reduce using rule 275 ($@6) - $@10 go to state 1191 + $@6 go to state 1191 State 1108 - 750 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' . $@92 '(' expr_list optional_comma ')' + 279 expr_cast: "upcast" '<' $@7 type_declaration_no_options '>' . $@8 expr - $default reduce using rule 749 ($@92) + $default reduce using rule 278 ($@8) - $@92 go to state 1192 + $@8 go to state 1192 State 1109 - 747 make_dim_decl: "fixed_array" '(' expr_list optional_comma ')' . + 282 expr_cast: "reinterpret" '<' $@9 type_declaration_no_options '>' . $@10 expr - $default reduce using rule 747 (make_dim_decl) + $default reduce using rule 281 ($@10) + + $@10 go to state 1193 State 1110 - 726 make_struct_decl: "default" '<' $@79 type_declaration_no_options '>' . $@80 use_initializer + 751 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' . $@92 '(' expr_list optional_comma ')' - $default reduce using rule 725 ($@80) + $default reduce using rule 750 ($@92) - $@80 go to state 1193 + $@92 go to state 1194 State 1111 - 732 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' . $@82 '(' use_initializer make_struct_dim ')' + 748 make_dim_decl: "fixed_array" '(' expr_list optional_comma ')' . - $default reduce using rule 731 ($@82) - - $@82 go to state 1194 + $default reduce using rule 748 (make_dim_decl) State 1112 - 729 make_tuple_call: "tuple" '(' expr_list optional_comma ')' . + 727 make_struct_decl: "default" '<' $@79 type_declaration_no_options '>' . $@80 use_initializer + + $default reduce using rule 726 ($@80) - $default reduce using rule 729 (make_tuple_call) + $@80 go to state 1195 State 1113 - 723 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' . $@78 '(' make_struct_dim ')' + 733 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' . $@82 '(' use_initializer make_struct_dim ')' - $default reduce using rule 722 ($@78) + $default reduce using rule 732 ($@82) - $@78 go to state 1195 + $@82 go to state 1196 State 1114 - 410 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list . '(' ')' - 411 | "generator" '<' type_declaration_no_options '>' optional_capture_list . '(' expr ')' + 730 make_tuple_call: "tuple" '(' expr_list optional_comma ')' . - '(' shift, and go to state 1196 + $default reduce using rule 730 (make_tuple_call) State 1115 - 446 expr_mtag: "$c" '(' expr ')' '(' . ')' - 447 | "$c" '(' expr ')' '(' . expr_list ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - ')' shift, and go to state 1197 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - expr_list go to state 1198 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 632 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 724 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' . $@78 '(' make_struct_dim ')' + + $default reduce using rule 723 ($@78) + + $@78 go to state 1197 State 1116 - 30 string_builder_body: string_builder_body "{" expr "}" . + 411 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list . '(' ')' + 412 | "generator" '<' type_declaration_no_options '>' optional_capture_list . '(' expr ')' - $default reduce using rule 30 (string_builder_body) + '(' shift, and go to state 1198 State 1117 - 289 expr_list: expr_list . ',' expr - 763 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list . "end of expression" make_map_tuple array_comprehension_where "end of code block" - - "end of expression" shift, and go to state 1199 - ',' shift, and go to state 905 + 447 expr_mtag: "$c" '(' expr ')' '(' . ')' + 448 | "$c" '(' expr ')' '(' . expr_list ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + ')' shift, and go to state 1199 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + expr_list go to state 1200 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 634 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1118 - 289 expr_list: expr_list . ',' expr - 761 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list . "end of expression" expr array_comprehension_where ']' + 30 string_builder_body: string_builder_body "{" expr "}" . - "end of expression" shift, and go to state 1200 - ',' shift, and go to state 905 + $default reduce using rule 30 (string_builder_body) State 1119 - 762 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" . expr_list "end of expression" expr array_comprehension_where ']' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - expr_list go to state 1201 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 632 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 290 expr_list: expr_list . ',' expr + 764 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list . "end of expression" make_map_tuple array_comprehension_where "end of code block" + + "end of expression" shift, and go to state 1201 + ',' shift, and go to state 907 State 1120 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 338 func_addr_name: "$i" '(' expr . ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - ')' shift, and go to state 1202 + 290 expr_list: expr_list . ',' expr + 762 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list . "end of expression" expr array_comprehension_where ']' + + "end of expression" shift, and go to state 1202 + ',' shift, and go to state 907 State 1121 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - 455 | '@' '@' "$c" '(' expr . ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - ')' shift, and go to state 1203 + 763 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" . expr_list "end of expression" expr array_comprehension_where ']' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + expr_list go to state 1203 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 634 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1122 - 342 func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options . '>' $@14 func_addr_name - - '>' shift, and go to state 1204 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 339 func_addr_name: "$i" '(' expr . ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + ')' shift, and go to state 1204 State 1123 - 345 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list . optional_function_type '>' $@16 func_addr_name + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + 456 | '@' '@' "$c" '(' expr . ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + ')' shift, and go to state 1205 - ':' shift, and go to state 387 - $default reduce using rule 117 (optional_function_type) +State 1124 - optional_function_type go to state 1205 + 343 func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options . '>' $@14 func_addr_name + '>' shift, and go to state 1206 -State 1124 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - 706 make_struct_fields: "$f" '(' expr . ')' copy_or_move expr - 707 | "$f" '(' expr . ')' ":=" expr - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - ')' shift, and go to state 1206 +State 1125 + 346 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list . optional_function_type '>' $@16 func_addr_name -State 1125 + ':' shift, and go to state 389 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - 703 make_struct_fields: "name" ":=" expr . - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + $default reduce using rule 117 (optional_function_type) - $default reduce using rule 703 (make_struct_fields) + optional_function_type go to state 1207 State 1126 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - 702 make_struct_fields: "name" copy_or_move expr . - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - - $default reduce using rule 702 (make_struct_fields) + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + 707 make_struct_fields: "$f" '(' expr . ')' copy_or_move expr + 708 | "$f" '(' expr . ')' ":=" expr + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + ')' shift, and go to state 1208 State 1127 - 333 expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' . ')' + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + 704 make_struct_fields: "name" ":=" expr . + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - ')' shift, and go to state 1207 + $default reduce using rule 704 (make_struct_fields) State 1128 - 334 expr_named_call: name_in_namespace '(' expr_list ',' '[' . make_struct_fields ']' ')' - 733 make_dim_decl: '[' . expr_list optional_comma ']' - 761 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - 762 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "for" shift, and go to state 629 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "iterator" shift, and go to state 630 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "$f" shift, and go to state 826 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 827 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - expr_list go to state 631 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 632 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_fields go to state 1208 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + 703 make_struct_fields: "name" copy_or_move expr . + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + + $default reduce using rule 703 (make_struct_fields) State 1129 - 708 make_struct_fields: make_struct_fields ',' "$f" . '(' expr ')' copy_or_move expr - 709 | make_struct_fields ',' "$f" . '(' expr ')' ":=" expr + 334 expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' . ')' - '(' shift, and go to state 1209 + ')' shift, and go to state 1209 State 1130 - 704 make_struct_fields: make_struct_fields ',' "name" . copy_or_move expr - 705 | make_struct_fields ',' "name" . ":=" expr - - "<-" shift, and go to state 913 - ":=" shift, and go to state 1210 - '=' shift, and go to state 915 - - copy_or_move go to state 1211 + 335 expr_named_call: name_in_namespace '(' expr_list ',' '[' . make_struct_fields ']' ')' + 734 make_dim_decl: '[' . expr_list optional_comma ']' + 762 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 763 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "for" shift, and go to state 631 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "iterator" shift, and go to state 632 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "$f" shift, and go to state 828 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 829 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + expr_list go to state 633 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 634 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_fields go to state 1210 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1131 - 298 capture_entry: "<-" . "name" + 709 make_struct_fields: make_struct_fields ',' "$f" . '(' expr ')' copy_or_move expr + 710 | make_struct_fields ',' "$f" . '(' expr ')' ":=" expr - "name" shift, and go to state 1212 + '(' shift, and go to state 1211 State 1132 - 299 capture_entry: ":=" . "name" + 705 make_struct_fields: make_struct_fields ',' "name" . copy_or_move expr + 706 | make_struct_fields ',' "name" . ":=" expr + + "<-" shift, and go to state 915 + ":=" shift, and go to state 1212 + '=' shift, and go to state 917 - "name" shift, and go to state 1213 + copy_or_move go to state 1213 State 1133 - 297 capture_entry: '=' . "name" + 299 capture_entry: "<-" . "name" "name" shift, and go to state 1214 State 1134 - 296 capture_entry: '&' . "name" + 300 capture_entry: ":=" . "name" "name" shift, and go to state 1215 State 1135 - 300 capture_list: capture_entry . + 298 capture_entry: '=' . "name" - $default reduce using rule 300 (capture_list) + "name" shift, and go to state 1216 State 1136 - 301 capture_list: capture_list . ',' capture_entry - 303 optional_capture_list: '[' '[' capture_list . ']' ']' + 297 capture_entry: '&' . "name" - ',' shift, and go to state 1216 - ']' shift, and go to state 1217 + "name" shift, and go to state 1217 State 1137 - 304 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type . block_or_simple_block + 301 capture_list: capture_entry . - "=>" shift, and go to state 1218 - "begin of code block" shift, and go to state 321 - - expression_block go to state 1219 - block_or_simple_block go to state 1220 + $default reduce using rule 301 (capture_list) State 1138 - 305 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list . optional_function_type expression_block + 302 capture_list: capture_list . ',' capture_entry + 304 optional_capture_list: '[' '[' capture_list . ']' ']' - ':' shift, and go to state 387 + ',' shift, and go to state 1218 + ']' shift, and go to state 1219 - $default reduce using rule 117 (optional_function_type) - optional_function_type go to state 1221 +State 1139 + 305 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type . block_or_simple_block -State 1139 + "=>" shift, and go to state 1220 + "begin of code block" shift, and go to state 323 - 416 expr: expr "is" "type" '<' $@19 . type_declaration_no_options '>' $@20 - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 1222 - type_declaration_no_options_no_dim go to state 261 + expression_block go to state 1221 + block_or_simple_block go to state 1222 State 1140 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - 454 | expr "is" "$f" '(' expr . ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - ')' shift, and go to state 1223 + 306 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list . optional_function_type expression_block + + ':' shift, and go to state 389 + + $default reduce using rule 117 (optional_function_type) + + optional_function_type go to state 1223 State 1141 - 422 expr: expr "as" "type" '<' $@21 . type_declaration '>' $@22 - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 260 - type_declaration_no_options_no_dim go to state 261 - type_declaration go to state 1224 + 417 expr: expr "is" "type" '<' $@19 . type_declaration_no_options '>' $@20 + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 1224 + type_declaration_no_options_no_dim go to state 263 State 1142 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 452 | expr "as" "$f" '(' expr . ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + 455 | expr "is" "$f" '(' expr . ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 ')' shift, and go to state 1225 State 1143 - 335 expr_method_call: expr "->" "name" '(' ')' . - - $default reduce using rule 335 (expr_method_call) + 423 expr: expr "as" "type" '<' $@21 . type_declaration '>' $@22 + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 262 + type_declaration_no_options_no_dim go to state 263 + type_declaration go to state 1226 State 1144 - 289 expr_list: expr_list . ',' expr - 336 expr_method_call: expr "->" "name" '(' expr_list . ')' - - ',' shift, and go to state 905 - ')' shift, and go to state 1226 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 453 | expr "as" "$f" '(' expr . ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + ')' shift, and go to state 1227 State 1145 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 449 | expr "?." "$f" '(' expr . ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - ')' shift, and go to state 1227 + 336 expr_method_call: expr "->" "name" '(' ')' . + + $default reduce using rule 336 (expr_method_call) State 1146 - 427 expr: expr '?' "as" "type" '<' . $@23 type_declaration '>' $@24 - - $default reduce using rule 425 ($@23) + 290 expr_list: expr_list . ',' expr + 337 expr_method_call: expr "->" "name" '(' expr_list . ')' - $@23 go to state 1228 + ',' shift, and go to state 907 + ')' shift, and go to state 1228 State 1147 - 453 expr_mtag: expr '?' "as" "$f" '(' . expr ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1229 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 450 | expr "?." "$f" '(' expr . ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + ')' shift, and go to state 1229 State 1148 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 413 | expr '?' expr ':' expr . - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 428 expr: expr '?' "as" "type" '<' . $@23 type_declaration '>' $@24 - $default reduce using rule 413 (expr) + $default reduce using rule 426 ($@23) + + $@23 go to state 1230 State 1149 - 451 expr_mtag: expr '.' "?." "$f" '(' . expr ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 454 expr_mtag: expr '?' "as" "$f" '(' . expr ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1230 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1231 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1150 - 402 expr: expr '.' "?[" expr ']' . - - $default reduce using rule 402 (expr) + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 414 | expr '?' expr ':' expr . + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + + $default reduce using rule 414 (expr) State 1151 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 448 | expr '.' "$f" '(' expr . ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - ')' shift, and go to state 1231 + 452 expr_mtag: expr '.' "?." "$f" '(' . expr ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1232 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1152 - 348 expr_field: expr '.' "name" '(' ')' . + 403 expr: expr '.' "?[" expr ']' . - $default reduce using rule 348 (expr_field) + $default reduce using rule 403 (expr) State 1153 - 289 expr_list: expr_list . ',' expr - 349 expr_field: expr '.' "name" '(' expr_list . ')' - - ',' shift, and go to state 905 - ')' shift, and go to state 1232 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr '.' "$f" '(' expr . ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + ')' shift, and go to state 1233 State 1154 - 450 expr_mtag: expr '.' '.' "$f" '(' . expr ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1233 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 349 expr_field: expr '.' "name" '(' ')' . + + $default reduce using rule 349 (expr_field) State 1155 - 400 expr: expr '.' '[' expr ']' . + 290 expr_list: expr_list . ',' expr + 350 expr_field: expr '.' "name" '(' expr_list . ')' - $default reduce using rule 400 (expr) + ',' shift, and go to state 907 + ')' shift, and go to state 1234 State 1156 - 352 expr_field: expr '.' $@17 error $@18 . - - $default reduce using rule 352 (expr_field) + 451 expr_mtag: expr '.' '.' "$f" '(' . expr ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1235 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1157 - 661 type_declaration_no_options_no_dim: "block" '<' $@50 optional_function_argument_list optional_function_type '>' $@51 . + 401 expr: expr '.' '[' expr ']' . - $default reduce using rule 661 (type_declaration_no_options_no_dim) + $default reduce using rule 401 (expr) State 1158 - 668 type_declaration_no_options_no_dim: "function" '<' $@54 optional_function_argument_list optional_function_type '>' $@55 . + 353 expr_field: expr '.' $@17 error $@18 . - $default reduce using rule 668 (type_declaration_no_options_no_dim) + $default reduce using rule 353 (expr_field) State 1159 - 675 type_declaration_no_options_no_dim: "lambda" '<' $@58 optional_function_argument_list optional_function_type '>' $@59 . + 662 type_declaration_no_options_no_dim: "block" '<' $@50 optional_function_argument_list optional_function_type '>' $@51 . - $default reduce using rule 675 (type_declaration_no_options_no_dim) + $default reduce using rule 662 (type_declaration_no_options_no_dim) State 1160 - 238 type_declaration_no_options_list: type_declaration_no_options_list "end of expression" type_declaration . - 683 type_declaration: type_declaration . '|' type_declaration_no_options - 684 | type_declaration . '|' '#' - - '|' shift, and go to state 370 + 669 type_declaration_no_options_no_dim: "function" '<' $@54 optional_function_argument_list optional_function_type '>' $@55 . - $default reduce using rule 238 (type_declaration_no_options_list) + $default reduce using rule 669 (type_declaration_no_options_no_dim) State 1161 - 629 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' . optional_expr_list ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - $default reduce using rule 235 (optional_expr_list) + 676 type_declaration_no_options_no_dim: "lambda" '<' $@58 optional_function_argument_list optional_function_type '>' $@59 . - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - optional_expr_list go to state 1234 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - expr_list go to state 696 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 632 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + $default reduce using rule 676 (type_declaration_no_options_no_dim) State 1162 - 560 variable_name_with_pos_list: "$i" '(' expr ')' . + 238 type_declaration_no_options_list: type_declaration_no_options_list "end of expression" type_declaration . + 684 type_declaration: type_declaration . '|' type_declaration_no_options + 685 | type_declaration . '|' '#' - $default reduce using rule 560 (variable_name_with_pos_list) + '|' shift, and go to state 372 + + $default reduce using rule 238 (type_declaration_no_options_list) State 1163 - 563 variable_name_with_pos_list: variable_name_with_pos_list ',' "name" "aka" . "name" + 630 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' . optional_expr_list ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + $default reduce using rule 235 (optional_expr_list) - "name" shift, and go to state 1235 + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + optional_expr_list go to state 1236 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + expr_list go to state 698 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 634 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1164 - 498 variable_declaration: variable_name_with_pos_list ':' type_declaration copy_or_move . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1236 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 561 variable_name_with_pos_list: "$i" '(' expr ')' . + + $default reduce using rule 561 (variable_name_with_pos_list) State 1165 - 70 expression_for_loop: "for" '(' variable_name_with_pos_list "in" expr_list . ')' expression_block - 289 expr_list: expr_list . ',' expr + 564 variable_name_with_pos_list: variable_name_with_pos_list ',' "name" "aka" . "name" - ',' shift, and go to state 905 - ')' shift, and go to state 1237 + "name" shift, and go to state 1237 State 1166 - 212 expression_block: "begin of code block" expressions "end of code block" "finally" "begin of code block" expressions "end of code block" . - - $default reduce using rule 212 (expression_block) + 499 variable_declaration: variable_name_with_pos_list ':' type_declaration copy_or_move . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1238 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1167 - 68 expression_if_then_else: if_or_static_if '(' expr ')' expression_block . expression_else - - "else" shift, and go to state 1238 - "elif" shift, and go to state 1239 - "static_elif" shift, and go to state 1240 - - $default reduce using rule 56 (expression_else) + 70 expression_for_loop: "for" '(' variable_name_with_pos_list "in" expr_list . ')' expression_block + 290 expr_list: expr_list . ',' expr - elif_or_static_elif go to state 1241 - expression_else go to state 1242 + ',' shift, and go to state 907 + ')' shift, and go to state 1239 State 1168 - 69 expression_if_then_else: expression_if_one_liner "if" '(' expr ')' . expression_else_one_liner "end of expression" + 212 expression_block: "begin of code block" expressions "end of code block" "finally" "begin of code block" expressions "end of code block" . - "else" shift, and go to state 1243 + $default reduce using rule 212 (expression_block) - $default reduce using rule 61 (expression_else_one_liner) - expression_else_one_liner go to state 1244 +State 1169 + 68 expression_if_then_else: if_or_static_if '(' expr ')' expression_block . expression_else -State 1169 + "else" shift, and go to state 1240 + "elif" shift, and go to state 1241 + "static_elif" shift, and go to state 1242 - 268 tuple_expansion: tuple_expansion ',' . "name" + $default reduce using rule 56 (expression_else) - "name" shift, and go to state 1245 + elif_or_static_elif go to state 1243 + expression_else go to state 1244 State 1170 - 269 tuple_expansion_variable_declaration: '(' tuple_expansion ')' . ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 270 | '(' tuple_expansion ')' . optional_ref copy_or_move_or_clone expr "end of expression" + 69 expression_if_then_else: expression_if_one_liner "if" '(' expr ')' . expression_else_one_liner "end of expression" - ':' shift, and go to state 1246 - '&' shift, and go to state 401 + "else" shift, and go to state 1245 - $default reduce using rule 503 (optional_ref) + $default reduce using rule 61 (expression_else_one_liner) - optional_ref go to state 1247 + expression_else_one_liner go to state 1246 State 1171 - 473 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" . optional_constant $@26 function_declaration_header "end of expression" + 269 tuple_expansion: tuple_expansion ',' . "name" - "const" shift, and go to state 1248 - - $default reduce using rule 461 (optional_constant) - - optional_constant go to state 1249 + "name" shift, and go to state 1247 State 1172 - 475 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable . optional_override optional_constant $@27 function_declaration_header expression_block + 270 tuple_expansion_variable_declaration: '(' tuple_expansion ')' . ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 271 | '(' tuple_expansion ')' . optional_ref copy_or_move_or_clone expr "end of expression" - "override" shift, and go to state 1173 - "sealed" shift, and go to state 1174 + ':' shift, and go to state 1248 + '&' shift, and go to state 403 - $default reduce using rule 458 (optional_override) + $default reduce using rule 504 (optional_ref) - optional_override go to state 1250 + optional_ref go to state 1249 State 1173 - 459 optional_override: "override" . + 474 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" . optional_constant $@26 function_declaration_header "end of expression" - $default reduce using rule 459 (optional_override) + "const" shift, and go to state 1250 + + $default reduce using rule 462 (optional_constant) + + optional_constant go to state 1251 State 1174 - 460 optional_override: "sealed" . + 476 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable . optional_override optional_constant $@27 function_declaration_header expression_block - $default reduce using rule 460 (optional_override) + "override" shift, and go to state 1175 + "sealed" shift, and go to state 1176 + $default reduce using rule 459 (optional_override) -State 1175 + optional_override go to state 1252 - 468 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override . optional_public_or_private_member_variable variable_declaration - "public" shift, and go to state 1080 - "private" shift, and go to state 1081 +State 1175 - $default reduce using rule 463 (optional_public_or_private_member_variable) + 460 optional_override: "override" . - optional_public_or_private_member_variable go to state 1251 + $default reduce using rule 460 (optional_override) State 1176 - 717 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 . '(' use_initializer make_struct_dim ')' + 461 optional_override: "sealed" . - '(' shift, and go to state 1252 + $default reduce using rule 461 (optional_override) State 1177 - 720 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 . '(' use_initializer make_struct_dim ')' + 469 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override . optional_public_or_private_member_variable variable_declaration - '(' shift, and go to state 1253 + "public" shift, and go to state 1082 + "private" shift, and go to state 1083 + + $default reduce using rule 464 (optional_public_or_private_member_variable) + + optional_public_or_private_member_variable go to state 1253 State 1178 - 245 new_type_declaration: '<' $@3 type_declaration '>' $@4 . + 718 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 . '(' use_initializer make_struct_dim ')' - $default reduce using rule 245 (new_type_declaration) + '(' shift, and go to state 1254 State 1179 - 249 expr_new: "new" new_type_declaration '(' use_initializer make_struct_single ')' . + 721 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 . '(' use_initializer make_struct_dim ')' - $default reduce using rule 249 (expr_new) + '(' shift, and go to state 1255 State 1180 - 287 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" . "name" '>' expr ')' + 246 new_type_declaration: '<' $@3 type_declaration '>' $@4 . - "name" shift, and go to state 1254 + $default reduce using rule 246 (new_type_declaration) State 1181 - 286 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' . expr ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1255 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 250 expr_new: "new" new_type_declaration '(' use_initializer make_struct_single ')' . + + $default reduce using rule 250 (expr_new) State 1182 - 284 expr_type_decl: "type" '<' $@11 type_declaration '>' $@12 . + 288 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" . "name" '>' expr ')' - $default reduce using rule 284 (expr_type_decl) + "name" shift, and go to state 1256 State 1183 - 736 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' . $@84 '(' use_initializer make_struct_dim ')' - - $default reduce using rule 735 ($@84) - - $@84 go to state 1256 + 287 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' . expr ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1257 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1184 - 739 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' . $@86 '(' use_initializer make_struct_dim ')' + 285 expr_type_decl: "type" '<' $@11 type_declaration '>' $@12 . - $default reduce using rule 738 ($@86) - - $@86 go to state 1257 + $default reduce using rule 285 (expr_type_decl) State 1185 - 742 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' . $@88 '(' make_struct_dim ')' + 737 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' . $@84 '(' use_initializer make_struct_dim ')' - $default reduce using rule 741 ($@88) + $default reduce using rule 736 ($@84) - $@88 go to state 1258 + $@84 go to state 1258 State 1186 - 746 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 . '(' expr_list optional_comma ')' + 740 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' . $@86 '(' use_initializer make_struct_dim ')' - '(' shift, and go to state 1259 + $default reduce using rule 739 ($@86) + $@86 go to state 1259 -State 1187 - 756 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' . '(' expr_map_tuple_list optional_comma ')' +State 1187 - '(' shift, and go to state 1260 + 743 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' . $@88 '(' make_struct_dim ')' + $default reduce using rule 742 ($@88) -State 1188 + $@88 go to state 1260 - 752 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple - 755 make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list . optional_comma ')' - ',' shift, and go to state 814 +State 1188 - $default reduce using rule 759 (optional_comma) + 747 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 . '(' expr_list optional_comma ')' - optional_comma go to state 1261 + '(' shift, and go to state 1261 State 1189 - 275 expr_cast: "cast" '<' $@5 type_declaration_no_options '>' $@6 . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1262 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 757 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' . '(' expr_map_tuple_list optional_comma ')' + + '(' shift, and go to state 1262 State 1190 - 278 expr_cast: "upcast" '<' $@7 type_declaration_no_options '>' $@8 . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1263 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 753 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple + 756 make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list . optional_comma ')' + + ',' shift, and go to state 816 + + $default reduce using rule 760 (optional_comma) + + optional_comma go to state 1263 State 1191 - 281 expr_cast: "reinterpret" '<' $@9 type_declaration_no_options '>' $@10 . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 276 expr_cast: "cast" '<' $@5 type_declaration_no_options '>' $@6 . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 1264 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1192 - 750 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 . '(' expr_list optional_comma ')' - - '(' shift, and go to state 1265 + 279 expr_cast: "upcast" '<' $@7 type_declaration_no_options '>' $@8 . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1265 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1193 - 726 make_struct_decl: "default" '<' $@79 type_declaration_no_options '>' $@80 . use_initializer - - "uninitialized" shift, and go to state 969 - - $default reduce using rule 713 (use_initializer) - - use_initializer go to state 1266 + 282 expr_cast: "reinterpret" '<' $@9 type_declaration_no_options '>' $@10 . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1266 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1194 - 732 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 . '(' use_initializer make_struct_dim ')' + 751 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 . '(' expr_list optional_comma ')' '(' shift, and go to state 1267 State 1195 - 723 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 . '(' make_struct_dim ')' + 727 make_struct_decl: "default" '<' $@79 type_declaration_no_options '>' $@80 . use_initializer - '(' shift, and go to state 1268 + "uninitialized" shift, and go to state 971 + + $default reduce using rule 714 (use_initializer) + + use_initializer go to state 1268 State 1196 - 410 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' . ')' - 411 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' . expr ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - ')' shift, and go to state 1269 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1270 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 733 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 . '(' use_initializer make_struct_dim ')' + + '(' shift, and go to state 1269 State 1197 - 446 expr_mtag: "$c" '(' expr ')' '(' ')' . + 724 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 . '(' make_struct_dim ')' - $default reduce using rule 446 (expr_mtag) + '(' shift, and go to state 1270 State 1198 - 289 expr_list: expr_list . ',' expr - 447 expr_mtag: "$c" '(' expr ')' '(' expr_list . ')' - - ',' shift, and go to state 905 - ')' shift, and go to state 1271 + 411 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' . ')' + 412 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' . expr ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + ')' shift, and go to state 1271 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1272 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1199 - 763 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" . make_map_tuple array_comprehension_where "end of code block" - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 621 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_map_tuple go to state 1272 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 447 expr_mtag: "$c" '(' expr ')' '(' ')' . + + $default reduce using rule 447 (expr_mtag) State 1200 - 761 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" . expr array_comprehension_where ']' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1273 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 290 expr_list: expr_list . ',' expr + 448 expr_mtag: "$c" '(' expr ')' '(' expr_list . ')' + ',' shift, and go to state 907 + ')' shift, and go to state 1273 -State 1201 - 289 expr_list: expr_list . ',' expr - 762 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list . "end of expression" expr array_comprehension_where ']' +State 1201 - "end of expression" shift, and go to state 1274 - ',' shift, and go to state 905 + 764 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" . make_map_tuple array_comprehension_where "end of code block" + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 623 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_map_tuple go to state 1274 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1202 - 338 func_addr_name: "$i" '(' expr ')' . - - $default reduce using rule 338 (func_addr_name) + 762 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" . expr array_comprehension_where ']' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1275 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1203 - 455 expr_mtag: '@' '@' "$c" '(' expr ')' . + 290 expr_list: expr_list . ',' expr + 763 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list . "end of expression" expr array_comprehension_where ']' - $default reduce using rule 455 (expr_mtag) + "end of expression" shift, and go to state 1276 + ',' shift, and go to state 907 State 1204 - 342 func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options '>' . $@14 func_addr_name - - $default reduce using rule 341 ($@14) + 339 func_addr_name: "$i" '(' expr ')' . - $@14 go to state 1275 + $default reduce using rule 339 (func_addr_name) State 1205 - 345 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type . '>' $@16 func_addr_name + 456 expr_mtag: '@' '@' "$c" '(' expr ')' . - '>' shift, and go to state 1276 + $default reduce using rule 456 (expr_mtag) State 1206 - 706 make_struct_fields: "$f" '(' expr ')' . copy_or_move expr - 707 | "$f" '(' expr ')' . ":=" expr + 343 func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options '>' . $@14 func_addr_name - "<-" shift, and go to state 913 - ":=" shift, and go to state 1277 - '=' shift, and go to state 915 + $default reduce using rule 342 ($@14) - copy_or_move go to state 1278 + $@14 go to state 1277 State 1207 - 333 expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' ')' . + 346 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type . '>' $@16 func_addr_name - $default reduce using rule 333 (expr_named_call) + '>' shift, and go to state 1278 State 1208 - 334 expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields . ']' ')' - 704 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr - 705 | make_struct_fields . ',' "name" ":=" expr - 708 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr - 709 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr + 707 make_struct_fields: "$f" '(' expr ')' . copy_or_move expr + 708 | "$f" '(' expr ')' . ":=" expr - ',' shift, and go to state 1021 - ']' shift, and go to state 1279 + "<-" shift, and go to state 915 + ":=" shift, and go to state 1279 + '=' shift, and go to state 917 + + copy_or_move go to state 1280 State 1209 - 708 make_struct_fields: make_struct_fields ',' "$f" '(' . expr ')' copy_or_move expr - 709 | make_struct_fields ',' "$f" '(' . expr ')' ":=" expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1280 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 334 expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' ')' . + + $default reduce using rule 334 (expr_named_call) State 1210 - 705 make_struct_fields: make_struct_fields ',' "name" ":=" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1281 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 335 expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields . ']' ')' + 705 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr + 706 | make_struct_fields . ',' "name" ":=" expr + 709 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr + 710 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr + + ',' shift, and go to state 1023 + ']' shift, and go to state 1281 State 1211 - 704 make_struct_fields: make_struct_fields ',' "name" copy_or_move . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + 709 make_struct_fields: make_struct_fields ',' "$f" '(' . expr ')' copy_or_move expr + 710 | make_struct_fields ',' "$f" '(' . expr ')' ":=" expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 expr go to state 1282 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1212 - 298 capture_entry: "<-" "name" . - - $default reduce using rule 298 (capture_entry) + 706 make_struct_fields: make_struct_fields ',' "name" ":=" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1283 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1213 - 299 capture_entry: ":=" "name" . - - $default reduce using rule 299 (capture_entry) + 705 make_struct_fields: make_struct_fields ',' "name" copy_or_move . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1284 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1214 - 297 capture_entry: '=' "name" . + 299 capture_entry: "<-" "name" . - $default reduce using rule 297 (capture_entry) + $default reduce using rule 299 (capture_entry) State 1215 - 296 capture_entry: '&' "name" . + 300 capture_entry: ":=" "name" . - $default reduce using rule 296 (capture_entry) + $default reduce using rule 300 (capture_entry) State 1216 - 301 capture_list: capture_list ',' . capture_entry + 298 capture_entry: '=' "name" . - "<-" shift, and go to state 1131 - ":=" shift, and go to state 1132 - '=' shift, and go to state 1133 - '&' shift, and go to state 1134 - - capture_entry go to state 1283 + $default reduce using rule 298 (capture_entry) State 1217 - 303 optional_capture_list: '[' '[' capture_list ']' . ']' + 297 capture_entry: '&' "name" . - ']' shift, and go to state 1284 + $default reduce using rule 297 (capture_entry) State 1218 - 291 block_or_simple_block: "=>" . expr - 292 | "=>" . "<-" expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "<-" shift, and go to state 1285 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1286 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 302 capture_list: capture_list ',' . capture_entry + + "<-" shift, and go to state 1133 + ":=" shift, and go to state 1134 + '=' shift, and go to state 1135 + '&' shift, and go to state 1136 + + capture_entry go to state 1285 State 1219 - 290 block_or_simple_block: expression_block . + 304 optional_capture_list: '[' '[' capture_list ']' . ']' - $default reduce using rule 290 (block_or_simple_block) + ']' shift, and go to state 1286 State 1220 - 304 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block . - - $default reduce using rule 304 (expr_full_block) + 292 block_or_simple_block: "=>" . expr + 293 | "=>" . "<-" expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "<-" shift, and go to state 1287 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1288 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1221 - 305 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type . expression_block - - "begin of code block" shift, and go to state 321 + 291 block_or_simple_block: expression_block . - expression_block go to state 1287 + $default reduce using rule 291 (block_or_simple_block) State 1222 - 416 expr: expr "is" "type" '<' $@19 type_declaration_no_options . '>' $@20 + 305 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block . - '>' shift, and go to state 1288 + $default reduce using rule 305 (expr_full_block) State 1223 - 454 expr_mtag: expr "is" "$f" '(' expr ')' . + 306 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type . expression_block - $default reduce using rule 454 (expr_mtag) + "begin of code block" shift, and go to state 323 + + expression_block go to state 1289 State 1224 - 422 expr: expr "as" "type" '<' $@21 type_declaration . '>' $@22 - 683 type_declaration: type_declaration . '|' type_declaration_no_options - 684 | type_declaration . '|' '#' + 417 expr: expr "is" "type" '<' $@19 type_declaration_no_options . '>' $@20 - '|' shift, and go to state 370 - '>' shift, and go to state 1289 + '>' shift, and go to state 1290 State 1225 - 452 expr_mtag: expr "as" "$f" '(' expr ')' . + 455 expr_mtag: expr "is" "$f" '(' expr ')' . - $default reduce using rule 452 (expr_mtag) + $default reduce using rule 455 (expr_mtag) State 1226 - 336 expr_method_call: expr "->" "name" '(' expr_list ')' . + 423 expr: expr "as" "type" '<' $@21 type_declaration . '>' $@22 + 684 type_declaration: type_declaration . '|' type_declaration_no_options + 685 | type_declaration . '|' '#' - $default reduce using rule 336 (expr_method_call) + '|' shift, and go to state 372 + '>' shift, and go to state 1291 State 1227 - 449 expr_mtag: expr "?." "$f" '(' expr ')' . + 453 expr_mtag: expr "as" "$f" '(' expr ')' . - $default reduce using rule 449 (expr_mtag) + $default reduce using rule 453 (expr_mtag) State 1228 - 427 expr: expr '?' "as" "type" '<' $@23 . type_declaration '>' $@24 - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 260 - type_declaration_no_options_no_dim go to state 261 - type_declaration go to state 1290 + 337 expr_method_call: expr "->" "name" '(' expr_list ')' . + + $default reduce using rule 337 (expr_method_call) State 1229 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 453 | expr '?' "as" "$f" '(' expr . ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - ')' shift, and go to state 1291 + 450 expr_mtag: expr "?." "$f" '(' expr ')' . + + $default reduce using rule 450 (expr_mtag) State 1230 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 451 | expr '.' "?." "$f" '(' expr . ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - ')' shift, and go to state 1292 + 428 expr: expr '?' "as" "type" '<' $@23 . type_declaration '>' $@24 + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 262 + type_declaration_no_options_no_dim go to state 263 + type_declaration go to state 1292 State 1231 - 448 expr_mtag: expr '.' "$f" '(' expr ')' . - - $default reduce using rule 448 (expr_mtag) + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr '?' "as" "$f" '(' expr . ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + ')' shift, and go to state 1293 State 1232 - 349 expr_field: expr '.' "name" '(' expr_list ')' . - - $default reduce using rule 349 (expr_field) + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr '.' "?." "$f" '(' expr . ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + ')' shift, and go to state 1294 State 1233 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 450 | expr '.' '.' "$f" '(' expr . ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - ')' shift, and go to state 1293 + 449 expr_mtag: expr '.' "$f" '(' expr ')' . + + $default reduce using rule 449 (expr_mtag) State 1234 - 629 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list . ')' + 350 expr_field: expr '.' "name" '(' expr_list ')' . - ')' shift, and go to state 1294 + $default reduce using rule 350 (expr_field) State 1235 - 563 variable_name_with_pos_list: variable_name_with_pos_list ',' "name" "aka" "name" . - - $default reduce using rule 563 (variable_name_with_pos_list) + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr '.' '.' "$f" '(' expr . ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + ')' shift, and go to state 1295 State 1236 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - 498 variable_declaration: variable_name_with_pos_list ':' type_declaration copy_or_move expr . - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 630 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list . ')' - $default reduce using rule 498 (variable_declaration) + ')' shift, and go to state 1296 State 1237 - 70 expression_for_loop: "for" '(' variable_name_with_pos_list "in" expr_list ')' . expression_block - - "begin of code block" shift, and go to state 321 + 564 variable_name_with_pos_list: variable_name_with_pos_list ',' "name" "aka" "name" . - expression_block go to state 1295 + $default reduce using rule 564 (variable_name_with_pos_list) State 1238 - 57 expression_else: "else" . expression_block - - "begin of code block" shift, and go to state 321 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + 499 variable_declaration: variable_name_with_pos_list ':' type_declaration copy_or_move expr . + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - expression_block go to state 1296 + $default reduce using rule 499 (variable_declaration) State 1239 - 54 elif_or_static_elif: "elif" . + 70 expression_for_loop: "for" '(' variable_name_with_pos_list "in" expr_list ')' . expression_block - $default reduce using rule 54 (elif_or_static_elif) + "begin of code block" shift, and go to state 323 + + expression_block go to state 1297 State 1240 - 55 elif_or_static_elif: "static_elif" . + 57 expression_else: "else" . expression_block - $default reduce using rule 55 (elif_or_static_elif) + "begin of code block" shift, and go to state 323 + + expression_block go to state 1298 State 1241 - 58 expression_else: elif_or_static_elif . '(' expr ')' expression_block expression_else + 54 elif_or_static_elif: "elif" . - '(' shift, and go to state 1297 + $default reduce using rule 54 (elif_or_static_elif) State 1242 - 68 expression_if_then_else: if_or_static_if '(' expr ')' expression_block expression_else . + 55 elif_or_static_elif: "static_elif" . - $default reduce using rule 68 (expression_if_then_else) + $default reduce using rule 55 (elif_or_static_elif) State 1243 - 62 expression_else_one_liner: "else" . expression_if_one_liner + 58 expression_else: elif_or_static_elif . '(' expr ')' expression_block expression_else - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "return" shift, and go to state 530 - "null" shift, and go to state 414 - "break" shift, and go to state 531 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "continue" shift, and go to state 536 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "yield" shift, and go to state 541 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expression_if_one_liner go to state 1298 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expression_break go to state 1299 - expression_continue go to state 1300 - expression_return go to state 1301 - expression_yield_no_pipe go to state 1302 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1303 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + '(' shift, and go to state 1299 State 1244 - 69 expression_if_then_else: expression_if_one_liner "if" '(' expr ')' expression_else_one_liner . "end of expression" + 68 expression_if_then_else: if_or_static_if '(' expr ')' expression_block expression_else . - "end of expression" shift, and go to state 1304 + $default reduce using rule 68 (expression_if_then_else) State 1245 - 268 tuple_expansion: tuple_expansion ',' "name" . + 62 expression_else_one_liner: "else" . expression_if_one_liner - $default reduce using rule 268 (tuple_expansion) + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "return" shift, and go to state 532 + "null" shift, and go to state 416 + "break" shift, and go to state 533 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "continue" shift, and go to state 538 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "yield" shift, and go to state 543 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expression_if_one_liner go to state 1300 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expression_break go to state 1301 + expression_continue go to state 1302 + expression_return go to state 1303 + expression_yield_no_pipe go to state 1304 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1305 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1246 - 269 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' . type_declaration_no_options copy_or_move_or_clone expr "end of expression" - - "type" shift, and go to state 214 - "array" shift, and go to state 215 - "table" shift, and go to state 216 - "typedecl" shift, and go to state 217 - "iterator" shift, and go to state 218 - "smart_ptr" shift, and go to state 219 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "auto" shift, and go to state 223 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 229 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "block" shift, and go to state 241 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "function" shift, and go to state 245 - "lambda" shift, and go to state 246 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 251 - "variant" shift, and go to state 252 - "$t" shift, and go to state 253 - "name" shift, and go to state 55 - '$' shift, and go to state 254 - - name_in_namespace go to state 255 - basic_type_declaration go to state 256 - structure_type_declaration go to state 257 - auto_type_declaration go to state 258 - bitfield_type_declaration go to state 259 - type_declaration_no_options go to state 1305 - type_declaration_no_options_no_dim go to state 261 + 69 expression_if_then_else: expression_if_one_liner "if" '(' expr ')' expression_else_one_liner . "end of expression" + "end of expression" shift, and go to state 1306 -State 1247 - 270 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref . copy_or_move_or_clone expr "end of expression" +State 1247 - "<-" shift, and go to state 576 - ":=" shift, and go to state 577 - '=' shift, and go to state 578 + 269 tuple_expansion: tuple_expansion ',' "name" . - copy_or_move_or_clone go to state 1306 + $default reduce using rule 269 (tuple_expansion) State 1248 - 462 optional_constant: "const" . - - $default reduce using rule 462 (optional_constant) + 270 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' . type_declaration_no_options copy_or_move_or_clone expr "end of expression" + + "type" shift, and go to state 216 + "array" shift, and go to state 217 + "table" shift, and go to state 218 + "typedecl" shift, and go to state 219 + "iterator" shift, and go to state 220 + "smart_ptr" shift, and go to state 221 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "auto" shift, and go to state 225 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 231 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "block" shift, and go to state 243 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "function" shift, and go to state 247 + "lambda" shift, and go to state 248 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 253 + "variant" shift, and go to state 254 + "::" shift, and go to state 55 + "$t" shift, and go to state 255 + "name" shift, and go to state 56 + '$' shift, and go to state 256 + + name_in_namespace go to state 257 + basic_type_declaration go to state 258 + structure_type_declaration go to state 259 + auto_type_declaration go to state 260 + bitfield_type_declaration go to state 261 + type_declaration_no_options go to state 1307 + type_declaration_no_options_no_dim go to state 263 State 1249 - 473 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant . $@26 function_declaration_header "end of expression" + 271 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref . copy_or_move_or_clone expr "end of expression" - $default reduce using rule 472 ($@26) + "<-" shift, and go to state 578 + ":=" shift, and go to state 579 + '=' shift, and go to state 580 - $@26 go to state 1307 + copy_or_move_or_clone go to state 1308 State 1250 - 475 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override . optional_constant $@27 function_declaration_header expression_block + 463 optional_constant: "const" . - "const" shift, and go to state 1248 - - $default reduce using rule 461 (optional_constant) - - optional_constant go to state 1308 + $default reduce using rule 463 (optional_constant) State 1251 - 468 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable . variable_declaration + 474 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant . $@26 function_declaration_header "end of expression" - "$i" shift, and go to state 710 - "name" shift, and go to state 711 + $default reduce using rule 473 ($@26) - variable_declaration go to state 1309 - variable_name_with_pos_list go to state 713 + $@26 go to state 1309 State 1252 - 717 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' . use_initializer make_struct_dim ')' + 476 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override . optional_constant $@27 function_declaration_header expression_block - "uninitialized" shift, and go to state 969 + "const" shift, and go to state 1250 - $default reduce using rule 713 (use_initializer) + $default reduce using rule 462 (optional_constant) - use_initializer go to state 1310 + optional_constant go to state 1310 State 1253 - 720 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' . use_initializer make_struct_dim ')' + 469 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable . variable_declaration - "uninitialized" shift, and go to state 969 + "$i" shift, and go to state 712 + "name" shift, and go to state 713 - $default reduce using rule 713 (use_initializer) - - use_initializer go to state 1311 + variable_declaration go to state 1311 + variable_name_with_pos_list go to state 715 State 1254 - 287 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" . '>' expr ')' + 718 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' . use_initializer make_struct_dim ')' + + "uninitialized" shift, and go to state 971 - '>' shift, and go to state 1312 + $default reduce using rule 714 (use_initializer) + + use_initializer go to state 1312 State 1255 - 286 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' expr . ')' - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - ')' shift, and go to state 1313 + 721 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' . use_initializer make_struct_dim ')' + + "uninitialized" shift, and go to state 971 + + $default reduce using rule 714 (use_initializer) + + use_initializer go to state 1313 State 1256 - 736 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 . '(' use_initializer make_struct_dim ')' + 288 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" . '>' expr ')' - '(' shift, and go to state 1314 + '>' shift, and go to state 1314 State 1257 - 739 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 . '(' use_initializer make_struct_dim ')' - - '(' shift, and go to state 1315 + 287 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' expr . ')' + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + ')' shift, and go to state 1315 State 1258 - 742 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 . '(' make_struct_dim ')' + 737 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 . '(' use_initializer make_struct_dim ')' '(' shift, and go to state 1316 State 1259 - 746 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' . expr_list optional_comma ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - expr_list go to state 1317 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 632 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 740 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 . '(' use_initializer make_struct_dim ')' + + '(' shift, and go to state 1317 State 1260 - 756 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' . expr_map_tuple_list optional_comma ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 621 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_map_tuple go to state 622 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - expr_map_tuple_list go to state 1318 - make_table_decl go to state 477 - array_comprehension go to state 478 + 743 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 . '(' make_struct_dim ')' + '(' shift, and go to state 1318 -State 1261 - 755 make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma . ')' +State 1261 - ')' shift, and go to state 1319 + 747 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' . expr_list optional_comma ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + expr_list go to state 1319 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 634 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1262 - 275 expr_cast: "cast" '<' $@5 type_declaration_no_options '>' $@6 expr . - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - - $default reduce using rule 275 (expr_cast) + 757 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' . expr_map_tuple_list optional_comma ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 623 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_map_tuple go to state 624 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + expr_map_tuple_list go to state 1320 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1263 - 278 expr_cast: "upcast" '<' $@7 type_declaration_no_options '>' $@8 expr . - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - - $default reduce using rule 278 (expr_cast) + 756 make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma . ')' + + ')' shift, and go to state 1321 State 1264 - 281 expr_cast: "reinterpret" '<' $@9 type_declaration_no_options '>' $@10 expr . - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - - $default reduce using rule 281 (expr_cast) + 276 expr_cast: "cast" '<' $@5 type_declaration_no_options '>' $@6 expr . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + + $default reduce using rule 276 (expr_cast) State 1265 - 750 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' . expr_list optional_comma ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - expr_list go to state 1320 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 632 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 279 expr_cast: "upcast" '<' $@7 type_declaration_no_options '>' $@8 expr . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + + $default reduce using rule 279 (expr_cast) State 1266 - 726 make_struct_decl: "default" '<' $@79 type_declaration_no_options '>' $@80 use_initializer . - - $default reduce using rule 726 (make_struct_decl) + 282 expr_cast: "reinterpret" '<' $@9 type_declaration_no_options '>' $@10 expr . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + + $default reduce using rule 282 (expr_cast) State 1267 - 732 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' . use_initializer make_struct_dim ')' + 751 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' . expr_list optional_comma ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + expr_list go to state 1322 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 634 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 - "uninitialized" shift, and go to state 969 - $default reduce using rule 713 (use_initializer) +State 1268 - use_initializer go to state 1321 + 727 make_struct_decl: "default" '<' $@79 type_declaration_no_options '>' $@80 use_initializer . + $default reduce using rule 727 (make_struct_decl) -State 1268 - 723 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 '(' . make_struct_dim ')' +State 1269 - "$f" shift, and go to state 826 - "name" shift, and go to state 1090 + 733 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' . use_initializer make_struct_dim ')' - make_struct_fields go to state 1322 - make_struct_dim go to state 1323 + "uninitialized" shift, and go to state 971 + $default reduce using rule 714 (use_initializer) -State 1269 + use_initializer go to state 1323 - 410 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' ')' . - $default reduce using rule 410 (expr) +State 1270 + 724 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 '(' . make_struct_dim ')' -State 1270 + "$f" shift, and go to state 828 + "name" shift, and go to state 1092 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 411 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr . ')' - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - ')' shift, and go to state 1324 + make_struct_fields go to state 1324 + make_struct_dim go to state 1325 State 1271 - 447 expr_mtag: "$c" '(' expr ')' '(' expr_list ')' . + 411 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' ')' . - $default reduce using rule 447 (expr_mtag) + $default reduce using rule 411 (expr) State 1272 - 763 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple . array_comprehension_where "end of code block" + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 412 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr . ')' + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + ')' shift, and go to state 1326 - "end of expression" shift, and go to state 1325 - $default reduce using rule 757 (array_comprehension_where) +State 1273 - array_comprehension_where go to state 1326 + 448 expr_mtag: "$c" '(' expr ')' '(' expr_list ')' . + $default reduce using rule 448 (expr_mtag) -State 1273 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - 761 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr . array_comprehension_where ']' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - "end of expression" shift, and go to state 1325 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - - $default reduce using rule 757 (array_comprehension_where) - - array_comprehension_where go to state 1327 +State 1274 + 764 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple . array_comprehension_where "end of code block" -State 1274 + "end of expression" shift, and go to state 1327 - 762 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" . expr array_comprehension_where ']' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1328 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + $default reduce using rule 758 (array_comprehension_where) + + array_comprehension_where go to state 1328 State 1275 - 342 func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options '>' $@14 . func_addr_name + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + 762 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr . array_comprehension_where ']' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + "end of expression" shift, and go to state 1327 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - "$i" shift, and go to state 821 - "name" shift, and go to state 55 + $default reduce using rule 758 (array_comprehension_where) - name_in_namespace go to state 824 - func_addr_name go to state 1329 + array_comprehension_where go to state 1329 State 1276 - 345 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type '>' . $@16 func_addr_name + 763 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" . expr array_comprehension_where ']' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1330 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 - $default reduce using rule 344 ($@16) - $@16 go to state 1330 +State 1277 + 343 func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options '>' $@14 . func_addr_name -State 1277 + "::" shift, and go to state 55 + "$i" shift, and go to state 823 + "name" shift, and go to state 56 - 707 make_struct_fields: "$f" '(' expr ')' ":=" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1331 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + name_in_namespace go to state 826 + func_addr_name go to state 1331 State 1278 - 706 make_struct_fields: "$f" '(' expr ')' copy_or_move . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1332 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 346 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type '>' . $@16 func_addr_name + $default reduce using rule 345 ($@16) + + $@16 go to state 1332 -State 1279 - 334 expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' . ')' +State 1279 - ')' shift, and go to state 1333 + 708 make_struct_fields: "$f" '(' expr ')' ":=" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1333 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1280 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - 708 make_struct_fields: make_struct_fields ',' "$f" '(' expr . ')' copy_or_move expr - 709 | make_struct_fields ',' "$f" '(' expr . ')' ":=" expr - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - ')' shift, and go to state 1334 + 707 make_struct_fields: "$f" '(' expr ')' copy_or_move . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1334 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1281 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - 705 make_struct_fields: make_struct_fields ',' "name" ":=" expr . - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 335 expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' . ')' - $default reduce using rule 705 (make_struct_fields) + ')' shift, and go to state 1335 State 1282 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - 704 make_struct_fields: make_struct_fields ',' "name" copy_or_move expr . - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - - $default reduce using rule 704 (make_struct_fields) + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + 709 make_struct_fields: make_struct_fields ',' "$f" '(' expr . ')' copy_or_move expr + 710 | make_struct_fields ',' "$f" '(' expr . ')' ":=" expr + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + ')' shift, and go to state 1336 State 1283 - 301 capture_list: capture_list ',' capture_entry . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + 706 make_struct_fields: make_struct_fields ',' "name" ":=" expr . + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 301 (capture_list) + $default reduce using rule 706 (make_struct_fields) State 1284 - 303 optional_capture_list: '[' '[' capture_list ']' ']' . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + 705 make_struct_fields: make_struct_fields ',' "name" copy_or_move expr . + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 303 (optional_capture_list) + $default reduce using rule 705 (make_struct_fields) State 1285 - 292 block_or_simple_block: "=>" "<-" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1335 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 302 capture_list: capture_list ',' capture_entry . + + $default reduce using rule 302 (capture_list) State 1286 - 291 block_or_simple_block: "=>" expr . - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 304 optional_capture_list: '[' '[' capture_list ']' ']' . - ".." error (nonassociative) - - $default reduce using rule 291 (block_or_simple_block) + $default reduce using rule 304 (optional_capture_list) State 1287 - 305 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block . - - $default reduce using rule 305 (expr_full_block_assumed_piped) + 293 block_or_simple_block: "=>" "<-" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1337 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1288 - 416 expr: expr "is" "type" '<' $@19 type_declaration_no_options '>' . $@20 + 292 block_or_simple_block: "=>" expr . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 415 ($@20) + ".." error (nonassociative) - $@20 go to state 1336 + $default reduce using rule 292 (block_or_simple_block) State 1289 - 422 expr: expr "as" "type" '<' $@21 type_declaration '>' . $@22 - - $default reduce using rule 421 ($@22) + 306 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block . - $@22 go to state 1337 + $default reduce using rule 306 (expr_full_block_assumed_piped) State 1290 - 427 expr: expr '?' "as" "type" '<' $@23 type_declaration . '>' $@24 - 683 type_declaration: type_declaration . '|' type_declaration_no_options - 684 | type_declaration . '|' '#' + 417 expr: expr "is" "type" '<' $@19 type_declaration_no_options '>' . $@20 + + $default reduce using rule 416 ($@20) - '|' shift, and go to state 370 - '>' shift, and go to state 1338 + $@20 go to state 1338 State 1291 - 453 expr_mtag: expr '?' "as" "$f" '(' expr ')' . + 423 expr: expr "as" "type" '<' $@21 type_declaration '>' . $@22 - $default reduce using rule 453 (expr_mtag) + $default reduce using rule 422 ($@22) + + $@22 go to state 1339 State 1292 - 451 expr_mtag: expr '.' "?." "$f" '(' expr ')' . + 428 expr: expr '?' "as" "type" '<' $@23 type_declaration . '>' $@24 + 684 type_declaration: type_declaration . '|' type_declaration_no_options + 685 | type_declaration . '|' '#' - $default reduce using rule 451 (expr_mtag) + '|' shift, and go to state 372 + '>' shift, and go to state 1340 State 1293 - 450 expr_mtag: expr '.' '.' "$f" '(' expr ')' . + 454 expr_mtag: expr '?' "as" "$f" '(' expr ')' . - $default reduce using rule 450 (expr_mtag) + $default reduce using rule 454 (expr_mtag) State 1294 - 629 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' . + 452 expr_mtag: expr '.' "?." "$f" '(' expr ')' . - $default reduce using rule 629 (type_declaration_no_options_no_dim) + $default reduce using rule 452 (expr_mtag) State 1295 + 451 expr_mtag: expr '.' '.' "$f" '(' expr ')' . + + $default reduce using rule 451 (expr_mtag) + + +State 1296 + + 630 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' . + + $default reduce using rule 630 (type_declaration_no_options_no_dim) + + +State 1297 + 70 expression_for_loop: "for" '(' variable_name_with_pos_list "in" expr_list ')' expression_block . $default reduce using rule 70 (expression_for_loop) -State 1296 +State 1298 57 expression_else: "else" expression_block . $default reduce using rule 57 (expression_else) -State 1297 +State 1299 58 expression_else: elif_or_static_elif '(' . expr ')' expression_block expression_else - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1339 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1341 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 -State 1298 +State 1300 62 expression_else_one_liner: "else" expression_if_one_liner . $default reduce using rule 62 (expression_else_one_liner) -State 1299 +State 1301 66 expression_if_one_liner: expression_break . $default reduce using rule 66 (expression_if_one_liner) -State 1300 +State 1302 67 expression_if_one_liner: expression_continue . $default reduce using rule 67 (expression_if_one_liner) -State 1301 +State 1303 64 expression_if_one_liner: expression_return . $default reduce using rule 64 (expression_if_one_liner) -State 1302 +State 1304 65 expression_if_one_liner: expression_yield_no_pipe . $default reduce using rule 65 (expression_if_one_liner) -State 1303 +State 1305 63 expression_if_one_liner: expr . - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 $default reduce using rule 63 (expression_if_one_liner) -State 1304 +State 1306 69 expression_if_then_else: expression_if_one_liner "if" '(' expr ')' expression_else_one_liner "end of expression" . $default reduce using rule 69 (expression_if_then_else) -State 1305 - - 269 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options . copy_or_move_or_clone expr "end of expression" - - "<-" shift, and go to state 576 - ":=" shift, and go to state 577 - '=' shift, and go to state 578 - - copy_or_move_or_clone go to state 1340 - - -State 1306 - - 270 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone . expr "end of expression" - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1341 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 - - State 1307 - 473 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 . function_declaration_header "end of expression" - - "operator" shift, and go to state 169 - "bool" shift, and go to state 170 - "string" shift, and go to state 171 - "int" shift, and go to state 172 - "int2" shift, and go to state 173 - "int3" shift, and go to state 174 - "int4" shift, and go to state 175 - "uint" shift, and go to state 176 - "uint2" shift, and go to state 177 - "uint3" shift, and go to state 178 - "uint4" shift, and go to state 179 - "float" shift, and go to state 180 - "float2" shift, and go to state 181 - "float3" shift, and go to state 182 - "float4" shift, and go to state 183 - "range" shift, and go to state 184 - "urange" shift, and go to state 185 - "range64" shift, and go to state 186 - "urange64" shift, and go to state 187 - "int64" shift, and go to state 188 - "uint64" shift, and go to state 189 - "double" shift, and go to state 190 - "int8" shift, and go to state 191 - "uint8" shift, and go to state 192 - "int16" shift, and go to state 193 - "uint16" shift, and go to state 194 - "++" shift, and go to state 195 - "--" shift, and go to state 196 - "name" shift, and go to state 197 - - function_name go to state 198 - function_declaration_header go to state 1342 + 270 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options . copy_or_move_or_clone expr "end of expression" + "<-" shift, and go to state 578 + ":=" shift, and go to state 579 + '=' shift, and go to state 580 -State 1308 + copy_or_move_or_clone go to state 1342 - 475 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant . $@27 function_declaration_header expression_block - $default reduce using rule 474 ($@27) +State 1308 - $@27 go to state 1343 + 271 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone . expr "end of expression" + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1343 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1309 - 468 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration . - - $default reduce using rule 468 (structure_variable_declaration) + 474 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 . function_declaration_header "end of expression" + + "operator" shift, and go to state 171 + "bool" shift, and go to state 172 + "string" shift, and go to state 173 + "int" shift, and go to state 174 + "int2" shift, and go to state 175 + "int3" shift, and go to state 176 + "int4" shift, and go to state 177 + "uint" shift, and go to state 178 + "uint2" shift, and go to state 179 + "uint3" shift, and go to state 180 + "uint4" shift, and go to state 181 + "float" shift, and go to state 182 + "float2" shift, and go to state 183 + "float3" shift, and go to state 184 + "float4" shift, and go to state 185 + "range" shift, and go to state 186 + "urange" shift, and go to state 187 + "range64" shift, and go to state 188 + "urange64" shift, and go to state 189 + "int64" shift, and go to state 190 + "uint64" shift, and go to state 191 + "double" shift, and go to state 192 + "int8" shift, and go to state 193 + "uint8" shift, and go to state 194 + "int16" shift, and go to state 195 + "uint16" shift, and go to state 196 + "++" shift, and go to state 197 + "--" shift, and go to state 198 + "name" shift, and go to state 199 + + function_name go to state 200 + function_declaration_header go to state 1344 State 1310 - 717 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer . make_struct_dim ')' + 476 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant . $@27 function_declaration_header expression_block - "$f" shift, and go to state 826 - "name" shift, and go to state 1090 + $default reduce using rule 475 ($@27) - make_struct_fields go to state 1322 - make_struct_dim go to state 1344 + $@27 go to state 1345 State 1311 - 720 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer . make_struct_dim ')' - - "$f" shift, and go to state 826 - "name" shift, and go to state 1090 + 469 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration . - make_struct_fields go to state 1322 - make_struct_dim go to state 1345 + $default reduce using rule 469 (structure_variable_declaration) State 1312 - 287 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' . expr ')' - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1346 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 718 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer . make_struct_dim ')' + "$f" shift, and go to state 828 + "name" shift, and go to state 1092 -State 1313 + make_struct_fields go to state 1324 + make_struct_dim go to state 1346 - 286 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' expr ')' . - $default reduce using rule 286 (expr_type_info) +State 1313 + 721 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer . make_struct_dim ')' -State 1314 + "$f" shift, and go to state 828 + "name" shift, and go to state 1092 - 736 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' . use_initializer make_struct_dim ')' + make_struct_fields go to state 1324 + make_struct_dim go to state 1347 - "uninitialized" shift, and go to state 969 - $default reduce using rule 713 (use_initializer) +State 1314 - use_initializer go to state 1347 + 288 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' . expr ')' + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1348 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1315 - 739 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' . use_initializer make_struct_dim ')' - - "uninitialized" shift, and go to state 969 + 287 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' expr ')' . - $default reduce using rule 713 (use_initializer) - - use_initializer go to state 1348 + $default reduce using rule 287 (expr_type_info) State 1316 - 742 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' . make_struct_dim ')' + 737 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' . use_initializer make_struct_dim ')' + + "uninitialized" shift, and go to state 971 - "$f" shift, and go to state 826 - "name" shift, and go to state 1090 + $default reduce using rule 714 (use_initializer) - make_struct_fields go to state 1322 - make_struct_dim go to state 1349 + use_initializer go to state 1349 State 1317 - 289 expr_list: expr_list . ',' expr - 746 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list . optional_comma ')' + 740 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' . use_initializer make_struct_dim ')' - ',' shift, and go to state 818 + "uninitialized" shift, and go to state 971 - $default reduce using rule 759 (optional_comma) + $default reduce using rule 714 (use_initializer) - optional_comma go to state 1350 + use_initializer go to state 1350 State 1318 - 752 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple - 756 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list . optional_comma ')' - - ',' shift, and go to state 814 + 743 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' . make_struct_dim ')' - $default reduce using rule 759 (optional_comma) + "$f" shift, and go to state 828 + "name" shift, and go to state 1092 - optional_comma go to state 1351 + make_struct_fields go to state 1324 + make_struct_dim go to state 1351 State 1319 - 755 make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' . + 290 expr_list: expr_list . ',' expr + 747 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list . optional_comma ')' - $default reduce using rule 755 (make_table_decl) + ',' shift, and go to state 820 + + $default reduce using rule 760 (optional_comma) + + optional_comma go to state 1352 State 1320 - 289 expr_list: expr_list . ',' expr - 750 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list . optional_comma ')' + 753 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple + 757 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list . optional_comma ')' - ',' shift, and go to state 818 + ',' shift, and go to state 816 - $default reduce using rule 759 (optional_comma) + $default reduce using rule 760 (optional_comma) - optional_comma go to state 1352 + optional_comma go to state 1353 State 1321 - 732 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer . make_struct_dim ')' - - "$f" shift, and go to state 826 - "name" shift, and go to state 1090 + 756 make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' . - make_struct_fields go to state 1322 - make_struct_dim go to state 1353 + $default reduce using rule 756 (make_table_decl) State 1322 - 704 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr - 705 | make_struct_fields . ',' "name" ":=" expr - 708 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr - 709 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr - 711 make_struct_dim: make_struct_fields . + 290 expr_list: expr_list . ',' expr + 751 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list . optional_comma ')' - ',' shift, and go to state 1021 + ',' shift, and go to state 820 + + $default reduce using rule 760 (optional_comma) - $default reduce using rule 711 (make_struct_dim) + optional_comma go to state 1354 State 1323 - 712 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 723 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim . ')' + 733 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer . make_struct_dim ')' - "end of expression" shift, and go to state 1354 - ')' shift, and go to state 1355 + "$f" shift, and go to state 828 + "name" shift, and go to state 1092 + + make_struct_fields go to state 1324 + make_struct_dim go to state 1355 State 1324 - 411 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' . + 705 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr + 706 | make_struct_fields . ',' "name" ":=" expr + 709 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr + 710 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr + 712 make_struct_dim: make_struct_fields . - $default reduce using rule 411 (expr) + ',' shift, and go to state 1023 + + $default reduce using rule 712 (make_struct_dim) State 1325 - 758 array_comprehension_where: "end of expression" . "where" expr + 713 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 724 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim . ')' - "where" shift, and go to state 1356 + "end of expression" shift, and go to state 1356 + ')' shift, and go to state 1357 State 1326 - 763 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where . "end of code block" + 412 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' . - "end of code block" shift, and go to state 1357 + $default reduce using rule 412 (expr) State 1327 - 761 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where . ']' + 759 array_comprehension_where: "end of expression" . "where" expr - ']' shift, and go to state 1358 + "where" shift, and go to state 1358 State 1328 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - 762 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr . array_comprehension_where ']' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - "end of expression" shift, and go to state 1325 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - - $default reduce using rule 757 (array_comprehension_where) - - array_comprehension_where go to state 1359 + 764 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where . "end of code block" + + "end of code block" shift, and go to state 1359 State 1329 - 342 func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options '>' $@14 func_addr_name . + 762 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where . ']' - $default reduce using rule 342 (func_addr_expr) + ']' shift, and go to state 1360 State 1330 - 345 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type '>' $@16 . func_addr_name + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + 763 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr . array_comprehension_where ']' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + "end of expression" shift, and go to state 1327 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - "$i" shift, and go to state 821 - "name" shift, and go to state 55 + $default reduce using rule 758 (array_comprehension_where) - name_in_namespace go to state 824 - func_addr_name go to state 1360 + array_comprehension_where go to state 1361 State 1331 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - 707 make_struct_fields: "$f" '(' expr ')' ":=" expr . - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 343 func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options '>' $@14 func_addr_name . - $default reduce using rule 707 (make_struct_fields) + $default reduce using rule 343 (func_addr_expr) State 1332 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - 706 make_struct_fields: "$f" '(' expr ')' copy_or_move expr . - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 346 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type '>' $@16 . func_addr_name - $default reduce using rule 706 (make_struct_fields) + "::" shift, and go to state 55 + "$i" shift, and go to state 823 + "name" shift, and go to state 56 + + name_in_namespace go to state 826 + func_addr_name go to state 1362 State 1333 - 334 expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' ')' . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + 708 make_struct_fields: "$f" '(' expr ')' ":=" expr . + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 334 (expr_named_call) + $default reduce using rule 708 (make_struct_fields) State 1334 - 708 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' . copy_or_move expr - 709 | make_struct_fields ',' "$f" '(' expr ')' . ":=" expr - - "<-" shift, and go to state 913 - ":=" shift, and go to state 1361 - '=' shift, and go to state 915 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + 707 make_struct_fields: "$f" '(' expr ')' copy_or_move expr . + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - copy_or_move go to state 1362 + $default reduce using rule 707 (make_struct_fields) State 1335 - 292 block_or_simple_block: "=>" "<-" expr . - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 335 expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' ')' . - $default reduce using rule 292 (block_or_simple_block) + $default reduce using rule 335 (expr_named_call) State 1336 - 416 expr: expr "is" "type" '<' $@19 type_declaration_no_options '>' $@20 . + 709 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' . copy_or_move expr + 710 | make_struct_fields ',' "$f" '(' expr ')' . ":=" expr - $default reduce using rule 416 (expr) + "<-" shift, and go to state 915 + ":=" shift, and go to state 1363 + '=' shift, and go to state 917 + copy_or_move go to state 1364 -State 1337 - 422 expr: expr "as" "type" '<' $@21 type_declaration '>' $@22 . +State 1337 - $default reduce using rule 422 (expr) + 293 block_or_simple_block: "=>" "<-" expr . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + + $default reduce using rule 293 (block_or_simple_block) State 1338 - 427 expr: expr '?' "as" "type" '<' $@23 type_declaration '>' . $@24 + 417 expr: expr "is" "type" '<' $@19 type_declaration_no_options '>' $@20 . - $default reduce using rule 426 ($@24) - - $@24 go to state 1363 + $default reduce using rule 417 (expr) State 1339 - 58 expression_else: elif_or_static_elif '(' expr . ')' expression_block expression_else - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - ')' shift, and go to state 1364 + 423 expr: expr "as" "type" '<' $@21 type_declaration '>' $@22 . + + $default reduce using rule 423 (expr) State 1340 - 269 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone . expr "end of expression" - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1365 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 428 expr: expr '?' "as" "type" '<' $@23 type_declaration '>' . $@24 + + $default reduce using rule 427 ($@24) + + $@24 go to state 1365 State 1341 - 270 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr . "end of expression" - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - "end of expression" shift, and go to state 1366 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 58 expression_else: elif_or_static_elif '(' expr . ')' expression_block expression_else + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + ')' shift, and go to state 1366 State 1342 - 473 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header . "end of expression" - - "end of expression" shift, and go to state 1367 + 270 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone . expr "end of expression" + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1367 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1343 - 475 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 . function_declaration_header expression_block - - "operator" shift, and go to state 169 - "bool" shift, and go to state 170 - "string" shift, and go to state 171 - "int" shift, and go to state 172 - "int2" shift, and go to state 173 - "int3" shift, and go to state 174 - "int4" shift, and go to state 175 - "uint" shift, and go to state 176 - "uint2" shift, and go to state 177 - "uint3" shift, and go to state 178 - "uint4" shift, and go to state 179 - "float" shift, and go to state 180 - "float2" shift, and go to state 181 - "float3" shift, and go to state 182 - "float4" shift, and go to state 183 - "range" shift, and go to state 184 - "urange" shift, and go to state 185 - "range64" shift, and go to state 186 - "urange64" shift, and go to state 187 - "int64" shift, and go to state 188 - "uint64" shift, and go to state 189 - "double" shift, and go to state 190 - "int8" shift, and go to state 191 - "uint8" shift, and go to state 192 - "int16" shift, and go to state 193 - "uint16" shift, and go to state 194 - "++" shift, and go to state 195 - "--" shift, and go to state 196 - "name" shift, and go to state 197 - - function_name go to state 198 - function_declaration_header go to state 1368 + 271 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr . "end of expression" + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + "end of expression" shift, and go to state 1368 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 State 1344 - 712 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 717 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim . ')' + 474 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header . "end of expression" - "end of expression" shift, and go to state 1354 - ')' shift, and go to state 1369 + "end of expression" shift, and go to state 1369 State 1345 - 712 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 720 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim . ')' - - "end of expression" shift, and go to state 1354 - ')' shift, and go to state 1370 + 476 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 . function_declaration_header expression_block + + "operator" shift, and go to state 171 + "bool" shift, and go to state 172 + "string" shift, and go to state 173 + "int" shift, and go to state 174 + "int2" shift, and go to state 175 + "int3" shift, and go to state 176 + "int4" shift, and go to state 177 + "uint" shift, and go to state 178 + "uint2" shift, and go to state 179 + "uint3" shift, and go to state 180 + "uint4" shift, and go to state 181 + "float" shift, and go to state 182 + "float2" shift, and go to state 183 + "float3" shift, and go to state 184 + "float4" shift, and go to state 185 + "range" shift, and go to state 186 + "urange" shift, and go to state 187 + "range64" shift, and go to state 188 + "urange64" shift, and go to state 189 + "int64" shift, and go to state 190 + "uint64" shift, and go to state 191 + "double" shift, and go to state 192 + "int8" shift, and go to state 193 + "uint8" shift, and go to state 194 + "int16" shift, and go to state 195 + "uint16" shift, and go to state 196 + "++" shift, and go to state 197 + "--" shift, and go to state 198 + "name" shift, and go to state 199 + + function_name go to state 200 + function_declaration_header go to state 1370 State 1346 - 287 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr . ')' - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 - ')' shift, and go to state 1371 + 713 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 718 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim . ')' + "end of expression" shift, and go to state 1356 + ')' shift, and go to state 1371 -State 1347 - 736 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer . make_struct_dim ')' +State 1347 - "$f" shift, and go to state 826 - "name" shift, and go to state 1090 + 713 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 721 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim . ')' - make_struct_fields go to state 1322 - make_struct_dim go to state 1372 + "end of expression" shift, and go to state 1356 + ')' shift, and go to state 1372 State 1348 - 739 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer . make_struct_dim ')' - - "$f" shift, and go to state 826 - "name" shift, and go to state 1090 - - make_struct_fields go to state 1322 - make_struct_dim go to state 1373 + 288 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr . ')' + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + ')' shift, and go to state 1373 State 1349 - 712 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 742 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim . ')' + 737 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer . make_struct_dim ')' + + "$f" shift, and go to state 828 + "name" shift, and go to state 1092 - "end of expression" shift, and go to state 1354 - ')' shift, and go to state 1374 + make_struct_fields go to state 1324 + make_struct_dim go to state 1374 State 1350 - 746 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma . ')' + 740 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer . make_struct_dim ')' + + "$f" shift, and go to state 828 + "name" shift, and go to state 1092 - ')' shift, and go to state 1375 + make_struct_fields go to state 1324 + make_struct_dim go to state 1375 State 1351 - 756 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma . ')' + 713 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 743 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim . ')' - ')' shift, and go to state 1376 + "end of expression" shift, and go to state 1356 + ')' shift, and go to state 1376 State 1352 - 750 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma . ')' + 747 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma . ')' ')' shift, and go to state 1377 State 1353 - 712 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 732 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim . ')' + 757 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma . ')' - "end of expression" shift, and go to state 1354 - ')' shift, and go to state 1378 + ')' shift, and go to state 1378 State 1354 - 712 make_struct_dim: make_struct_dim "end of expression" . make_struct_fields + 751 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma . ')' - "$f" shift, and go to state 826 - "name" shift, and go to state 1090 - - make_struct_fields go to state 1379 + ')' shift, and go to state 1379 State 1355 - 723 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim ')' . + 713 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 733 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim . ')' - $default reduce using rule 723 (make_struct_decl) + "end of expression" shift, and go to state 1356 + ')' shift, and go to state 1380 State 1356 - 758 array_comprehension_where: "end of expression" "where" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1380 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 713 make_struct_dim: make_struct_dim "end of expression" . make_struct_fields + + "$f" shift, and go to state 828 + "name" shift, and go to state 1092 + + make_struct_fields go to state 1381 State 1357 - 763 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" . + 724 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim ')' . - $default reduce using rule 763 (array_comprehension) + $default reduce using rule 724 (make_struct_decl) State 1358 - 761 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' . - - $default reduce using rule 761 (array_comprehension) + 759 array_comprehension_where: "end of expression" "where" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1382 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1359 - 762 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where . ']' + 764 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" . - ']' shift, and go to state 1381 + $default reduce using rule 764 (array_comprehension) State 1360 - 345 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name . + 762 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' . - $default reduce using rule 345 (func_addr_expr) + $default reduce using rule 762 (array_comprehension) State 1361 - 709 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' ":=" . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1382 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 763 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where . ']' + + ']' shift, and go to state 1383 State 1362 - 708 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' copy_or_move . expr - - "struct" shift, and go to state 406 - "class" shift, and go to state 407 - "true" shift, and go to state 408 - "false" shift, and go to state 409 - "new" shift, and go to state 410 - "typeinfo" shift, and go to state 411 - "type" shift, and go to state 412 - "array" shift, and go to state 413 - "null" shift, and go to state 414 - "table" shift, and go to state 415 - "deref" shift, and go to state 416 - "cast" shift, and go to state 417 - "upcast" shift, and go to state 418 - "addr" shift, and go to state 419 - "reinterpret" shift, and go to state 420 - "fixed_array" shift, and go to state 421 - "default" shift, and go to state 422 - "bool" shift, and go to state 220 - "void" shift, and go to state 221 - "string" shift, and go to state 222 - "int" shift, and go to state 224 - "int2" shift, and go to state 225 - "int3" shift, and go to state 226 - "int4" shift, and go to state 227 - "uint" shift, and go to state 228 - "bitfield" shift, and go to state 423 - "uint2" shift, and go to state 230 - "uint3" shift, and go to state 231 - "uint4" shift, and go to state 232 - "float" shift, and go to state 233 - "float2" shift, and go to state 234 - "float3" shift, and go to state 235 - "float4" shift, and go to state 236 - "range" shift, and go to state 237 - "urange" shift, and go to state 238 - "range64" shift, and go to state 239 - "urange64" shift, and go to state 240 - "int64" shift, and go to state 242 - "uint64" shift, and go to state 243 - "double" shift, and go to state 244 - "int8" shift, and go to state 247 - "uint8" shift, and go to state 248 - "int16" shift, and go to state 249 - "uint16" shift, and go to state 250 - "tuple" shift, and go to state 424 - "variant" shift, and go to state 425 - "generator" shift, and go to state 426 - "++" shift, and go to state 427 - "--" shift, and go to state 428 - "$$" shift, and go to state 429 - "$i" shift, and go to state 430 - "$v" shift, and go to state 431 - "$b" shift, and go to state 432 - "$a" shift, and go to state 433 - "$c" shift, and go to state 434 - "..." shift, and go to state 435 - "integer constant" shift, and go to state 436 - "long integer constant" shift, and go to state 437 - "unsigned integer constant" shift, and go to state 438 - "unsigned long integer constant" shift, and go to state 439 - "unsigned int8 constant" shift, and go to state 440 - "floating point constant" shift, and go to state 441 - "double constant" shift, and go to state 442 - "name" shift, and go to state 55 - "start of the string" shift, and go to state 443 - "begin of code block" shift, and go to state 444 - '-' shift, and go to state 445 - '+' shift, and go to state 446 - '*' shift, and go to state 447 - '%' shift, and go to state 14 - '~' shift, and go to state 448 - '!' shift, and go to state 449 - '[' shift, and go to state 450 - '(' shift, and go to state 451 - '$' shift, and go to state 452 - '@' shift, and go to state 453 - - string_builder go to state 454 - expr_reader go to state 455 - expr_call_pipe go to state 456 - name_in_namespace go to state 457 - expr_new go to state 458 - expr_cast go to state 459 - expr_type_decl go to state 460 - expr_type_info go to state 461 - block_or_lambda go to state 462 - expr_full_block go to state 463 - expr_numeric_const go to state 464 - expr_named_call go to state 465 - expr_method_call go to state 466 - func_addr_expr go to state 467 - expr_field go to state 468 - expr_call go to state 469 - expr go to state 1383 - expr_mtag go to state 471 - basic_type_declaration go to state 472 - make_decl go to state 473 - make_struct_decl go to state 474 - make_tuple_call go to state 475 - make_dim_decl go to state 476 - make_table_decl go to state 477 - array_comprehension go to state 478 + 346 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name . + $default reduce using rule 346 (func_addr_expr) -State 1363 - 427 expr: expr '?' "as" "type" '<' $@23 type_declaration '>' $@24 . +State 1363 - $default reduce using rule 427 (expr) + 710 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' ":=" . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1384 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1364 - 58 expression_else: elif_or_static_elif '(' expr ')' . expression_block expression_else - - "begin of code block" shift, and go to state 321 - - expression_block go to state 1384 + 709 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' copy_or_move . expr + + "struct" shift, and go to state 408 + "class" shift, and go to state 409 + "true" shift, and go to state 410 + "false" shift, and go to state 411 + "new" shift, and go to state 412 + "typeinfo" shift, and go to state 413 + "type" shift, and go to state 414 + "array" shift, and go to state 415 + "null" shift, and go to state 416 + "table" shift, and go to state 417 + "deref" shift, and go to state 418 + "cast" shift, and go to state 419 + "upcast" shift, and go to state 420 + "addr" shift, and go to state 421 + "reinterpret" shift, and go to state 422 + "fixed_array" shift, and go to state 423 + "default" shift, and go to state 424 + "bool" shift, and go to state 222 + "void" shift, and go to state 223 + "string" shift, and go to state 224 + "int" shift, and go to state 226 + "int2" shift, and go to state 227 + "int3" shift, and go to state 228 + "int4" shift, and go to state 229 + "uint" shift, and go to state 230 + "bitfield" shift, and go to state 425 + "uint2" shift, and go to state 232 + "uint3" shift, and go to state 233 + "uint4" shift, and go to state 234 + "float" shift, and go to state 235 + "float2" shift, and go to state 236 + "float3" shift, and go to state 237 + "float4" shift, and go to state 238 + "range" shift, and go to state 239 + "urange" shift, and go to state 240 + "range64" shift, and go to state 241 + "urange64" shift, and go to state 242 + "int64" shift, and go to state 244 + "uint64" shift, and go to state 245 + "double" shift, and go to state 246 + "int8" shift, and go to state 249 + "uint8" shift, and go to state 250 + "int16" shift, and go to state 251 + "uint16" shift, and go to state 252 + "tuple" shift, and go to state 426 + "variant" shift, and go to state 427 + "generator" shift, and go to state 428 + "++" shift, and go to state 429 + "--" shift, and go to state 430 + "::" shift, and go to state 55 + "$$" shift, and go to state 431 + "$i" shift, and go to state 432 + "$v" shift, and go to state 433 + "$b" shift, and go to state 434 + "$a" shift, and go to state 435 + "$c" shift, and go to state 436 + "..." shift, and go to state 437 + "integer constant" shift, and go to state 438 + "long integer constant" shift, and go to state 439 + "unsigned integer constant" shift, and go to state 440 + "unsigned long integer constant" shift, and go to state 441 + "unsigned int8 constant" shift, and go to state 442 + "floating point constant" shift, and go to state 443 + "double constant" shift, and go to state 444 + "name" shift, and go to state 56 + "start of the string" shift, and go to state 445 + "begin of code block" shift, and go to state 446 + '-' shift, and go to state 447 + '+' shift, and go to state 448 + '*' shift, and go to state 449 + '%' shift, and go to state 14 + '~' shift, and go to state 450 + '!' shift, and go to state 451 + '[' shift, and go to state 452 + '(' shift, and go to state 453 + '$' shift, and go to state 454 + '@' shift, and go to state 455 + + string_builder go to state 456 + expr_reader go to state 457 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1385 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1365 - 269 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr . "end of expression" - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - "end of expression" shift, and go to state 1385 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 428 expr: expr '?' "as" "type" '<' $@23 type_declaration '>' $@24 . + + $default reduce using rule 428 (expr) State 1366 - 270 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" . + 58 expression_else: elif_or_static_elif '(' expr ')' . expression_block expression_else + + "begin of code block" shift, and go to state 323 - $default reduce using rule 270 (tuple_expansion_variable_declaration) + expression_block go to state 1386 State 1367 - 473 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" . - - $default reduce using rule 473 (struct_variable_declaration_list) + 270 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr . "end of expression" + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + "end of expression" shift, and go to state 1387 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 State 1368 - 475 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header . expression_block - - "begin of code block" shift, and go to state 321 + 271 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" . - expression_block go to state 1386 + $default reduce using rule 271 (tuple_expansion_variable_declaration) State 1369 - 717 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' . + 474 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" . - $default reduce using rule 717 (make_struct_decl) + $default reduce using rule 474 (struct_variable_declaration_list) State 1370 - 720 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' . + 476 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header . expression_block - $default reduce using rule 720 (make_struct_decl) + "begin of code block" shift, and go to state 323 + + expression_block go to state 1388 State 1371 - 287 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' . + 718 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' . - $default reduce using rule 287 (expr_type_info) + $default reduce using rule 718 (make_struct_decl) State 1372 - 712 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 736 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim . ')' + 721 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' . - "end of expression" shift, and go to state 1354 - ')' shift, and go to state 1387 + $default reduce using rule 721 (make_struct_decl) State 1373 - 712 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 739 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim . ')' + 288 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' . - "end of expression" shift, and go to state 1354 - ')' shift, and go to state 1388 + $default reduce using rule 288 (expr_type_info) State 1374 - 742 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' . + 713 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 737 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim . ')' - $default reduce using rule 742 (make_dim_decl) + "end of expression" shift, and go to state 1356 + ')' shift, and go to state 1389 State 1375 - 746 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' . + 713 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 740 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim . ')' - $default reduce using rule 746 (make_dim_decl) + "end of expression" shift, and go to state 1356 + ')' shift, and go to state 1390 State 1376 - 756 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' . + 743 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' . - $default reduce using rule 756 (make_table_decl) + $default reduce using rule 743 (make_dim_decl) State 1377 - 750 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' . + 747 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' . - $default reduce using rule 750 (make_dim_decl) + $default reduce using rule 747 (make_dim_decl) State 1378 - 732 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' . + 757 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' . - $default reduce using rule 732 (make_tuple_call) + $default reduce using rule 757 (make_table_decl) State 1379 - 704 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr - 705 | make_struct_fields . ',' "name" ":=" expr - 708 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr - 709 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr - 712 make_struct_dim: make_struct_dim "end of expression" make_struct_fields . + 751 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' . - ',' shift, and go to state 1021 - - $default reduce using rule 712 (make_struct_dim) + $default reduce using rule 751 (make_dim_decl) State 1380 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - 758 array_comprehension_where: "end of expression" "where" expr . - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 733 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' . - $default reduce using rule 758 (array_comprehension_where) + $default reduce using rule 733 (make_tuple_call) State 1381 - 762 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' . + 705 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr + 706 | make_struct_fields . ',' "name" ":=" expr + 709 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr + 710 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr + 713 make_struct_dim: make_struct_dim "end of expression" make_struct_fields . - $default reduce using rule 762 (array_comprehension) + ',' shift, and go to state 1023 + $default reduce using rule 713 (make_struct_dim) -State 1382 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - 709 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' ":=" expr . - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 +State 1382 - $default reduce using rule 709 (make_struct_fields) + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + 759 array_comprehension_where: "end of expression" "where" expr . + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + + $default reduce using rule 759 (array_comprehension_where) State 1383 - 335 expr_method_call: expr . "->" "name" '(' ')' - 336 | expr . "->" "name" '(' expr_list ')' - 346 expr_field: expr . '.' "name" - 347 | expr . '.' '.' "name" - 348 | expr . '.' "name" '(' ')' - 349 | expr . '.' "name" '(' expr_list ')' - 352 | expr . '.' $@17 error $@18 - 372 expr: expr . "<<" expr - 373 | expr . ">>" expr - 374 | expr . "<<<" expr - 375 | expr . ">>>" expr - 376 | expr . '+' expr - 377 | expr . '-' expr - 378 | expr . '*' expr - 379 | expr . '/' expr - 380 | expr . '%' expr - 381 | expr . '<' expr - 382 | expr . '>' expr - 383 | expr . "==" expr - 384 | expr . "!=" expr - 385 | expr . "<=" expr - 386 | expr . ">=" expr - 387 | expr . '&' expr - 388 | expr . '|' expr - 389 | expr . '^' expr - 390 | expr . "&&" expr - 391 | expr . "||" expr - 392 | expr . "^^" expr - 393 | expr . ".." expr - 396 | expr . "++" - 397 | expr . "--" - 399 | expr . '[' expr ']' - 400 | expr . '.' '[' expr ']' - 401 | expr . "?[" expr ']' - 402 | expr . '.' "?[" expr ']' - 403 | expr . "?." "name" - 404 | expr . '.' "?." "name" - 412 | expr . "??" expr - 413 | expr . '?' expr ':' expr - 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 417 | expr . "is" basic_type_declaration - 418 | expr . "is" "name" - 419 | expr . "as" "name" - 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 423 | expr . "as" basic_type_declaration - 424 | expr . '?' "as" "name" - 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 428 | expr . '?' "as" basic_type_declaration - 436 | expr . "<|" expr - 437 | expr . "|>" expr - 438 | expr . "|>" basic_type_declaration - 448 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr . "?." "$f" '(' expr ')' - 450 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr . "as" "$f" '(' expr ')' - 453 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr . "is" "$f" '(' expr ')' - 708 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' copy_or_move expr . - - "is" shift, and go to state 641 - "as" shift, and go to state 642 - "<<" shift, and go to state 643 - ">>" shift, and go to state 644 - "++" shift, and go to state 645 - "--" shift, and go to state 646 - "<=" shift, and go to state 647 - ">=" shift, and go to state 648 - "==" shift, and go to state 649 - "!=" shift, and go to state 650 - "->" shift, and go to state 651 - "??" shift, and go to state 652 - "?." shift, and go to state 653 - "?[" shift, and go to state 654 - "<|" shift, and go to state 655 - "|>" shift, and go to state 656 - "<<<" shift, and go to state 657 - ">>>" shift, and go to state 658 - "&&" shift, and go to state 659 - "||" shift, and go to state 660 - "^^" shift, and go to state 661 - ".." shift, and go to state 662 - '?' shift, and go to state 663 - '|' shift, and go to state 664 - '^' shift, and go to state 665 - '&' shift, and go to state 666 - '<' shift, and go to state 667 - '>' shift, and go to state 668 - '-' shift, and go to state 669 - '+' shift, and go to state 670 - '*' shift, and go to state 671 - '/' shift, and go to state 672 - '%' shift, and go to state 673 - '.' shift, and go to state 674 - '[' shift, and go to state 675 + 763 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' . - $default reduce using rule 708 (make_struct_fields) + $default reduce using rule 763 (array_comprehension) State 1384 - 58 expression_else: elif_or_static_elif '(' expr ')' expression_block . expression_else - - "else" shift, and go to state 1238 - "elif" shift, and go to state 1239 - "static_elif" shift, and go to state 1240 - - $default reduce using rule 56 (expression_else) - - elif_or_static_elif go to state 1241 - expression_else go to state 1389 + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + 710 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' ":=" expr . + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 + + $default reduce using rule 710 (make_struct_fields) State 1385 - 269 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" . + 336 expr_method_call: expr . "->" "name" '(' ')' + 337 | expr . "->" "name" '(' expr_list ')' + 347 expr_field: expr . '.' "name" + 348 | expr . '.' '.' "name" + 349 | expr . '.' "name" '(' ')' + 350 | expr . '.' "name" '(' expr_list ')' + 353 | expr . '.' $@17 error $@18 + 373 expr: expr . "<<" expr + 374 | expr . ">>" expr + 375 | expr . "<<<" expr + 376 | expr . ">>>" expr + 377 | expr . '+' expr + 378 | expr . '-' expr + 379 | expr . '*' expr + 380 | expr . '/' expr + 381 | expr . '%' expr + 382 | expr . '<' expr + 383 | expr . '>' expr + 384 | expr . "==" expr + 385 | expr . "!=" expr + 386 | expr . "<=" expr + 387 | expr . ">=" expr + 388 | expr . '&' expr + 389 | expr . '|' expr + 390 | expr . '^' expr + 391 | expr . "&&" expr + 392 | expr . "||" expr + 393 | expr . "^^" expr + 394 | expr . ".." expr + 397 | expr . "++" + 398 | expr . "--" + 400 | expr . '[' expr ']' + 401 | expr . '.' '[' expr ']' + 402 | expr . "?[" expr ']' + 403 | expr . '.' "?[" expr ']' + 404 | expr . "?." "name" + 405 | expr . '.' "?." "name" + 413 | expr . "??" expr + 414 | expr . '?' expr ':' expr + 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 418 | expr . "is" basic_type_declaration + 419 | expr . "is" "name" + 420 | expr . "as" "name" + 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 424 | expr . "as" basic_type_declaration + 425 | expr . '?' "as" "name" + 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 429 | expr . '?' "as" basic_type_declaration + 437 | expr . "<|" expr + 438 | expr . "|>" expr + 439 | expr . "|>" basic_type_declaration + 449 expr_mtag: expr . '.' "$f" '(' expr ')' + 450 | expr . "?." "$f" '(' expr ')' + 451 | expr . '.' '.' "$f" '(' expr ')' + 452 | expr . '.' "?." "$f" '(' expr ')' + 453 | expr . "as" "$f" '(' expr ')' + 454 | expr . '?' "as" "$f" '(' expr ')' + 455 | expr . "is" "$f" '(' expr ')' + 709 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' copy_or_move expr . + + "is" shift, and go to state 643 + "as" shift, and go to state 644 + "<<" shift, and go to state 645 + ">>" shift, and go to state 646 + "++" shift, and go to state 647 + "--" shift, and go to state 648 + "<=" shift, and go to state 649 + ">=" shift, and go to state 650 + "==" shift, and go to state 651 + "!=" shift, and go to state 652 + "->" shift, and go to state 653 + "??" shift, and go to state 654 + "?." shift, and go to state 655 + "?[" shift, and go to state 656 + "<|" shift, and go to state 657 + "|>" shift, and go to state 658 + "<<<" shift, and go to state 659 + ">>>" shift, and go to state 660 + "&&" shift, and go to state 661 + "||" shift, and go to state 662 + "^^" shift, and go to state 663 + ".." shift, and go to state 664 + '?' shift, and go to state 665 + '|' shift, and go to state 666 + '^' shift, and go to state 667 + '&' shift, and go to state 668 + '<' shift, and go to state 669 + '>' shift, and go to state 670 + '-' shift, and go to state 671 + '+' shift, and go to state 672 + '*' shift, and go to state 673 + '/' shift, and go to state 674 + '%' shift, and go to state 675 + '.' shift, and go to state 676 + '[' shift, and go to state 677 - $default reduce using rule 269 (tuple_expansion_variable_declaration) + $default reduce using rule 709 (make_struct_fields) State 1386 - 475 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block . + 58 expression_else: elif_or_static_elif '(' expr ')' expression_block . expression_else - $default reduce using rule 475 (struct_variable_declaration_list) + "else" shift, and go to state 1240 + "elif" shift, and go to state 1241 + "static_elif" shift, and go to state 1242 + + $default reduce using rule 56 (expression_else) + + elif_or_static_elif go to state 1243 + expression_else go to state 1391 State 1387 - 736 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' . + 270 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" . - $default reduce using rule 736 (make_dim_decl) + $default reduce using rule 270 (tuple_expansion_variable_declaration) State 1388 - 739 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' . + 476 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block . - $default reduce using rule 739 (make_dim_decl) + $default reduce using rule 476 (struct_variable_declaration_list) State 1389 + 737 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' . + + $default reduce using rule 737 (make_dim_decl) + + +State 1390 + + 740 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' . + + $default reduce using rule 740 (make_dim_decl) + + +State 1391 + 58 expression_else: elif_or_static_elif '(' expr ')' expression_block expression_else . $default reduce using rule 58 (expression_else) diff --git a/src/parser/ds_parser.cpp b/src/parser/ds_parser.cpp index dc871ad68..99b062eb3 100644 --- a/src/parser/ds_parser.cpp +++ b/src/parser/ds_parser.cpp @@ -970,16 +970,16 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 2 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 14273 +#define YYLAST 14587 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 217 /* YYNNTS -- Number of nonterminals. */ #define YYNNTS 288 /* YYNRULES -- Number of rules. */ -#define YYNRULES 865 +#define YYNRULES 866 /* YYNSTATES -- Number of states. */ -#define YYNSTATES 1629 +#define YYNSTATES 1631 /* YYMAXUTOK -- Last valid token kind. */ #define YYMAXUTOK 444 @@ -1073,67 +1073,67 @@ static const yytype_int16 yyrline[] = 1253, 1254, 1255, 1256, 1257, 1258, 1259, 1260, 1261, 1262, 1263, 1264, 1265, 1266, 1270, 1275, 1281, 1287, 1298, 1299, 1303, 1304, 1308, 1312, 1319, 1319, 1319, 1325, 1325, 1325, - 1334, 1368, 1371, 1374, 1377, 1383, 1384, 1398, 1401, 1409, - 1409, 1409, 1412, 1418, 1421, 1425, 1429, 1436, 1442, 1446, - 1450, 1453, 1456, 1464, 1467, 1470, 1478, 1481, 1489, 1492, - 1495, 1503, 1509, 1510, 1511, 1515, 1516, 1520, 1521, 1525, - 1530, 1538, 1544, 1550, 1559, 1571, 1574, 1580, 1580, 1580, - 1583, 1583, 1583, 1588, 1588, 1588, 1596, 1596, 1596, 1602, - 1612, 1623, 1638, 1641, 1647, 1648, 1655, 1666, 1667, 1668, - 1672, 1673, 1674, 1675, 1679, 1684, 1692, 1693, 1697, 1702, - 1709, 1716, 1716, 1725, 1726, 1727, 1728, 1729, 1730, 1731, - 1735, 1736, 1737, 1738, 1739, 1740, 1741, 1742, 1743, 1744, - 1745, 1746, 1747, 1748, 1749, 1750, 1751, 1752, 1753, 1757, - 1758, 1759, 1760, 1765, 1766, 1767, 1768, 1769, 1770, 1771, + 1334, 1368, 1371, 1374, 1377, 1383, 1384, 1395, 1399, 1402, + 1410, 1410, 1410, 1413, 1419, 1422, 1426, 1430, 1437, 1443, + 1447, 1451, 1454, 1457, 1465, 1468, 1471, 1479, 1482, 1490, + 1493, 1496, 1504, 1510, 1511, 1512, 1516, 1517, 1521, 1522, + 1526, 1531, 1539, 1545, 1551, 1560, 1572, 1575, 1581, 1581, + 1581, 1584, 1584, 1584, 1589, 1589, 1589, 1597, 1597, 1597, + 1603, 1613, 1624, 1639, 1642, 1648, 1649, 1656, 1667, 1668, + 1669, 1673, 1674, 1675, 1676, 1680, 1685, 1693, 1694, 1698, + 1703, 1710, 1717, 1717, 1726, 1727, 1728, 1729, 1730, 1731, + 1732, 1736, 1737, 1738, 1739, 1740, 1741, 1742, 1743, 1744, + 1745, 1746, 1747, 1748, 1749, 1750, 1751, 1752, 1753, 1754, + 1758, 1759, 1760, 1761, 1766, 1767, 1768, 1769, 1770, 1771, 1772, 1773, 1774, 1775, 1776, 1777, 1778, 1779, 1780, 1781, - 1786, 1793, 1805, 1810, 1820, 1824, 1831, 1834, 1834, 1834, - 1839, 1839, 1839, 1852, 1856, 1860, 1865, 1872, 1872, 1872, - 1879, 1883, 1892, 1896, 1899, 1905, 1906, 1907, 1908, 1909, + 1782, 1787, 1794, 1806, 1811, 1821, 1825, 1832, 1835, 1835, + 1835, 1840, 1840, 1840, 1853, 1857, 1861, 1866, 1873, 1873, + 1873, 1880, 1884, 1893, 1897, 1900, 1906, 1907, 1908, 1909, 1910, 1911, 1912, 1913, 1914, 1915, 1916, 1917, 1918, 1919, 1920, 1921, 1922, 1923, 1924, 1925, 1926, 1927, 1928, 1929, 1930, 1931, 1932, 1933, 1934, 1935, 1936, 1937, 1938, 1939, - 1940, 1946, 1947, 1948, 1949, 1950, 1963, 1964, 1965, 1966, - 1967, 1968, 1969, 1970, 1971, 1972, 1973, 1974, 1977, 1980, - 1981, 1984, 1984, 1984, 1987, 1992, 1996, 2000, 2000, 2000, - 2005, 2008, 2012, 2012, 2012, 2017, 2020, 2021, 2022, 2023, - 2024, 2025, 2026, 2027, 2028, 2030, 2034, 2035, 2040, 2044, - 2045, 2046, 2047, 2048, 2049, 2050, 2054, 2058, 2062, 2066, - 2070, 2074, 2078, 2082, 2086, 2093, 2094, 2095, 2099, 2100, - 2101, 2105, 2106, 2110, 2111, 2112, 2116, 2117, 2121, 2132, - 2135, 2135, 2154, 2153, 2168, 2167, 2180, 2189, 2198, 2208, - 2209, 2213, 2216, 2225, 2226, 2230, 2233, 2236, 2252, 2261, - 2262, 2266, 2269, 2272, 2286, 2287, 2291, 2297, 2303, 2306, - 2310, 2316, 2325, 2326, 2327, 2331, 2332, 2336, 2343, 2348, - 2357, 2363, 2374, 2377, 2382, 2387, 2395, 2406, 2409, 2409, - 2429, 2430, 2434, 2435, 2436, 2440, 2443, 2443, 2462, 2465, - 2468, 2483, 2502, 2503, 2504, 2509, 2509, 2535, 2536, 2540, - 2541, 2541, 2545, 2546, 2547, 2551, 2561, 2566, 2561, 2578, - 2583, 2578, 2598, 2599, 2603, 2604, 2608, 2614, 2615, 2619, - 2620, 2621, 2625, 2628, 2634, 2639, 2634, 2653, 2660, 2665, - 2674, 2680, 2691, 2692, 2693, 2694, 2695, 2696, 2697, 2698, + 1940, 1941, 1947, 1948, 1949, 1950, 1951, 1964, 1965, 1966, + 1967, 1968, 1969, 1970, 1971, 1972, 1973, 1974, 1975, 1978, + 1981, 1982, 1985, 1985, 1985, 1988, 1993, 1997, 2001, 2001, + 2001, 2006, 2009, 2013, 2013, 2013, 2018, 2021, 2022, 2023, + 2024, 2025, 2026, 2027, 2028, 2029, 2031, 2035, 2036, 2041, + 2045, 2046, 2047, 2048, 2049, 2050, 2051, 2055, 2059, 2063, + 2067, 2071, 2075, 2079, 2083, 2087, 2094, 2095, 2096, 2100, + 2101, 2102, 2106, 2107, 2111, 2112, 2113, 2117, 2118, 2122, + 2133, 2136, 2136, 2155, 2154, 2169, 2168, 2181, 2190, 2199, + 2209, 2210, 2214, 2217, 2226, 2227, 2231, 2234, 2237, 2253, + 2262, 2263, 2267, 2270, 2273, 2287, 2288, 2292, 2298, 2304, + 2307, 2311, 2317, 2326, 2327, 2328, 2332, 2333, 2337, 2344, + 2349, 2358, 2364, 2375, 2378, 2383, 2388, 2396, 2407, 2410, + 2410, 2430, 2431, 2435, 2436, 2437, 2441, 2444, 2444, 2463, + 2466, 2469, 2484, 2503, 2504, 2505, 2510, 2510, 2536, 2537, + 2541, 2542, 2542, 2546, 2547, 2548, 2552, 2562, 2567, 2562, + 2579, 2584, 2579, 2599, 2600, 2604, 2605, 2609, 2615, 2616, + 2620, 2621, 2622, 2626, 2629, 2635, 2640, 2635, 2654, 2661, + 2666, 2675, 2681, 2692, 2693, 2694, 2695, 2696, 2697, 2698, 2699, 2700, 2701, 2702, 2703, 2704, 2705, 2706, 2707, 2708, - 2709, 2710, 2711, 2712, 2713, 2714, 2715, 2716, 2717, 2721, - 2722, 2723, 2724, 2725, 2726, 2727, 2728, 2732, 2743, 2747, - 2754, 2766, 2773, 2782, 2787, 2790, 2803, 2803, 2803, 2816, - 2820, 2827, 2831, 2838, 2839, 2840, 2841, 2842, 2857, 2863, - 2863, 2863, 2867, 2872, 2879, 2879, 2886, 2890, 2894, 2899, - 2904, 2909, 2914, 2918, 2922, 2927, 2931, 2935, 2940, 2940, - 2940, 2946, 2953, 2953, 2953, 2958, 2958, 2958, 2964, 2964, - 2964, 2969, 2973, 2973, 2973, 2978, 2978, 2978, 2987, 2991, - 2991, 2991, 2996, 2996, 2996, 3005, 3009, 3009, 3009, 3014, - 3014, 3014, 3023, 3023, 3023, 3029, 3029, 3029, 3038, 3041, - 3052, 3068, 3068, 3073, 3078, 3068, 3103, 3103, 3108, 3114, - 3103, 3139, 3139, 3144, 3149, 3139, 3179, 3180, 3181, 3182, - 3183, 3187, 3194, 3201, 3207, 3213, 3220, 3227, 3233, 3243, - 3251, 3256, 3263, 3264, 3269, 3270, 3274, 3275, 3279, 3280, - 3284, 3285, 3286, 3290, 3291, 3292, 3296, 3297, 3301, 3307, - 3314, 3322, 3329, 3337, 3346, 3346, 3346, 3354, 3354, 3354, - 3361, 3361, 3361, 3368, 3368, 3368, 3379, 3382, 3388, 3402, - 3408, 3414, 3420, 3420, 3420, 3430, 3435, 3442, 3450, 3455, - 3462, 3462, 3462, 3472, 3472, 3472, 3482, 3482, 3482, 3492, - 3500, 3500, 3500, 3508, 3515, 3515, 3515, 3525, 3530, 3537, - 3540, 3546, 3554, 3563, 3571, 3579, 3592, 3593, 3597, 3598, - 3603, 3606, 3609, 3612, 3615, 3618 + 2709, 2710, 2711, 2712, 2713, 2714, 2715, 2716, 2717, 2718, + 2722, 2723, 2724, 2725, 2726, 2727, 2728, 2729, 2733, 2744, + 2748, 2755, 2767, 2774, 2783, 2788, 2791, 2804, 2804, 2804, + 2817, 2821, 2828, 2832, 2839, 2840, 2841, 2842, 2843, 2858, + 2864, 2864, 2864, 2868, 2873, 2880, 2880, 2887, 2891, 2895, + 2900, 2905, 2910, 2915, 2919, 2923, 2928, 2932, 2936, 2941, + 2941, 2941, 2947, 2954, 2954, 2954, 2959, 2959, 2959, 2965, + 2965, 2965, 2970, 2974, 2974, 2974, 2979, 2979, 2979, 2988, + 2992, 2992, 2992, 2997, 2997, 2997, 3006, 3010, 3010, 3010, + 3015, 3015, 3015, 3024, 3024, 3024, 3030, 3030, 3030, 3039, + 3042, 3053, 3069, 3069, 3074, 3079, 3069, 3104, 3104, 3109, + 3115, 3104, 3140, 3140, 3145, 3150, 3140, 3180, 3181, 3182, + 3183, 3184, 3188, 3195, 3202, 3208, 3214, 3221, 3228, 3234, + 3244, 3252, 3257, 3264, 3265, 3270, 3271, 3275, 3276, 3280, + 3281, 3285, 3286, 3287, 3291, 3292, 3293, 3297, 3298, 3302, + 3308, 3315, 3323, 3330, 3338, 3347, 3347, 3347, 3355, 3355, + 3355, 3362, 3362, 3362, 3369, 3369, 3369, 3380, 3383, 3389, + 3403, 3409, 3415, 3421, 3421, 3421, 3431, 3436, 3443, 3451, + 3456, 3463, 3463, 3463, 3473, 3473, 3473, 3483, 3483, 3483, + 3493, 3501, 3501, 3501, 3509, 3516, 3516, 3516, 3526, 3531, + 3538, 3541, 3547, 3555, 3564, 3572, 3580, 3593, 3594, 3598, + 3599, 3604, 3607, 3610, 3613, 3616, 3619 }; #endif @@ -1279,12 +1279,12 @@ yysymbol_name (yysymbol_kind_t yysymbol) } #endif -#define YYPACT_NINF (-1434) +#define YYPACT_NINF (-1431) #define yypact_value_is_default(Yyn) \ ((Yyn) == YYPACT_NINF) -#define YYTABLE_NINF (-740) +#define YYTABLE_NINF (-741) #define yytable_value_is_error(Yyn) \ ((Yyn) == YYTABLE_NINF) @@ -1293,169 +1293,170 @@ yysymbol_name (yysymbol_kind_t yysymbol) STATE-NUM. */ static const yytype_int16 yypact[] = { - -1434, 86, -1434, -1434, 50, -51, 371, -27, -1434, 90, - 329, 329, 329, -1434, 11, 130, -1434, -1434, 43, -1434, - -1434, -1434, 404, -1434, 178, -1434, -1434, -1434, -1434, -1434, - -1434, -1434, -1434, -1434, -1434, 7, -1434, 58, 70, 93, - -1434, -1434, -1434, -1434, 371, -1434, 38, -1434, 329, 329, - -1434, -1434, 178, -1434, -1434, -1434, -1434, -1434, 141, -1434, - -1434, -1434, 130, 130, 130, 110, -1434, 636, 62, -1434, - -1434, -1434, -1434, 621, 626, 628, -1434, 629, 37, 50, - 297, -51, 145, 221, -1434, 613, 613, -1434, 320, 347, - -2, 369, 630, 390, 411, 432, 441, 502, -1434, -1434, - -77, 50, 130, 130, 130, 130, -1434, -1434, -1434, -1434, - -1434, -1434, -1434, 495, -1434, -1434, -1434, -1434, -1434, 511, - -1434, -1434, -1434, -1434, -1434, 561, 123, -1434, -1434, -1434, - -1434, 641, -1434, -1434, -1434, -1434, -1434, 547, -1434, -1434, - -1434, -1434, -1434, -1434, -1434, -1434, -1434, 570, -1434, 228, - -1434, 576, 609, 636, 2095, -1434, 417, 656, -1434, -71, - -1434, -1434, 627, -1434, -1434, -1434, -1434, -1434, -1434, -1434, - 239, -1434, 586, -1434, 598, 608, 620, -1434, -1434, 12708, - -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, - -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, - -1434, -1434, -1434, -1434, -1434, 741, 771, -1434, 594, 642, - -1434, 488, -1434, 651, -1434, 646, 50, 50, 611, 33, - -1434, -1434, -1434, 123, -1434, 9723, -1434, -1434, -1434, 661, - 662, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, - -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, - -1434, 664, 622, -1434, -1434, -1434, -1434, -1434, -1434, -1434, - -1434, -1434, -1434, -1434, -1434, 814, -1434, -1434, -1434, -1434, - -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, 671, 633, - -1434, -1434, -81, 652, -1434, -1434, -1434, -1434, -1434, -1434, - -1434, -1434, -1434, -1434, -1434, 668, 653, 669, -1434, -71, - 82, -1434, 50, 640, 798, 489, -1434, -1434, 665, 666, - 667, 643, 670, 672, -1434, -1434, -1434, 650, -1434, -1434, - -1434, -1434, -1434, 676, -1434, -1434, -1434, -1434, -1434, -1434, - -1434, -1434, -1434, -1434, -1434, 678, -1434, -1434, -1434, 680, - 685, -1434, -1434, -1434, -1434, 691, 695, 663, 11, -1434, - -1434, -1434, -1434, -1434, 402, 674, -1434, -1434, -1434, -1434, - -1434, -1434, -1434, 721, 755, -1434, 679, -1434, 73, -1434, - 87, 9723, -1434, 2361, 433, -1434, 11, -1434, -1434, -1434, - 33, 684, -1434, 9051, 725, 728, 9723, -1434, 140, -1434, - -1434, -1434, 9051, -1434, -1434, 730, -1434, 344, 353, 356, - -1434, -1434, 9051, -111, -1434, -1434, -1434, 14, -1434, -1434, - -1434, -1, 5209, -1434, 689, 945, 437, 9612, 459, -1434, - -1434, 9051, -1434, -1434, 169, -73, -1434, 674, -1434, 707, - 708, 9051, -1434, -1434, -1434, -1434, -1434, 578, 690, 710, - 28, 3181, -1434, -1434, 642, 118, 5411, 693, 9051, 738, - 714, 715, 697, -1434, 732, 717, 750, 5613, -94, 379, - 720, -1434, 381, 724, 727, 3383, 9051, 9051, 129, 129, - 129, 712, 713, 716, 718, 722, 723, -1434, 9414, 9513, - 5817, -1434, -1434, -1434, -1434, -1434, -1434, -1434, 6019, 734, - -1434, 6223, 893, -1434, 9051, 9051, 9051, 9051, 9051, 4805, - 9051, -1434, 729, -1434, -1434, 753, 756, 9051, 928, -1434, - -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, 579, -1434, - -72, 759, -1434, 760, 762, 763, -1434, 765, -1434, -1434, - 881, -1434, -1434, -1434, -1434, 740, -1434, -1434, -49, -1434, - -1434, -1434, -1434, -1434, -1434, 1929, -1434, 736, -1434, -1434, - -1434, -1434, -1434, -1434, 306, -1434, 772, -1434, -1434, 23, - -1434, -1434, 742, 766, -1434, 10091, -1434, 911, 597, -1434, - -1434, -1434, 3787, 9723, 9723, 9723, 10201, 9723, 9723, 743, - 787, 9723, 594, 9723, 594, 9723, 594, 9822, 792, 10236, - -1434, 9051, -1434, -1434, -1434, -1434, 751, -1434, -1434, 12231, - 9051, -1434, 402, 781, -1434, 785, -66, -1434, 786, 674, - 789, 782, -1434, 793, 795, 10346, 764, 935, -1434, 94, - -1434, -1434, -1434, 12743, 169, -1434, 767, -1434, -1434, 11, - -1434, 788, 790, 797, -1434, 9051, 3787, -1434, 796, 848, - 9835, 967, 9723, 9051, 9051, 13484, 9051, 12743, 800, -1434, - -1434, 9051, -1434, -1434, 802, 831, 13484, 9051, -1434, -1434, - 9051, -1434, -1434, 9051, -1434, 9723, 3787, -1434, 9835, 367, - 367, 779, -1434, 740, -1434, -1434, -1434, 9051, 9051, 9051, - 9051, 9051, 9051, 169, 1706, 169, 2775, 169, 12842, -1434, - 637, -1434, 12743, -1434, 585, 169, -1434, 810, 821, 367, - 367, -20, 367, 367, 169, 988, 815, 13484, 815, 263, - -1434, -1434, 12743, -1434, -1434, -1434, -1434, 5007, -1434, -1434, - -1434, -1434, -1434, -1434, -55, 844, 129, -1434, 9301, 14010, - 3989, 3989, 3989, 3989, 3989, 3989, 3989, 3989, 9051, 9051, - -1434, -1434, 9051, 3989, 3989, 9051, 9051, 9051, 835, 3989, - 9051, 479, 9051, 9051, 9051, 9051, 9051, 9051, 3989, 3989, - 9051, 9051, 9051, 3989, 3989, 3989, 9051, 3989, 6425, 9051, - 9051, 9051, 9051, 9051, 9051, 9051, 9051, 9051, 9051, -29, - 9051, -1434, 6627, -1434, 9051, -1434, 433, -1434, 130, 998, - -71, -1434, 838, -1434, 3787, -1434, 9946, 248, 520, 813, - 468, -1434, 522, 523, -1434, -1434, 5, 531, 652, 545, - 652, 550, 652, -1434, 151, -1434, 298, -1434, 9723, 801, - 796, -1434, -1434, 12266, -1434, -1434, 9723, -1434, -1434, 9723, - -1434, -1434, -1434, 9051, 841, -1434, 842, -1434, 9723, -1434, - 3787, 9723, 9723, -1434, 10, 9723, 6829, 7031, 9723, -1434, - -1434, -1434, 9723, 815, -1434, 796, 9051, 9051, 9051, 9051, - 9051, 9051, 9051, 9051, 9051, 9051, 9051, 9051, 9051, 9051, - 9051, 9051, 9051, 9051, 642, 938, 810, 13484, 10381, -1434, - -1434, 9723, 9723, 10491, 9723, -1434, -1434, 10526, 9723, 815, - 9723, 9723, 815, 9723, 256, -1434, 9835, -1434, 844, 10636, - 10671, 10781, 10816, 10926, 10961, 24, 129, 836, 162, 2978, - 4193, 7233, 12941, 825, -5, 156, 826, -7, 26, 7435, - -5, 590, 36, 9051, 834, 9051, -1434, -1434, 9723, -1434, - 9723, -1434, 9051, 592, 39, 9051, 876, -1434, 44, 169, - 9051, 850, 846, 851, 853, 409, -1434, -1434, 588, 9051, - 740, 4397, -1434, 260, 825, 855, 898, 898, -1434, -1434, - -42, 594, -1434, 880, 857, -1434, -1434, 882, 864, -1434, - -1434, 129, 129, 129, -1434, -1434, 2128, -1434, 2128, -1434, - 2128, -1434, 2128, -1434, 2128, -1434, 2128, -1434, 2128, -1434, - 2128, 1257, 1257, 1894, -1434, 2128, -1434, 2128, 1894, 1074, - 1074, 867, -1434, 2128, 100, 868, -1434, 12365, -54, -54, - 736, 13484, 1257, 1257, -1434, 2128, -1434, 2128, 13824, 13699, - 13734, -1434, 2128, -1434, 2128, -1434, 2128, 13574, -1434, 2128, - 14105, 12976, 13852, 13942, 1299, 1894, 1894, 126, 126, 100, - 100, 100, 481, 9051, 869, 870, 482, 9051, 1073, 12464, - -1434, 261, 13066, 904, 291, 631, 1018, 906, -1434, -1434, - 10056, -1434, -1434, -1434, -1434, 9723, -1434, -1434, 919, -1434, - -1434, 897, -1434, 899, -1434, 902, 9822, -1434, 792, -1434, - 336, 674, -1434, -1434, 674, 674, 11071, -1434, 1050, -28, - -1434, 9835, 862, 1784, 9051, 551, -1434, 267, 170, 929, - 11106, 553, 9723, 9723, 9723, 2281, 885, 13484, 13484, 13484, - 13484, 13484, 13484, 13484, 13484, 13484, 13484, 13484, 13484, 13484, - 13484, 13484, 13484, 13484, 13484, -1434, 9723, 888, 889, -1434, - 9051, 2695, 2897, -1434, 3100, -1434, 3303, 890, 3505, 3707, - 891, 3909, 844, 594, -1434, -1434, -1434, -1434, -1434, 894, - 9051, -1434, 9051, 9051, 9051, 4601, 12231, 4, 9051, 484, - 497, 156, -1434, -1434, 896, -1434, 9051, 9051, -1434, 900, - -1434, 9051, 497, 491, 903, -1434, -1434, 9051, 13484, -1434, - -1434, 349, 395, 13101, 9051, -1434, -1434, 2573, 9051, 45, - -1434, -1434, 9051, 9051, 9723, 594, 642, -1434, -1434, 9051, - -1434, 1480, 844, 333, 9253, -1434, -1434, -1434, 335, 269, - 933, 937, 940, 941, -1434, 337, 652, -1434, 9051, -1434, - 9051, -1434, -1434, -1434, 7637, 9051, -1434, 917, 905, -1434, - -1434, 9051, 907, -1434, 12499, 9051, 7839, 908, -1434, 12598, - -1434, -1434, -1434, -1434, -1434, 936, -1434, -1434, 120, -1434, - 66, -1434, -1434, -1434, -1434, -1434, 674, -1434, -1434, -1434, - -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, - -1434, 9723, 909, -1434, 947, 9051, -1434, -1434, 446, -1434, - -1434, 177, -1434, 912, 398, -1434, -1434, 3986, 4113, 4190, - -1434, -1434, 4317, 9051, -1434, 13484, -1434, -1434, -1434, -1434, - -1434, -1434, -1434, -1434, -1434, 910, 652, 8041, 514, 11216, - 13484, 13484, -5, 156, 13484, 915, 193, 825, -1434, -1434, - 13484, 826, -1434, 516, -5, 913, -1434, -1434, -1434, -1434, - 518, -1434, -1434, -1434, 519, -1434, 521, 9051, 11251, 11361, - 4394, 652, -1434, 12743, -1434, 948, 594, 916, 4397, 963, - 923, 342, -1434, -1434, -1434, -1434, -42, 924, 42, 9723, - 11396, 9723, 11506, -1434, 274, 11541, -1434, 9051, 13609, 9051, - -1434, 11651, -1434, 277, 9051, -1434, -1434, -1434, 1108, 66, - -1434, -1434, 631, -1434, -1434, -1434, 674, 9051, -1434, 13484, - 930, 931, -1434, -1434, -1434, 973, 9051, -1434, -1434, -1434, - -1434, 934, 943, 810, 9051, 9051, 9051, 944, 1076, 946, - 950, 8243, 42, -1434, 285, 9051, 223, 156, -1434, 9051, - 9051, 9051, 9051, 491, -1434, 9051, 9051, 951, 9051, 9051, - 529, -1434, -1434, -1434, 953, 588, 3585, -1434, 652, -1434, - 340, -1434, 472, 9723, 140, -1434, -1434, 8445, -1434, -1434, - 4598, -1434, 558, -1434, -1434, -1434, 9723, 11686, 11796, -1434, - -1434, 11831, -1434, -1434, 1108, 169, 939, 1076, 1076, 955, - 11941, 952, 954, 956, 9051, 9051, 957, 1894, 1894, 1894, - 9051, -1434, 1076, 497, -1434, 11976, -1434, -1434, 13191, 9051, - 9051, -1434, 12086, 13484, 13484, 13191, -1434, 970, 1894, 9051, - -1434, 970, 13191, 9051, 331, -1434, -1434, 8647, 8849, -1434, - -1434, -1434, -1434, -1434, 13484, 642, 958, 9723, 140, 731, - 9051, 9051, 13574, -1434, -1434, 560, -1434, -1434, -1434, 2095, - -1434, -1434, -1434, 497, 497, 9051, -1434, 1076, 1076, 497, - 815, 810, -1434, 815, 497, 128, -1434, 1101, 961, 13484, - 13484, 280, 981, 986, 960, 990, 964, 13191, -1434, 331, - 9051, 9051, 13484, -1434, -1434, 731, 9051, 9051, 13230, 13609, - -1434, -1434, -1434, 994, 2095, 133, 134, 12121, 497, 497, - 137, 965, 966, 968, 204, -1434, 9051, 971, 9051, 9051, - 972, 997, -1434, -1434, -1434, 974, -1434, 13484, 9051, 13320, - 13355, -1434, -1434, -1434, 642, -1434, -1434, -1434, 206, 224, - -1434, -1434, -1434, -1434, -1434, 13484, -1434, 13484, 13484, -1434, - -1434, -1434, 13445, -1434, -1434, -1434, -1434, -1434, -1434 + -1431, 66, -1431, -1431, 38, 41, 242, -91, -1431, -101, + 442, 442, 442, -1431, 98, 67, -1431, -1431, -33, -1431, + -1431, -1431, 479, -1431, 113, -1431, -1431, -1431, -1431, -1431, + -1431, -1431, -1431, -1431, -1431, 115, -1431, 45, 122, 194, + -1431, -1431, -1431, -1431, 242, -1431, 27, -1431, 442, 442, + -1431, -1431, 113, -1431, -1431, -1431, -1431, -1431, 223, 323, + -1431, -1431, -1431, 67, 67, 67, 344, -1431, 638, 212, + -1431, -1431, -1431, -1431, 578, 594, 613, -1431, 616, 56, + 38, 425, 41, 410, 534, -1431, 521, 521, -1431, 584, + 485, 6, 576, 624, 604, 607, 615, -1431, 617, 475, + -1431, -1431, -69, 38, 67, 67, 67, 67, -1431, -1431, + -1431, -1431, -1431, -1431, -1431, 620, -1431, -1431, -1431, -1431, + -1431, 612, -1431, -1431, -1431, -1431, -1431, 590, 89, -1431, + -1431, -1431, -1431, 736, -1431, -1431, -1431, -1431, -1431, 625, + -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, 621, + -1431, 182, -1431, 575, 654, 638, 14419, -1431, -13, 702, + -1431, -73, -1431, -1431, 628, -1431, -1431, -1431, -1431, -1431, + -1431, -1431, 208, -1431, 634, -1431, 630, 647, 649, -1431, + -1431, 12914, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, + -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, + -1431, -1431, -1431, -1431, -1431, -1431, -1431, 797, 798, -1431, + 622, 650, -1431, 455, -1431, 667, -1431, 658, 38, 38, + 637, 50, -1431, -1431, -1431, 89, -1431, 9858, -1431, -1431, + -1431, 671, 675, -1431, -1431, -1431, -1431, -1431, -1431, -1431, + -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, + -1431, -1431, -1431, 678, 642, -1431, -1431, -1431, -1431, -1431, + -1431, -1431, -1431, -1431, -1431, -1431, -1431, 833, -1431, -1431, + -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, + 687, 653, -1431, -1431, 124, 669, -1431, -1431, -1431, -1431, + -1431, -1431, -1431, -1431, -1431, -1431, -1431, 688, 676, 690, + -1431, -73, 267, -1431, 38, 659, 831, 462, -1431, -1431, + 682, 684, 692, 674, 697, 698, -1431, -1431, -1431, 680, + -1431, -1431, -1431, -1431, -1431, 700, -1431, -1431, -1431, -1431, + -1431, -1431, -1431, -1431, -1431, -1431, -1431, 704, -1431, -1431, + -1431, 705, 707, -1431, -1431, -1431, -1431, 708, 709, 683, + 98, -1431, -1431, -1431, -1431, -1431, 976, 713, -1431, -1431, + -1431, -1431, -1431, -1431, -1431, 737, 769, -1431, 695, -1431, + 261, -1431, -30, 9858, -1431, 2363, 202, -1431, 98, -1431, + -1431, -1431, 50, 699, -1431, 9053, 740, 741, 9858, -1431, + -39, -1431, -1431, -1431, 9053, -1431, -1431, 743, -1431, 356, + 370, 378, -1431, -1431, 9053, 332, -1431, -1431, -1431, 2, + -1431, -1431, -1431, 13, 5211, -1431, 703, 9614, 415, 9713, + 417, -1431, -1431, 9053, -1431, -1431, 188, -28, -1431, 713, + -1431, 719, 721, 9053, -1431, -1431, -1431, -1431, -1431, 131, + 710, 726, 26, 3183, -1431, -1431, 650, 337, 5413, 714, + 9053, 752, 728, 732, 715, -1431, 748, 742, 768, 5615, + 71, 364, 746, -1431, 381, 747, 751, 3385, 9053, 9053, + 108, 108, 108, 724, 729, 734, 735, 738, 744, -1431, + 9416, 9515, 5819, -1431, -1431, -1431, -1431, -1431, -1431, -1431, + 6021, 756, -1431, 6225, 916, -1431, 9053, 9053, 9053, 9053, + 9053, 4807, 9053, -1431, 745, -1431, -1431, 773, 777, 9053, + 949, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, + 551, -1431, -16, 779, -1431, 781, 782, 783, -1431, 786, + -1431, -1431, 903, -1431, -1431, -1431, -1431, 760, -1431, -1431, + -66, -1431, -1431, -1431, -1431, -1431, -1431, 1931, -1431, 759, + -1431, -1431, -1431, -1431, -1431, -1431, 390, -1431, 796, -1431, + -1431, 31, -1431, -1431, 761, 784, -1431, 10297, -1431, 934, + 599, -1431, -1431, -1431, 3789, 9858, 9858, 9858, 10407, 9858, + 9858, 765, 811, 9858, 622, 9858, 622, 9858, 622, 9957, + 812, 10442, -1431, 9053, -1431, -1431, -1431, -1431, 770, -1431, + -1431, 12437, 9053, -1431, 976, 802, -1431, 804, -25, -1431, + 805, 713, 814, 795, -1431, 807, 815, 10552, 790, 953, + -1431, -49, -1431, -1431, -1431, 12949, 188, -1431, 791, -1431, + -1431, 98, -1431, 803, 813, 824, -1431, 9053, 3789, -1431, + 818, 861, 10040, 985, 9858, 9053, 9053, 13690, 9053, 12949, + 820, -1431, -1431, 9053, -1431, -1431, 816, 857, 13690, 9053, + -1431, -1431, 9053, -1431, -1431, 9053, -1431, 9858, 3789, -1431, + 10040, 322, 322, 806, -1431, 760, -1431, -1431, -1431, 9053, + 9053, 9053, 9053, 9053, 9053, 188, 1708, 188, 2777, 188, + 13048, -1431, 632, -1431, 12949, -1431, 586, 188, -1431, 838, + 847, 322, 322, 120, 322, 322, 188, 1014, 843, 13690, + 843, 287, -1431, -1431, 12949, -1431, -1431, -1431, -1431, 5009, + -1431, -1431, -1431, -1431, -1431, -1431, -9, 872, 108, -1431, + 14216, 14311, 3991, 3991, 3991, 3991, 3991, 3991, 3991, 3991, + 9053, 9053, -1431, -1431, 9053, 3991, 3991, 9053, 9053, 9053, + 865, 3991, 9053, 431, 9053, 9053, 9053, 9053, 9053, 9053, + 3991, 3991, 9053, 9053, 9053, 3991, 3991, 3991, 9053, 3991, + 6427, 9053, 9053, 9053, 9053, 9053, 9053, 9053, 9053, 9053, + 9053, 125, 9053, -1431, 6629, -1431, 9053, -1431, 202, -1431, + 67, 1025, -73, -1431, 866, -1431, 3789, -1431, 10152, -106, + 154, 845, 414, -1431, 253, 346, -1431, -1431, -8, 411, + 669, 533, 669, 546, 669, -1431, 152, -1431, 233, -1431, + 9858, 828, 818, -1431, -1431, 12472, -1431, -1431, 9858, -1431, + -1431, 9858, -1431, -1431, -1431, 9053, 877, -1431, 879, -1431, + 9858, -1431, 3789, 9858, 9858, -1431, 18, 9858, 6831, 7033, + 9858, -1431, -1431, -1431, 9858, 843, -1431, 818, 9053, 9053, + 9053, 9053, 9053, 9053, 9053, 9053, 9053, 9053, 9053, 9053, + 9053, 9053, 9053, 9053, 9053, 9053, 650, 519, 838, 13690, + 10587, -1431, -1431, 9858, 9858, 10697, 9858, -1431, -1431, 10732, + 9858, 843, 9858, 9858, 843, 9858, 579, -1431, 10040, -1431, + 872, 10842, 10877, 10987, 11022, 11132, 11167, 21, 108, 836, + 139, 2980, 4195, 7235, 13147, 863, -10, 167, 871, 252, + 28, 7437, -10, 497, 34, 9053, 882, 9053, -1431, -1431, + 9858, -1431, 9858, -1431, 9053, 597, 35, 9053, 884, -1431, + 42, 188, 9053, 839, 868, 858, 873, 395, -1431, -1431, + 569, 9053, 760, 4399, -1431, 231, 863, 870, 908, 908, + -1431, -1431, -3, 622, -1431, 885, 876, -1431, -1431, 891, + 889, -1431, -1431, 108, 108, 108, -1431, -1431, 2130, -1431, + 2130, -1431, 2130, -1431, 2130, -1431, 2130, -1431, 2130, -1431, + 2130, -1431, 2130, 486, 486, 191, -1431, 2130, -1431, 2130, + 191, 1978, 1978, 892, -1431, 2130, 280, 893, -1431, 12571, + -18, -18, 759, 13690, 486, 486, -1431, 2130, -1431, 2130, + 14030, 13905, 13940, -1431, 2130, -1431, 2130, -1431, 2130, 13780, + -1431, 2130, 14342, 13182, 14058, 14148, 1301, 191, 191, 733, + 733, 280, 280, 280, 432, 9053, 894, 895, 440, 9053, + 1076, 12670, -1431, 266, 13272, 910, 271, 631, 1028, 923, + -1431, -1431, 10262, -1431, -1431, -1431, -1431, 9858, -1431, -1431, + 928, -1431, -1431, 914, -1431, 915, -1431, 917, 9957, -1431, + 812, -1431, 235, 713, -1431, -1431, 713, 713, 11277, -1431, + 1068, -56, -1431, 10040, 864, 905, 9053, 547, -1431, 282, + -74, 944, 11312, 548, 9858, 9858, 9858, 960, 900, 13690, + 13690, 13690, 13690, 13690, 13690, 13690, 13690, 13690, 13690, 13690, + 13690, 13690, 13690, 13690, 13690, 13690, 13690, -1431, 9858, 904, + 907, -1431, 9053, 1008, 1063, -1431, 1188, -1431, 1786, 911, + 2283, 2697, 913, 2899, 872, 622, -1431, -1431, -1431, -1431, + -1431, 906, 9053, -1431, 9053, 9053, 9053, 4603, 12437, 7, + 9053, 467, 481, 167, -1431, -1431, 918, -1431, 9053, 9053, + -1431, 920, -1431, 9053, 481, 478, 922, -1431, -1431, 9053, + 13690, -1431, -1431, 293, 348, 13307, 9053, -1431, -1431, 2575, + 9053, 44, -1431, -1431, 9053, 9053, 9858, 622, 650, -1431, + -1431, 9053, -1431, 1482, 872, 289, 9255, -1431, -1431, -1431, + 307, 283, 969, 970, 974, 975, -1431, 315, 669, -1431, + 9053, -1431, 9053, -1431, -1431, -1431, 7639, 9053, -1431, 924, + 932, -1431, -1431, 9053, 933, -1431, 12705, 9053, 7841, 935, + -1431, 12804, -1431, -1431, -1431, -1431, -1431, 973, -1431, -1431, + 196, -1431, 15, -1431, -1431, -1431, -1431, -1431, 713, -1431, + -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, + -1431, -1431, -1431, 9858, 937, -1431, 989, 9053, -1431, -1431, + 357, -1431, -1431, 109, -1431, 945, 366, -1431, -1431, 3102, + 3305, 3507, -1431, -1431, 3709, 9053, -1431, 13690, -1431, -1431, + -1431, -1431, -1431, -1431, -1431, -1431, -1431, 948, 669, 8043, + 508, 11422, 13690, 13690, -10, 167, 13690, 950, 153, 863, + -1431, -1431, 13690, 871, -1431, 512, -10, 952, -1431, -1431, + -1431, -1431, 520, -1431, -1431, -1431, 529, -1431, 532, 9053, + 11457, 11567, 3911, 669, -1431, 12949, -1431, 981, 622, 954, + 4399, 997, 955, 437, -1431, -1431, -1431, -1431, -3, 961, + 135, 9858, 11602, 9858, 11712, -1431, 302, 11747, -1431, 9053, + 13815, 9053, -1431, 11857, -1431, 308, 9053, -1431, -1431, -1431, + 1141, 15, -1431, -1431, 631, -1431, -1431, -1431, 713, 9053, + -1431, 13690, 962, 963, -1431, -1431, -1431, 1009, 9053, -1431, + -1431, -1431, -1431, 966, 968, 838, 9053, 9053, 9053, 971, + 1112, 972, 978, 8245, 135, -1431, 311, 9053, 160, 167, + -1431, 9053, 9053, 9053, 9053, 478, -1431, 9053, 9053, 979, + 9053, 9053, 536, -1431, -1431, -1431, 993, 569, 3587, -1431, + 669, -1431, 330, -1431, 558, 9858, -39, -1431, -1431, 8447, + -1431, -1431, 3988, -1431, 549, -1431, -1431, -1431, 9858, 11892, + 12002, -1431, -1431, 12037, -1431, -1431, 1141, 188, 980, 1112, + 1112, 1000, 12147, 983, 987, 992, 9053, 9053, 984, 191, + 191, 191, 9053, -1431, 1112, 481, -1431, 12182, -1431, -1431, + 13397, 9053, 9053, -1431, 12292, 13690, 13690, 13397, -1431, 1021, + 191, 9053, -1431, 1021, 13397, 9053, 324, -1431, -1431, 8649, + 8851, -1431, -1431, -1431, -1431, -1431, 13690, 650, 994, 9858, + -39, 940, 9053, 9053, 13780, -1431, -1431, 555, -1431, -1431, + -1431, 14419, -1431, -1431, -1431, 481, 481, 9053, -1431, 1112, + 1112, 481, 843, 838, -1431, 843, 481, 74, -1431, 1154, + 998, 13690, 13690, 179, 1031, 1032, 999, 1034, 1003, 13397, + -1431, 324, 9053, 9053, 13690, -1431, -1431, 940, 9053, 9053, + 13436, 13815, -1431, -1431, -1431, 1035, 14419, 118, 132, 12327, + 481, 481, 136, 1006, 1013, 1015, 172, -1431, 9053, 1005, + 9053, 9053, 1010, 1043, -1431, -1431, -1431, 1018, -1431, 13690, + 9053, 13526, 13561, -1431, -1431, -1431, 650, -1431, -1431, -1431, + 180, 189, -1431, -1431, -1431, -1431, -1431, 13690, -1431, 13690, + 13690, -1431, -1431, -1431, 13651, -1431, -1431, -1431, -1431, -1431, + -1431 }; /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM. @@ -1463,237 +1464,238 @@ static const yytype_int16 yypact[] = means the default is an error. */ static const yytype_int16 yydefact[] = { - 2, 120, 1, 295, 0, 0, 0, 600, 296, 0, - 592, 592, 592, 16, 0, 0, 15, 3, 0, 10, - 9, 8, 0, 7, 580, 6, 11, 5, 4, 13, + 2, 120, 1, 296, 0, 0, 0, 601, 297, 0, + 593, 593, 593, 16, 0, 0, 15, 3, 0, 10, + 9, 8, 0, 7, 581, 6, 11, 5, 4, 13, 12, 14, 92, 93, 91, 100, 102, 37, 53, 50, - 51, 39, 40, 41, 0, 42, 48, 38, 592, 592, - 22, 21, 580, 594, 593, 761, 751, 756, 265, 35, - 107, 108, 0, 0, 0, 109, 111, 118, 0, 106, - 17, 618, 617, 213, 602, 619, 581, 582, 0, 0, - 0, 0, 43, 0, 49, 0, 0, 46, 0, 0, - 592, 0, 18, 0, 0, 0, 0, 0, 117, 112, - 0, 0, 0, 0, 0, 0, 121, 215, 214, 217, - 212, 604, 603, 0, 621, 620, 624, 584, 583, 586, - 98, 99, 96, 97, 95, 0, 0, 94, 103, 54, - 52, 48, 45, 44, 595, 597, 599, 0, 601, 19, - 20, 23, 762, 752, 757, 266, 33, 36, 116, 0, - 113, 114, 115, 119, 0, 605, 0, 614, 577, 515, - 24, 25, 0, 87, 88, 85, 86, 84, 83, 89, - 0, 47, 0, 598, 0, 0, 0, 34, 110, 0, - 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, 0, 0, 127, 122, 0, - 606, 0, 615, 0, 625, 578, 0, 0, 517, 0, - 26, 27, 28, 0, 101, 0, 763, 753, 758, 181, - 182, 179, 130, 131, 133, 132, 134, 135, 136, 137, - 163, 164, 161, 162, 154, 165, 166, 155, 152, 153, - 180, 174, 0, 178, 167, 168, 169, 170, 141, 142, - 143, 138, 139, 140, 151, 0, 157, 158, 156, 149, - 150, 145, 144, 146, 147, 148, 129, 128, 173, 0, - 159, 160, 515, 125, 244, 218, 588, 659, 662, 665, - 666, 660, 663, 661, 664, 0, 612, 622, 585, 515, - 0, 104, 0, 0, 567, 565, 587, 90, 0, 0, - 0, 0, 0, 0, 632, 652, 633, 668, 634, 638, - 639, 640, 641, 658, 645, 646, 647, 648, 649, 650, - 651, 653, 654, 655, 656, 721, 637, 644, 657, 728, - 735, 635, 642, 636, 643, 0, 0, 0, 0, 667, - 683, 686, 684, 685, 748, 596, 673, 545, 551, 183, - 184, 177, 172, 185, 175, 171, 0, 123, 294, 539, - 0, 0, 216, 0, 607, 609, 0, 616, 529, 626, - 0, 0, 105, 0, 0, 0, 0, 566, 0, 689, - 712, 715, 0, 718, 708, 0, 676, 722, 729, 736, - 742, 745, 0, 0, 698, 703, 697, 0, 711, 707, - 700, 0, 0, 702, 687, 0, 764, 754, 759, 186, - 176, 0, 292, 293, 0, 515, 124, 126, 246, 0, - 0, 0, 63, 64, 76, 421, 422, 0, 0, 0, - 0, 280, 415, 278, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 279, 0, 0, 0, 0, 0, 0, - 0, 658, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 504, 0, 0, - 0, 343, 345, 344, 346, 347, 348, 349, 0, 0, - 29, 0, 219, 223, 0, 0, 0, 0, 0, 0, - 0, 327, 328, 419, 418, 0, 0, 0, 0, 239, - 234, 231, 230, 232, 233, 264, 245, 225, 498, 224, - 416, 0, 489, 71, 72, 69, 237, 70, 238, 240, - 298, 229, 488, 487, 486, 120, 492, 417, 0, 226, - 491, 490, 462, 423, 463, 350, 424, 0, 420, 766, - 770, 767, 768, 769, 0, 589, 0, 588, 613, 530, - 579, 516, 0, 0, 498, 0, 569, 570, 0, 563, - 564, 562, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 122, 0, 122, 0, 122, 0, 0, 0, - 694, 248, 705, 706, 699, 701, 0, 704, 688, 0, - 0, 750, 749, 0, 674, 0, 265, 546, 0, 541, - 0, 0, 552, 0, 0, 0, 0, 627, 537, 556, - 540, 804, 807, 0, 0, 269, 273, 272, 277, 0, - 316, 0, 0, 0, 840, 0, 0, 284, 281, 0, - 322, 0, 0, 0, 0, 267, 0, 0, 0, 307, - 310, 0, 243, 313, 0, 0, 57, 0, 78, 844, - 0, 813, 822, 0, 810, 0, 0, 289, 286, 451, - 452, 328, 338, 120, 263, 261, 262, 0, 0, 0, - 0, 0, 0, 0, 782, 0, 0, 0, 820, 847, - 0, 254, 0, 257, 0, 0, 849, 858, 0, 428, - 427, 464, 426, 425, 0, 0, 858, 322, 858, 329, - 241, 242, 0, 74, 341, 222, 496, 0, 228, 235, - 236, 283, 288, 297, 0, 336, 0, 227, 0, 0, + 51, 39, 40, 41, 0, 42, 48, 38, 593, 593, + 22, 21, 581, 595, 594, 762, 752, 757, 0, 265, + 35, 107, 108, 0, 0, 0, 109, 111, 118, 0, + 106, 17, 619, 618, 213, 603, 620, 582, 583, 0, + 0, 0, 0, 43, 0, 49, 0, 0, 46, 0, + 0, 593, 0, 18, 0, 0, 0, 267, 0, 0, + 117, 112, 0, 0, 0, 0, 0, 0, 121, 215, + 214, 217, 212, 605, 604, 0, 622, 621, 625, 585, + 584, 587, 98, 99, 96, 97, 95, 0, 0, 94, + 103, 54, 52, 48, 45, 44, 596, 598, 600, 0, + 602, 19, 20, 23, 763, 753, 758, 266, 33, 36, + 116, 0, 113, 114, 115, 119, 0, 606, 0, 615, + 578, 516, 24, 25, 0, 87, 88, 85, 86, 84, + 83, 89, 0, 47, 0, 599, 0, 0, 0, 34, + 110, 0, 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, 0, 0, 127, + 122, 0, 607, 0, 616, 0, 626, 579, 0, 0, + 518, 0, 26, 27, 28, 0, 101, 0, 764, 754, + 759, 181, 182, 179, 130, 131, 133, 132, 134, 135, + 136, 137, 163, 164, 161, 162, 154, 165, 166, 155, + 152, 153, 180, 174, 0, 178, 167, 168, 169, 170, + 141, 142, 143, 138, 139, 140, 151, 0, 157, 158, + 156, 149, 150, 145, 144, 146, 147, 148, 129, 128, + 173, 0, 159, 160, 516, 125, 244, 218, 589, 660, + 663, 666, 667, 661, 664, 662, 665, 0, 613, 623, + 586, 516, 0, 104, 0, 0, 568, 566, 588, 90, + 0, 0, 0, 0, 0, 0, 633, 653, 634, 669, + 635, 639, 640, 641, 642, 659, 646, 647, 648, 649, + 650, 651, 652, 654, 655, 656, 657, 722, 638, 645, + 658, 729, 736, 636, 643, 637, 644, 0, 0, 0, + 0, 668, 684, 687, 685, 686, 749, 597, 674, 546, + 552, 183, 184, 177, 172, 185, 175, 171, 0, 123, + 295, 540, 0, 0, 216, 0, 608, 610, 0, 617, + 530, 627, 0, 0, 105, 0, 0, 0, 0, 567, + 0, 690, 713, 716, 0, 719, 709, 0, 677, 723, + 730, 737, 743, 746, 0, 0, 699, 704, 698, 0, + 712, 708, 701, 0, 0, 703, 688, 0, 765, 755, + 760, 186, 176, 0, 293, 294, 0, 516, 124, 126, + 246, 0, 0, 0, 63, 64, 76, 422, 423, 0, + 0, 0, 0, 281, 416, 279, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 280, 0, 0, 0, 0, + 0, 0, 0, 659, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 505, + 0, 0, 0, 344, 346, 345, 347, 348, 349, 350, + 0, 0, 29, 0, 219, 223, 0, 0, 0, 0, + 0, 0, 0, 328, 329, 420, 419, 0, 0, 0, + 0, 239, 234, 231, 230, 232, 233, 264, 245, 225, + 499, 224, 417, 0, 490, 71, 72, 69, 237, 70, + 238, 240, 299, 229, 489, 488, 487, 120, 493, 418, + 0, 226, 492, 491, 463, 424, 464, 351, 425, 0, + 421, 767, 771, 768, 769, 770, 0, 590, 0, 589, + 614, 531, 580, 517, 0, 0, 499, 0, 570, 571, + 0, 564, 565, 563, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 122, 0, 122, 0, 122, 0, + 0, 0, 695, 248, 706, 707, 700, 702, 0, 705, + 689, 0, 0, 751, 750, 0, 675, 0, 265, 547, + 0, 542, 0, 0, 553, 0, 0, 0, 0, 628, + 538, 557, 541, 805, 808, 0, 0, 270, 274, 273, + 278, 0, 317, 0, 0, 0, 841, 0, 0, 285, + 282, 0, 323, 0, 0, 0, 0, 268, 0, 0, + 0, 308, 311, 0, 243, 314, 0, 0, 57, 0, + 78, 845, 0, 814, 823, 0, 811, 0, 0, 290, + 287, 452, 453, 329, 339, 120, 263, 261, 262, 0, + 0, 0, 0, 0, 0, 0, 783, 0, 0, 0, + 821, 848, 0, 254, 0, 257, 0, 0, 850, 859, + 0, 429, 428, 465, 427, 426, 0, 0, 859, 323, + 859, 330, 241, 242, 0, 74, 342, 222, 497, 0, + 228, 235, 236, 284, 289, 298, 0, 337, 0, 227, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 453, 454, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 454, 455, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 407, - 0, 221, 0, 590, 0, 608, 610, 623, 0, 0, - 515, 568, 0, 572, 0, 576, 350, 0, 0, 0, - 679, 692, 0, 0, 669, 671, 0, 0, 125, 0, - 125, 0, 125, 543, 0, 549, 0, 670, 0, 0, - 249, 696, 681, 0, 675, 765, 0, 547, 755, 0, - 553, 760, 538, 0, 0, 555, 0, 554, 0, 557, - 0, 0, 0, 79, 0, 0, 796, 0, 0, 830, - 833, 836, 0, 858, 285, 282, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 858, 268, 0, 80, - 81, 0, 0, 0, 0, 55, 56, 0, 0, 858, - 0, 0, 858, 0, 0, 290, 287, 329, 336, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 265, 0, - 0, 0, 816, 780, 782, 0, 825, 0, 0, 0, - 782, 0, 0, 0, 0, 0, 785, 852, 0, 247, - 0, 32, 0, 30, 0, 859, 0, 244, 0, 0, - 859, 0, 0, 0, 0, 397, 394, 396, 60, 0, - 120, 0, 410, 0, 779, 0, 0, 0, 306, 305, - 0, 122, 260, 0, 0, 475, 474, 0, 0, 476, - 480, 0, 0, 0, 372, 381, 360, 382, 361, 384, - 363, 383, 362, 385, 364, 375, 354, 376, 355, 377, - 356, 429, 430, 442, 386, 365, 387, 366, 443, 440, - 441, 0, 374, 352, 469, 0, 460, 0, 493, 494, - 495, 353, 431, 432, 388, 367, 389, 368, 447, 448, - 449, 378, 357, 379, 358, 380, 359, 450, 373, 351, - 0, 0, 445, 446, 444, 438, 439, 434, 433, 435, - 436, 437, 0, 0, 0, 403, 0, 0, 0, 0, - 413, 0, 0, 0, 0, 523, 526, 0, 571, 574, - 350, 575, 690, 713, 716, 0, 719, 709, 0, 677, - 723, 0, 730, 0, 737, 0, 0, 743, 0, 746, - 0, 252, 693, 682, 542, 548, 0, 629, 630, 558, - 561, 560, 0, 0, 0, 0, 797, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 323, 360, 361, - 363, 362, 364, 354, 355, 356, 365, 366, 352, 367, - 368, 357, 358, 359, 351, 291, 0, 0, 0, 465, - 0, 0, 0, 466, 0, 497, 0, 0, 0, 0, - 0, 0, 336, 122, 499, 500, 501, 502, 503, 0, - 0, 783, 0, 0, 0, 0, 322, 782, 0, 0, - 0, 0, 791, 792, 0, 799, 0, 0, 789, 0, - 828, 0, 0, 0, 0, 787, 829, 0, 819, 784, - 848, 0, 0, 0, 0, 850, 851, 0, 0, 0, - 827, 455, 0, 0, 0, 122, 0, 58, 59, 0, - 73, 65, 336, 0, 0, 412, 411, 299, 0, 0, - 0, 0, 0, 0, 334, 0, 125, 471, 0, 477, - 0, 371, 369, 370, 0, 0, 458, 0, 0, 481, - 485, 0, 0, 461, 0, 0, 0, 0, 404, 0, - 408, 456, 414, 591, 611, 121, 524, 525, 526, 527, - 518, 531, 573, 691, 714, 717, 680, 720, 710, 672, - 678, 724, 726, 731, 733, 738, 740, 544, 744, 550, - 747, 0, 0, 628, 0, 0, 805, 808, 0, 270, - 275, 0, 274, 0, 0, 319, 317, 0, 0, 0, - 841, 839, 0, 0, 853, 82, 308, 311, 314, 845, - 843, 814, 823, 821, 811, 0, 125, 0, 0, 0, - 772, 771, 782, 0, 817, 0, 0, 781, 798, 790, - 818, 826, 788, 0, 782, 0, 794, 795, 802, 786, - 0, 255, 258, 31, 0, 220, 0, 0, 0, 0, - 0, 125, 61, 0, 66, 0, 122, 0, 0, 0, - 0, 565, 332, 333, 331, 330, 0, 0, 0, 0, - 0, 0, 0, 392, 0, 0, 482, 0, 470, 0, - 459, 0, 405, 0, 0, 457, 409, 536, 521, 518, - 519, 520, 523, 727, 734, 741, 253, 248, 631, 559, - 0, 0, 77, 271, 276, 0, 0, 318, 831, 834, - 837, 0, 0, 858, 0, 0, 0, 0, 796, 0, - 0, 0, 0, 505, 0, 0, 0, 0, 800, 0, - 0, 0, 0, 0, 793, 0, 0, 250, 0, 0, - 0, 395, 514, 398, 0, 60, 0, 75, 125, 390, - 0, 300, 565, 0, 0, 335, 337, 0, 324, 340, - 0, 513, 0, 511, 393, 508, 0, 0, 0, 507, - 406, 0, 522, 532, 521, 0, 0, 796, 796, 0, - 0, 0, 0, 0, 0, 0, 0, 309, 312, 315, - 0, 815, 796, 0, 467, 0, 339, 506, 856, 0, - 0, 801, 0, 774, 773, 856, 803, 856, 256, 248, - 259, 856, 856, 0, 0, 401, 62, 280, 0, 67, - 71, 72, 69, 70, 68, 0, 0, 0, 0, 0, - 0, 0, 325, 472, 478, 0, 512, 510, 509, 0, - 534, 528, 695, 0, 0, 0, 320, 796, 796, 0, - 858, 858, 854, 858, 0, 0, 468, 0, 0, 776, - 775, 0, 0, 0, 0, 0, 0, 856, 399, 0, - 0, 0, 286, 342, 391, 0, 0, 0, 0, 326, - 473, 479, 483, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 812, 0, 0, 0, 0, - 0, 0, 251, 864, 860, 0, 402, 287, 0, 0, - 0, 304, 484, 533, 0, 806, 809, 321, 0, 0, - 838, 842, 855, 846, 824, 857, 862, 778, 777, 863, - 865, 861, 0, 303, 302, 535, 832, 835, 301 + 0, 408, 0, 221, 0, 591, 0, 609, 611, 624, + 0, 0, 516, 569, 0, 573, 0, 577, 351, 0, + 0, 0, 680, 693, 0, 0, 670, 672, 0, 0, + 125, 0, 125, 0, 125, 544, 0, 550, 0, 671, + 0, 0, 249, 697, 682, 0, 676, 766, 0, 548, + 756, 0, 554, 761, 539, 0, 0, 556, 0, 555, + 0, 558, 0, 0, 0, 79, 0, 0, 797, 0, + 0, 831, 834, 837, 0, 859, 286, 283, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 859, 269, + 0, 80, 81, 0, 0, 0, 0, 55, 56, 0, + 0, 859, 0, 0, 859, 0, 0, 291, 288, 330, + 337, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 265, 0, 0, 0, 817, 781, 783, 0, 826, 0, + 0, 0, 783, 0, 0, 0, 0, 0, 786, 853, + 0, 247, 0, 32, 0, 30, 0, 860, 0, 244, + 0, 0, 860, 0, 0, 0, 0, 398, 395, 397, + 60, 0, 120, 0, 411, 0, 780, 0, 0, 0, + 307, 306, 0, 122, 260, 0, 0, 476, 475, 0, + 0, 477, 481, 0, 0, 0, 373, 382, 361, 383, + 362, 385, 364, 384, 363, 386, 365, 376, 355, 377, + 356, 378, 357, 430, 431, 443, 387, 366, 388, 367, + 444, 441, 442, 0, 375, 353, 470, 0, 461, 0, + 494, 495, 496, 354, 432, 433, 389, 368, 390, 369, + 448, 449, 450, 379, 358, 380, 359, 381, 360, 451, + 374, 352, 0, 0, 446, 447, 445, 439, 440, 435, + 434, 436, 437, 438, 0, 0, 0, 404, 0, 0, + 0, 0, 414, 0, 0, 0, 0, 524, 527, 0, + 572, 575, 351, 576, 691, 714, 717, 0, 720, 710, + 0, 678, 724, 0, 731, 0, 738, 0, 0, 744, + 0, 747, 0, 252, 694, 683, 543, 549, 0, 630, + 631, 559, 562, 561, 0, 0, 0, 0, 798, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 324, + 361, 362, 364, 363, 365, 355, 356, 357, 366, 367, + 353, 368, 369, 358, 359, 360, 352, 292, 0, 0, + 0, 466, 0, 0, 0, 467, 0, 498, 0, 0, + 0, 0, 0, 0, 337, 122, 500, 501, 502, 503, + 504, 0, 0, 784, 0, 0, 0, 0, 323, 783, + 0, 0, 0, 0, 792, 793, 0, 800, 0, 0, + 790, 0, 829, 0, 0, 0, 0, 788, 830, 0, + 820, 785, 849, 0, 0, 0, 0, 851, 852, 0, + 0, 0, 828, 456, 0, 0, 0, 122, 0, 58, + 59, 0, 73, 65, 337, 0, 0, 413, 412, 300, + 0, 0, 0, 0, 0, 0, 335, 0, 125, 472, + 0, 478, 0, 372, 370, 371, 0, 0, 459, 0, + 0, 482, 486, 0, 0, 462, 0, 0, 0, 0, + 405, 0, 409, 457, 415, 592, 612, 121, 525, 526, + 527, 528, 519, 532, 574, 692, 715, 718, 681, 721, + 711, 673, 679, 725, 727, 732, 734, 739, 741, 545, + 745, 551, 748, 0, 0, 629, 0, 0, 806, 809, + 0, 271, 276, 0, 275, 0, 0, 320, 318, 0, + 0, 0, 842, 840, 0, 0, 854, 82, 309, 312, + 315, 846, 844, 815, 824, 822, 812, 0, 125, 0, + 0, 0, 773, 772, 783, 0, 818, 0, 0, 782, + 799, 791, 819, 827, 789, 0, 783, 0, 795, 796, + 803, 787, 0, 255, 258, 31, 0, 220, 0, 0, + 0, 0, 0, 125, 61, 0, 66, 0, 122, 0, + 0, 0, 0, 566, 333, 334, 332, 331, 0, 0, + 0, 0, 0, 0, 0, 393, 0, 0, 483, 0, + 471, 0, 460, 0, 406, 0, 0, 458, 410, 537, + 522, 519, 520, 521, 524, 728, 735, 742, 253, 248, + 632, 560, 0, 0, 77, 272, 277, 0, 0, 319, + 832, 835, 838, 0, 0, 859, 0, 0, 0, 0, + 797, 0, 0, 0, 0, 506, 0, 0, 0, 0, + 801, 0, 0, 0, 0, 0, 794, 0, 0, 250, + 0, 0, 0, 396, 515, 399, 0, 60, 0, 75, + 125, 391, 0, 301, 566, 0, 0, 336, 338, 0, + 325, 341, 0, 514, 0, 512, 394, 509, 0, 0, + 0, 508, 407, 0, 523, 533, 522, 0, 0, 797, + 797, 0, 0, 0, 0, 0, 0, 0, 0, 310, + 313, 316, 0, 816, 797, 0, 468, 0, 340, 507, + 857, 0, 0, 802, 0, 775, 774, 857, 804, 857, + 256, 248, 259, 857, 857, 0, 0, 402, 62, 281, + 0, 67, 71, 72, 69, 70, 68, 0, 0, 0, + 0, 0, 0, 0, 326, 473, 479, 0, 513, 511, + 510, 0, 535, 529, 696, 0, 0, 0, 321, 797, + 797, 0, 859, 859, 855, 859, 0, 0, 469, 0, + 0, 777, 776, 0, 0, 0, 0, 0, 0, 857, + 400, 0, 0, 0, 287, 343, 392, 0, 0, 0, + 0, 327, 474, 480, 484, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 813, 0, 0, + 0, 0, 0, 0, 251, 865, 861, 0, 403, 288, + 0, 0, 0, 305, 485, 534, 0, 807, 810, 322, + 0, 0, 839, 843, 856, 847, 825, 858, 863, 779, + 778, 864, 866, 862, 0, 304, 303, 536, 833, 836, + 302 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -1434, -1434, -1434, -1434, -1434, -1434, 490, 1109, -1434, -1434, - -1434, 1192, -1434, -1434, -1434, 682, 1150, -1434, 1066, -1434, - -1434, 1118, -1434, -1434, -1434, -231, -1434, -1434, -1434, -229, - -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, 989, - -1434, -1434, -39, -63, -1434, -1434, -1434, 450, 421, -515, - -559, -784, -1434, -1434, -1434, -1420, -1434, -1434, -207, -365, - -1434, 276, -1434, -1325, -1434, -297, -337, -1434, -1434, -1434, - -1434, -404, -14, -1434, -1434, -1434, -1434, -1434, -220, -219, - -218, -1434, -217, -1434, -1434, -1434, 1213, -1434, 265, -1434, - -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, - -1434, -1434, -422, -192, 327, -132, -1434, -881, -436, -1434, - 709, -1434, -1434, -364, 949, -1434, -1434, -1434, -1433, -1434, - -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, 794, -1434, - -1434, -1434, -1434, -1434, -1434, -1434, -147, -153, -236, -152, - -19, -1434, -1434, -1434, -1434, -1434, 806, -1434, -572, -1434, - -1434, -578, -1434, -1434, -613, -233, -561, -1294, -1434, -358, - -1434, -1434, 1184, -1434, -1434, -1434, 681, 799, 53, -1434, - -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, - -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -571, - -222, -1434, 804, -1434, -1434, -1434, -1434, -1434, -1434, -1434, - -1434, -373, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, - -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, - -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -204, - -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, - -1434, -1434, -1434, -1434, -1434, 807, -706, 139, -647, -879, - -1434, -1434, -1434, -1143, -184, -1162, -1434, -1434, -1434, -1434, - -1434, -1434, -1434, -1434, -1434, 76, -476, -1434, -1434, -1434, - 559, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, -1434, - -1434, -1434, -1434, -638, -1434, -1225, -692, -1434 + -1431, -1431, -1431, -1431, -1431, -1431, 535, 1151, -1431, -1431, + -1431, 1231, -1431, -1431, -1431, 691, 1189, -1431, 1101, -1431, + -1431, 1156, -1431, -1431, -1431, -198, -1431, -1431, -1431, -197, + -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, 1020, + -1431, -1431, -41, -45, -1431, -1431, -1431, 355, 450, -518, + -564, -785, -1431, -1431, -1431, -1430, -1431, -1431, -209, -365, + -1431, 304, -1431, -1343, -1431, -184, 277, -1431, -1431, -1431, + -1431, -412, -14, -1431, -1431, -1431, -1431, -1431, -192, -189, + -188, -1431, -186, -1431, -1431, -1431, 1255, -1431, 301, -1431, + -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, + -1431, -1431, -422, -150, 327, -93, -1431, -883, -436, -1431, + 749, -1431, -1431, -367, 626, -1431, -1431, -1431, -1373, -1431, + -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, 794, -1431, + -1431, -1431, -1431, -1431, -1431, -1431, -148, -115, -199, -116, + 20, -1431, -1431, -1431, -1431, -1431, 844, -1431, -575, -1431, + -1431, -578, -1431, -1431, -615, -195, -566, -1288, -1431, -349, + -1431, -1431, 1222, -1431, -1431, -1431, 716, 808, 69, -1431, + -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, + -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -608, + -222, -1431, 841, -1431, -1431, -1431, -1431, -1431, -1431, -1431, + -1431, -373, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, + -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, + -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -204, + -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, + -1431, -1431, -1431, -1431, -1431, 842, -708, 177, -647, -890, + -1431, -1431, -1431, -1135, -147, -1358, -1431, -1431, -1431, -1431, + -1431, -1431, -1431, -1431, -1431, 114, -479, -1431, -1431, -1431, + 598, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, -1431, + -1431, -1431, -1431, -629, -1431, -1380, -701, -1431 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - 0, 1, 16, 141, 52, 17, 162, 168, 694, 503, - 147, 504, 97, 19, 20, 45, 46, 47, 87, 21, - 39, 40, 505, 506, 1199, 1200, 507, 1345, 1436, 508, - 509, 949, 510, 624, 511, 512, 513, 514, 1130, 169, - 170, 35, 36, 37, 218, 65, 66, 67, 68, 22, - 283, 372, 208, 23, 109, 209, 110, 154, 672, 974, - 516, 373, 517, 819, 1500, 1080, 564, 928, 1426, 930, - 1427, 519, 520, 521, 626, 845, 1393, 522, 523, 524, - 525, 526, 527, 528, 529, 424, 530, 724, 1208, 958, - 531, 532, 881, 1404, 882, 1405, 884, 1406, 533, 848, - 1397, 534, 706, 1449, 535, 1214, 1215, 961, 674, 536, - 781, 950, 537, 639, 975, 539, 540, 541, 947, 542, - 1194, 1504, 1195, 1559, 543, 1048, 1376, 544, 707, 1359, - 1570, 1361, 1571, 1456, 1602, 546, 368, 1382, 1463, 1248, - 1250, 1057, 559, 790, 1529, 1574, 369, 370, 608, 814, - 417, 613, 816, 418, 1154, 618, 572, 388, 305, 306, - 215, 299, 77, 119, 25, 159, 374, 88, 89, 172, - 90, 26, 49, 113, 156, 27, 286, 556, 557, 1053, - 377, 213, 214, 75, 116, 379, 28, 157, 297, 619, - 547, 295, 351, 352, 806, 416, 353, 580, 1260, 799, - 414, 354, 573, 1253, 818, 578, 1258, 574, 1254, 575, - 1255, 577, 1257, 581, 1261, 582, 1383, 583, 1263, 584, - 1384, 585, 1265, 586, 1385, 587, 1268, 588, 1270, 609, - 29, 94, 175, 357, 610, 30, 95, 176, 358, 614, - 31, 93, 174, 356, 605, 548, 913, 955, 914, 915, - 927, 1176, 1170, 1165, 1328, 1098, 549, 841, 1390, 842, - 1391, 893, 1410, 890, 1408, 916, 696, 550, 891, 1409, - 917, 551, 1102, 1471, 1103, 1472, 1104, 1473, 852, 1401, - 888, 1407, 690, 697, 552, 1548, 936, 553 + 0, 1, 16, 143, 52, 17, 164, 170, 696, 505, + 149, 506, 99, 19, 20, 45, 46, 47, 88, 21, + 39, 40, 507, 508, 1201, 1202, 509, 1347, 1438, 510, + 511, 951, 512, 626, 513, 514, 515, 516, 1132, 171, + 172, 35, 36, 37, 220, 66, 67, 68, 69, 22, + 285, 374, 210, 23, 111, 211, 112, 156, 674, 976, + 518, 375, 519, 821, 1502, 1082, 566, 930, 1428, 932, + 1429, 521, 522, 523, 628, 847, 1395, 524, 525, 526, + 527, 528, 529, 530, 531, 426, 532, 726, 1210, 960, + 533, 534, 883, 1406, 884, 1407, 886, 1408, 535, 850, + 1399, 536, 708, 1451, 537, 1216, 1217, 963, 676, 538, + 783, 952, 539, 641, 977, 541, 542, 543, 949, 544, + 1196, 1506, 1197, 1561, 545, 1050, 1378, 546, 709, 1361, + 1572, 1363, 1573, 1458, 1604, 548, 370, 1384, 1465, 1250, + 1252, 1059, 561, 792, 1531, 1576, 371, 372, 610, 816, + 419, 615, 818, 420, 1156, 620, 574, 390, 307, 308, + 217, 301, 78, 121, 25, 161, 376, 89, 90, 174, + 91, 26, 49, 115, 158, 27, 288, 558, 559, 1055, + 379, 215, 216, 76, 118, 381, 28, 159, 299, 621, + 549, 297, 353, 354, 808, 418, 355, 582, 1262, 801, + 416, 356, 575, 1255, 820, 580, 1260, 576, 1256, 577, + 1257, 579, 1259, 583, 1263, 584, 1385, 585, 1265, 586, + 1386, 587, 1267, 588, 1387, 589, 1270, 590, 1272, 611, + 29, 95, 177, 359, 612, 30, 96, 178, 360, 616, + 31, 94, 176, 358, 607, 550, 915, 957, 916, 917, + 929, 1178, 1172, 1167, 1330, 1100, 551, 843, 1392, 844, + 1393, 895, 1412, 892, 1410, 918, 698, 552, 893, 1411, + 919, 553, 1104, 1473, 1105, 1474, 1106, 1475, 854, 1403, + 890, 1409, 692, 699, 554, 1550, 938, 555 }; /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If @@ -1701,1791 +1703,1802 @@ static const yytype_int16 yydefgoto[] = number is the opposite. If YYTABLE_NINF, syntax error. */ static const yytype_int16 yytable[] = { - 59, 69, 285, 350, 689, 876, 840, 794, 515, 538, - 815, 954, 219, 568, 941, 813, 942, 1143, 1318, 638, - 725, 355, 560, 808, 1071, 810, 1073, 812, 1075, 1094, - -120, 594, 631, 675, 676, 1161, 518, 637, 149, 920, - 128, 1173, 602, 1150, 789, 1171, 592, 906, 69, 69, - 69, 120, 121, 844, 53, 1177, 906, 1444, 1184, 83, - 54, 667, 1466, 1188, 1337, 102, 103, 104, 32, 33, - 748, 1558, 366, 751, 752, 96, 515, 216, 708, 422, - 366, 726, 590, 1210, 284, 216, 2, 216, 69, 69, - 69, 69, 3, 1211, 84, 303, 716, 835, 1042, 1043, - 515, 591, 91, 956, 518, 684, 686, 751, 752, 1573, - 38, 1380, 905, 304, 918, 4, 922, 5, 657, 6, - 728, 729, 423, 826, 934, 7, 1596, 1044, 518, 632, - 633, 727, 367, 938, 217, 8, 148, 163, 164, 1045, - 717, 9, 217, 137, 217, 1212, 728, 729, 1518, 350, - 1213, 48, 380, 300, 1604, 779, 780, 957, 898, 837, - 907, 1106, 415, 60, 350, 10, 1378, 427, 795, 820, - 1418, 1381, 1281, 1167, 1554, 1160, 1168, 136, 301, 58, - 1046, 1047, 1447, 303, 1128, 1068, 1249, 11, 12, 779, - 780, 595, 61, 350, 78, 350, 836, 1137, 122, 1069, - 1140, 304, 787, 123, 1169, 124, 593, 515, 125, 596, - 836, 349, 836, 853, 855, 597, 740, 741, 34, 835, - 284, 634, 836, 70, 748, 836, 750, 751, 752, 753, - 836, 836, 854, 788, 754, 518, 85, 641, 889, 76, - 635, 892, 740, 741, 79, 1203, 1481, 86, 105, 126, - 748, 658, 750, 751, 752, 753, 350, 350, 50, 80, - 754, 1305, 895, 382, 62, 569, 13, 425, 79, 875, - 1552, 515, 1553, 106, 1491, 570, 1555, 1556, 1313, 81, - 836, 837, 96, 838, 165, 14, 839, 835, 404, 166, - 962, 167, 894, 381, 125, 953, 15, 1153, 58, 518, - 426, 515, 835, 96, 51, 1533, 1534, 284, 1160, 779, - 780, 642, 1153, 1160, 1160, 405, 406, 1160, 835, 616, - 1544, 1346, 101, 776, 777, 778, 907, 571, 1420, 518, - 643, 1076, 1595, 63, 403, 779, 780, 617, 1281, 1162, - 1163, 1585, 64, 501, 671, 1077, 1605, 1606, 835, 837, - 1610, 350, 350, 350, 86, 350, 350, 349, 1489, 350, - 1051, 350, 558, 350, 837, 350, 959, 1164, 1189, 797, - 798, 800, 349, 802, 803, 1578, 1579, 807, 407, 809, - 837, 811, 408, 1282, 1160, 53, 1160, 728, 729, 131, - 1059, 54, 954, 518, 518, 518, 518, 518, 518, 518, - 518, 349, 1216, 349, 1160, 835, 518, 518, 71, 72, - 837, 73, 518, 943, 79, 1588, 843, 1614, 944, 1626, - 350, 518, 518, 349, 1097, 223, 518, 518, 518, 515, - 518, 58, 1358, 1417, 404, 1202, 1090, 1627, 415, 74, - 879, 178, 1062, 350, 409, 1423, 1204, 856, 410, 1180, - 1142, 411, 224, 856, 1317, 1349, 945, 518, 129, 1185, - 856, 405, 406, 856, 349, 349, 412, 837, 1092, 1093, - 1151, 856, 413, 1205, 1242, 515, 1275, 105, 1078, 1105, - 1280, 943, 1351, 740, 741, 929, 783, 1454, 134, 708, - 1460, 748, 1079, 784, 751, 752, 753, 708, 1487, 58, - 1269, 754, 1245, 518, 1267, 948, 966, 970, 1131, 1132, - 1312, 1134, 98, 99, 100, 1136, 1271, 1138, 1139, 1159, - 1141, 1349, 1412, 1356, 407, 1324, 1159, 135, 408, 1271, - 1272, 1443, 1010, -725, 387, 1221, 1222, 1223, -725, 41, - 42, 43, -732, 1331, 1347, -739, 1350, -732, 1357, 138, - -739, 1516, 150, 151, 152, 153, -725, 1434, 142, 349, - 349, 349, 287, 349, 349, -732, 288, 349, -739, 349, - 44, 349, 659, 349, 662, 1271, 779, 780, 1395, 143, - 289, 290, 429, 430, 1306, 291, 292, 293, 294, 1332, - 409, 660, 1396, 663, 410, 210, 350, 411, -400, 1196, - 144, 554, 440, -400, 350, 603, 211, 350, 445, 145, - 1197, 1198, 412, 555, 1081, 847, 350, 604, 413, 350, - 350, -400, 1084, 350, 284, 1085, 350, 611, 349, 404, - 350, 1181, 856, 1182, 1089, 1005, 1341, 1232, 1237, 612, - 1315, 1095, 1440, 1056, 1101, 459, 460, 1006, 1065, 1233, - 1238, 349, 1316, 907, 1515, 1403, 405, 406, 415, 350, - 350, 1517, 350, 155, 387, 1281, 350, 1125, 350, 350, - 1325, 350, 1278, 1326, 146, 385, 1327, 107, 386, 462, - 463, 387, 111, 108, 114, 117, 139, 1246, 112, 158, - 115, 118, 140, 1247, 1415, 946, 1422, 84, 1425, 1428, - 856, 1429, 856, 1421, 856, 856, 350, 856, 350, 1503, - 415, 1476, 415, 415, 1063, 856, 1066, 1067, 102, 407, - 104, 415, 569, 408, 1081, 1070, 1081, 173, 1308, 1287, - 1288, 1289, 570, 160, 161, 415, 478, 479, 480, 1072, - 415, 415, 177, 415, 1074, 1279, 58, 1286, 415, 1323, - 415, 102, 1524, 1292, 1572, 1330, 491, 160, 161, 931, - 932, 212, 1334, 404, 220, 221, 1336, 132, 133, 1174, - 1167, 625, 1175, 225, 69, 280, 226, 793, 102, 103, - 104, 41, 42, 43, 571, 409, 227, 1438, 499, 410, - 405, 406, 411, 501, 671, 673, 673, 673, 228, 220, - 221, 222, 1364, 1490, 349, 281, 282, 412, 1230, 55, - 56, 57, 349, 413, 1373, 349, 924, 925, 926, 296, - 284, 1340, 515, 538, 349, 298, 302, 349, 349, 359, - 360, 349, 361, 362, 349, 363, 1545, 1541, 349, 364, - 384, 371, 376, 350, 365, 714, 375, 378, 1581, 1582, - 518, 1583, 383, 407, 350, 392, 569, 408, 389, 390, - 391, 1256, 395, 393, 415, 394, 570, 349, 349, 396, - 349, 397, 714, 398, 349, 402, 349, 349, 399, 349, - 350, 350, 350, 1520, 400, 1414, 1575, 1576, 401, 419, - 420, 421, 1580, 566, 404, 561, 567, 1584, 579, 600, - 621, 622, 629, 630, 350, 646, 648, 649, 650, 651, - 653, 654, 652, 661, 349, 1430, 349, 664, 571, 409, - 665, 405, 406, 410, 677, 678, 411, 693, 679, 698, - 680, 1608, 1609, 710, 681, 682, 711, 713, 1589, 718, - 719, 412, 720, 721, 709, 722, 723, 413, 782, 1497, - 15, 785, 1501, 792, 657, 805, 804, 1566, 1567, 691, - 611, 824, 821, 308, 825, 820, 827, 714, 828, 309, - 404, 829, 350, 830, 831, 310, 833, 834, 726, 846, - 874, 849, 856, 850, 407, 311, 1450, 880, 408, 1342, - 851, 885, 886, 312, 897, 714, 935, 405, 406, 937, - 939, 940, 960, 1001, 1598, 1055, 1058, 1064, 313, 1087, - 1088, 1159, 1166, 1179, 1082, 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, 1152, 350, - 409, 349, 1540, 673, 410, 1186, 1276, 411, 1543, 1191, - 407, 1190, 349, 1192, 408, 1193, 1207, 1386, 1206, 1218, - 1519, 1392, 412, 1217, 1240, 1219, 1220, 820, 413, 1224, - 1225, 1235, 1236, 1244, 1249, 638, 1251, 1259, 349, 349, - 349, 1262, 1274, 1264, 728, 729, 1266, 1284, 1291, 347, - 1293, 1352, 1294, 1300, 1303, 1353, 1307, 1319, 1354, 1355, - 1366, 1322, 349, 58, 1329, 1388, 1377, 1367, 1126, 1369, - 1374, 1387, 1411, 714, 1424, 1394, 409, 1419, 1437, 1439, - 410, 1441, 1127, 411, 1442, 1446, 1435, 350, 855, 350, - 1462, 1469, 1467, 1468, 1565, 1096, 1474, 1505, 412, 1535, - 1547, 1448, 1532, 1586, 413, 1475, 1480, 1452, 1482, 348, - 1590, 601, 1483, 1499, 1537, 1591, 1538, 545, 1539, 1593, - 1542, 1564, 1587, 1592, 1603, 1594, 1620, 565, 1611, 1612, - 349, 1613, 1616, 1619, 933, 1621, 576, 127, 738, 739, - 740, 741, 742, 18, 82, 745, 589, 171, 748, 130, - 750, 751, 752, 753, 1506, 1448, 599, 1509, 754, 1054, - 756, 757, 307, 1187, 24, 615, 1510, 1511, 1512, 1513, - 1486, 350, 1209, 714, 1445, 623, 1464, 715, 1530, 1379, - 1465, 620, 1531, 673, 350, 640, 92, 1283, 786, 1496, - 645, 627, 647, 1321, 628, 921, 0, 0, 0, 0, - 0, 656, 1525, 0, 0, 0, 0, 349, 0, 668, - 669, 670, 0, 0, 0, 0, 0, 772, 773, 774, - 775, 776, 777, 778, 688, 0, 0, 728, 729, 0, - 0, 0, 692, 779, 780, 688, 0, 0, 699, 700, - 701, 702, 703, 0, 0, 350, 0, 0, 673, 673, - 673, 712, 0, 714, 0, 714, 0, 714, 1563, 714, - 0, 714, 0, 714, 0, 714, 0, 714, 0, 728, - 729, 0, 714, 0, 714, 0, 0, 0, 0, 0, - 714, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 714, 0, 714, 349, 0, 349, 0, 714, - 0, 714, 0, 714, 0, 0, 714, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 796, 0, 0, 0, - 0, 0, 0, 740, 741, 0, 0, 0, 0, 0, - 0, 748, 0, 750, 751, 752, 753, 714, 0, 0, - 0, 754, 0, 0, 823, 0, 0, 1625, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 738, 739, 740, 741, 742, 714, 0, - 745, 746, 747, 748, 0, 750, 751, 752, 753, 349, - 640, 0, 0, 754, 0, 756, 757, 688, 877, 0, - 878, 0, 349, 0, 0, 883, 0, 0, 0, 0, - 0, 887, 774, 775, 776, 777, 778, 0, 0, 0, - 896, 0, 0, 0, 0, 0, 779, 780, 0, 0, - 0, 899, 900, 901, 902, 903, 904, 0, 912, 0, - 912, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 946, 1344, 772, 773, 774, 775, 776, 777, 778, 0, - 728, 729, 0, 349, 0, 0, 0, 0, 779, 780, + 60, 70, 287, 691, 796, 352, 842, 943, 540, 944, + 517, 956, 817, 221, 815, 570, 878, 1145, 846, 727, + 810, 640, 812, 357, 814, 1073, 1163, 1075, 1320, 1077, + 633, 639, 1175, 562, 594, 677, 678, 1096, -120, 130, + 1152, 922, 908, 791, 604, 596, 1468, 1173, 84, 70, + 70, 70, 1483, 1179, 1186, 669, 32, 33, 151, 908, + 1382, 1190, 53, 1339, 728, 1446, 2, 50, 54, 837, + 122, 123, 3, 104, 105, 106, 837, 907, 517, 920, + 710, 924, 909, 85, 417, 218, 571, 48, 1064, 936, + 70, 70, 70, 70, 1283, 4, 572, 5, 940, 6, + 61, 1575, 517, 165, 166, 7, 750, 686, 688, 753, + 754, 1535, 1536, 51, 729, 8, 98, 1554, 92, 1555, + 1383, 9, 1212, 1557, 1558, 368, 1546, 634, 635, 62, + 218, 839, 1213, 1560, 417, 431, 432, 838, 839, 1284, + 840, 305, 219, 841, 150, 10, 1606, 71, 573, 958, + 427, 352, 718, 382, 1108, 442, 1520, 900, 1556, 306, + 139, 447, 797, 909, 828, 212, 352, 11, 12, 429, + 1162, 822, 1070, 302, 77, 1283, 213, 1130, 303, 1597, + 1420, 1580, 1581, 428, 1214, 138, 1071, 219, 1598, 1215, + 1139, 781, 782, 1142, 595, 352, 719, 352, 461, 462, + 305, 63, 38, 959, 838, 597, 34, 838, 58, 517, + 789, 730, 731, 351, 838, 855, 857, 124, 306, 636, + 838, 838, 125, 598, 126, 86, 856, 127, 838, 599, + 838, 80, 464, 465, 837, 59, 87, 643, 637, 58, + 891, 790, 1380, 894, 1155, 1205, 13, 753, 754, 286, + 167, 660, 1044, 1045, 1162, 168, 897, 169, 352, 352, + 127, 1307, 1251, 384, 837, 14, 59, 424, 128, 1315, + 64, 877, 58, 517, 1155, 1449, 15, 368, 837, 65, + 98, 1046, 218, 659, 1493, 837, 286, 1587, 1422, 480, + 481, 482, 964, 1047, 896, 1491, 839, 955, 1162, 59, + 730, 731, 79, 517, 837, 740, 741, 742, 743, 493, + 425, 81, 1162, 286, 1590, 750, 1162, 752, 753, 754, + 755, 1348, 503, 673, 627, 756, 839, 758, 759, 781, + 782, 1607, 1078, 1191, 1048, 1049, 405, 369, 618, 219, + 839, 501, 730, 731, 417, 1608, 1079, 839, 1065, 1612, + 1164, 1165, 1162, 352, 352, 352, 619, 352, 352, 351, + 1162, 352, 1053, 352, 560, 352, 839, 352, 80, 1162, + 556, 799, 800, 802, 351, 804, 805, 961, 1166, 809, + 82, 811, 557, 813, 1061, 1616, 776, 777, 778, 779, + 780, 97, 956, 1628, 225, 180, 742, 743, 107, 1218, + 781, 782, 1629, 351, 750, 351, 752, 753, 754, 755, + 41, 42, 43, 1080, 756, 1273, 845, 1206, 100, 101, + 102, 226, 352, 108, 1419, 351, 1099, 1081, 58, 1274, + 1092, 517, 1169, 1360, 1204, 1170, 1425, 945, 742, 743, + 881, 44, 946, 417, 1207, 352, 750, 1068, 1182, 753, + 754, 755, 858, 80, 1319, 59, 756, 107, 1187, 152, + 153, 154, 155, 1171, 98, 58, 351, 351, 858, 1351, + 1094, 1095, 1153, 1273, 945, 1161, 1277, 517, 383, 1244, + 947, 1107, 1247, 72, 73, 931, 74, 1333, 858, 781, + 782, 710, 59, 1351, 858, 1282, 1353, 858, 53, 710, + 1349, 1358, 1271, 1269, 54, 950, 730, 731, 968, 972, + 1133, 1134, 1314, 1136, 75, 1456, 1161, 1138, 1352, 1140, + 1141, 1462, 1143, 1414, 1489, 592, 1359, 1326, 1273, 289, + 644, 781, 782, 290, 1012, 286, 417, 1223, 1224, 1225, + 1069, 1518, 1334, 858, 593, -726, 1397, 291, 292, 645, + -726, 406, 293, 294, 295, 296, 103, 661, 1436, -733, + 1398, 351, 351, 351, -733, 351, 351, -740, -726, 351, + 785, 351, -740, 351, 664, 351, 662, 786, 407, 408, + 1198, 1308, -733, 605, -401, 613, 131, 1007, 1234, -401, + -740, 1199, 1200, 665, 1067, 606, 1239, 614, 352, 1008, + 1235, 417, 742, 743, 417, 1072, 352, -401, 1240, 352, + 750, 406, 752, 753, 754, 755, 1083, 849, 352, 87, + 756, 352, 352, 1317, 1086, 352, 1445, 1087, 352, 389, + 351, 406, 352, 1343, 109, 1318, 1091, 909, 407, 408, + 110, 409, 1442, 1097, 1058, 410, 1103, 148, 387, 1283, + 113, 388, 520, 351, 389, 1517, 114, 1327, 407, 408, + 1328, 352, 352, 1329, 352, 137, 1405, 1127, 352, 116, + 352, 352, 119, 352, 1280, 117, 1176, 1169, 120, 1177, + 141, 776, 777, 778, 779, 780, 142, 1248, 1417, 41, + 42, 43, 1424, 1249, 858, 781, 782, 948, 858, 1128, + 1427, 409, 133, 1423, 1478, 410, 858, 411, 352, 1430, + 352, 412, 1431, 1129, 413, 858, 1505, 104, 858, 106, + 520, 409, 858, 417, 571, 410, 1083, 1074, 1083, 414, + 1310, 1289, 1290, 1291, 572, 415, 417, 417, 417, 417, + 1076, 1281, 1288, 1526, 520, 417, 1183, 1519, 1184, 1574, + 389, 1325, 136, 730, 731, 1294, 140, 1332, 162, 163, + 933, 934, 162, 163, 1336, 503, 673, 411, 1338, 222, + 223, 412, 144, 1144, 413, 145, 70, 134, 135, 795, + 104, 105, 106, 146, 1440, 147, 573, 411, 157, 414, + 160, 412, 85, 179, 413, 415, 104, 675, 675, 675, + 222, 223, 224, 1492, 1366, 175, 351, 214, 228, 414, + 1232, 926, 927, 928, 351, 415, 1375, 351, 55, 56, + 57, 227, 540, 1342, 517, 229, 351, 230, 286, 351, + 351, 282, 283, 351, 284, 298, 351, 300, 1547, 361, + 351, 1583, 1584, 362, 1585, 352, 363, 716, 1543, 742, + 743, 520, 304, 364, 365, 366, 352, 750, 373, 752, + 753, 754, 755, 1258, 367, 378, 377, 756, 380, 351, + 351, 385, 351, 386, 716, 391, 351, 392, 351, 351, + 1522, 351, 352, 352, 352, 393, 394, 1416, 1577, 1578, + 395, 396, 397, 398, 1582, 404, 406, 399, 400, 1586, + 401, 402, 403, 417, 422, 421, 352, 423, 568, 569, + 563, 581, 623, 602, 624, 520, 351, 1432, 351, 632, + 650, 651, 631, 407, 408, 652, 648, 653, 654, 656, + 778, 779, 780, 1610, 1611, 655, 679, 406, 1591, 663, + 666, 680, 781, 782, 667, 520, 681, 682, 1499, 695, + 683, 1503, 700, 712, 1568, 1569, 684, 713, 715, 720, + 711, 721, 722, 723, 407, 408, 724, 822, 725, 716, + 15, 784, 406, 659, 352, 787, 794, 693, 806, 807, + 613, 823, 826, 827, 831, 829, 409, 832, 1452, 1344, + 410, 728, 406, 830, 833, 836, 851, 716, 876, 407, + 408, 1600, 835, 848, 858, 887, 852, 882, 406, 520, + 520, 520, 520, 520, 520, 520, 520, 853, 888, 407, + 408, 899, 520, 520, 937, 939, 941, 409, 520, 942, + 962, 410, 1057, 1003, 1060, 407, 408, 520, 520, 1066, + 406, 1084, 520, 520, 520, 1089, 520, 1090, 1154, 1161, + 1192, 352, 411, 351, 1542, 675, 412, 1168, 1278, 413, + 1545, 1181, 409, 1188, 351, 571, 410, 407, 408, 1388, + 1194, 1394, 1521, 520, 414, 572, 1209, 1242, 1219, 822, + 415, 1193, 409, 1208, 1221, 1195, 410, 640, 1220, 1246, + 351, 351, 351, 411, 1251, 406, 1261, 412, 409, 1279, + 413, 1222, 410, 1253, 1226, 1227, 1237, 1238, 1264, 1266, + 1276, 1268, 1286, 1293, 351, 414, 1295, 1368, 1309, 520, + 1296, 415, 407, 408, 1302, 716, 1305, 573, 411, 1321, + 409, 1324, 412, 1331, 410, 413, 1437, 1354, 1355, 352, + 857, 352, 1356, 1357, 1369, 1371, 1567, 1376, 411, 1389, + 414, 1450, 412, 1379, 1292, 413, 415, 1390, 1396, 1454, + 1413, 1439, 1421, 1426, 411, 1443, 1444, 1441, 412, 547, + 414, 413, 1448, 1464, 1469, 1470, 415, 1471, 1476, 567, + 1477, 1098, 351, 1482, 1484, 409, 414, 1507, 578, 410, + 1485, 1501, 415, 1534, 1537, 1539, 411, 1544, 591, 1540, + 412, 1549, 1298, 413, 1541, 1450, 1588, 1566, 601, 1589, + 1592, 1593, 1594, 1595, 1596, 1605, 1618, 617, 414, 1613, + 406, 1621, 1622, 352, 415, 716, 1614, 625, 1615, 1623, + 129, 935, 18, 83, 173, 675, 352, 642, 132, 1508, + 1056, 1511, 647, 1189, 649, 309, 1512, 407, 408, 1513, + 1514, 411, 1515, 658, 1527, 412, 24, 1299, 413, 351, + 1211, 670, 671, 672, 1488, 1447, 1466, 1532, 1467, 717, + 1381, 622, 1533, 414, 93, 788, 690, 1285, 1498, 415, + 629, 630, 0, 1323, 694, 0, 923, 690, 0, 0, + 701, 702, 703, 704, 705, 0, 0, 352, 0, 0, + 675, 675, 675, 714, 0, 716, 0, 716, 1565, 716, + 409, 716, 0, 716, 410, 716, 0, 716, 0, 716, + 0, 730, 731, 0, 716, 0, 716, 0, 0, 0, + 0, 0, 716, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 716, 0, 716, 351, 0, 351, + 0, 716, 0, 716, 0, 716, 0, 0, 716, 979, + 981, 983, 985, 987, 989, 991, 0, 0, 798, 0, + 0, 996, 998, 0, 0, 0, 411, 1004, 0, 0, + 412, 0, 1300, 413, 0, 0, 1016, 1018, 0, 716, + 0, 1023, 1025, 1027, 0, 1030, 825, 1627, 414, 0, + 0, 0, 0, 0, 415, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 740, 741, 742, 743, 744, + 716, 0, 747, 748, 749, 750, 0, 752, 753, 754, + 755, 351, 642, 0, 0, 756, 0, 758, 759, 690, + 879, 0, 880, 0, 351, 0, 0, 885, 0, 0, + 0, 0, 0, 889, 0, 0, 0, 0, 0, 0, + 0, 0, 898, 0, 0, 0, 520, 0, 0, 0, + 0, 0, 0, 901, 902, 903, 904, 905, 906, 0, + 914, 0, 914, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 948, 1346, 774, 775, 776, 777, 778, 779, + 780, 0, 730, 731, 0, 351, 0, 0, 0, 0, + 781, 782, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 978, 980, 982, 984, + 986, 988, 990, 992, 993, 994, 0, 0, 995, 997, + 999, 1000, 1001, 1002, 0, 1005, 1006, 948, 1009, 1010, + 1011, 1013, 1014, 1015, 1017, 1019, 1020, 1021, 1022, 1024, + 1026, 1028, 1029, 1031, 1033, 1034, 1035, 1036, 1037, 1038, + 1039, 1040, 1041, 1042, 1043, 0, 1051, 0, 0, 0, + 1054, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1062, 0, 0, 0, 0, 0, 740, 741, 742, 743, + 744, 0, 0, 747, 748, 749, 750, 0, 752, 753, + 754, 755, 0, 0, 0, 0, 756, 0, 758, 759, + 0, 0, 0, 0, 762, 763, 764, 0, 0, 1088, + 768, 0, 0, 0, 0, 0, 1093, 0, 0, 0, + 0, 0, 0, 1102, 0, 0, 0, 0, 0, 0, + 0, 0, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, + 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, + 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, + 779, 780, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 781, 782, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 701, 1158, 0, 0, 0, + 0, 0, 431, 432, 0, 0, 0, 0, 0, 1180, + 0, 690, 437, 438, 439, 440, 441, 0, 1185, 0, + 0, 690, 442, 0, 444, 0, 1109, 0, 447, 0, + 406, 0, 0, 0, 0, 1203, 449, 0, 0, 0, + 0, 0, 452, 0, 0, 453, 0, 0, 454, 0, + 908, 0, 457, 0, 0, 0, 0, 407, 408, 0, + 0, 0, 564, 0, 0, 461, 462, 0, 316, 317, + 318, 0, 320, 321, 322, 323, 324, 463, 326, 327, + 328, 329, 330, 331, 332, 333, 334, 335, 336, 0, + 338, 339, 340, 0, 0, 343, 344, 345, 346, 464, + 465, 466, 0, 0, 0, 0, 0, 0, 406, 0, + 0, 0, 0, 0, 468, 469, 0, 0, 0, 0, + 409, 0, 0, 0, 410, 0, 0, 0, 0, 1236, + 0, 0, 0, 1241, 0, 407, 408, 0, 0, 58, + 0, 0, 0, 0, 0, 0, 0, 473, 474, 475, + 476, 477, 0, 478, 909, 479, 480, 481, 482, 483, + 484, 485, 486, 487, 488, 489, 910, 565, 491, 492, + 0, 0, 0, 0, 0, 0, 493, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 411, 0, 0, 0, + 412, 0, 0, 911, 497, 498, 0, 14, 409, 0, + 499, 500, 410, 0, 0, 0, 0, 0, 912, 0, + 913, 0, 503, 504, 415, 0, 1297, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 976, 978, 980, 982, 984, 986, - 988, 990, 991, 992, 0, 0, 993, 995, 997, 998, - 999, 1000, 0, 1003, 1004, 946, 1007, 1008, 1009, 1011, - 1012, 1013, 1015, 1017, 1018, 1019, 1020, 1022, 1024, 1026, - 1027, 1029, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, - 1039, 1040, 1041, 0, 1049, 0, 0, 0, 1052, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1060, 0, - 0, 0, 0, 0, 738, 739, 740, 741, 742, 0, - 0, 745, 746, 747, 748, 0, 750, 751, 752, 753, - 0, 0, 0, 0, 754, 0, 756, 757, 0, 0, - 0, 0, 760, 761, 762, 0, 0, 1086, 766, 0, - 0, 0, 0, 0, 1091, 0, 0, 0, 0, 0, - 0, 1100, 0, 0, 0, 0, 0, 0, 0, 0, - 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, - 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 768, 0, - 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, - 977, 979, 981, 983, 985, 987, 989, 0, 0, 779, - 780, 0, 994, 996, 0, 0, 0, 0, 1002, 0, - 0, 0, 0, 699, 1156, 0, 0, 1014, 1016, 0, - 429, 430, 1021, 1023, 1025, 0, 1028, 1178, 0, 688, - 435, 436, 437, 438, 439, 0, 1183, 0, 0, 688, - 440, 0, 442, 0, 1107, 0, 445, 0, 404, 0, - 0, 0, 0, 1201, 447, 0, 0, 0, 0, 0, - 450, 0, 0, 451, 0, 0, 452, 0, 906, 0, - 455, 0, 0, 0, 0, 405, 406, 0, 0, 0, - 562, 0, 0, 459, 460, 0, 314, 315, 316, 0, - 318, 319, 320, 321, 322, 461, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 0, 336, 337, - 338, 0, 0, 341, 342, 343, 344, 462, 463, 464, - 0, 0, 0, 0, 0, 0, 404, 0, 0, 0, - 0, 0, 466, 467, 0, 0, 0, 0, 407, 0, - 0, 0, 408, 0, 0, 0, 0, 1234, 0, 0, - 0, 1239, 0, 405, 406, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 471, 472, 473, 474, 475, - 0, 476, 907, 477, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 908, 563, 489, 490, 0, 0, - 0, 0, 0, 0, 491, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 409, 0, 0, 0, 410, 0, - 0, 909, 495, 496, 0, 14, 407, 0, 497, 498, - 408, 0, 0, 0, 728, 729, 910, 0, 911, 0, - 501, 502, 413, 0, 1295, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -68, 0, - 0, 0, 0, 0, 0, 0, 1309, 1310, 1311, 728, - 729, 0, 1314, 0, 0, 0, 0, 0, 0, 0, - 1320, 912, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 409, 0, 0, 0, 410, 0, 1277, 411, - 0, 545, 0, 0, 0, 0, 1338, 1339, 0, 0, - 0, 0, 0, 1343, 412, 0, 0, 0, 1107, 0, - 413, 0, 0, 0, 0, 0, 0, 0, 738, 739, - 740, 741, 1360, 0, 1362, 0, 0, 0, 748, 1365, - 750, 751, 752, 753, 0, 1368, 0, 0, 754, 1371, - 756, 757, 0, 0, 0, 730, 731, 732, 733, 734, + -68, 0, 0, 0, 0, 0, 0, 0, 1311, 1312, + 1313, 730, 731, 0, 1316, 0, 0, 0, 0, 0, + 0, 0, 1322, 914, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 411, 0, 0, 0, 412, 0, + 1301, 413, 0, 547, 0, 0, 0, 0, 1340, 1341, + 0, 0, 0, 0, 0, 1345, 414, 0, 730, 731, + 1109, 0, 415, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1362, 0, 1364, 0, 0, 0, + 0, 1367, 0, 0, 0, 0, 0, 1370, 0, 0, + 0, 1373, 0, 0, 0, 0, 0, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, - 745, 746, 747, 748, 749, 750, 751, 752, 753, 0, - 0, 0, 0, 754, 755, 756, 757, 758, 759, 1389, - 0, 760, 761, 762, 763, 764, 765, 766, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 688, 0, 774, - 775, 776, 777, 778, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 779, 780, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 767, 768, 0, 769, - 770, 771, 772, 773, 774, 775, 776, 777, 778, 179, - 0, 0, 0, 0, 0, 0, 0, 0, 779, 780, - 0, 0, 0, 501, 671, 0, 0, 0, 728, 729, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1457, 0, 1458, 0, 180, 0, 181, 1461, 182, - 183, 184, 185, 186, 0, 187, 188, 189, 190, 191, - 192, 193, 194, 195, 196, 197, 0, 198, 199, 200, - 1470, 0, 201, 202, 203, 204, 0, 0, 1477, 1478, - 1479, 0, 0, 0, 0, 1485, 0, 0, 0, 1488, - 0, 205, 206, 1492, 1493, 1494, 1495, 0, 0, 688, - 1498, 0, 688, 1502, 0, 0, 0, 0, 0, 0, - 1514, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1522, 738, 739, 740, 741, 742, 0, 0, 745, - 746, 747, 748, 0, 750, 751, 752, 753, 0, 0, - 0, 0, 754, 207, 756, 757, 0, 0, 0, 688, - 760, 761, 762, 0, 0, 0, 766, 0, 0, 0, - 0, 0, 0, 1549, 1550, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1557, 0, 0, - 0, 0, 1562, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 404, 1568, 1569, 768, 0, 769, 770, - 771, 772, 773, 774, 775, 776, 777, 778, 0, 1577, - 0, 0, 0, 0, 0, 0, 0, 779, 780, 0, - 405, 406, 501, 671, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1597, 0, 0, 0, 0, - 1599, 1600, 428, 0, 0, 429, 430, 3, 0, 431, - 432, 433, 0, 434, 0, 435, 436, 437, 438, 439, - 1615, 0, 1617, 1618, 0, 440, 441, 442, 443, 444, - 0, 445, 1622, 0, 0, 0, 0, 0, 446, 447, - 0, 0, 448, 407, 449, 450, 0, 408, 451, 0, - 8, 452, 453, 0, 454, 455, 0, 0, 456, 457, - 0, 0, 0, 0, 0, 458, 0, 0, 459, 460, - 0, 314, 315, 316, 0, 318, 319, 320, 321, 322, - 461, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 0, 336, 337, 338, 0, 0, 341, 342, - 343, 344, 462, 463, 464, 465, 0, 0, 0, 409, - 0, 0, 0, 410, 0, 1290, 411, 466, 467, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 412, 468, 469, 470, 0, 0, 413, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 471, 472, 473, 474, 475, 0, 476, 0, 477, 478, - 479, 480, 481, 482, 483, 484, 485, 486, 487, 58, - 488, 489, 490, 0, 0, 0, 0, 0, 0, 491, - 492, 493, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 494, 495, 496, 0, - 14, 0, 0, 497, 498, 0, 0, 0, 0, 0, - 0, 499, 0, 500, 428, 501, 502, 429, 430, 3, - 0, 431, 432, 433, 0, 434, 0, 435, 436, 437, - 438, 439, 0, 0, 0, 0, 0, 440, 441, 442, - 443, 444, 0, 445, 0, 0, 0, 0, 0, 0, - 446, 447, 0, 0, 448, 0, 449, 450, 0, 0, - 451, 0, 8, 452, 453, 0, 454, 455, 0, 0, - 456, 457, 0, 0, 0, 0, 0, 458, 0, 0, - 459, 460, 0, 314, 315, 316, 0, 318, 319, 320, - 321, 322, 461, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 0, 336, 337, 338, 0, 0, - 341, 342, 343, 344, 462, 463, 464, 465, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 466, - 467, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 468, 469, 470, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 471, 472, 473, 474, 475, 404, 476, 0, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 58, 488, 489, 490, 0, 0, 0, 0, 0, - 0, 491, 1335, 493, 405, 406, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 494, 495, - 496, 0, 14, 0, 0, 497, 498, 0, 0, 429, - 430, 0, 0, 499, 0, 500, 0, 501, 502, 435, - 436, 437, 438, 439, 0, 0, 0, 0, 0, 440, - 0, 442, 0, 0, 0, 445, 0, 404, 0, 0, - 0, 0, 0, 447, 0, 0, 0, 407, 0, 450, - 0, 408, 451, 0, 0, 452, 0, 0, 0, 455, - 0, 0, 0, 0, 405, 406, 0, 0, 0, 562, - 0, 0, 459, 460, 0, 314, 315, 316, 0, 318, - 319, 320, 321, 322, 461, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 0, 336, 337, 338, - 0, 0, 341, 342, 343, 344, 462, 463, 464, 0, - 0, 0, 0, 409, 0, 0, 0, 410, 0, 1296, - 411, 466, 467, 0, 0, 0, 0, 407, 0, 0, - 0, 408, 0, 0, 0, 412, 0, 0, 0, 0, - 0, 413, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 471, 472, 473, 474, 475, 404, - 476, 907, 477, 478, 479, 480, 481, 482, 483, 484, - 485, 486, 487, 908, 563, 489, 490, 0, 0, 0, - 0, 0, 0, 491, 0, 0, 405, 406, 0, 0, - 0, 0, 0, 409, 0, 0, 0, 410, 0, 0, - 909, 495, 496, 0, 14, 0, 0, 497, 498, 0, - 0, 0, 429, 430, 0, 910, 0, 919, 0, 501, - 502, 413, 435, 436, 437, 438, 439, 0, 0, 0, - 0, 0, 440, 0, 442, 0, 0, 0, 445, 0, - 594, 0, 0, 0, 0, 0, 447, 0, 0, 407, - 0, 0, 450, 408, 0, 451, 0, 0, 452, 0, - 0, 0, 455, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 562, 0, 0, 459, 460, 0, 314, 315, - 316, 0, 318, 319, 320, 321, 322, 461, 324, 325, - 326, 327, 328, 329, 330, 331, 332, 333, 334, 0, - 336, 337, 338, 0, 0, 341, 342, 343, 344, 462, - 463, 464, 0, 0, 0, 409, 0, 0, 0, 410, - 0, 1297, 411, 0, 466, 467, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 412, 0, 0, - 0, 0, 0, 413, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 471, 472, 473, - 474, 475, 404, 476, 0, 477, 478, 479, 480, 481, - 482, 483, 484, 485, 486, 487, 58, 563, 489, 490, - 0, 0, 0, 0, 0, 0, 491, 0, 0, 405, - 406, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 595, 0, 0, 494, 495, 496, 0, 14, 0, 0, - 497, 498, 0, 0, 0, 429, 430, 0, 1155, 0, - 500, 0, 501, 502, 597, 435, 436, 437, 438, 439, - 0, 0, 0, 0, 0, 440, 0, 442, 0, 0, - 0, 445, 0, 0, 0, 0, 0, 0, 0, 447, - 0, 0, 407, 0, 0, 450, 408, 0, 451, 0, - 0, 452, 0, 0, 0, 455, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 562, 0, 0, 459, 460, - 0, 314, 315, 316, 0, 318, 319, 320, 321, 322, - 461, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 0, 336, 337, 338, 0, 0, 341, 342, - 343, 344, 462, 463, 464, 0, 0, 0, 409, 0, - 0, 0, 410, 0, 1298, 411, 0, 466, 467, 0, - 0, 0, 0, 0, 0, 0, 636, 0, 0, 0, - 412, 0, 468, 469, 470, 0, 413, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 471, 472, 473, 474, 475, 404, 476, 0, 477, 478, - 479, 480, 481, 482, 483, 484, 485, 486, 487, 58, - 563, 489, 490, 0, 0, 0, 0, 0, 0, 491, - 0, 0, 405, 406, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 494, 495, 496, 0, - 14, 0, 0, 497, 498, 0, 0, 429, 430, 0, - 0, 499, 0, 500, 0, 501, 502, 435, 436, 437, - 438, 439, 0, 0, 0, 0, 0, 440, 0, 442, - 0, 0, 0, 445, 0, 0, 0, 0, 0, 0, - 0, 447, 0, 0, 0, 407, 0, 450, 0, 408, - 451, 0, 0, 452, 0, 0, 0, 455, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 562, 0, 0, - 459, 460, 0, 314, 315, 316, 0, 318, 319, 320, - 321, 322, 461, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 0, 336, 337, 338, 0, 0, - 341, 342, 343, 344, 462, 463, 464, 0, 0, 0, - 0, 409, 0, 0, 0, 410, 0, 1299, 411, 466, - 467, 0, 0, 0, 0, 0, 0, 0, 666, 0, - 0, 0, 0, 412, 468, 469, 470, 0, 0, 413, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 471, 472, 473, 474, 475, 404, 476, 0, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 58, 563, 489, 490, 0, 0, 0, 0, 0, - 0, 491, 0, 0, 405, 406, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 494, 495, - 496, 0, 14, 0, 0, 497, 498, 0, 0, 429, - 430, 0, 0, 499, 0, 500, 0, 501, 502, 435, - 436, 437, 438, 439, 0, 0, 0, 0, 0, 440, - 1507, 442, 443, 0, 0, 445, 0, 0, 0, 0, - 0, 0, 0, 447, 0, 0, 0, 407, 0, 450, - 0, 408, 451, 0, 0, 452, 453, 0, 0, 455, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 562, - 0, 0, 459, 460, 0, 314, 315, 316, 0, 318, - 319, 320, 321, 322, 461, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 0, 336, 337, 338, - 0, 0, 341, 342, 343, 344, 462, 463, 464, 1508, - 0, 0, 0, 409, 0, 0, 0, 410, 0, 1301, - 411, 466, 467, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 412, 0, 0, 0, 0, - 0, 413, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 471, 472, 473, 474, 475, 404, - 476, 0, 477, 478, 479, 480, 481, 482, 483, 484, - 485, 486, 487, 58, 563, 489, 490, 0, 0, 0, - 0, 0, 0, 491, 0, 0, 405, 406, 0, 0, + 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, + 755, 0, 0, 0, 0, 756, 757, 758, 759, 760, + 761, 1391, 0, 762, 763, 764, 765, 766, 767, 768, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 690, + 0, 0, 740, 741, 742, 743, 744, 0, 0, 747, + 0, 0, 750, 0, 752, 753, 754, 755, 0, 0, + 0, 0, 756, 0, 758, 759, 0, 0, 769, 770, + 0, 771, 772, 773, 774, 775, 776, 777, 778, 779, + 780, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 781, 782, 0, 0, 0, 503, 673, 0, 0, 0, + 730, 731, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1459, 0, 1460, 0, 0, 0, 0, + 1463, 774, 775, 776, 777, 778, 779, 780, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 781, 782, 0, + 0, 0, 1472, 0, 0, 0, 0, 0, 0, 0, + 1479, 1480, 1481, 0, 0, 0, 0, 1487, 0, 0, + 0, 1490, 0, 0, 0, 1494, 1495, 1496, 1497, 0, + 0, 690, 1500, 0, 690, 1504, 0, 0, 0, 0, + 0, 0, 1516, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1524, 740, 741, 742, 743, 744, 0, + 0, 747, 748, 749, 750, 0, 752, 753, 754, 755, + 0, 0, 0, 0, 756, 0, 758, 759, 0, 0, + 0, 690, 762, 763, 764, 0, 0, 0, 768, 0, + 0, 0, 0, 0, 0, 1551, 1552, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1559, + 0, 0, 0, 0, 1564, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 406, 1570, 1571, 770, 0, + 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, + 0, 1579, 0, 0, 0, 0, 0, 0, 0, 781, + 782, 0, 407, 408, 503, 673, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1599, 0, 0, + 0, 0, 1601, 1602, 430, 0, 0, 431, 432, 3, + 0, 433, 434, 435, 0, 436, 0, 437, 438, 439, + 440, 441, 1617, 0, 1619, 1620, 0, 442, 443, 444, + 445, 446, 0, 447, 1624, 0, 0, 0, 0, 0, + 448, 449, 0, 0, 450, 409, 451, 452, 0, 410, + 453, 0, 8, 454, 455, 0, 456, 457, 0, 0, + 458, 459, 0, 0, 0, 0, 0, 460, 0, 0, + 461, 462, 0, 316, 317, 318, 0, 320, 321, 322, + 323, 324, 463, 326, 327, 328, 329, 330, 331, 332, + 333, 334, 335, 336, 0, 338, 339, 340, 0, 0, + 343, 344, 345, 346, 464, 465, 466, 467, 0, 0, + 0, 411, 0, 0, 0, 412, 0, 1303, 413, 468, + 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 414, 470, 471, 472, 0, 0, 415, + 0, 0, 0, 0, 58, 0, 0, 0, 0, 0, + 0, 0, 473, 474, 475, 476, 477, 0, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, + 489, 59, 490, 491, 492, 0, 0, 0, 0, 0, + 0, 493, 494, 495, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 496, 497, + 498, 0, 14, 0, 0, 499, 500, 0, 0, 0, + 0, 0, 0, 501, 0, 502, 430, 503, 504, 431, + 432, 3, 0, 433, 434, 435, 0, 436, 0, 437, + 438, 439, 440, 441, 0, 0, 0, 0, 0, 442, + 443, 444, 445, 446, 0, 447, 0, 0, 0, 0, + 0, 0, 448, 449, 0, 0, 450, 0, 451, 452, + 0, 0, 453, 0, 8, 454, 455, 0, 456, 457, + 0, 0, 458, 459, 0, 0, 0, 0, 0, 460, + 0, 0, 461, 462, 0, 316, 317, 318, 0, 320, + 321, 322, 323, 324, 463, 326, 327, 328, 329, 330, + 331, 332, 333, 334, 335, 336, 0, 338, 339, 340, + 0, 0, 343, 344, 345, 346, 464, 465, 466, 467, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 494, 495, 496, 0, 14, 0, 0, 497, 498, 0, - 0, 429, 430, 0, 0, 499, 0, 500, 0, 501, - 502, 435, 436, 437, 438, 439, 0, 0, 0, 0, - 0, 440, 0, 442, 0, 0, 0, 445, 0, 0, - 0, 0, 0, 0, 0, 447, 0, 0, 0, 407, - 0, 450, 0, 408, 451, 0, 0, 452, 0, 0, - 0, 455, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 562, 0, 0, 459, 460, 0, 314, 315, 316, - 0, 318, 319, 320, 321, 322, 461, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 0, 336, - 337, 338, 0, 0, 341, 342, 343, 344, 462, 463, - 464, 0, 0, 0, 0, 409, 0, 0, 0, 410, - 0, 1302, 411, 466, 467, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 412, 468, 469, - 470, 0, 0, 413, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 471, 472, 473, 474, - 475, 404, 476, 0, 477, 478, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 58, 563, 489, 490, 0, - 0, 0, 0, 0, 0, 491, 0, 0, 405, 406, + 0, 468, 469, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 470, 471, 472, 0, + 0, 0, 0, 0, 0, 0, 58, 0, 0, 0, + 0, 0, 0, 0, 473, 474, 475, 476, 477, 406, + 478, 0, 479, 480, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 59, 490, 491, 492, 0, 0, 0, + 0, 0, 0, 493, 1337, 495, 407, 408, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 494, 495, 496, 0, 14, 0, 0, 497, - 498, 0, 0, 429, 430, 0, 0, 499, 0, 500, - 0, 501, 502, 435, 436, 437, 438, 439, 0, 0, - 0, 0, 0, 440, 0, 442, 0, 0, 404, 445, - 0, 0, 0, 0, 0, 0, 0, 447, 0, 0, - 0, 407, 0, 450, 0, 408, 451, 0, 0, 452, - 0, 0, 0, 455, 0, 405, 406, 0, 0, 0, - 0, 0, 0, 562, 0, 0, 459, 460, 0, 314, - 315, 316, 0, 318, 319, 320, 321, 322, 461, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, - 0, 336, 337, 338, 0, 0, 341, 342, 343, 344, - 462, 463, 464, 0, 0, 0, 0, 409, 0, 0, - 0, 410, 0, 1304, 411, 466, 467, 0, 407, 0, - 0, 0, 408, 0, 0, 0, 0, 0, 0, 412, - 971, 972, 973, 0, 0, 413, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 471, 472, - 473, 474, 475, 0, 476, 404, 477, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 58, 563, 489, - 490, 0, 0, 0, 0, 0, 0, 491, 0, 0, - 0, 0, 405, 406, 409, 0, 0, 0, 410, 0, - 1398, 411, 0, 0, 494, 495, 496, 0, 14, 0, - 0, 497, 498, 0, 0, 0, 412, 429, 430, 499, - 0, 500, 413, 501, 502, 704, 0, 435, 436, 437, - 438, 439, 0, 0, 0, 0, 0, 440, 0, 442, - 0, 0, 404, 445, 0, 0, 0, 0, 0, 0, - 0, 447, 0, 0, 0, 407, 0, 450, 0, 408, - 451, 705, 0, 452, 0, 0, 0, 455, 0, 405, - 406, 0, 0, 0, 0, 0, 0, 562, 0, 0, - 459, 460, 0, 314, 315, 316, 0, 318, 319, 320, - 321, 322, 461, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 0, 336, 337, 338, 0, 0, - 341, 342, 343, 344, 462, 463, 464, 0, 0, 0, - 0, 409, 0, 0, 0, 410, 0, 1399, 411, 466, - 467, 0, 407, 0, 0, 0, 408, 0, 0, 0, - 0, 0, 0, 412, 0, 0, 0, 0, 0, 413, + 496, 497, 498, 0, 14, 0, 0, 499, 500, 0, + 0, 431, 432, 0, 0, 501, 0, 502, 0, 503, + 504, 437, 438, 439, 440, 441, 0, 0, 0, 0, + 0, 442, 0, 444, 0, 0, 0, 447, 0, 406, + 0, 0, 0, 0, 0, 449, 0, 0, 0, 409, + 0, 452, 0, 410, 453, 0, 0, 454, 0, 0, + 0, 457, 0, 0, 0, 0, 407, 408, 0, 0, + 0, 564, 0, 0, 461, 462, 0, 316, 317, 318, + 0, 320, 321, 322, 323, 324, 463, 326, 327, 328, + 329, 330, 331, 332, 333, 334, 335, 336, 0, 338, + 339, 340, 0, 0, 343, 344, 345, 346, 464, 465, + 466, 0, 0, 0, 0, 411, 0, 0, 0, 412, + 0, 1304, 413, 468, 469, 0, 0, 0, 0, 409, + 0, 0, 0, 410, 0, 0, 0, 414, 0, 0, + 0, 0, 0, 415, 0, 0, 0, 0, 58, 0, + 0, 0, 0, 0, 0, 0, 473, 474, 475, 476, + 477, 406, 478, 909, 479, 480, 481, 482, 483, 484, + 485, 486, 487, 488, 489, 910, 565, 491, 492, 0, + 0, 0, 0, 0, 0, 493, 0, 0, 407, 408, + 0, 0, 0, 0, 0, 411, 0, 0, 0, 412, + 0, 0, 911, 497, 498, 0, 14, 0, 0, 499, + 500, 0, 0, 0, 431, 432, 0, 912, 0, 921, + 0, 503, 504, 415, 437, 438, 439, 440, 441, 0, + 0, 0, 0, 0, 442, 0, 444, 0, 0, 0, + 447, 0, 596, 0, 0, 0, 0, 0, 449, 0, + 0, 409, 0, 0, 452, 410, 0, 453, 0, 0, + 454, 0, 0, 0, 457, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 564, 0, 0, 461, 462, 0, + 316, 317, 318, 0, 320, 321, 322, 323, 324, 463, + 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, + 336, 0, 338, 339, 340, 0, 0, 343, 344, 345, + 346, 464, 465, 466, 0, 0, 0, 411, 0, 0, + 0, 412, 0, 1306, 413, 0, 468, 469, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 414, + 0, 0, 0, 0, 0, 415, 0, 0, 0, 0, + 0, 58, 0, 0, 0, 0, 0, 0, 0, 473, + 474, 475, 476, 477, 406, 478, 0, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 59, 565, + 491, 492, 0, 0, 0, 0, 0, 0, 493, 0, + 0, 407, 408, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 597, 0, 0, 496, 497, 498, 0, 14, + 0, 0, 499, 500, 0, 0, 0, 431, 432, 0, + 1157, 0, 502, 0, 503, 504, 599, 437, 438, 439, + 440, 441, 0, 0, 0, 0, 0, 442, 0, 444, + 0, 0, 0, 447, 0, 0, 0, 0, 0, 0, + 0, 449, 0, 0, 409, 0, 0, 452, 410, 0, + 453, 0, 0, 454, 0, 0, 0, 457, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 564, 0, 0, + 461, 462, 0, 316, 317, 318, 0, 320, 321, 322, + 323, 324, 463, 326, 327, 328, 329, 330, 331, 332, + 333, 334, 335, 336, 0, 338, 339, 340, 0, 0, + 343, 344, 345, 346, 464, 465, 466, 0, 0, 0, + 411, 0, 0, 0, 412, 0, 1400, 413, 0, 468, + 469, 0, 0, 0, 0, 0, 0, 0, 638, 0, + 0, 0, 414, 0, 470, 471, 472, 0, 415, 0, + 0, 0, 0, 0, 58, 0, 0, 0, 0, 0, + 0, 0, 473, 474, 475, 476, 477, 406, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, + 489, 59, 565, 491, 492, 0, 0, 0, 0, 0, + 0, 493, 0, 0, 407, 408, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 496, 497, + 498, 0, 14, 0, 0, 499, 500, 0, 0, 431, + 432, 0, 0, 501, 0, 502, 0, 503, 504, 437, + 438, 439, 440, 441, 0, 0, 0, 0, 0, 442, + 0, 444, 0, 0, 0, 447, 0, 0, 0, 0, + 0, 0, 0, 449, 0, 0, 0, 409, 0, 452, + 0, 410, 453, 0, 0, 454, 0, 0, 0, 457, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 564, + 0, 0, 461, 462, 0, 316, 317, 318, 0, 320, + 321, 322, 323, 324, 463, 326, 327, 328, 329, 330, + 331, 332, 333, 334, 335, 336, 0, 338, 339, 340, + 0, 0, 343, 344, 345, 346, 464, 465, 466, 0, + 0, 0, 0, 411, 0, 0, 0, 412, 0, 1401, + 413, 468, 469, 0, 0, 0, 0, 0, 0, 0, + 668, 0, 0, 0, 0, 414, 470, 471, 472, 0, + 0, 415, 0, 0, 0, 0, 58, 0, 0, 0, + 0, 0, 0, 0, 473, 474, 475, 476, 477, 406, + 478, 0, 479, 480, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 59, 565, 491, 492, 0, 0, 0, + 0, 0, 0, 493, 0, 0, 407, 408, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 471, 472, 473, 474, 475, 0, 476, 404, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 58, 563, 489, 490, 0, 0, 0, 0, 0, - 0, 491, 0, 0, 0, 0, 405, 406, 409, 0, - 0, 0, 410, 0, 1400, 411, 0, 0, 494, 495, - 496, 0, 14, 0, 0, 497, 498, 0, 0, 0, - 412, 429, 430, 499, 598, 500, 413, 501, 502, 704, - 0, 435, 436, 437, 438, 439, 0, 0, 0, 0, - 0, 440, 0, 442, 0, 0, 404, 445, 0, 0, - 0, 0, 0, 0, 0, 447, 0, 0, 0, 407, - 0, 450, 0, 408, 451, 705, 0, 452, 0, 0, - 0, 455, 0, 405, 406, 0, 0, 0, 0, 0, - 0, 562, 0, 0, 459, 460, 0, 314, 315, 316, - 0, 318, 319, 320, 321, 322, 461, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 0, 336, - 337, 338, 0, 0, 341, 342, 343, 344, 462, 463, - 464, 0, 0, 0, 0, 409, 0, 0, 0, 410, - 0, 1402, 411, 466, 467, 0, 407, 0, 0, 0, - 408, 0, 0, 0, 0, 0, 0, 412, 0, 0, - 0, 0, 0, 413, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 471, 472, 473, 474, - 475, 0, 476, 907, 477, 478, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 908, 563, 489, 490, 0, - 0, 0, 0, 0, 0, 491, 0, 0, 0, 0, - 0, 0, 409, 0, 0, 0, 410, 0, 1433, 411, - 0, 0, 494, 495, 496, 0, 14, 0, 0, 497, - 498, 0, 0, 0, 412, 429, 430, 499, 0, 500, - 413, 501, 502, 704, 0, 435, 436, 437, 438, 439, - 0, 0, 0, 0, 0, 440, 0, 442, 0, 0, - 404, 445, 0, 0, 0, 0, 0, 0, 0, 447, - 0, 0, 0, 0, 0, 450, 0, 0, 451, 705, - 0, 452, 0, 0, 0, 455, 0, 405, 406, 0, - 0, 0, 0, 0, 0, 562, 0, 0, 459, 460, - 0, 314, 315, 316, 0, 318, 319, 320, 321, 322, - 461, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 0, 336, 337, 338, 0, 0, 341, 342, - 343, 344, 462, 463, 464, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 466, 467, 0, - 407, 0, 0, 0, 408, 0, 0, 0, 0, 0, + 496, 497, 498, 0, 14, 0, 0, 499, 500, 0, + 0, 431, 432, 0, 0, 501, 0, 502, 0, 503, + 504, 437, 438, 439, 440, 441, 0, 0, 0, 0, + 0, 442, 1509, 444, 445, 0, 0, 447, 0, 0, + 0, 0, 0, 0, 0, 449, 0, 0, 0, 409, + 0, 452, 0, 410, 453, 0, 0, 454, 455, 0, + 0, 457, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 564, 0, 0, 461, 462, 0, 316, 317, 318, + 0, 320, 321, 322, 323, 324, 463, 326, 327, 328, + 329, 330, 331, 332, 333, 334, 335, 336, 0, 338, + 339, 340, 0, 0, 343, 344, 345, 346, 464, 465, + 466, 1510, 0, 0, 0, 411, 0, 0, 0, 412, + 0, 1402, 413, 468, 469, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 414, 0, 0, + 0, 0, 0, 415, 0, 0, 0, 0, 58, 0, + 0, 0, 0, 0, 0, 0, 473, 474, 475, 476, + 477, 406, 478, 0, 479, 480, 481, 482, 483, 484, + 485, 486, 487, 488, 489, 59, 565, 491, 492, 0, + 0, 0, 0, 0, 0, 493, 0, 0, 407, 408, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 496, 497, 498, 0, 14, 0, 0, 499, + 500, 0, 0, 431, 432, 0, 0, 501, 0, 502, + 0, 503, 504, 437, 438, 439, 440, 441, 0, 0, + 0, 0, 0, 442, 0, 444, 0, 0, 0, 447, + 0, 0, 0, 0, 0, 0, 0, 449, 0, 0, + 0, 409, 0, 452, 0, 410, 453, 0, 0, 454, + 0, 0, 0, 457, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 564, 0, 0, 461, 462, 0, 316, + 317, 318, 0, 320, 321, 322, 323, 324, 463, 326, + 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, + 0, 338, 339, 340, 0, 0, 343, 344, 345, 346, + 464, 465, 466, 0, 0, 0, 0, 411, 0, 0, + 0, 412, 0, 1404, 413, 468, 469, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 414, + 470, 471, 472, 0, 0, 415, 0, 0, 0, 0, + 58, 0, 0, 0, 0, 0, 0, 0, 473, 474, + 475, 476, 477, 406, 478, 0, 479, 480, 481, 482, + 483, 484, 485, 486, 487, 488, 489, 59, 565, 491, + 492, 0, 0, 0, 0, 0, 0, 493, 0, 0, + 407, 408, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 496, 497, 498, 0, 14, 0, + 0, 499, 500, 0, 0, 431, 432, 0, 0, 501, + 0, 502, 0, 503, 504, 437, 438, 439, 440, 441, + 0, 0, 0, 0, 0, 442, 0, 444, 0, 0, + 406, 447, 0, 0, 0, 0, 0, 0, 0, 449, + 0, 0, 0, 409, 0, 452, 0, 410, 453, 0, + 0, 454, 0, 0, 0, 457, 0, 407, 408, 0, + 0, 0, 0, 0, 0, 564, 0, 0, 461, 462, + 0, 316, 317, 318, 0, 320, 321, 322, 323, 324, + 463, 326, 327, 328, 329, 330, 331, 332, 333, 334, + 335, 336, 0, 338, 339, 340, 0, 0, 343, 344, + 345, 346, 464, 465, 466, 0, 0, 0, 0, 411, + 0, 0, 0, 412, 0, 1435, 413, 468, 469, 0, + 409, 0, 0, 0, 410, 0, 0, 0, 0, 0, + 0, 414, 973, 974, 975, 0, 0, 415, 0, 0, + 0, 0, 58, 0, 0, 0, 0, 0, 0, 0, + 473, 474, 475, 476, 477, 0, 478, 0, 479, 480, + 481, 482, 483, 484, 485, 486, 487, 488, 489, 59, + 565, 491, 492, 0, 0, 0, 0, 0, 0, 493, + 0, 0, 0, 0, 0, 0, 411, 0, 0, 0, + 412, 0, 1525, 413, 0, 0, 496, 497, 498, 0, + 14, 0, 0, 499, 500, 0, 0, 0, 414, 431, + 432, 501, 0, 502, 415, 503, 504, 706, 0, 437, + 438, 439, 440, 441, 0, 0, 0, 0, 0, 442, + 0, 444, 0, 0, 0, 447, 0, 0, 0, 0, + 0, 0, 0, 449, 0, 0, 0, 0, 0, 452, + 0, 0, 453, 707, 0, 454, 0, 0, 0, 457, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 564, + 0, 0, 461, 462, 0, 316, 317, 318, 0, 320, + 321, 322, 323, 324, 463, 326, 327, 328, 329, 330, + 331, 332, 333, 334, 335, 336, 0, 338, 339, 340, + 0, 0, 343, 344, 345, 346, 464, 465, 466, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 471, 472, 473, 474, 475, 0, 476, 0, 477, 478, - 479, 480, 481, 482, 483, 484, 485, 486, 487, 58, - 563, 489, 490, 0, 0, 0, 0, 0, 0, 491, - 0, 0, 0, 0, 0, 0, 409, 0, 0, 0, - 410, 0, 1523, 411, 0, 0, 494, 495, 496, 0, - 14, 0, 0, 497, 498, 0, 0, 0, 412, 429, - 430, 499, 821, 500, 413, 501, 502, 704, 0, 435, - 436, 437, 438, 439, 0, 0, 0, 0, 0, 440, - 0, 442, 0, 0, 0, 445, 0, 0, 0, 0, - 0, 0, 0, 447, 0, 0, 0, 0, 0, 450, - 0, 0, 451, 705, 0, 452, 0, 0, 0, 455, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 562, - 0, 0, 459, 460, 0, 314, 315, 316, 0, 318, - 319, 320, 321, 322, 461, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 0, 336, 337, 338, - 0, 0, 341, 342, 343, 344, 462, 463, 464, 0, + 0, 468, 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 466, 467, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 58, 0, 0, 0, + 0, 0, 0, 0, 473, 474, 475, 476, 477, 0, + 478, 0, 479, 480, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 59, 565, 491, 492, 0, 0, 0, + 0, 0, 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 496, 497, 498, 0, 14, 0, 0, 499, 500, 0, + 0, 0, 0, 431, 432, 501, 600, 502, 0, 503, + 504, 706, 0, 437, 438, 439, 440, 441, 0, 0, + 0, 0, 0, 442, 0, 444, 0, 0, 0, 447, + 0, 0, 0, 0, 0, 0, 0, 449, 0, 0, + 0, 0, 0, 452, 0, 0, 453, 707, 0, 454, + 0, 0, 0, 457, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 564, 0, 0, 461, 462, 0, 316, + 317, 318, 0, 320, 321, 322, 323, 324, 463, 326, + 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, + 0, 338, 339, 340, 0, 0, 343, 344, 345, 346, + 464, 465, 466, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 468, 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 471, 472, 473, 474, 475, 0, - 476, 0, 477, 478, 479, 480, 481, 482, 483, 484, - 485, 486, 487, 58, 563, 489, 490, 0, 0, 0, - 0, 0, 0, 491, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 494, 495, 496, 0, 14, 0, 0, 497, 498, 0, - 0, 429, 430, 0, 0, 499, 0, 500, 0, 501, - 502, 435, 436, 437, 438, 439, 0, 0, 0, 0, - 0, 440, 0, 442, 0, 0, 0, 445, 0, 0, - 0, 0, 0, 0, 0, 447, 0, 0, 0, 0, - 0, 450, 0, 0, 451, 0, 0, 452, 0, 0, - 0, 455, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 562, 0, 0, 459, 460, 0, 314, 315, 316, - 0, 318, 319, 320, 321, 322, 461, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 0, 336, - 337, 338, 0, 0, 341, 342, 343, 344, 462, 463, - 464, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 466, 467, 0, 0, 0, 0, 0, + 58, 0, 0, 0, 0, 0, 0, 0, 473, 474, + 475, 476, 477, 0, 478, 909, 479, 480, 481, 482, + 483, 484, 485, 486, 487, 488, 489, 910, 565, 491, + 492, 0, 0, 0, 0, 0, 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 496, 497, 498, 0, 14, 0, + 0, 499, 500, 0, 0, 0, 0, 431, 432, 501, + 0, 502, 0, 503, 504, 706, 0, 437, 438, 439, + 440, 441, 0, 0, 0, 0, 0, 442, 0, 444, + 0, 0, 0, 447, 0, 0, 0, 0, 0, 0, + 0, 449, 0, 0, 0, 0, 0, 452, 0, 0, + 453, 707, 0, 454, 0, 0, 0, 457, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 564, 0, 0, + 461, 462, 0, 316, 317, 318, 0, 320, 321, 322, + 323, 324, 463, 326, 327, 328, 329, 330, 331, 332, + 333, 334, 335, 336, 0, 338, 339, 340, 0, 0, + 343, 344, 345, 346, 464, 465, 466, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 468, + 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 471, 472, 473, 474, - 475, 0, 476, 907, 477, 478, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 908, 563, 489, 490, 0, - 0, 0, 0, 0, 0, 491, 0, 0, 0, 0, + 0, 0, 0, 0, 58, 0, 0, 0, 0, 0, + 0, 0, 473, 474, 475, 476, 477, 0, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, + 489, 59, 565, 491, 492, 0, 0, 0, 0, 0, + 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 496, 497, + 498, 0, 14, 0, 0, 499, 500, 0, 0, 0, + 0, 431, 432, 501, 823, 502, 0, 503, 504, 706, + 0, 437, 438, 439, 440, 441, 0, 0, 0, 0, + 0, 442, 0, 444, 0, 0, 0, 447, 0, 0, + 0, 0, 0, 0, 0, 449, 0, 0, 0, 0, + 0, 452, 0, 0, 453, 707, 0, 454, 0, 0, + 0, 457, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 564, 0, 0, 461, 462, 0, 316, 317, 318, + 0, 320, 321, 322, 323, 324, 463, 326, 327, 328, + 329, 330, 331, 332, 333, 334, 335, 336, 0, 338, + 339, 340, 0, 0, 343, 344, 345, 346, 464, 465, + 466, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 468, 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 494, 495, 496, 0, 14, 0, 0, 497, - 498, 0, 0, 429, 430, 0, 0, 951, 0, 500, - 952, 501, 502, 435, 436, 437, 438, 439, 0, 0, - 0, 0, 0, 440, 0, 442, 0, 0, 0, 445, - 0, 0, 0, 0, 0, 0, 0, 447, 0, 0, - 0, 0, 0, 450, 0, 0, 451, 0, 0, 452, - 0, 0, 0, 455, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 562, 0, 0, 459, 460, 0, 314, - 315, 316, 0, 318, 319, 320, 321, 322, 461, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, - 0, 336, 337, 338, 0, 0, 341, 342, 343, 344, - 462, 463, 464, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 466, 467, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 58, 0, + 0, 0, 0, 0, 0, 0, 473, 474, 475, 476, + 477, 0, 478, 0, 479, 480, 481, 482, 483, 484, + 485, 486, 487, 488, 489, 59, 565, 491, 492, 0, + 0, 0, 0, 0, 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 496, 497, 498, 0, 14, 0, 0, 499, + 500, 0, 0, 431, 432, 0, 0, 501, 0, 502, + 0, 503, 504, 437, 438, 439, 440, 441, 0, 0, + 0, 0, 0, 442, 0, 444, 0, 0, 0, 447, + 0, 0, 0, 0, 0, 0, 0, 449, 0, 0, + 0, 0, 0, 452, 0, 0, 453, 0, 0, 454, + 0, 0, 0, 457, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 564, 0, 0, 461, 462, 0, 316, + 317, 318, 0, 320, 321, 322, 323, 324, 463, 326, + 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, + 0, 338, 339, 340, 0, 0, 343, 344, 345, 346, + 464, 465, 466, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 468, 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 471, 472, - 473, 474, 475, 0, 476, 0, 477, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 58, 563, 489, - 490, 0, 0, 0, 0, 0, 0, 491, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 494, 495, 496, 0, 14, 0, - 0, 497, 498, 0, 0, 429, 430, 0, 0, 499, - 598, 500, 0, 501, 502, 435, 436, 437, 438, 439, - 0, 0, 0, 0, 0, 440, 0, 442, 0, 0, - 0, 445, 0, 0, 0, 0, 0, 0, 0, 447, - 0, 0, 0, 0, 0, 450, 0, 0, 451, 0, - 0, 452, 0, 0, 0, 455, 0, 0, 0, 0, - 0, 644, 0, 0, 0, 562, 0, 0, 459, 460, - 0, 314, 315, 316, 0, 318, 319, 320, 321, 322, - 461, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 0, 336, 337, 338, 0, 0, 341, 342, - 343, 344, 462, 463, 464, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 466, 467, 0, + 58, 0, 0, 0, 0, 0, 0, 0, 473, 474, + 475, 476, 477, 0, 478, 909, 479, 480, 481, 482, + 483, 484, 485, 486, 487, 488, 489, 910, 565, 491, + 492, 0, 0, 0, 0, 0, 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 496, 497, 498, 0, 14, 0, + 0, 499, 500, 0, 0, 431, 432, 0, 0, 953, + 0, 502, 954, 503, 504, 437, 438, 439, 440, 441, + 0, 0, 0, 0, 0, 442, 0, 444, 0, 0, + 0, 447, 0, 0, 0, 0, 0, 0, 0, 449, + 0, 0, 0, 0, 0, 452, 0, 0, 453, 0, + 0, 454, 0, 0, 0, 457, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 564, 0, 0, 461, 462, + 0, 316, 317, 318, 0, 320, 321, 322, 323, 324, + 463, 326, 327, 328, 329, 330, 331, 332, 333, 334, + 335, 336, 0, 338, 339, 340, 0, 0, 343, 344, + 345, 346, 464, 465, 466, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 468, 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 471, 472, 473, 474, 475, 0, 476, 0, 477, 478, - 479, 480, 481, 482, 483, 484, 485, 486, 487, 58, - 563, 489, 490, 0, 0, 0, 0, 0, 0, 491, + 0, 0, 58, 0, 0, 0, 0, 0, 0, 0, + 473, 474, 475, 476, 477, 0, 478, 0, 479, 480, + 481, 482, 483, 484, 485, 486, 487, 488, 489, 59, + 565, 491, 492, 0, 0, 0, 0, 0, 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 494, 495, 496, 0, - 14, 0, 0, 497, 498, 0, 0, 429, 430, 0, - 0, 499, 0, 500, 0, 501, 502, 435, 436, 437, - 438, 439, 0, 0, 0, 0, 0, 440, 0, 442, - 0, 0, 0, 445, 0, 0, 0, 0, 0, 0, - 0, 447, 0, 0, 0, 0, 0, 450, 0, 0, - 451, 0, 0, 452, 0, 0, 0, 455, 0, 0, - 655, 0, 0, 0, 0, 0, 0, 562, 0, 0, - 459, 460, 0, 314, 315, 316, 0, 318, 319, 320, - 321, 322, 461, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 0, 336, 337, 338, 0, 0, - 341, 342, 343, 344, 462, 463, 464, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 466, - 467, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 496, 497, 498, 0, + 14, 0, 0, 499, 500, 0, 0, 431, 432, 0, + 0, 501, 600, 502, 0, 503, 504, 437, 438, 439, + 440, 441, 0, 0, 0, 0, 0, 442, 0, 444, + 0, 0, 0, 447, 0, 0, 0, 0, 0, 0, + 0, 449, 0, 0, 0, 0, 0, 452, 0, 0, + 453, 0, 0, 454, 0, 0, 0, 457, 0, 0, + 0, 0, 0, 646, 0, 0, 0, 564, 0, 0, + 461, 462, 0, 316, 317, 318, 0, 320, 321, 322, + 323, 324, 463, 326, 327, 328, 329, 330, 331, 332, + 333, 334, 335, 336, 0, 338, 339, 340, 0, 0, + 343, 344, 345, 346, 464, 465, 466, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 468, + 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 58, 0, 0, 0, 0, 0, + 0, 0, 473, 474, 475, 476, 477, 0, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, + 489, 59, 565, 491, 492, 0, 0, 0, 0, 0, + 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 496, 497, + 498, 0, 14, 0, 0, 499, 500, 0, 0, 431, + 432, 0, 0, 501, 0, 502, 0, 503, 504, 437, + 438, 439, 440, 441, 0, 0, 0, 0, 0, 442, + 0, 444, 0, 0, 0, 447, 0, 0, 0, 0, + 0, 0, 0, 449, 0, 0, 0, 0, 0, 452, + 0, 0, 453, 0, 0, 454, 0, 0, 0, 457, + 0, 0, 657, 0, 0, 0, 0, 0, 0, 564, + 0, 0, 461, 462, 0, 316, 317, 318, 0, 320, + 321, 322, 323, 324, 463, 326, 327, 328, 329, 330, + 331, 332, 333, 334, 335, 336, 0, 338, 339, 340, + 0, 0, 343, 344, 345, 346, 464, 465, 466, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 471, 472, 473, 474, 475, 0, 476, 0, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 58, 563, 489, 490, 0, 0, 0, 0, 0, - 0, 491, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 494, 495, - 496, 0, 14, 0, 0, 497, 498, 0, 0, 0, - 0, 429, 430, 499, 0, 500, 0, 501, 502, 687, - 0, 435, 436, 437, 438, 439, 0, 0, 0, 0, - 0, 440, 0, 442, 0, 0, 0, 445, 0, 0, - 0, 0, 0, 0, 0, 447, 0, 0, 0, 0, - 0, 450, 0, 0, 451, 0, 0, 452, 0, 0, - 0, 455, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 562, 0, 0, 459, 460, 0, 314, 315, 316, - 0, 318, 319, 320, 321, 322, 461, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 0, 336, - 337, 338, 0, 0, 341, 342, 343, 344, 462, 463, - 464, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 466, 467, 0, 0, 0, 0, 0, + 0, 468, 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 58, 0, 0, 0, + 0, 0, 0, 0, 473, 474, 475, 476, 477, 0, + 478, 0, 479, 480, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 59, 565, 491, 492, 0, 0, 0, + 0, 0, 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 471, 472, 473, 474, - 475, 0, 476, 0, 477, 478, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 58, 563, 489, 490, 0, - 0, 0, 0, 0, 0, 491, 0, 0, 0, 0, + 496, 497, 498, 0, 14, 0, 0, 499, 500, 0, + 0, 0, 0, 431, 432, 501, 0, 502, 0, 503, + 504, 689, 0, 437, 438, 439, 440, 441, 0, 0, + 0, 0, 0, 442, 0, 444, 0, 0, 0, 447, + 0, 0, 0, 0, 0, 0, 0, 449, 0, 0, + 0, 0, 0, 452, 0, 0, 453, 0, 0, 454, + 0, 0, 0, 457, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 564, 0, 0, 461, 462, 0, 316, + 317, 318, 0, 320, 321, 322, 323, 324, 463, 326, + 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, + 0, 338, 339, 340, 0, 0, 343, 344, 345, 346, + 464, 465, 466, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 468, 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 494, 495, 496, 0, 14, 0, 0, 497, - 498, 0, 0, 429, 430, 0, 0, 499, 0, 500, - 0, 501, 502, 435, 436, 437, 438, 439, 0, 0, - 0, 0, 0, 440, 0, 442, 0, 0, 0, 445, - 0, 0, 0, 0, 0, 0, 0, 447, 0, 0, - 0, 0, 0, 450, 0, 0, 451, 0, 0, 452, - 0, 0, 0, 455, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 562, 0, 0, 459, 460, 0, 314, - 315, 316, 0, 318, 319, 320, 321, 322, 461, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, - 0, 336, 337, 338, 0, 0, 341, 342, 343, 344, - 462, 463, 464, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 466, 467, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 58, 0, 0, 0, 0, 0, 0, 0, 473, 474, + 475, 476, 477, 0, 478, 0, 479, 480, 481, 482, + 483, 484, 485, 486, 487, 488, 489, 59, 565, 491, + 492, 0, 0, 0, 0, 0, 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 471, 472, - 473, 474, 475, 0, 476, 0, 477, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 58, 563, 489, - 490, 0, 0, 0, 0, 0, 0, 491, 0, 0, + 0, 0, 0, 0, 496, 497, 498, 0, 14, 0, + 0, 499, 500, 0, 0, 431, 432, 0, 0, 501, + 0, 502, 0, 503, 504, 437, 438, 439, 440, 441, + 0, 0, 0, 0, 0, 442, 0, 444, 0, 0, + 0, 447, 0, 0, 0, 0, 0, 0, 0, 449, + 0, 0, 0, 0, 0, 452, 0, 0, 453, 0, + 0, 454, 0, 0, 0, 457, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 564, 0, 0, 461, 462, + 0, 316, 317, 318, 0, 320, 321, 322, 323, 324, + 463, 326, 327, 328, 329, 330, 331, 332, 333, 334, + 335, 336, 0, 338, 339, 340, 0, 0, 343, 344, + 345, 346, 464, 465, 466, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 468, 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 691, 0, 494, 495, 496, 0, 14, 0, - 0, 497, 498, 0, 0, 0, 0, 429, 430, 499, - 0, 500, 0, 501, 502, 695, 0, 435, 436, 437, - 438, 439, 0, 0, 0, 0, 0, 440, 0, 442, - 0, 0, 0, 445, 0, 0, 0, 0, 0, 0, - 0, 447, 0, 0, 0, 0, 0, 450, 0, 0, - 451, 0, 0, 452, 0, 0, 0, 455, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 562, 0, 0, - 459, 460, 0, 314, 315, 316, 0, 318, 319, 320, - 321, 322, 461, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 0, 336, 337, 338, 0, 0, - 341, 342, 343, 344, 462, 463, 464, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 466, - 467, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 58, 0, 0, 0, 0, 0, 0, 0, + 473, 474, 475, 476, 477, 0, 478, 0, 479, 480, + 481, 482, 483, 484, 485, 486, 487, 488, 489, 59, + 565, 491, 492, 0, 0, 0, 0, 0, 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 471, 472, 473, 474, 475, 0, 476, 0, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 58, 563, 489, 490, 0, 0, 0, 0, 0, - 0, 491, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 494, 495, - 496, 0, 14, 0, 0, 497, 498, 0, 0, 429, - 430, 0, 0, 499, 0, 500, 0, 501, 502, 435, - 436, 437, 438, 439, 0, 0, 1030, 0, 0, 440, - 0, 442, 0, 0, 0, 445, 0, 0, 0, 0, - 0, 0, 0, 447, 0, 0, 0, 0, 0, 450, - 0, 0, 451, 0, 0, 452, 0, 0, 0, 455, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 562, - 0, 0, 459, 460, 0, 314, 315, 316, 0, 318, - 319, 320, 321, 322, 461, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 0, 336, 337, 338, - 0, 0, 341, 342, 343, 344, 462, 463, 464, 0, + 0, 0, 0, 0, 693, 0, 496, 497, 498, 0, + 14, 0, 0, 499, 500, 0, 0, 0, 0, 431, + 432, 501, 0, 502, 0, 503, 504, 697, 0, 437, + 438, 439, 440, 441, 0, 0, 0, 0, 0, 442, + 0, 444, 0, 0, 0, 447, 0, 0, 0, 0, + 0, 0, 0, 449, 0, 0, 0, 0, 0, 452, + 0, 0, 453, 0, 0, 454, 0, 0, 0, 457, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 564, + 0, 0, 461, 462, 0, 316, 317, 318, 0, 320, + 321, 322, 323, 324, 463, 326, 327, 328, 329, 330, + 331, 332, 333, 334, 335, 336, 0, 338, 339, 340, + 0, 0, 343, 344, 345, 346, 464, 465, 466, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 466, 467, 0, 0, 0, 0, 0, 0, 0, + 0, 468, 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 58, 0, 0, 0, + 0, 0, 0, 0, 473, 474, 475, 476, 477, 0, + 478, 0, 479, 480, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 59, 565, 491, 492, 0, 0, 0, + 0, 0, 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 471, 472, 473, 474, 475, 0, - 476, 0, 477, 478, 479, 480, 481, 482, 483, 484, - 485, 486, 487, 58, 563, 489, 490, 0, 0, 0, - 0, 0, 0, 491, 0, 0, 0, 0, 0, 0, + 496, 497, 498, 0, 14, 0, 0, 499, 500, 0, + 0, 431, 432, 0, 0, 501, 0, 502, 0, 503, + 504, 437, 438, 439, 440, 441, 0, 0, 1032, 0, + 0, 442, 0, 444, 0, 0, 0, 447, 0, 0, + 0, 0, 0, 0, 0, 449, 0, 0, 0, 0, + 0, 452, 0, 0, 453, 0, 0, 454, 0, 0, + 0, 457, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 564, 0, 0, 461, 462, 0, 316, 317, 318, + 0, 320, 321, 322, 323, 324, 463, 326, 327, 328, + 329, 330, 331, 332, 333, 334, 335, 336, 0, 338, + 339, 340, 0, 0, 343, 344, 345, 346, 464, 465, + 466, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 468, 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 494, 495, 496, 0, 14, 0, 0, 497, 498, 0, - 0, 429, 430, 0, 0, 499, 0, 500, 0, 501, - 502, 435, 436, 437, 438, 439, 0, 0, 0, 0, - 0, 440, 0, 442, 0, 0, 0, 445, 0, 0, - 0, 0, 0, 0, 0, 447, 0, 0, 0, 0, - 0, 450, 0, 0, 451, 0, 0, 452, 0, 0, - 0, 455, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 562, 0, 0, 459, 460, 0, 314, 315, 316, - 0, 318, 319, 320, 321, 322, 461, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 0, 336, - 337, 338, 0, 0, 341, 342, 343, 344, 462, 463, - 464, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 466, 467, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 58, 0, + 0, 0, 0, 0, 0, 0, 473, 474, 475, 476, + 477, 0, 478, 0, 479, 480, 481, 482, 483, 484, + 485, 486, 487, 488, 489, 59, 565, 491, 492, 0, + 0, 0, 0, 0, 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 496, 497, 498, 0, 14, 0, 0, 499, + 500, 0, 0, 431, 432, 0, 0, 501, 0, 502, + 0, 503, 504, 437, 438, 439, 440, 441, 0, 0, + 0, 0, 0, 442, 0, 444, 0, 0, 0, 447, + 0, 0, 0, 0, 0, 0, 0, 449, 0, 0, + 0, 0, 0, 452, 0, 0, 453, 0, 0, 454, + 0, 0, 0, 457, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 564, 0, 0, 461, 462, 0, 316, + 317, 318, 0, 320, 321, 322, 323, 324, 463, 326, + 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, + 0, 338, 339, 340, 0, 0, 343, 344, 345, 346, + 464, 465, 466, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 468, 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 471, 472, 473, 474, - 475, 0, 476, 0, 477, 478, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 58, 563, 489, 490, 0, - 0, 0, 0, 0, 0, 491, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 494, 495, 496, 0, 14, 0, 0, 497, - 498, 0, 0, 429, 430, 0, 0, 499, 0, 500, - 1050, 501, 502, 435, 436, 437, 438, 439, 0, 0, - 0, 0, 0, 440, 0, 442, 0, 0, 0, 445, - 0, 0, 0, 0, 0, 0, 0, 447, 0, 0, - 0, 0, 0, 450, 0, 0, 451, 0, 0, 452, - 0, 0, 0, 455, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 562, 0, 0, 459, 460, 1096, 314, - 315, 316, 0, 318, 319, 320, 321, 322, 461, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, - 0, 336, 337, 338, 0, 0, 341, 342, 343, 344, - 462, 463, 464, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 466, 467, 0, 0, 0, + 58, 0, 0, 0, 0, 0, 0, 0, 473, 474, + 475, 476, 477, 0, 478, 0, 479, 480, 481, 482, + 483, 484, 485, 486, 487, 488, 489, 59, 565, 491, + 492, 0, 0, 0, 0, 0, 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 496, 497, 498, 0, 14, 0, + 0, 499, 500, 0, 0, 431, 432, 0, 0, 501, + 0, 502, 1052, 503, 504, 437, 438, 439, 440, 441, + 0, 0, 0, 0, 0, 442, 0, 444, 0, 0, + 0, 447, 0, 0, 0, 0, 0, 0, 0, 449, + 0, 0, 0, 0, 0, 452, 0, 0, 453, 0, + 0, 454, 0, 0, 0, 457, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 564, 0, 0, 461, 462, + 1098, 316, 317, 318, 0, 320, 321, 322, 323, 324, + 463, 326, 327, 328, 329, 330, 331, 332, 333, 334, + 335, 336, 0, 338, 339, 340, 0, 0, 343, 344, + 345, 346, 464, 465, 466, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 468, 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 471, 472, - 473, 474, 475, 0, 476, 0, 477, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 58, 563, 489, - 490, 0, 0, 0, 0, 0, 0, 491, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 494, 495, 496, 0, 14, 0, - 0, 497, 498, 0, 0, 429, 430, 0, 0, 499, - 0, 500, 0, 501, 502, 435, 436, 437, 438, 439, - 0, 0, 0, 0, 0, 440, 0, 442, 0, 0, - 0, 445, 0, 0, 0, 0, 0, 0, 0, 447, - 0, 0, 0, 0, 0, 450, 0, 0, 451, 0, - 0, 452, 0, 0, 0, 455, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 562, 0, 0, 459, 460, - 0, 314, 315, 316, 0, 318, 319, 320, 321, 322, - 461, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 0, 336, 337, 338, 0, 0, 341, 342, - 343, 344, 462, 463, 464, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 466, 467, 0, + 0, 0, 58, 0, 0, 0, 0, 0, 0, 0, + 473, 474, 475, 476, 477, 0, 478, 0, 479, 480, + 481, 482, 483, 484, 485, 486, 487, 488, 489, 59, + 565, 491, 492, 0, 0, 0, 0, 0, 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 496, 497, 498, 0, + 14, 0, 0, 499, 500, 0, 0, 431, 432, 0, + 0, 501, 0, 502, 0, 503, 504, 437, 438, 439, + 440, 441, 0, 0, 0, 0, 0, 442, 0, 444, + 0, 0, 0, 447, 0, 0, 0, 0, 0, 0, + 0, 449, 0, 0, 0, 0, 0, 452, 0, 0, + 453, 0, 0, 454, 0, 0, 0, 457, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 564, 0, 0, + 461, 462, 0, 316, 317, 318, 0, 320, 321, 322, + 323, 324, 463, 326, 327, 328, 329, 330, 331, 332, + 333, 334, 335, 336, 0, 338, 339, 340, 0, 0, + 343, 344, 345, 346, 464, 465, 466, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 468, + 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 58, 0, 0, 0, 0, 0, + 0, 0, 473, 474, 475, 476, 477, 0, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, + 489, 59, 565, 491, 492, 0, 0, 0, 0, 0, + 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1101, 0, 496, 497, + 498, 0, 14, 0, 0, 499, 500, 0, 0, 431, + 432, 0, 0, 501, 0, 502, 0, 503, 504, 437, + 438, 439, 440, 441, 0, 0, 0, 0, 0, 442, + 0, 444, 0, 0, 0, 447, 0, 0, 0, 0, + 0, 0, 0, 449, 0, 0, 0, 0, 0, 452, + 0, 0, 453, 0, 0, 454, 0, 0, 0, 457, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 564, + 0, 0, 461, 462, 0, 316, 317, 318, 0, 320, + 321, 322, 323, 324, 463, 326, 327, 328, 329, 330, + 331, 332, 333, 334, 335, 336, 0, 338, 339, 340, + 0, 0, 343, 344, 345, 346, 464, 465, 466, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 471, 472, 473, 474, 475, 0, 476, 0, 477, 478, - 479, 480, 481, 482, 483, 484, 485, 486, 487, 58, - 563, 489, 490, 0, 0, 0, 0, 0, 0, 491, + 0, 468, 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1099, 0, 494, 495, 496, 0, - 14, 0, 0, 497, 498, 0, 0, 429, 430, 0, - 0, 499, 0, 500, 0, 501, 502, 435, 436, 437, - 438, 439, 0, 0, 0, 0, 0, 440, 0, 442, - 0, 0, 0, 445, 0, 0, 0, 0, 0, 0, - 0, 447, 0, 0, 0, 0, 0, 450, 0, 0, - 451, 0, 0, 452, 0, 0, 0, 455, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 562, 0, 0, - 459, 460, 0, 314, 315, 316, 0, 318, 319, 320, - 321, 322, 461, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 0, 336, 337, 338, 0, 0, - 341, 342, 343, 344, 462, 463, 464, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 466, - 467, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 58, 0, 0, 0, + 0, 0, 0, 0, 473, 474, 475, 476, 477, 0, + 478, 0, 479, 480, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 59, 565, 491, 492, 0, 0, 0, + 0, 0, 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 496, 497, 498, 0, 14, 0, 0, 499, 500, 0, + 0, 431, 432, 0, 0, 501, 0, 502, 1159, 503, + 504, 437, 438, 439, 440, 441, 0, 0, 0, 0, + 0, 442, 0, 444, 0, 0, 0, 447, 0, 0, + 0, 0, 0, 0, 0, 449, 0, 0, 0, 0, + 0, 452, 0, 0, 453, 0, 0, 454, 0, 0, + 0, 457, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 564, 0, 0, 461, 462, 0, 316, 317, 318, + 0, 320, 321, 322, 323, 324, 463, 326, 327, 328, + 329, 330, 331, 332, 333, 334, 335, 336, 0, 338, + 339, 340, 0, 0, 343, 344, 345, 346, 464, 465, + 466, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 468, 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 471, 472, 473, 474, 475, 0, 476, 0, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 58, 563, 489, 490, 0, 0, 0, 0, 0, - 0, 491, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 494, 495, - 496, 0, 14, 0, 0, 497, 498, 0, 0, 429, - 430, 0, 0, 499, 0, 500, 1157, 501, 502, 435, - 436, 437, 438, 439, 0, 0, 0, 0, 0, 440, - 0, 442, 0, 0, 0, 445, 0, 0, 0, 0, - 0, 0, 0, 447, 0, 0, 0, 0, 0, 450, - 0, 0, 451, 0, 0, 452, 0, 0, 0, 455, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 562, - 0, 0, 459, 460, 0, 314, 315, 316, 0, 318, - 319, 320, 321, 322, 461, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 0, 336, 337, 338, - 0, 0, 341, 342, 343, 344, 462, 463, 464, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 58, 0, + 0, 0, 0, 0, 0, 0, 473, 474, 475, 476, + 477, 0, 478, 0, 479, 480, 481, 482, 483, 484, + 485, 486, 487, 488, 489, 59, 565, 491, 492, 0, + 0, 0, 0, 0, 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 466, 467, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 496, 497, 498, 0, 14, 0, 0, 499, + 500, 0, 0, 431, 432, 0, 0, 501, 0, 502, + 1174, 503, 504, 437, 438, 439, 440, 441, 0, 0, + 0, 0, 0, 442, 0, 444, 0, 0, 0, 447, + 0, 0, 0, 0, 0, 0, 0, 449, 0, 0, + 0, 0, 0, 452, 0, 0, 453, 0, 0, 454, + 0, 0, 0, 457, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 564, 0, 0, 461, 462, 0, 316, + 317, 318, 0, 320, 321, 322, 323, 324, 463, 326, + 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, + 0, 338, 339, 340, 0, 0, 343, 344, 345, 346, + 464, 465, 466, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 468, 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 471, 472, 473, 474, 475, 0, - 476, 0, 477, 478, 479, 480, 481, 482, 483, 484, - 485, 486, 487, 58, 563, 489, 490, 0, 0, 0, - 0, 0, 0, 491, 0, 0, 0, 0, 0, 0, + 58, 0, 0, 0, 0, 0, 0, 0, 473, 474, + 475, 476, 477, 0, 478, 0, 479, 480, 481, 482, + 483, 484, 485, 486, 487, 488, 489, 59, 565, 491, + 492, 0, 0, 0, 0, 0, 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 494, 495, 496, 0, 14, 0, 0, 497, 498, 0, - 0, 429, 430, 0, 0, 499, 0, 500, 1172, 501, - 502, 435, 436, 437, 438, 439, 0, 0, 0, 0, - 0, 440, 0, 442, 0, 0, 0, 445, 0, 0, - 0, 0, 0, 0, 0, 447, 0, 0, 0, 0, - 0, 450, 0, 0, 451, 0, 0, 452, 0, 0, - 0, 455, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 562, 0, 0, 459, 460, 0, 314, 315, 316, - 0, 318, 319, 320, 321, 322, 461, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 0, 336, - 337, 338, 0, 0, 341, 342, 343, 344, 462, 463, - 464, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 466, 467, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 496, 497, 498, 0, 14, 0, + 0, 499, 500, 0, 0, 431, 432, 0, 0, 501, + 0, 502, 1365, 503, 504, 437, 438, 439, 440, 441, + 0, 0, 0, 0, 0, 442, 0, 444, 0, 0, + 0, 447, 0, 0, 0, 0, 0, 0, 0, 449, + 0, 0, 0, 0, 0, 452, 0, 0, 453, 0, + 0, 454, 0, 0, 0, 457, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 564, 0, 0, 461, 462, + 0, 316, 317, 318, 0, 320, 321, 322, 323, 324, + 463, 326, 327, 328, 329, 330, 331, 332, 333, 334, + 335, 336, 0, 338, 339, 340, 0, 0, 343, 344, + 345, 346, 464, 465, 466, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 468, 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 471, 472, 473, 474, - 475, 0, 476, 0, 477, 478, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 58, 563, 489, 490, 0, - 0, 0, 0, 0, 0, 491, 0, 0, 0, 0, + 0, 0, 58, 0, 0, 0, 0, 0, 0, 0, + 473, 474, 475, 476, 477, 0, 478, 0, 479, 480, + 481, 482, 483, 484, 485, 486, 487, 488, 489, 59, + 565, 491, 492, 0, 0, 0, 0, 0, 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 494, 495, 496, 0, 14, 0, 0, 497, - 498, 0, 0, 429, 430, 0, 0, 499, 0, 500, - 1363, 501, 502, 435, 436, 437, 438, 439, 0, 0, - 0, 0, 0, 440, 0, 442, 0, 0, 0, 445, - 0, 0, 0, 0, 0, 0, 0, 447, 0, 0, - 0, 0, 0, 450, 0, 0, 451, 0, 0, 452, - 0, 0, 0, 455, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 562, 0, 0, 459, 460, 0, 314, - 315, 316, 0, 318, 319, 320, 321, 322, 461, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, - 0, 336, 337, 338, 0, 0, 341, 342, 343, 344, - 462, 463, 464, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 466, 467, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 496, 497, 498, 0, + 14, 0, 0, 499, 500, 0, 0, 431, 432, 0, + 0, 501, 0, 502, 1374, 503, 504, 437, 438, 439, + 440, 441, 0, 0, 0, 0, 0, 442, 0, 444, + 0, 0, 0, 447, 0, 0, 0, 0, 0, 0, + 0, 449, 0, 0, 0, 0, 0, 452, 0, 0, + 453, 0, 0, 454, 0, 0, 0, 457, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 564, 0, 0, + 461, 462, 0, 316, 317, 318, 0, 320, 321, 322, + 323, 324, 463, 326, 327, 328, 329, 330, 331, 332, + 333, 334, 335, 336, 0, 338, 339, 340, 0, 0, + 343, 344, 345, 346, 464, 465, 466, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 468, + 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 58, 0, 0, 0, 0, 0, + 0, 0, 473, 474, 475, 476, 477, 0, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, + 489, 59, 565, 491, 492, 0, 0, 0, 0, 0, + 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 496, 497, + 498, 0, 14, 0, 0, 499, 500, 0, 0, 431, + 432, 0, 0, 501, 0, 502, 1415, 503, 504, 437, + 438, 439, 440, 441, 0, 0, 0, 0, 0, 442, + 0, 444, 0, 0, 0, 447, 0, 0, 0, 0, + 0, 0, 0, 449, 0, 0, 0, 0, 0, 452, + 0, 0, 453, 0, 0, 454, 0, 0, 0, 457, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 564, + 0, 0, 461, 462, 0, 316, 317, 318, 0, 320, + 321, 322, 323, 324, 463, 326, 327, 328, 329, 330, + 331, 332, 333, 334, 335, 336, 0, 338, 339, 340, + 0, 0, 343, 344, 345, 346, 464, 465, 466, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 471, 472, - 473, 474, 475, 0, 476, 0, 477, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 58, 563, 489, - 490, 0, 0, 0, 0, 0, 0, 491, 0, 0, + 0, 468, 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 494, 495, 496, 0, 14, 0, - 0, 497, 498, 0, 0, 429, 430, 0, 0, 499, - 0, 500, 1372, 501, 502, 435, 436, 437, 438, 439, - 0, 0, 0, 0, 0, 440, 0, 442, 0, 0, - 0, 445, 0, 0, 0, 0, 0, 0, 0, 447, - 0, 0, 0, 0, 0, 450, 0, 0, 451, 0, - 0, 452, 0, 0, 0, 455, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 562, 0, 0, 459, 460, - 0, 314, 315, 316, 0, 318, 319, 320, 321, 322, - 461, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 0, 336, 337, 338, 0, 0, 341, 342, - 343, 344, 462, 463, 464, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 466, 467, 0, + 0, 0, 0, 0, 0, 0, 58, 0, 0, 0, + 0, 0, 0, 0, 473, 474, 475, 476, 477, 0, + 478, 0, 479, 480, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 59, 565, 491, 492, 0, 0, 0, + 0, 0, 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 496, 497, 498, 0, 14, 0, 0, 499, 500, 0, + 0, 431, 432, 0, 0, 501, 0, 502, 1486, 503, + 504, 437, 438, 439, 440, 441, 0, 0, 0, 0, + 0, 442, 0, 444, 0, 0, 0, 447, 0, 0, + 0, 0, 0, 0, 0, 449, 0, 0, 0, 0, + 0, 452, 0, 0, 453, 0, 0, 454, 0, 0, + 0, 457, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 564, 0, 0, 461, 462, 0, 316, 317, 318, + 0, 320, 321, 322, 323, 324, 463, 326, 327, 328, + 329, 330, 331, 332, 333, 334, 335, 336, 0, 338, + 339, 340, 0, 0, 343, 344, 345, 346, 464, 465, + 466, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 468, 469, 0, 0, 0, 0, 0, + 0, 0, 1523, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 58, 0, + 0, 0, 0, 0, 0, 0, 473, 474, 475, 476, + 477, 0, 478, 0, 479, 480, 481, 482, 483, 484, + 485, 486, 487, 488, 489, 59, 565, 491, 492, 0, + 0, 0, 0, 0, 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 496, 497, 498, 0, 14, 0, 0, 499, + 500, 0, 0, 431, 432, 0, 0, 501, 0, 502, + 0, 503, 504, 437, 438, 439, 440, 441, 0, 0, + 0, 0, 0, 442, 0, 444, 0, 0, 0, 447, + 0, 0, 0, 0, 0, 0, 0, 449, 0, 0, + 0, 0, 0, 452, 0, 0, 453, 0, 0, 454, + 0, 0, 0, 457, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 564, 0, 0, 461, 462, 0, 316, + 317, 318, 0, 320, 321, 322, 323, 324, 463, 326, + 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, + 0, 338, 339, 340, 0, 0, 343, 344, 345, 346, + 464, 465, 466, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 468, 469, 0, 0, 0, + 0, 0, 0, 0, 1562, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 471, 472, 473, 474, 475, 0, 476, 0, 477, 478, - 479, 480, 481, 482, 483, 484, 485, 486, 487, 58, - 563, 489, 490, 0, 0, 0, 0, 0, 0, 491, + 58, 0, 0, 0, 0, 0, 0, 0, 473, 474, + 475, 476, 477, 0, 478, 0, 479, 480, 481, 482, + 483, 484, 485, 486, 487, 488, 489, 59, 565, 491, + 492, 0, 0, 0, 0, 0, 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 494, 495, 496, 0, - 14, 0, 0, 497, 498, 0, 0, 429, 430, 0, - 0, 499, 0, 500, 1413, 501, 502, 435, 436, 437, - 438, 439, 0, 0, 0, 0, 0, 440, 0, 442, - 0, 0, 0, 445, 0, 0, 0, 0, 0, 0, - 0, 447, 0, 0, 0, 0, 0, 450, 0, 0, - 451, 0, 0, 452, 0, 0, 0, 455, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 562, 0, 0, - 459, 460, 0, 314, 315, 316, 0, 318, 319, 320, - 321, 322, 461, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 0, 336, 337, 338, 0, 0, - 341, 342, 343, 344, 462, 463, 464, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 466, - 467, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 496, 497, 498, 0, 14, 0, + 0, 499, 500, 0, 0, 431, 432, 0, 0, 501, + 0, 502, 0, 503, 504, 437, 438, 439, 440, 441, + 0, 0, 0, 0, 0, 442, 0, 444, 0, 0, + 0, 447, 0, 0, 0, 0, 0, 0, 0, 449, + 0, 0, 0, 0, 0, 452, 0, 0, 453, 0, + 0, 454, 0, 0, 0, 457, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 564, 0, 0, 461, 462, + 0, 316, 317, 318, 0, 320, 321, 322, 323, 324, + 463, 326, 327, 328, 329, 330, 331, 332, 333, 334, + 335, 336, 0, 338, 339, 340, 0, 0, 343, 344, + 345, 346, 464, 465, 466, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 468, 469, 0, + 0, 0, 0, 0, 0, 0, 1563, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 58, 0, 0, 0, 0, 0, 0, 0, + 473, 474, 475, 476, 477, 0, 478, 0, 479, 480, + 481, 482, 483, 484, 485, 486, 487, 488, 489, 59, + 565, 491, 492, 0, 0, 0, 0, 0, 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 471, 472, 473, 474, 475, 0, 476, 0, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 58, 563, 489, 490, 0, 0, 0, 0, 0, - 0, 491, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 494, 495, - 496, 0, 14, 0, 0, 497, 498, 0, 0, 429, - 430, 0, 0, 499, 0, 500, 1484, 501, 502, 435, - 436, 437, 438, 439, 0, 0, 0, 0, 0, 440, - 0, 442, 0, 0, 0, 445, 0, 0, 0, 0, - 0, 0, 0, 447, 0, 0, 0, 0, 0, 450, - 0, 0, 451, 0, 0, 452, 0, 0, 0, 455, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 562, - 0, 0, 459, 460, 0, 314, 315, 316, 0, 318, - 319, 320, 321, 322, 461, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 0, 336, 337, 338, - 0, 0, 341, 342, 343, 344, 462, 463, 464, 0, + 0, 0, 0, 0, 0, 0, 496, 497, 498, 0, + 14, 0, 0, 499, 500, 0, 0, 431, 432, 0, + 0, 501, 0, 502, 0, 503, 504, 437, 438, 439, + 440, 441, 0, 0, 0, 0, 0, 442, 0, 444, + 0, 0, 0, 447, 0, 0, 0, 0, 0, 0, + 0, 449, 0, 0, 0, 0, 0, 452, 0, 0, + 453, 0, 0, 454, 0, 0, 0, 457, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 564, 0, 0, + 461, 462, 0, 316, 317, 318, 0, 320, 321, 322, + 323, 324, 463, 326, 327, 328, 329, 330, 331, 332, + 333, 334, 335, 336, 0, 338, 339, 340, 0, 0, + 343, 344, 345, 346, 464, 465, 466, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 468, + 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 466, 467, 0, 0, 0, 0, 0, 0, 0, - 1521, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 58, 0, 0, 0, 0, 0, + 0, 0, 473, 474, 475, 476, 477, 0, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, + 489, 59, 565, 491, 492, 0, 0, 0, 0, 0, + 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 496, 497, + 498, 0, 14, 0, 0, 499, 500, 0, 0, 431, + 432, 0, 0, 501, 0, 502, 0, 503, 504, 437, + 438, 439, 440, 441, 0, 0, 0, 0, 0, 442, + 0, 444, 0, 0, 0, 447, 0, 0, 0, 0, + 0, 0, 0, 449, 0, 0, 0, 0, 0, 452, + 0, 0, 453, 0, 0, 454, 0, 0, 0, 457, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 564, + 0, 0, 461, 462, 0, 316, 317, 318, 0, 320, + 321, 322, 323, 324, 463, 326, 327, 328, 329, 330, + 331, 332, 333, 334, 335, 336, 0, 338, 339, 340, + 0, 0, 343, 344, 345, 346, 464, 465, 466, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 471, 472, 473, 474, 475, 0, - 476, 0, 477, 478, 479, 480, 481, 482, 483, 484, - 485, 486, 487, 58, 563, 489, 490, 0, 0, 0, - 0, 0, 0, 491, 0, 0, 0, 0, 0, 0, + 0, 468, 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 494, 495, 496, 0, 14, 0, 0, 497, 498, 0, - 0, 429, 430, 0, 0, 499, 0, 500, 0, 501, - 502, 435, 436, 437, 438, 439, 0, 0, 0, 0, - 0, 440, 0, 442, 0, 0, 0, 445, 0, 0, - 0, 0, 0, 0, 0, 447, 0, 0, 0, 0, - 0, 450, 0, 0, 451, 0, 0, 452, 0, 0, - 0, 455, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 562, 0, 0, 459, 460, 0, 314, 315, 316, - 0, 318, 319, 320, 321, 322, 461, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 0, 336, - 337, 338, 0, 0, 341, 342, 343, 344, 462, 463, - 464, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 466, 467, 0, 0, 0, 0, 0, - 0, 0, 1560, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 471, 472, 473, 474, - 475, 0, 476, 0, 477, 478, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 58, 563, 489, 490, 0, - 0, 0, 0, 0, 0, 491, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 494, 495, 496, 0, 14, 0, 0, 497, - 498, 0, 0, 429, 430, 0, 0, 499, 0, 500, - 0, 501, 502, 435, 436, 437, 438, 439, 0, 0, - 0, 0, 0, 440, 0, 442, 0, 0, 0, 445, - 0, 0, 0, 0, 0, 0, 0, 447, 0, 0, - 0, 0, 0, 450, 0, 0, 451, 0, 0, 452, - 0, 0, 0, 455, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 562, 0, 0, 459, 460, 0, 314, - 315, 316, 0, 318, 319, 320, 321, 322, 461, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, - 0, 336, 337, 338, 0, 0, 341, 342, 343, 344, - 462, 463, 464, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 466, 467, 0, 0, 0, - 0, 0, 0, 0, 1561, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 471, 472, - 473, 474, 475, 0, 476, 0, 477, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 58, 563, 489, - 490, 0, 0, 0, 0, 0, 0, 491, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 494, 495, 496, 0, 14, 0, - 0, 497, 498, 0, 0, 429, 430, 0, 0, 499, - 0, 500, 0, 501, 502, 435, 436, 437, 438, 439, - 0, 0, 0, 0, 0, 440, 0, 442, 0, 0, - 0, 445, 0, 0, 0, 0, 0, 0, 0, 447, - 0, 0, 0, 0, 0, 450, 0, 0, 451, 0, - 0, 452, 0, 0, 0, 455, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 562, 0, 0, 459, 460, - 0, 314, 315, 316, 0, 318, 319, 320, 321, 322, - 461, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 0, 336, 337, 338, 0, 0, 341, 342, - 343, 344, 462, 463, 464, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 466, 467, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 471, 472, 473, 474, 475, 0, 476, 0, 477, 478, - 479, 480, 481, 482, 483, 484, 485, 486, 487, 58, - 563, 489, 490, 0, 0, 0, 0, 0, 0, 491, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 494, 495, 496, 0, - 14, 0, 0, 497, 498, 0, 0, 429, 430, 0, - 0, 499, 0, 500, 0, 501, 502, 435, 436, 437, - 438, 439, 0, 0, 0, 0, 0, 440, 0, 442, - 0, 0, 0, 445, 0, 0, 0, 0, 0, 0, - 0, 447, 0, 0, 0, 0, 0, 450, 0, 0, - 451, 0, 0, 452, 0, 0, 0, 455, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 562, 0, 963, - 459, 460, 0, 314, 315, 316, 0, 318, 319, 320, - 321, 322, 461, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 0, 336, 337, 338, 0, 0, - 341, 342, 343, 344, 462, 463, 464, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 466, - 467, 314, 315, 316, 0, 318, 319, 320, 321, 322, - 461, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 0, 336, 337, 338, 0, 0, 341, 342, - 343, 344, 471, 472, 473, 474, 475, 0, 476, 0, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 58, 563, 489, 490, 0, 683, 0, 0, 0, - 0, 491, 308, 0, 0, 0, 0, 0, 309, 0, - 0, 0, 0, 0, 310, 0, 0, 0, 494, 495, - 496, 0, 14, 0, 311, 497, 498, 964, 0, 0, - 0, 0, 312, 1348, 0, 500, 0, 501, 502, 965, - 0, 0, 0, 0, 0, 0, 0, 313, 0, 0, - 0, 0, 0, 0, 314, 315, 316, 317, 318, 319, + 0, 0, 0, 0, 0, 0, 58, 0, 0, 0, + 0, 0, 0, 0, 473, 474, 475, 476, 477, 0, + 478, 0, 479, 480, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 59, 565, 491, 492, 0, 685, 0, + 0, 0, 0, 493, 310, 0, 0, 0, 0, 0, + 311, 0, 0, 0, 0, 0, 312, 0, 0, 0, + 496, 497, 498, 0, 14, 0, 313, 499, 500, 0, + 0, 0, 0, 0, 314, 1350, 0, 502, 0, 503, + 504, 0, 0, 0, 0, 0, 0, 0, 0, 315, + 0, 0, 0, 0, 0, 0, 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, 0, 0, 0, - 0, 0, 0, 0, 0, 685, 0, 0, 0, 0, - 0, 308, 0, 0, 0, 0, 0, 309, 0, 0, - 0, 0, 0, 310, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 311, 0, 0, 0, 0, 0, 0, - 0, 312, 0, 0, 0, 0, 0, 0, 347, 0, - 0, 0, 0, 0, 0, 0, 313, 0, 0, 0, - 0, 0, 58, 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, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 348, 0, - 308, 0, 0, 0, 0, 0, 309, 0, 0, 0, - 0, 0, 310, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 311, 0, 0, 0, 0, 0, 0, 0, - 312, 0, 0, 0, 0, 0, 0, 347, 0, 0, - 0, 0, 0, 0, 0, 313, 0, 0, 0, 0, - 0, 58, 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, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 348, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 308, 0, 0, 0, 0, 0, 309, 0, 0, - 0, 0, 0, 310, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 311, 0, 0, 347, 0, 0, 0, - 0, 312, 0, 0, 0, 0, 0, 0, 0, 0, - 606, 0, 0, 0, 0, 0, 313, 0, 0, 0, - 0, 0, 607, 314, 315, 316, 317, 318, 319, 320, + 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, + 0, 0, 0, 0, 0, 0, 0, 687, 0, 0, + 0, 0, 0, 310, 0, 0, 0, 0, 0, 311, + 0, 0, 0, 0, 0, 312, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 313, 0, 58, 0, 0, + 0, 0, 0, 314, 0, 0, 0, 0, 0, 0, + 349, 0, 0, 0, 0, 0, 0, 0, 315, 0, + 0, 0, 0, 0, 59, 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, 348, 0, 0, 0, + 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 308, 0, 0, 0, 0, 0, 309, 0, 0, 0, - 0, 0, 310, 0, 0, 728, 729, 0, 0, 0, - 0, 0, 311, 0, 0, 0, 0, 0, 0, 0, - 312, 0, 0, 0, 0, 0, 0, 347, 0, 0, - 0, 0, 0, 0, 0, 313, 0, 0, 0, 0, - 0, 58, 314, 315, 316, 317, 318, 319, 320, 321, + 350, 0, 310, 0, 0, 0, 0, 0, 311, 0, + 0, 0, 0, 0, 312, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 313, 0, 58, 0, 0, 0, + 0, 0, 314, 0, 0, 0, 0, 0, 0, 349, + 0, 0, 0, 0, 0, 0, 0, 315, 0, 0, + 0, 0, 0, 59, 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, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 348, 0, 0, - 0, 857, 858, 859, 860, 861, 862, 863, 864, 738, - 739, 740, 741, 742, 865, 866, 745, 746, 747, 748, - 867, 750, 751, 752, 753, -350, 728, 729, 0, 754, - 755, 756, 757, 868, 869, 0, 347, 760, 761, 762, - 870, 871, 872, 766, 0, 0, 0, 0, 0, 0, - 606, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 350, + 0, 310, 0, 0, 0, 0, 0, 311, 0, 0, + 0, 0, 0, 312, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 313, 0, 58, 0, 0, 0, 0, + 0, 314, 0, 0, 0, 0, 0, 0, 349, 0, + 0, 0, 0, 0, 0, 0, 315, 0, 0, 0, + 0, 0, 59, 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, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 350, 0, + 603, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 58, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 349, 0, 0, + 0, 0, 0, 0, 0, 0, 310, 0, 0, 0, + 0, 608, 311, 0, 0, 0, 0, 0, 312, 0, + 0, 0, 0, 609, 0, 0, 0, 0, 313, 0, + 0, 0, 0, 0, 0, 0, 314, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 873, 768, 0, 769, 770, 771, 772, 773, - 774, 775, 776, 777, 778, 0, 348, 0, 0, 0, - 0, 0, 0, 0, 779, 780, 0, 0, 0, 501, - 671, 0, 857, 858, 859, 860, 861, 862, 863, 864, - 738, 739, 740, 741, 742, 865, 866, 745, 746, 747, - 748, 867, 750, 751, 752, 753, 728, 729, 0, 0, - 754, 755, 756, 757, 868, 869, 0, 0, 760, 761, - 762, 870, 871, 872, 766, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 728, 729, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1061, 0, 0, 0, - 0, 0, 0, 873, 768, 0, 769, 770, 771, 772, - 773, 774, 775, 776, 777, 778, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 779, 780, 0, 0, 0, - 501, 671, 857, 858, 859, 860, 861, 862, 863, 864, - 738, 739, 740, 741, 742, 865, 866, 745, 746, 747, - 748, 867, 750, 751, 752, 753, 0, 0, 0, 0, - 754, 755, 756, 757, 868, 869, 0, 0, 760, 761, - 762, 870, 871, 872, 766, 738, 739, 740, 741, 742, - 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, - 753, 728, 729, 0, 0, 754, 0, 756, 757, 0, - 0, 0, 0, 760, 761, 762, 1252, 0, 0, 766, - 0, 0, 0, 873, 768, 0, 769, 770, 771, 772, - 773, 774, 775, 776, 777, 778, 728, 729, 0, 0, - 0, 0, 0, 0, 0, 779, 780, 0, 0, 0, - 501, 671, 0, 0, 0, 0, 0, 0, 0, 768, - 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, - 778, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 779, 780, 0, 0, 791, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 738, 739, 740, 741, 742, - 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, - 753, 0, 0, 0, 0, 754, 0, 756, 757, 0, - 0, 0, 0, 760, 761, 762, 0, 0, 0, 766, - 738, 739, 740, 741, 742, 0, 0, 745, 746, 747, - 748, 0, 750, 751, 752, 753, 728, 729, 0, 0, - 754, 0, 756, 757, 0, 0, 0, 0, 760, 761, - 762, 0, 0, 0, 766, 0, 0, 0, 0, 768, - 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, - 778, 728, 729, 0, 0, 0, 0, 0, 0, 0, - 779, 780, 0, 0, 801, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 768, 0, 769, 770, 771, 772, - 773, 774, 775, 776, 777, 778, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 779, 780, 0, 0, 817, + 0, 315, 0, 0, 0, 0, 0, 350, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 310, 0, 0, 0, 0, + 0, 311, 0, 0, 0, 0, 0, 312, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 313, 0, 58, + 0, 0, 0, 0, 0, 314, 0, 0, 0, 0, + 0, 0, 349, 0, 0, 0, 0, 0, 0, 0, + 315, 0, 0, 0, 0, 0, 59, 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, + 730, 731, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 350, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 738, 739, 740, 741, 742, 0, 0, 745, 746, 747, - 748, 0, 750, 751, 752, 753, 0, 0, 0, 0, - 754, 0, 756, 757, 0, 0, 0, 0, 760, 761, - 762, 0, 0, 0, 766, 738, 739, 740, 741, 742, - 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, - 753, 728, 729, 0, 0, 754, 0, 756, 757, 0, - 0, 0, 0, 760, 761, 762, 0, 0, 0, 766, - 0, 0, 0, 0, 768, 0, 769, 770, 771, 772, - 773, 774, 775, 776, 777, 778, 728, 729, 0, 0, - 0, 0, 0, 0, 0, 779, 780, 0, 0, 832, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 768, - 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, - 778, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 779, 780, 0, 0, 1129, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 738, 739, 740, 741, 742, - 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, - 753, 0, 0, 0, 0, 754, 0, 756, 757, 0, - 0, 0, 0, 760, 761, 762, 0, 0, 0, 766, - 738, 739, 740, 741, 742, 0, 0, 745, 746, 747, - 748, 0, 750, 751, 752, 753, 728, 729, 0, 0, - 754, 0, 756, 757, 0, 0, 0, 0, 760, 761, - 762, 0, 0, 0, 766, 0, 0, 0, 0, 768, - 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, - 778, 728, 729, 0, 0, 0, 0, 0, 0, 0, - 779, 780, 0, 0, 1133, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 768, 0, 769, 770, 771, 772, - 773, 774, 775, 776, 777, 778, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 779, 780, 0, 0, 1135, + 0, 0, 0, 0, 0, 0, 0, 0, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 738, 739, 740, 741, 742, 0, 0, 745, 746, 747, - 748, 0, 750, 751, 752, 753, 0, 0, 0, 0, - 754, 0, 756, 757, 0, 0, 0, 0, 760, 761, - 762, 0, 0, 0, 766, 738, 739, 740, 741, 742, - 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, - 753, 728, 729, 0, 0, 754, 0, 756, 757, 0, - 0, 0, 0, 760, 761, 762, 0, 0, 0, 766, - 0, 0, 0, 0, 768, 0, 769, 770, 771, 772, - 773, 774, 775, 776, 777, 778, 728, 729, 0, 0, - 0, 0, 0, 0, 0, 779, 780, 0, 0, 1144, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 768, - 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, - 778, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 779, 780, 0, 0, 1145, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 738, 739, 740, 741, 742, - 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, - 753, 0, 0, 0, 0, 754, 0, 756, 757, 0, - 0, 0, 0, 760, 761, 762, 0, 0, 0, 766, - 738, 739, 740, 741, 742, 0, 0, 745, 746, 747, - 748, 0, 750, 751, 752, 753, 728, 729, 0, 0, - 754, 0, 756, 757, 0, 0, 0, 0, 760, 761, - 762, 0, 0, 0, 766, 0, 0, 0, 0, 768, - 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, - 778, 728, 729, 0, 0, 0, 0, 0, 0, 0, - 779, 780, 0, 0, 1146, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 768, 0, 769, 770, 771, 772, - 773, 774, 775, 776, 777, 778, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 779, 780, 0, 0, 1147, + 0, 349, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 738, 739, 740, 741, 742, 0, 0, 745, 746, 747, - 748, 0, 750, 751, 752, 753, 0, 0, 0, 0, - 754, 0, 756, 757, 0, 0, 0, 0, 760, 761, - 762, 0, 0, 0, 766, 738, 739, 740, 741, 742, - 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, - 753, 728, 729, 0, 0, 754, 0, 756, 757, 0, - 0, 0, 0, 760, 761, 762, 0, 0, 0, 766, - 0, 0, 0, 0, 768, 0, 769, 770, 771, 772, - 773, 774, 775, 776, 777, 778, 728, 729, 0, 0, - 0, 0, 0, 0, 0, 779, 780, 0, 0, 1148, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 768, - 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, - 778, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 779, 780, 0, 0, 1149, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 738, 739, 740, 741, 742, - 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, - 753, 0, 0, 0, 0, 754, 0, 756, 757, 0, - 0, 0, 0, 760, 761, 762, 0, 0, 0, 766, - 738, 739, 740, 741, 742, 0, 0, 745, 746, 747, - 748, 0, 750, 751, 752, 753, 728, 729, 0, 0, - 754, 0, 756, 757, 0, 0, 0, 0, 760, 761, - 762, 0, 0, 0, 766, 0, 0, 0, 0, 768, - 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, - 778, 728, 729, 0, 0, 0, 0, 0, 0, 0, - 779, 780, 0, 0, 1273, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 768, 0, 769, 770, 771, 772, - 773, 774, 775, 776, 777, 778, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 779, 780, 0, 0, 1285, + 0, 0, 0, 0, 0, 0, 859, 860, 861, 862, + 863, 864, 865, 866, 740, 741, 742, 743, 744, 867, + 868, 747, 748, 749, 750, 869, 752, 753, 754, 755, + -351, 350, 730, 731, 756, 757, 758, 759, 870, 871, + 0, 0, 762, 763, 764, 872, 873, 874, 768, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 738, 739, 740, 741, 742, 0, 0, 745, 746, 747, - 748, 0, 750, 751, 752, 753, 0, 0, 0, 0, - 754, 0, 756, 757, 0, 0, 0, 0, 760, 761, - 762, 0, 0, 0, 766, 738, 739, 740, 741, 742, - 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, - 753, 728, 729, 0, 0, 754, 0, 756, 757, 0, - 0, 0, 0, 760, 761, 762, 0, 0, 0, 766, - 0, 0, 0, 0, 768, 0, 769, 770, 771, 772, - 773, 774, 775, 776, 777, 778, 728, 729, 0, 0, - 0, 0, 0, 0, 0, 779, 780, 0, 0, 1416, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 768, - 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, - 778, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 779, 780, 0, 0, 1431, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 738, 739, 740, 741, 742, - 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, - 753, 0, 0, 0, 0, 754, 0, 756, 757, 0, - 0, 0, 0, 760, 761, 762, 0, 0, 0, 766, - 738, 739, 740, 741, 742, 0, 0, 745, 746, 747, - 748, 0, 750, 751, 752, 753, 728, 729, 0, 0, - 754, 0, 756, 757, 0, 0, 0, 0, 760, 761, - 762, 0, 0, 0, 766, 0, 0, 0, 0, 768, - 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, - 778, 728, 729, 0, 0, 0, 0, 0, 0, 0, - 779, 780, 0, 0, 1432, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 768, 0, 769, 770, 771, 772, - 773, 774, 775, 776, 777, 778, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 779, 780, 0, 0, 1451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 738, 739, 740, 741, 742, 0, 0, 745, 746, 747, - 748, 0, 750, 751, 752, 753, 0, 0, 0, 0, - 754, 0, 756, 757, 0, 0, 0, 0, 760, 761, - 762, 0, 0, 0, 766, 738, 739, 740, 741, 742, - 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, - 753, 728, 729, 0, 0, 754, 0, 756, 757, 0, - 0, 0, 0, 760, 761, 762, 0, 0, 0, 766, - 0, 0, 0, 0, 768, 0, 769, 770, 771, 772, - 773, 774, 775, 776, 777, 778, 728, 729, 0, 0, - 0, 0, 0, 0, 0, 779, 780, 0, 0, 1453, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 768, - 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, - 778, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 779, 780, 0, 0, 1455, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 738, 739, 740, 741, 742, - 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, - 753, 0, 0, 0, 0, 754, 0, 756, 757, 0, - 0, 0, 0, 760, 761, 762, 0, 0, 0, 766, - 738, 739, 740, 741, 742, 0, 0, 745, 746, 747, - 748, 0, 750, 751, 752, 753, 728, 729, 0, 0, - 754, 0, 756, 757, 0, 0, 0, 0, 760, 761, - 762, 0, 0, 0, 766, 0, 0, 0, 0, 768, - 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, - 778, 728, 729, 0, 0, 0, 0, 0, 0, 0, - 779, 780, 0, 0, 1459, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 768, 0, 769, 770, 771, 772, - 773, 774, 775, 776, 777, 778, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 779, 780, 0, 0, 1526, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 738, 739, 740, 741, 742, 0, 0, 745, 746, 747, - 748, 0, 750, 751, 752, 753, 0, 0, 0, 0, - 754, 0, 756, 757, 0, 0, 0, 0, 760, 761, - 762, 0, 0, 0, 766, 738, 739, 740, 741, 742, - 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, - 753, 728, 729, 0, 0, 754, 0, 756, 757, 0, - 0, 0, 0, 760, 761, 762, 0, 0, 0, 766, - 0, 0, 0, 0, 768, 0, 769, 770, 771, 772, - 773, 774, 775, 776, 777, 778, 728, 729, 0, 0, - 0, 0, 0, 0, 0, 779, 780, 0, 0, 1527, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 768, - 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, - 778, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 779, 780, 0, 0, 1528, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 738, 739, 740, 741, 742, - 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, - 753, 0, 0, 0, 0, 754, 0, 756, 757, 0, - 0, 0, 0, 760, 761, 762, 0, 0, 0, 766, - 738, 739, 740, 741, 742, 0, 0, 745, 746, 747, - 748, 0, 750, 751, 752, 753, 728, 729, 0, 0, - 754, 0, 756, 757, 0, 0, 0, 0, 760, 761, - 762, 0, 0, 0, 766, 0, 0, 0, 0, 768, - 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, - 778, 728, 729, 0, 0, 0, 0, 0, 0, 0, - 779, 780, 0, 0, 1536, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 768, 0, 769, 770, 771, 772, - 773, 774, 775, 776, 777, 778, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 779, 780, 0, 0, 1546, + 0, 0, 0, 0, 0, 0, 0, 875, 770, 0, + 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 781, + 782, 0, 0, 0, 503, 673, 0, 0, 859, 860, + 861, 862, 863, 864, 865, 866, 740, 741, 742, 743, + 744, 867, 868, 747, 748, 749, 750, 869, 752, 753, + 754, 755, 730, 731, 0, 0, 756, 757, 758, 759, + 870, 871, 0, 0, 762, 763, 764, 872, 873, 874, + 768, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 730, 731, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 738, 739, 740, 741, 742, 0, 0, 745, 746, 747, - 748, 0, 750, 751, 752, 753, 0, 0, 0, 0, - 754, 0, 756, 757, 0, 0, 0, 0, 760, 761, - 762, 0, 0, 0, 766, 738, 739, 740, 741, 742, - 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, - 753, 728, 729, 0, 0, 754, 0, 756, 757, 0, - 0, 0, 0, 760, 761, 762, 0, 0, 0, 766, - 0, 0, 0, 0, 768, 0, 769, 770, 771, 772, - 773, 774, 775, 776, 777, 778, 728, 729, 0, 0, - 0, 0, 0, 0, 0, 779, 780, 0, 0, 1551, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 768, - 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, - 778, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 779, 780, 0, 0, 1607, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 738, 739, 740, 741, 742, - 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, - 753, 0, 0, 0, 0, 754, 0, 756, 757, 0, - 0, 0, 0, 760, 761, 762, 0, 0, 0, 766, - 738, 739, 740, 741, 742, 728, 729, 745, 746, 747, - 748, 0, 750, 751, 752, 753, 0, 0, 0, 0, - 754, 0, 756, 757, 0, 0, 0, 0, 760, 761, - 762, 0, 0, 0, 766, 0, 0, 0, 0, 768, - 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, - 778, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 779, 780, 822, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 768, 0, 769, 770, 771, 772, - 773, 774, 775, 776, 777, 778, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 779, 780, 1083, 0, 738, - 739, 740, 741, 742, 728, 729, 745, 746, 747, 748, - 0, 750, 751, 752, 753, 0, 0, 0, 0, 754, - 0, 756, 757, 0, 0, 0, 0, 760, 761, 762, - 0, 0, 0, 766, 0, 0, 0, 0, 0, 728, - 729, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1063, 0, 0, 0, 0, 0, 0, 875, + 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, + 779, 780, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 781, 782, 0, 0, 0, 503, 673, 859, 860, + 861, 862, 863, 864, 865, 866, 740, 741, 742, 743, + 744, 867, 868, 747, 748, 749, 750, 869, 752, 753, + 754, 755, 0, 0, 0, 0, 756, 757, 758, 759, + 870, 871, 0, 0, 762, 763, 764, 872, 873, 874, + 768, 740, 741, 742, 743, 744, 0, 0, 747, 748, + 749, 750, 0, 752, 753, 754, 755, 730, 731, 0, + 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, + 763, 764, 1254, 0, 0, 768, 0, 0, 0, 875, + 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, + 779, 780, 730, 731, 0, 0, 0, 0, 0, 0, + 0, 781, 782, 0, 0, 0, 503, 673, 0, 0, + 0, 0, 0, 0, 0, 770, 0, 771, 772, 773, + 774, 775, 776, 777, 778, 779, 780, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 781, 782, 0, 0, + 793, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 740, 741, 742, 743, 744, 0, 0, 747, 748, + 749, 750, 0, 752, 753, 754, 755, 0, 0, 0, + 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, + 763, 764, 0, 0, 0, 768, 740, 741, 742, 743, + 744, 0, 0, 747, 748, 749, 750, 0, 752, 753, + 754, 755, 730, 731, 0, 0, 756, 0, 758, 759, + 0, 0, 0, 0, 762, 763, 764, 0, 0, 0, + 768, 0, 0, 0, 0, 770, 0, 771, 772, 773, + 774, 775, 776, 777, 778, 779, 780, 730, 731, 0, + 0, 0, 0, 0, 0, 0, 781, 782, 0, 0, + 803, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, + 779, 780, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 781, 782, 0, 0, 819, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 740, 741, 742, 743, + 744, 0, 0, 747, 748, 749, 750, 0, 752, 753, + 754, 755, 0, 0, 0, 0, 756, 0, 758, 759, + 0, 0, 0, 0, 762, 763, 764, 0, 0, 0, + 768, 740, 741, 742, 743, 744, 0, 0, 747, 748, + 749, 750, 0, 752, 753, 754, 755, 730, 731, 0, + 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, + 763, 764, 0, 0, 0, 768, 0, 0, 0, 0, + 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, + 779, 780, 730, 731, 0, 0, 0, 0, 0, 0, + 0, 781, 782, 0, 0, 834, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 770, 0, 771, 772, 773, + 774, 775, 776, 777, 778, 779, 780, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 781, 782, 0, 0, + 1131, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 740, 741, 742, 743, 744, 0, 0, 747, 748, + 749, 750, 0, 752, 753, 754, 755, 0, 0, 0, + 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, + 763, 764, 0, 0, 0, 768, 740, 741, 742, 743, + 744, 0, 0, 747, 748, 749, 750, 0, 752, 753, + 754, 755, 730, 731, 0, 0, 756, 0, 758, 759, + 0, 0, 0, 0, 762, 763, 764, 0, 0, 0, + 768, 0, 0, 0, 0, 770, 0, 771, 772, 773, + 774, 775, 776, 777, 778, 779, 780, 730, 731, 0, + 0, 0, 0, 0, 0, 0, 781, 782, 0, 0, + 1135, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, + 779, 780, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 781, 782, 0, 0, 1137, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 740, 741, 742, 743, + 744, 0, 0, 747, 748, 749, 750, 0, 752, 753, + 754, 755, 0, 0, 0, 0, 756, 0, 758, 759, + 0, 0, 0, 0, 762, 763, 764, 0, 0, 0, + 768, 740, 741, 742, 743, 744, 0, 0, 747, 748, + 749, 750, 0, 752, 753, 754, 755, 730, 731, 0, + 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, + 763, 764, 0, 0, 0, 768, 0, 0, 0, 0, + 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, + 779, 780, 730, 731, 0, 0, 0, 0, 0, 0, + 0, 781, 782, 0, 0, 1146, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 770, 0, 771, 772, 773, + 774, 775, 776, 777, 778, 779, 780, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 781, 782, 0, 0, + 1147, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 740, 741, 742, 743, 744, 0, 0, 747, 748, + 749, 750, 0, 752, 753, 754, 755, 0, 0, 0, + 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, + 763, 764, 0, 0, 0, 768, 740, 741, 742, 743, + 744, 0, 0, 747, 748, 749, 750, 0, 752, 753, + 754, 755, 730, 731, 0, 0, 756, 0, 758, 759, + 0, 0, 0, 0, 762, 763, 764, 0, 0, 0, + 768, 0, 0, 0, 0, 770, 0, 771, 772, 773, + 774, 775, 776, 777, 778, 779, 780, 730, 731, 0, + 0, 0, 0, 0, 0, 0, 781, 782, 0, 0, + 1148, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, + 779, 780, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 781, 782, 0, 0, 1149, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 740, 741, 742, 743, + 744, 0, 0, 747, 748, 749, 750, 0, 752, 753, + 754, 755, 0, 0, 0, 0, 756, 0, 758, 759, + 0, 0, 0, 0, 762, 763, 764, 0, 0, 0, + 768, 740, 741, 742, 743, 744, 0, 0, 747, 748, + 749, 750, 0, 752, 753, 754, 755, 730, 731, 0, + 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, + 763, 764, 0, 0, 0, 768, 0, 0, 0, 0, + 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, + 779, 780, 730, 731, 0, 0, 0, 0, 0, 0, + 0, 781, 782, 0, 0, 1150, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 770, 0, 771, 772, 773, + 774, 775, 776, 777, 778, 779, 780, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 781, 782, 0, 0, + 1151, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 740, 741, 742, 743, 744, 0, 0, 747, 748, + 749, 750, 0, 752, 753, 754, 755, 0, 0, 0, + 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, + 763, 764, 0, 0, 0, 768, 740, 741, 742, 743, + 744, 0, 0, 747, 748, 749, 750, 0, 752, 753, + 754, 755, 730, 731, 0, 0, 756, 0, 758, 759, + 0, 0, 0, 0, 762, 763, 764, 0, 0, 0, + 768, 0, 0, 0, 0, 770, 0, 771, 772, 773, + 774, 775, 776, 777, 778, 779, 780, 730, 731, 0, + 0, 0, 0, 0, 0, 0, 781, 782, 0, 0, + 1275, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, + 779, 780, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 781, 782, 0, 0, 1287, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 740, 741, 742, 743, + 744, 0, 0, 747, 748, 749, 750, 0, 752, 753, + 754, 755, 0, 0, 0, 0, 756, 0, 758, 759, + 0, 0, 0, 0, 762, 763, 764, 0, 0, 0, + 768, 740, 741, 742, 743, 744, 0, 0, 747, 748, + 749, 750, 0, 752, 753, 754, 755, 730, 731, 0, + 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, + 763, 764, 0, 0, 0, 768, 0, 0, 0, 0, + 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, + 779, 780, 730, 731, 0, 0, 0, 0, 0, 0, + 0, 781, 782, 0, 0, 1418, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 770, 0, 771, 772, 773, + 774, 775, 776, 777, 778, 779, 780, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 781, 782, 0, 0, + 1433, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 740, 741, 742, 743, 744, 0, 0, 747, 748, + 749, 750, 0, 752, 753, 754, 755, 0, 0, 0, + 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, + 763, 764, 0, 0, 0, 768, 740, 741, 742, 743, + 744, 0, 0, 747, 748, 749, 750, 0, 752, 753, + 754, 755, 730, 731, 0, 0, 756, 0, 758, 759, + 0, 0, 0, 0, 762, 763, 764, 0, 0, 0, + 768, 0, 0, 0, 0, 770, 0, 771, 772, 773, + 774, 775, 776, 777, 778, 779, 780, 730, 731, 0, + 0, 0, 0, 0, 0, 0, 781, 782, 0, 0, + 1434, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, + 779, 780, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 781, 782, 0, 0, 1453, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 740, 741, 742, 743, + 744, 0, 0, 747, 748, 749, 750, 0, 752, 753, + 754, 755, 0, 0, 0, 0, 756, 0, 758, 759, + 0, 0, 0, 0, 762, 763, 764, 0, 0, 0, + 768, 740, 741, 742, 743, 744, 0, 0, 747, 748, + 749, 750, 0, 752, 753, 754, 755, 730, 731, 0, + 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, + 763, 764, 0, 0, 0, 768, 0, 0, 0, 0, + 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, + 779, 780, 730, 731, 0, 0, 0, 0, 0, 0, + 0, 781, 782, 0, 0, 1455, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 770, 0, 771, 772, 773, + 774, 775, 776, 777, 778, 779, 780, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 781, 782, 0, 0, + 1457, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 740, 741, 742, 743, 744, 0, 0, 747, 748, + 749, 750, 0, 752, 753, 754, 755, 0, 0, 0, + 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, + 763, 764, 0, 0, 0, 768, 740, 741, 742, 743, + 744, 0, 0, 747, 748, 749, 750, 0, 752, 753, + 754, 755, 730, 731, 0, 0, 756, 0, 758, 759, + 0, 0, 0, 0, 762, 763, 764, 0, 0, 0, + 768, 0, 0, 0, 0, 770, 0, 771, 772, 773, + 774, 775, 776, 777, 778, 779, 780, 730, 731, 0, + 0, 0, 0, 0, 0, 0, 781, 782, 0, 0, + 1461, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, + 779, 780, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 781, 782, 0, 0, 1528, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 740, 741, 742, 743, + 744, 0, 0, 747, 748, 749, 750, 0, 752, 753, + 754, 755, 0, 0, 0, 0, 756, 0, 758, 759, + 0, 0, 0, 0, 762, 763, 764, 0, 0, 0, + 768, 740, 741, 742, 743, 744, 0, 0, 747, 748, + 749, 750, 0, 752, 753, 754, 755, 730, 731, 0, + 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, + 763, 764, 0, 0, 0, 768, 0, 0, 0, 0, + 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, + 779, 780, 730, 731, 0, 0, 0, 0, 0, 0, + 0, 781, 782, 0, 0, 1529, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 770, 0, 771, 772, 773, + 774, 775, 776, 777, 778, 779, 780, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 781, 782, 0, 0, + 1530, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 740, 741, 742, 743, 744, 0, 0, 747, 748, + 749, 750, 0, 752, 753, 754, 755, 0, 0, 0, + 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, + 763, 764, 0, 0, 0, 768, 740, 741, 742, 743, + 744, 0, 0, 747, 748, 749, 750, 0, 752, 753, + 754, 755, 730, 731, 0, 0, 756, 0, 758, 759, + 0, 0, 0, 0, 762, 763, 764, 0, 0, 0, + 768, 0, 0, 0, 0, 770, 0, 771, 772, 773, + 774, 775, 776, 777, 778, 779, 780, 730, 731, 0, + 0, 0, 0, 0, 0, 0, 781, 782, 0, 0, + 1538, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, + 779, 780, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 781, 782, 0, 0, 1548, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 740, 741, 742, 743, + 744, 0, 0, 747, 748, 749, 750, 0, 752, 753, + 754, 755, 0, 0, 0, 0, 756, 0, 758, 759, + 0, 0, 0, 0, 762, 763, 764, 0, 0, 0, + 768, 740, 741, 742, 743, 744, 0, 0, 747, 748, + 749, 750, 0, 752, 753, 754, 755, 730, 731, 0, + 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, + 763, 764, 0, 0, 0, 768, 0, 0, 0, 0, + 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, + 779, 780, 730, 731, 0, 0, 0, 0, 0, 0, + 0, 781, 782, 0, 0, 1553, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 770, 0, 771, 772, 773, + 774, 775, 776, 777, 778, 779, 780, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 781, 782, 0, 0, + 1609, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 740, 741, 742, 743, 744, 0, 0, 747, 748, + 749, 750, 0, 752, 753, 754, 755, 0, 0, 0, + 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, + 763, 764, 0, 0, 0, 768, 740, 741, 742, 743, + 744, 730, 731, 747, 748, 749, 750, 0, 752, 753, + 754, 755, 0, 0, 0, 0, 756, 0, 758, 759, + 0, 0, 0, 0, 762, 763, 764, 0, 0, 0, + 768, 0, 0, 0, 0, 770, 0, 771, 772, 773, + 774, 775, 776, 777, 778, 779, 780, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 781, 782, 824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, + 779, 780, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 781, 782, 1085, 0, 740, 741, 742, 743, 744, + 730, 731, 747, 748, 749, 750, 0, 752, 753, 754, + 755, 0, 0, 0, 0, 756, 0, 758, 759, 0, + 0, 0, 0, 762, 763, 764, 0, 0, 0, 768, + 0, 0, 0, 0, 0, 730, 731, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 768, 0, 769, 770, 771, 772, 773, - 774, 775, 776, 777, 778, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 779, 780, 1226, 0, 738, 739, - 740, 741, 742, 0, 0, 745, 746, 747, 748, 0, - 750, 751, 752, 753, 0, 0, 0, 0, 754, 0, - 756, 757, 0, 0, 0, 0, 760, 761, 762, 0, - 0, 0, 766, 738, 739, 740, 741, 742, 728, 729, - 745, 746, 747, 748, 0, 750, 751, 752, 753, 0, - 0, 0, 0, 754, 0, 756, 757, 0, 0, 0, - 0, 760, 761, 762, 0, 0, 0, 766, 0, 0, - 0, 0, 768, 0, 769, 770, 771, 772, 773, 774, - 775, 776, 777, 778, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 779, 780, 1241, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 768, 0, 769, - 770, 771, 772, 773, 774, 775, 776, 777, 778, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 779, 780, - 1370, 0, 738, 739, 740, 741, 742, 0, 0, 745, - 746, 747, 748, 0, 750, 751, 752, 753, 229, 230, - 0, 0, 754, 0, 756, 757, 0, 0, 0, 0, - 760, 761, 762, 0, 0, 231, 766, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 728, 729, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 770, + 0, 771, 772, 773, 774, 775, 776, 777, 778, 779, + 780, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 781, 782, 1228, 0, 740, 741, 742, 743, 744, 0, + 0, 747, 748, 749, 750, 0, 752, 753, 754, 755, + 0, 0, 0, 0, 756, 0, 758, 759, 0, 0, + 0, 0, 762, 763, 764, 0, 0, 0, 768, 740, + 741, 742, 743, 744, 730, 731, 747, 748, 749, 750, + 0, 752, 753, 754, 755, 0, 0, 0, 0, 756, + 0, 758, 759, 0, 0, 0, 0, 762, 763, 764, + 0, 0, 0, 768, 0, 0, 0, 0, 770, 0, + 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 781, + 782, 1243, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 770, 0, 771, 772, 773, 774, 775, + 776, 777, 778, 779, 780, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 781, 782, 1372, 0, 740, 741, + 742, 743, 744, 0, 0, 747, 748, 749, 750, 0, + 752, 753, 754, 755, 231, 232, 0, 0, 756, 0, + 758, 759, 0, 0, 0, 0, 762, 763, 764, 0, + 0, 233, 768, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 730, + 731, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 768, 0, 769, 770, - 771, 772, 773, 774, 775, 776, 777, 778, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 779, 780, 1375, - 0, 0, 0, 0, 232, 233, 234, 235, 236, 237, - 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, - 248, 249, 0, 0, 250, 251, 252, 0, 0, 0, - 0, 0, 0, 253, 254, 255, 256, 257, 0, 0, - 258, 259, 260, 261, 262, 263, 264, 738, 739, 740, - 741, 742, 728, 729, 745, 746, 747, 748, 0, 750, - 751, 752, 753, 0, 0, 0, 0, 754, 0, 756, - 757, 0, 0, 0, 0, 760, 761, 762, 0, 0, - 0, 766, 0, 0, 0, 0, 265, 0, 266, 267, - 268, 269, 270, 271, 272, 273, 274, 275, 0, 0, - 276, 277, 0, 0, 0, 0, 0, 278, 279, 0, - 0, 284, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 768, 0, 769, 770, 771, 772, 773, 774, 775, - 776, 777, 778, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 779, 780, 0, 0, 738, 739, 740, 741, - 742, 728, 729, 745, 746, 747, 748, 0, 750, 751, - 752, 753, 0, 0, 0, 0, 754, 0, 756, 757, - 0, 0, 923, 0, 760, 761, 762, 0, 0, 0, - 766, 0, 0, 0, 0, 0, 728, 729, 0, 0, + 0, 0, 770, 0, 771, 772, 773, 774, 775, 776, + 777, 778, 779, 780, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 781, 782, 1377, 0, 0, 0, 0, + 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, + 244, 245, 246, 247, 248, 249, 250, 251, 0, 0, + 252, 253, 254, 0, 0, 0, 0, 0, 0, 255, + 256, 257, 258, 259, 0, 0, 260, 261, 262, 263, + 264, 265, 266, 740, 741, 742, 743, 744, 730, 731, + 747, 748, 749, 750, 0, 752, 753, 754, 755, 0, + 0, 0, 0, 756, 0, 758, 759, 0, 0, 0, + 0, 762, 763, 764, 0, 0, 0, 768, 0, 0, + 0, 0, 267, 0, 268, 269, 270, 271, 272, 273, + 274, 275, 276, 277, 0, 0, 278, 279, 0, 0, + 0, 0, 0, 280, 281, 0, 0, 286, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 770, 0, 771, + 772, 773, 774, 775, 776, 777, 778, 779, 780, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 781, 782, + 0, 0, 740, 741, 742, 743, 744, 730, 731, 747, + 748, 749, 750, 0, 752, 753, 754, 755, 0, 0, + 0, 0, 756, 0, 758, 759, 0, 0, 925, 0, + 762, 763, 764, 0, 0, 0, 768, 0, 0, 0, + 0, 0, 730, 731, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 770, 0, 771, 772, + 773, 774, 775, 776, 777, 778, 779, 780, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 781, 782, 0, + 0, 740, 741, 742, 743, 744, 0, 0, 747, 748, + 749, 750, 0, 752, 753, 754, 755, 0, 0, 0, + 0, 756, 0, 758, 759, 0, 0, 1160, 0, 762, + 763, 764, 730, 731, 0, 768, 740, 741, 742, 743, + 744, 0, 0, 747, 748, 749, 750, 0, 752, 753, + 754, 755, 0, 0, 0, 0, 756, 0, 758, 759, + 0, 0, 0, 0, 762, 763, 764, 730, 731, 0, + 768, 0, 0, 0, 0, 770, 0, 771, 772, 773, + 774, 775, 776, 777, 778, 779, 780, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 781, 782, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 768, 0, 769, 770, 771, 772, 773, 774, 775, 776, - 777, 778, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 779, 780, 0, 0, 738, 739, 740, 741, 742, - 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, - 753, 0, 0, 0, 0, 754, 0, 756, 757, 0, - 0, 1158, 0, 760, 761, 762, 728, 729, 0, 766, - 738, 739, 740, 741, 742, 0, 0, 745, 746, 747, - 748, 0, 750, 751, 752, 753, 0, 0, 0, 0, - 754, 0, 756, 757, 0, 0, 0, 0, 760, 761, - 762, 728, 729, 0, 766, 0, 0, 0, 0, 768, - 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, - 778, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 779, 780, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 768, 1231, 769, 770, 771, 772, - 773, 774, 775, 776, 777, 778, 0, 0, 0, 0, - 738, 739, 740, 741, 742, 779, 780, 745, 746, 747, - 748, 0, 750, 751, 752, 753, 0, 0, 0, 0, - 754, 0, 756, 757, 0, 0, 0, 0, 760, 761, - 762, 728, 729, 0, 766, 738, 739, 740, 741, 742, - 0, 0, 745, 746, 747, 748, 0, 750, 751, 752, - 753, 0, 0, 0, 0, 754, 0, 756, 757, 0, - 0, 0, 0, 760, 761, 762, 1243, 0, 0, 766, - 728, 729, 0, 0, 768, 0, 769, 770, 771, 772, - 773, 774, 775, 776, 777, 778, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 779, 780, 1333, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 768, - 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, - 778, 0, 0, 0, 0, 738, 739, 740, 741, 742, - 779, 780, 745, 746, 747, 748, 0, 750, 751, 752, - 753, 0, 0, 0, 0, 754, 0, 756, 757, 0, - 0, 0, 0, 760, 761, 762, 0, 0, 0, 766, - 728, 729, 0, 0, 738, 739, 740, 741, 742, 0, - 0, 745, 746, 747, 748, 0, 750, 751, 752, 753, - 0, 0, 0, 0, 754, 0, 756, 757, 0, 0, - 0, 1547, 760, 761, 762, 728, 729, 0, 766, 768, - 0, 769, 770, 771, 772, 773, 774, 775, 776, 777, - 778, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 770, 1233, 771, 772, 773, 774, 775, 776, 777, 778, + 779, 780, 0, 0, 0, 0, 740, 741, 742, 743, + 744, 781, 782, 747, 748, 749, 750, 0, 752, 753, + 754, 755, 0, 0, 0, 0, 756, 0, 758, 759, + 0, 0, 0, 0, 762, 763, 764, 730, 731, 0, + 768, 740, 741, 742, 743, 744, 0, 0, 747, 748, + 749, 750, 0, 752, 753, 754, 755, 0, 0, 0, + 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, + 763, 764, 1245, 0, 0, 768, 730, 731, 0, 0, + 770, 0, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 0, 0, 0, 0, 0, 0, 0, 0, - 1601, 0, 0, 0, 0, 0, 0, 0, 768, 0, - 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, - 0, 0, 0, 0, 738, 739, 740, 741, 742, 779, - 780, 745, 746, 747, 748, 0, 750, 751, 752, 753, - 0, 0, 0, 0, 754, 0, 756, 757, 0, 0, - 0, 0, 760, 761, 762, 728, 729, 0, 766, 738, - 739, 740, 741, 742, 0, 0, 745, 746, 747, 748, - 0, 750, 751, 752, 753, 0, 0, 0, 0, 754, - 0, 756, 757, 0, 0, 0, 0, 760, 761, 762, - 1623, 0, 0, 766, 728, 729, 0, 0, 768, 0, - 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 779, - 780, 0, 0, 0, 0, 1624, 0, 0, 0, 0, - 0, 0, 0, 768, 0, 769, 770, 771, 772, 773, - 774, 775, 776, 777, 778, 0, 0, 0, 0, 738, - 739, 740, 741, 742, 779, 780, 745, 746, 747, 748, - 0, 750, 751, 752, 753, 0, 0, 0, 0, 754, - 0, 756, 757, 0, 0, 0, 0, 760, 761, 762, - 0, 0, 0, 766, 728, 729, 0, 0, 738, 739, - 740, 741, 742, 0, 0, 745, 746, 747, 748, 0, - 750, 751, 752, 753, 0, 0, 0, 0, 754, 0, - 756, 757, 0, 0, 0, 1628, 760, 761, 762, 728, - 729, 0, 766, 768, 0, 769, 770, 771, 772, 773, - 774, 775, 776, 777, 778, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 779, 780, 0, 0, 0, 0, + 0, 781, 782, 1335, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 770, 0, 771, 772, 773, + 774, 775, 776, 777, 778, 779, 780, 0, 0, 0, + 0, 740, 741, 742, 743, 744, 781, 782, 747, 748, + 749, 750, 0, 752, 753, 754, 755, 0, 0, 0, + 0, 756, 0, 758, 759, 0, 0, 0, 0, 762, + 763, 764, 0, 0, 0, 768, 730, 731, 0, 0, + 740, 741, 742, 743, 744, 0, 0, 747, 748, 749, + 750, 0, 752, 753, 754, 755, 0, 0, 0, 0, + 756, 0, 758, 759, 0, 0, 0, 1549, 762, 763, + 764, 730, 731, 0, 768, 770, 0, 771, 772, 773, + 774, 775, 776, 777, 778, 779, 780, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 781, 782, 0, 0, + 0, 0, 0, 0, 0, 0, 1603, 0, 0, 0, + 0, 0, 0, 0, 770, 0, 771, 772, 773, 774, + 775, 776, 777, 778, 779, 780, 0, 0, 0, 0, + 740, 741, 742, 743, 744, 781, 782, 747, 748, 749, + 750, 0, 752, 753, 754, 755, 0, 0, 0, 0, + 756, 0, 758, 759, 0, 0, 0, 0, 762, 763, + 764, 730, 731, 0, 768, 740, 741, 742, 743, 744, + 0, 0, 747, 748, 749, 750, 0, 752, 753, 754, + 755, 0, 0, 0, 0, 756, 0, 758, 759, 0, + 0, 0, 0, 762, 763, 764, 1625, 0, 0, 768, + 730, 731, 0, 0, 770, 0, 771, 772, 773, 774, + 775, 776, 777, 778, 779, 780, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 781, 782, 0, 0, 0, + 0, 1626, 0, 0, 0, 0, 0, 0, 0, 770, + 0, 771, 772, 773, 774, 775, 776, 777, 778, 779, + 780, 0, 0, 0, 0, 740, 741, 742, 743, 744, + 781, 782, 747, 748, 749, 750, 0, 752, 753, 754, + 755, 0, 0, 0, 0, 756, 0, 758, 759, 0, + 0, 0, 0, 762, 763, 764, 0, 0, 0, 768, + 730, 731, 0, 0, 740, 741, 742, 743, 744, 0, + 0, 747, 748, 749, 750, 0, 752, 753, 754, 755, + 0, 0, 0, 0, 756, 0, 758, 759, 0, 0, + 0, 1630, 762, 763, 764, 730, 731, 0, 768, 770, + 0, 771, 772, 773, 774, 775, 776, 777, 778, 779, + 780, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 781, 782, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 770, 0, + 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, + 0, 0, 0, 0, 740, 741, 742, 743, 744, 781, + 782, 747, 748, 749, 750, 0, 752, 753, 754, 755, + 0, 0, 0, 0, 756, 0, 758, 759, 0, 0, + 0, 0, 762, 763, 764, 730, 731, 0, -741, 740, + 741, 742, 743, 744, 0, 0, 747, 748, 749, 750, + 0, 752, 753, 754, 755, 0, 0, 0, 0, 756, + 0, 758, 759, 0, 0, 0, 0, 762, 763, 764, + 730, 731, 0, 0, 0, 0, 0, 0, 770, 0, + 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 781, + 782, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 770, 0, 771, 772, 773, 774, 775, + 776, 777, 778, 779, 780, 0, 0, 0, 0, 740, + 741, 742, 743, 744, 781, 782, 747, 748, 749, 750, + 0, 752, 753, 754, 755, 0, 0, 0, 0, 756, + 0, 758, 759, 0, 0, 0, 0, 762, 0, 764, + 730, 731, 0, 0, 740, 741, 742, 743, 744, 0, + 0, 747, 748, 749, 750, 0, 752, 753, 754, 755, + 0, 0, 0, 0, 756, 0, 758, 759, 730, 731, + 0, 0, 762, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 771, 772, 773, 774, 775, + 776, 777, 778, 779, 780, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 781, 782, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 768, 0, 769, 770, 771, 772, 773, 774, - 775, 776, 777, 778, 0, 0, 0, 0, 738, 739, - 740, 741, 742, 779, 780, 745, 746, 747, 748, 0, - 750, 751, 752, 753, 0, 0, 0, 0, 754, 0, - 756, 757, 0, 0, 0, 0, 760, 761, 762, 728, - 729, 0, -740, 738, 739, 740, 741, 742, 0, 0, - 745, 746, 747, 748, 0, 750, 751, 752, 753, 0, - 0, 0, 0, 754, 0, 756, 757, 0, 0, 0, - 0, 760, 761, 762, 728, 729, 0, 0, 0, 0, - 0, 0, 768, 0, 769, 770, 771, 772, 773, 774, - 775, 776, 777, 778, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 779, 780, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 768, 0, 769, - 770, 771, 772, 773, 774, 775, 776, 777, 778, 0, - 0, 0, 0, 738, 739, 740, 741, 742, 779, 780, - 745, 746, 747, 748, 0, 750, 751, 752, 753, 0, - 0, 0, 0, 754, 0, 756, 757, 0, 0, 0, - 0, 760, 0, 762, 728, 729, 0, 0, 738, 739, - 740, 741, 742, 0, 0, 745, 746, 747, 748, 0, - 750, 751, 752, 753, 0, 0, 0, 0, 754, 0, - 756, 757, 728, 729, 0, 0, 760, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 769, - 770, 771, 772, 773, 774, 775, 776, 777, 778, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 779, 780, + 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, + 0, 0, 0, 0, 740, 741, 742, 743, 744, 781, + 782, 747, 748, 749, 750, 0, 752, 753, 754, 755, + 0, 0, 0, 0, 756, 0, 758, 759, 730, 731, + 0, 0, 740, 741, 742, 743, 744, 0, 0, 747, + 748, 749, 750, 0, 752, 753, 754, 755, 0, 0, + 0, 0, 756, 0, 758, 759, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 769, 770, 771, 772, 773, 774, - 775, 776, 777, 778, 0, 0, 0, 0, 738, 739, - 740, 741, 742, 779, 780, 745, 746, 747, 748, 0, - 750, 751, 752, 753, 0, 0, 0, 0, 754, 0, - 756, 757, 728, 729, 0, 0, 738, 739, 740, 741, - 742, 0, 0, 745, 746, 747, 748, 0, 750, 751, - 752, 753, 0, 0, 0, 0, 754, 0, 756, 757, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, + 0, 0, 0, 0, 965, 0, 0, 0, 0, 781, + 782, 0, 0, 0, 0, 0, 0, 0, 0, 772, + 773, 774, 775, 776, 777, 778, 779, 780, 0, 0, + 0, 0, 740, 741, 742, 743, 744, 781, 782, 747, + 748, 749, 750, 0, 752, 753, 754, 755, 0, 0, + 0, 0, 756, 0, 758, 759, 316, 317, 318, 0, + 320, 321, 322, 323, 324, 463, 326, 327, 328, 329, + 330, 331, 332, 333, 334, 335, 336, 0, 338, 339, + 340, 0, 0, 343, 344, 345, 346, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 969, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 769, 770, 771, 772, 773, 774, - 775, 776, 777, 778, 0, 0, 0, 0, 967, 0, - 0, 0, 0, 779, 780, 0, 0, 0, 0, 0, - 0, 0, 0, 770, 771, 772, 773, 774, 775, 776, - 777, 778, 0, 0, 0, 0, 738, 739, 740, 741, - 742, 779, 780, 745, 746, 747, 748, 0, 750, 751, - 752, 753, 0, 0, 0, 0, 754, 0, 756, 757, - 314, 315, 316, 0, 318, 319, 320, 321, 322, 461, - 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, - 334, 0, 336, 337, 338, 0, 0, 341, 342, 343, - 344, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1227, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 771, 772, 773, 774, 775, 776, - 777, 778, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 779, 780, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 968, 0, 0, 0, - 0, 0, 0, 0, 0, 314, 315, 316, 969, 318, - 319, 320, 321, 322, 461, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 0, 336, 337, 338, - 0, 0, 341, 342, 343, 344, 0, 0, 0, 0, + 773, 774, 775, 776, 777, 778, 779, 780, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 781, 782, 0, + 1229, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 966, 0, 0, 0, 0, 0, 0, 0, + 0, 316, 317, 318, 967, 320, 321, 322, 323, 324, + 463, 326, 327, 328, 329, 330, 331, 332, 333, 334, + 335, 336, 0, 338, 339, 340, 0, 0, 343, 344, + 345, 346, 316, 317, 318, 0, 320, 321, 322, 323, + 324, 463, 326, 327, 328, 329, 330, 331, 332, 333, + 334, 335, 336, 0, 338, 339, 340, 0, 0, 343, + 344, 345, 346, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 181, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 970, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 971, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 182, + 0, 183, 0, 184, 185, 186, 187, 188, 1230, 189, + 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, + 1231, 200, 201, 202, 0, 0, 203, 204, 205, 206, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 207, 208, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1228, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1229 + 0, 0, 0, 0, 0, 0, 0, 209 }; static const yytype_int16 yycheck[] = { - 14, 15, 209, 225, 480, 643, 619, 568, 373, 373, - 588, 717, 159, 386, 706, 587, 708, 898, 1161, 441, - 535, 225, 380, 582, 808, 584, 810, 586, 812, 19, - 7, 32, 4, 469, 470, 914, 373, 441, 101, 686, - 79, 920, 415, 19, 559, 19, 32, 52, 62, 63, - 64, 14, 15, 624, 56, 19, 52, 1351, 19, 21, - 62, 465, 1387, 19, 19, 142, 143, 144, 18, 19, - 124, 1504, 153, 127, 128, 141, 441, 158, 500, 6, - 153, 130, 193, 125, 178, 158, 0, 158, 102, 103, - 104, 105, 6, 135, 56, 150, 168, 125, 127, 128, - 465, 212, 49, 158, 441, 478, 479, 127, 128, 1529, - 161, 45, 683, 168, 685, 29, 687, 31, 212, 33, - 20, 21, 49, 189, 695, 39, 1559, 156, 465, 101, - 102, 180, 213, 704, 215, 49, 213, 14, 15, 168, - 212, 55, 215, 90, 215, 187, 20, 21, 1442, 371, - 192, 178, 299, 216, 1574, 209, 210, 212, 673, 187, - 156, 853, 190, 33, 386, 79, 46, 371, 572, 591, - 1313, 105, 168, 180, 1499, 180, 183, 179, 217, 168, - 209, 210, 140, 150, 876, 180, 66, 101, 102, 209, - 210, 192, 62, 415, 187, 417, 186, 889, 161, 194, - 892, 168, 179, 166, 211, 168, 192, 572, 171, 210, - 186, 225, 186, 635, 636, 216, 116, 117, 168, 125, - 178, 193, 186, 180, 124, 186, 126, 127, 128, 129, - 186, 186, 636, 210, 134, 572, 198, 444, 660, 61, - 212, 663, 116, 117, 186, 951, 1408, 209, 186, 212, - 124, 458, 126, 127, 128, 129, 478, 479, 168, 189, - 134, 1142, 666, 302, 134, 125, 180, 180, 186, 642, - 1495, 636, 1497, 211, 1417, 135, 1501, 1502, 1157, 186, - 186, 187, 141, 189, 161, 199, 192, 125, 32, 166, - 726, 168, 665, 211, 171, 717, 210, 135, 168, 636, - 213, 666, 125, 141, 214, 1467, 1468, 178, 180, 209, - 210, 193, 135, 180, 180, 59, 60, 180, 125, 150, - 1482, 1202, 212, 197, 198, 199, 156, 187, 135, 666, - 212, 180, 1557, 203, 348, 209, 210, 168, 168, 183, - 184, 213, 212, 214, 215, 194, 213, 213, 125, 187, - 213, 573, 574, 575, 209, 577, 578, 371, 135, 581, - 782, 583, 376, 585, 187, 587, 724, 211, 939, 573, - 574, 575, 386, 577, 578, 1537, 1538, 581, 122, 583, - 187, 585, 126, 213, 180, 56, 180, 20, 21, 168, - 794, 62, 1098, 730, 731, 732, 733, 734, 735, 736, - 737, 415, 961, 417, 180, 125, 743, 744, 4, 5, - 187, 7, 749, 150, 186, 135, 623, 213, 155, 213, - 642, 758, 759, 437, 846, 186, 763, 764, 765, 794, - 767, 168, 1216, 1312, 32, 950, 840, 213, 190, 35, - 647, 213, 194, 665, 188, 1324, 186, 186, 192, 925, - 194, 195, 213, 186, 1160, 186, 193, 794, 161, 935, - 186, 59, 60, 186, 478, 479, 210, 187, 841, 842, - 906, 186, 216, 213, 213, 840, 1089, 186, 180, 852, - 213, 150, 213, 116, 117, 692, 180, 213, 168, 911, - 213, 124, 194, 187, 127, 128, 129, 919, 213, 168, - 1078, 134, 211, 840, 1076, 712, 728, 729, 881, 882, - 1157, 884, 62, 63, 64, 888, 180, 890, 891, 186, - 893, 186, 1306, 186, 122, 1172, 186, 180, 126, 180, - 194, 189, 754, 189, 192, 971, 972, 973, 194, 168, - 169, 170, 189, 194, 211, 189, 211, 194, 211, 180, - 194, 211, 102, 103, 104, 105, 212, 1341, 168, 573, - 574, 575, 74, 577, 578, 212, 78, 581, 212, 583, - 199, 585, 193, 587, 193, 180, 209, 210, 180, 168, - 92, 93, 4, 5, 1143, 97, 98, 99, 100, 194, - 188, 212, 194, 212, 192, 178, 818, 195, 189, 11, - 168, 168, 24, 194, 826, 168, 189, 829, 30, 168, - 22, 23, 210, 180, 818, 629, 838, 180, 216, 841, - 842, 212, 826, 845, 178, 829, 848, 168, 642, 32, - 852, 928, 186, 930, 838, 156, 1195, 156, 156, 180, - 156, 845, 1348, 790, 848, 67, 68, 168, 180, 168, - 168, 665, 168, 156, 1438, 1293, 59, 60, 190, 881, - 882, 189, 884, 168, 192, 168, 888, 874, 890, 891, - 179, 893, 1094, 182, 172, 186, 185, 56, 189, 101, - 102, 192, 56, 62, 56, 56, 56, 56, 62, 178, - 62, 62, 62, 62, 180, 709, 180, 56, 180, 180, - 186, 180, 186, 1316, 186, 186, 928, 186, 930, 180, - 190, 1403, 190, 190, 194, 186, 194, 194, 142, 122, - 144, 190, 125, 126, 928, 194, 930, 180, 1150, 1102, - 1103, 1104, 135, 172, 173, 190, 158, 159, 160, 194, - 190, 190, 172, 190, 194, 194, 168, 194, 190, 1171, - 190, 142, 194, 1126, 194, 1177, 178, 172, 173, 174, - 175, 105, 1184, 32, 172, 173, 1188, 85, 86, 179, - 180, 193, 182, 187, 788, 34, 178, 180, 142, 143, - 144, 168, 169, 170, 187, 188, 178, 1346, 210, 192, - 59, 60, 195, 214, 215, 468, 469, 470, 178, 172, - 173, 174, 1224, 1416, 818, 34, 212, 210, 1030, 10, - 11, 12, 826, 216, 1236, 829, 179, 180, 181, 168, - 178, 1194, 1187, 1187, 838, 179, 215, 841, 842, 168, - 168, 845, 168, 211, 848, 21, 1483, 1475, 852, 168, - 42, 189, 189, 1065, 211, 518, 178, 178, 1540, 1541, - 1187, 1543, 212, 122, 1076, 212, 125, 126, 193, 193, - 193, 1065, 212, 193, 190, 193, 135, 881, 882, 193, - 884, 193, 545, 193, 888, 212, 890, 891, 193, 893, - 1102, 1103, 1104, 1444, 193, 1307, 1533, 1534, 193, 168, - 135, 212, 1539, 168, 32, 211, 168, 1544, 168, 210, - 193, 193, 212, 193, 1126, 212, 168, 193, 193, 212, - 193, 161, 180, 193, 928, 1337, 930, 193, 187, 188, - 193, 59, 60, 192, 212, 212, 195, 193, 212, 36, - 212, 1578, 1579, 180, 212, 212, 180, 9, 1551, 180, - 180, 210, 180, 180, 215, 180, 65, 216, 212, 1425, - 210, 179, 1428, 42, 212, 168, 213, 1518, 1519, 193, - 168, 180, 211, 18, 179, 1387, 180, 640, 179, 24, - 32, 189, 1194, 180, 179, 30, 212, 42, 130, 212, - 13, 193, 186, 193, 122, 40, 1359, 187, 126, 1196, - 193, 189, 161, 48, 215, 668, 186, 59, 60, 178, - 12, 186, 158, 168, 1565, 7, 168, 194, 63, 168, - 168, 186, 186, 179, 213, 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, 212, 1271, - 188, 1065, 1474, 726, 192, 179, 194, 195, 1480, 213, - 122, 211, 1076, 212, 126, 212, 168, 1271, 213, 212, - 1443, 1278, 210, 193, 1, 193, 212, 1499, 216, 212, - 212, 212, 212, 179, 66, 1507, 180, 168, 1102, 1103, - 1104, 194, 42, 194, 20, 21, 194, 168, 213, 154, - 212, 168, 213, 213, 213, 168, 212, 211, 168, 168, - 193, 211, 1126, 168, 211, 168, 180, 212, 180, 212, - 212, 212, 212, 796, 211, 213, 188, 212, 180, 213, - 192, 168, 194, 195, 211, 211, 1343, 1359, 1560, 1361, - 32, 168, 212, 212, 1517, 69, 212, 194, 210, 194, - 180, 1358, 213, 52, 216, 212, 212, 1361, 212, 214, - 179, 216, 212, 212, 212, 179, 212, 373, 212, 179, - 213, 213, 211, 213, 180, 211, 179, 383, 213, 213, - 1194, 213, 211, 211, 694, 211, 392, 78, 114, 115, - 116, 117, 118, 1, 44, 121, 402, 131, 124, 81, - 126, 127, 128, 129, 1435, 1412, 412, 1436, 134, 788, - 136, 137, 223, 937, 1, 421, 1436, 1436, 1436, 1436, - 1412, 1443, 957, 896, 1356, 431, 1379, 518, 1464, 1248, - 1382, 425, 1465, 906, 1456, 441, 52, 1098, 557, 1423, - 446, 437, 448, 1167, 437, 686, -1, -1, -1, -1, - -1, 457, 1456, -1, -1, -1, -1, 1271, -1, 465, - 466, 467, -1, -1, -1, -1, -1, 193, 194, 195, - 196, 197, 198, 199, 480, -1, -1, 20, 21, -1, - -1, -1, 488, 209, 210, 491, -1, -1, 494, 495, - 496, 497, 498, -1, -1, 1517, -1, -1, 971, 972, - 973, 507, -1, 976, -1, 978, -1, 980, 1515, 982, - -1, 984, -1, 986, -1, 988, -1, 990, -1, 20, - 21, -1, 995, -1, 997, -1, -1, -1, -1, -1, - 1003, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 1015, -1, 1017, 1359, -1, 1361, -1, 1022, - -1, 1024, -1, 1026, -1, -1, 1029, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 572, -1, -1, -1, - -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, - -1, 124, -1, 126, 127, 128, 129, 1060, -1, -1, - -1, 134, -1, -1, 600, -1, -1, 1604, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 114, 115, 116, 117, 118, 1091, -1, - 121, 122, 123, 124, -1, 126, 127, 128, 129, 1443, - 636, -1, -1, 134, -1, 136, 137, 643, 644, -1, - 646, -1, 1456, -1, -1, 651, -1, -1, -1, -1, - -1, 657, 195, 196, 197, 198, 199, -1, -1, -1, - 666, -1, -1, -1, -1, -1, 209, 210, -1, -1, - -1, 677, 678, 679, 680, 681, 682, -1, 684, -1, - 686, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 1504, 11, 193, 194, 195, 196, 197, 198, 199, -1, - 20, 21, -1, 1517, -1, -1, -1, -1, 209, 210, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 730, 731, 732, 733, 734, 735, - 736, 737, 738, 739, -1, -1, 742, 743, 744, 745, - 746, 747, -1, 749, 750, 1559, 752, 753, 754, 755, + 14, 15, 211, 482, 570, 227, 621, 708, 375, 710, + 375, 719, 590, 161, 589, 388, 645, 900, 626, 537, + 584, 443, 586, 227, 588, 810, 916, 812, 1163, 814, + 4, 443, 922, 382, 32, 471, 472, 19, 7, 80, + 19, 688, 52, 561, 417, 32, 1389, 19, 21, 63, + 64, 65, 1410, 19, 19, 467, 18, 19, 103, 52, + 45, 19, 56, 19, 130, 1353, 0, 168, 62, 125, + 14, 15, 6, 142, 143, 144, 125, 685, 443, 687, + 502, 689, 156, 56, 190, 158, 125, 178, 194, 697, + 104, 105, 106, 107, 168, 29, 135, 31, 706, 33, + 33, 1531, 467, 14, 15, 39, 124, 480, 481, 127, + 128, 1469, 1470, 214, 180, 49, 141, 1497, 49, 1499, + 105, 55, 125, 1503, 1504, 153, 1484, 101, 102, 62, + 158, 187, 135, 1506, 190, 4, 5, 186, 187, 213, + 189, 150, 215, 192, 213, 79, 1576, 180, 187, 158, + 180, 373, 168, 301, 855, 24, 1444, 675, 1501, 168, + 91, 30, 574, 156, 189, 178, 388, 101, 102, 373, + 180, 593, 180, 218, 61, 168, 189, 878, 219, 1559, + 1315, 1539, 1540, 213, 187, 179, 194, 215, 1561, 192, + 891, 209, 210, 894, 192, 417, 212, 419, 67, 68, + 150, 134, 161, 212, 186, 192, 168, 186, 141, 574, + 179, 20, 21, 227, 186, 637, 638, 161, 168, 193, + 186, 186, 166, 210, 168, 198, 638, 171, 186, 216, + 186, 186, 101, 102, 125, 168, 209, 446, 212, 141, + 662, 210, 46, 665, 135, 953, 180, 127, 128, 178, + 161, 460, 127, 128, 180, 166, 668, 168, 480, 481, + 171, 1144, 66, 304, 125, 199, 168, 6, 212, 1159, + 203, 644, 141, 638, 135, 140, 210, 153, 125, 212, + 141, 156, 158, 212, 1419, 125, 178, 213, 135, 158, + 159, 160, 728, 168, 667, 135, 187, 719, 180, 168, + 20, 21, 187, 668, 125, 114, 115, 116, 117, 178, + 49, 189, 180, 178, 135, 124, 180, 126, 127, 128, + 129, 1204, 214, 215, 193, 134, 187, 136, 137, 209, + 210, 213, 180, 941, 209, 210, 350, 213, 150, 215, + 187, 210, 20, 21, 190, 213, 194, 187, 194, 213, + 183, 184, 180, 575, 576, 577, 168, 579, 580, 373, + 180, 583, 784, 585, 378, 587, 187, 589, 186, 180, + 168, 575, 576, 577, 388, 579, 580, 726, 211, 583, + 186, 585, 180, 587, 796, 213, 195, 196, 197, 198, + 199, 168, 1100, 213, 186, 213, 116, 117, 186, 963, + 209, 210, 213, 417, 124, 419, 126, 127, 128, 129, + 168, 169, 170, 180, 134, 180, 625, 186, 63, 64, + 65, 213, 644, 211, 1314, 439, 848, 194, 141, 194, + 842, 796, 180, 1218, 952, 183, 1326, 150, 116, 117, + 649, 199, 155, 190, 213, 667, 124, 194, 927, 127, + 128, 129, 186, 186, 1162, 168, 134, 186, 937, 104, + 105, 106, 107, 211, 141, 141, 480, 481, 186, 186, + 843, 844, 908, 180, 150, 186, 1091, 842, 211, 213, + 193, 854, 211, 4, 5, 694, 7, 194, 186, 209, + 210, 913, 168, 186, 186, 213, 213, 186, 56, 921, + 211, 186, 1080, 1078, 62, 714, 20, 21, 730, 731, + 883, 884, 1159, 886, 35, 213, 186, 890, 211, 892, + 893, 213, 895, 1308, 213, 193, 211, 1174, 180, 74, + 193, 209, 210, 78, 756, 178, 190, 973, 974, 975, + 194, 211, 194, 186, 212, 189, 180, 92, 93, 212, + 194, 32, 97, 98, 99, 100, 212, 193, 1343, 189, + 194, 575, 576, 577, 194, 579, 580, 189, 212, 583, + 180, 585, 194, 587, 193, 589, 212, 187, 59, 60, + 11, 1145, 212, 168, 189, 168, 161, 156, 156, 194, + 212, 22, 23, 212, 180, 180, 156, 180, 820, 168, + 168, 190, 116, 117, 190, 194, 828, 212, 168, 831, + 124, 32, 126, 127, 128, 129, 820, 631, 840, 209, + 134, 843, 844, 156, 828, 847, 189, 831, 850, 192, + 644, 32, 854, 1197, 56, 168, 840, 156, 59, 60, + 62, 122, 1350, 847, 792, 126, 850, 172, 186, 168, + 56, 189, 375, 667, 192, 1440, 62, 179, 59, 60, + 182, 883, 884, 185, 886, 180, 1295, 876, 890, 56, + 892, 893, 56, 895, 1096, 62, 179, 180, 62, 182, + 56, 195, 196, 197, 198, 199, 62, 56, 180, 168, + 169, 170, 180, 62, 186, 209, 210, 711, 186, 180, + 180, 122, 168, 1318, 1405, 126, 186, 188, 930, 180, + 932, 192, 180, 194, 195, 186, 180, 142, 186, 144, + 443, 122, 186, 190, 125, 126, 930, 194, 932, 210, + 1152, 1104, 1105, 1106, 135, 216, 190, 190, 190, 190, + 194, 194, 194, 194, 467, 190, 930, 189, 932, 194, + 192, 1173, 168, 20, 21, 1128, 180, 1179, 172, 173, + 174, 175, 172, 173, 1186, 214, 215, 188, 1190, 172, + 173, 192, 168, 194, 195, 168, 790, 86, 87, 180, + 142, 143, 144, 168, 1348, 168, 187, 188, 168, 210, + 178, 192, 56, 172, 195, 216, 142, 470, 471, 472, + 172, 173, 174, 1418, 1226, 180, 820, 105, 178, 210, + 1032, 179, 180, 181, 828, 216, 1238, 831, 10, 11, + 12, 187, 1189, 1196, 1189, 178, 840, 178, 178, 843, + 844, 34, 34, 847, 212, 168, 850, 179, 1485, 168, + 854, 1542, 1543, 168, 1545, 1067, 168, 520, 1477, 116, + 117, 574, 215, 211, 21, 168, 1078, 124, 189, 126, + 127, 128, 129, 1067, 211, 189, 178, 134, 178, 883, + 884, 212, 886, 42, 547, 193, 890, 193, 892, 893, + 1446, 895, 1104, 1105, 1106, 193, 212, 1309, 1535, 1536, + 193, 193, 212, 193, 1541, 212, 32, 193, 193, 1546, + 193, 193, 193, 190, 135, 168, 1128, 212, 168, 168, + 211, 168, 193, 210, 193, 638, 930, 1339, 932, 193, + 168, 193, 212, 59, 60, 193, 212, 212, 180, 161, + 197, 198, 199, 1580, 1581, 193, 212, 32, 1553, 193, + 193, 212, 209, 210, 193, 668, 212, 212, 1427, 193, + 212, 1430, 36, 180, 1520, 1521, 212, 180, 9, 180, + 215, 180, 180, 180, 59, 60, 180, 1389, 65, 642, + 210, 212, 32, 212, 1196, 179, 42, 193, 213, 168, + 168, 211, 180, 179, 189, 180, 122, 180, 1361, 1198, + 126, 130, 32, 179, 179, 42, 193, 670, 13, 59, + 60, 1567, 212, 212, 186, 189, 193, 187, 32, 732, + 733, 734, 735, 736, 737, 738, 739, 193, 161, 59, + 60, 215, 745, 746, 186, 178, 12, 122, 751, 186, + 158, 126, 7, 168, 168, 59, 60, 760, 761, 194, + 32, 213, 765, 766, 767, 168, 769, 168, 212, 186, + 211, 1273, 188, 1067, 1476, 728, 192, 186, 194, 195, + 1482, 179, 122, 179, 1078, 125, 126, 59, 60, 1273, + 212, 1280, 1445, 796, 210, 135, 168, 1, 193, 1501, + 216, 213, 122, 213, 193, 212, 126, 1509, 212, 179, + 1104, 1105, 1106, 188, 66, 32, 168, 192, 122, 194, + 195, 212, 126, 180, 212, 212, 212, 212, 194, 194, + 42, 194, 168, 213, 1128, 210, 212, 193, 212, 842, + 213, 216, 59, 60, 213, 798, 213, 187, 188, 211, + 122, 211, 192, 211, 126, 195, 1345, 168, 168, 1361, + 1562, 1363, 168, 168, 212, 212, 1519, 212, 188, 212, + 210, 1360, 192, 180, 194, 195, 216, 168, 213, 1363, + 212, 180, 212, 211, 188, 168, 211, 213, 192, 375, + 210, 195, 211, 32, 212, 212, 216, 168, 212, 385, + 212, 69, 1196, 212, 212, 122, 210, 194, 394, 126, + 212, 212, 216, 213, 194, 212, 188, 213, 404, 212, + 192, 180, 194, 195, 212, 1414, 52, 213, 414, 211, + 179, 179, 213, 179, 211, 180, 211, 423, 210, 213, + 32, 211, 179, 1445, 216, 898, 213, 433, 213, 211, + 79, 696, 1, 44, 133, 908, 1458, 443, 82, 1437, + 790, 1438, 448, 939, 450, 225, 1438, 59, 60, 1438, + 1438, 188, 1438, 459, 1458, 192, 1, 194, 195, 1273, + 959, 467, 468, 469, 1414, 1358, 1381, 1466, 1384, 520, + 1250, 427, 1467, 210, 52, 559, 482, 1100, 1425, 216, + 439, 439, -1, 1169, 490, -1, 688, 493, -1, -1, + 496, 497, 498, 499, 500, -1, -1, 1519, -1, -1, + 973, 974, 975, 509, -1, 978, -1, 980, 1517, 982, + 122, 984, -1, 986, 126, 988, -1, 990, -1, 992, + -1, 20, 21, -1, 997, -1, 999, -1, -1, -1, + -1, -1, 1005, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 1017, -1, 1019, 1361, -1, 1363, + -1, 1024, -1, 1026, -1, 1028, -1, -1, 1031, 733, + 734, 735, 736, 737, 738, 739, -1, -1, 574, -1, + -1, 745, 746, -1, -1, -1, 188, 751, -1, -1, + 192, -1, 194, 195, -1, -1, 760, 761, -1, 1062, + -1, 765, 766, 767, -1, 769, 602, 1606, 210, -1, + -1, -1, -1, -1, 216, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 114, 115, 116, 117, 118, + 1093, -1, 121, 122, 123, 124, -1, 126, 127, 128, + 129, 1445, 638, -1, -1, 134, -1, 136, 137, 645, + 646, -1, 648, -1, 1458, -1, -1, 653, -1, -1, + -1, -1, -1, 659, -1, -1, -1, -1, -1, -1, + -1, -1, 668, -1, -1, -1, 1189, -1, -1, -1, + -1, -1, -1, 679, 680, 681, 682, 683, 684, -1, + 686, -1, 688, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 1506, 11, 193, 194, 195, 196, 197, 198, + 199, -1, 20, 21, -1, 1519, -1, -1, -1, -1, + 209, 210, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 732, 733, 734, 735, + 736, 737, 738, 739, 740, 741, -1, -1, 744, 745, + 746, 747, 748, 749, -1, 751, 752, 1561, 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, -1, 780, -1, -1, -1, 784, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 794, -1, - -1, -1, -1, -1, 114, 115, 116, 117, 118, -1, + 776, 777, 778, 779, 780, -1, 782, -1, -1, -1, + 786, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 796, -1, -1, -1, -1, -1, 114, 115, 116, 117, + 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, + 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, + -1, -1, -1, -1, 142, 143, 144, -1, -1, 835, + 148, -1, -1, -1, -1, -1, 842, -1, -1, -1, + -1, -1, -1, 849, -1, -1, -1, -1, -1, -1, + -1, -1, 858, 859, 860, 861, 862, 863, 864, 865, + 866, 867, 868, 869, 870, 871, 872, 873, 874, 875, + 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, + 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 209, 210, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 911, 912, -1, -1, -1, + -1, -1, 4, 5, -1, -1, -1, -1, -1, 925, + -1, 927, 14, 15, 16, 17, 18, -1, 934, -1, + -1, 937, 24, -1, 26, -1, 942, -1, 30, -1, + 32, -1, -1, -1, -1, 951, 38, -1, -1, -1, + -1, -1, 44, -1, -1, 47, -1, -1, 50, -1, + 52, -1, 54, -1, -1, -1, -1, 59, 60, -1, + -1, -1, 64, -1, -1, 67, 68, -1, 70, 71, + 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, + 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, + 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, + 102, 103, -1, -1, -1, -1, -1, -1, 32, -1, + -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, + 122, -1, -1, -1, 126, -1, -1, -1, -1, 1045, + -1, -1, -1, 1049, -1, 59, 60, -1, -1, 141, + -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, + 152, 153, -1, 155, 156, 157, 158, 159, 160, 161, + 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, + -1, -1, -1, -1, -1, -1, 178, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 188, -1, -1, -1, + 192, -1, -1, 195, 196, 197, -1, 199, 122, -1, + 202, 203, 126, -1, -1, -1, -1, -1, 210, -1, + 212, -1, 214, 215, 216, -1, 1132, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 9, -1, -1, -1, -1, -1, -1, -1, 1154, 1155, + 1156, 20, 21, -1, 1160, -1, -1, -1, -1, -1, + -1, -1, 1168, 1169, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 188, -1, -1, -1, 192, -1, + 194, 195, -1, 1189, -1, -1, -1, -1, 1194, 1195, + -1, -1, -1, -1, -1, 1201, 210, -1, 20, 21, + 1206, -1, 216, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 1220, -1, 1222, -1, -1, -1, + -1, 1227, -1, -1, -1, -1, -1, 1233, -1, -1, + -1, 1237, -1, -1, -1, -1, -1, 106, 107, 108, + 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, + 129, -1, -1, -1, -1, 134, 135, 136, 137, 138, + 139, 1277, -1, 142, 143, 144, 145, 146, 147, 148, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 1295, + -1, -1, 114, 115, 116, 117, 118, -1, -1, 121, + -1, -1, 124, -1, 126, 127, 128, 129, -1, -1, + -1, -1, 134, -1, 136, 137, -1, -1, 187, 188, + -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, + 199, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 209, 210, -1, -1, -1, 214, 215, -1, -1, -1, + 20, 21, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 1369, -1, 1371, -1, -1, -1, -1, + 1376, 193, 194, 195, 196, 197, 198, 199, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 209, 210, -1, + -1, -1, 1398, -1, -1, -1, -1, -1, -1, -1, + 1406, 1407, 1408, -1, -1, -1, -1, 1413, -1, -1, + -1, 1417, -1, -1, -1, 1421, 1422, 1423, 1424, -1, + -1, 1427, 1428, -1, 1430, 1431, -1, -1, -1, -1, + -1, -1, 1438, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 1449, 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, -1, -1, - -1, -1, 142, 143, 144, -1, -1, 833, 148, -1, - -1, -1, -1, -1, 840, -1, -1, -1, -1, -1, - -1, 847, -1, -1, -1, -1, -1, -1, -1, -1, - 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, - 866, 867, 868, 869, 870, 871, 872, 873, 188, -1, + -1, 1477, 142, 143, 144, -1, -1, -1, 148, -1, + -1, -1, -1, -1, -1, 1491, 1492, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 1505, + -1, -1, -1, -1, 1510, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 32, 1522, 1523, 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 731, 732, 733, 734, 735, 736, 737, -1, -1, 209, - 210, -1, 743, 744, -1, -1, -1, -1, 749, -1, - -1, -1, -1, 909, 910, -1, -1, 758, 759, -1, - 4, 5, 763, 764, 765, -1, 767, 923, -1, 925, - 14, 15, 16, 17, 18, -1, 932, -1, -1, 935, - 24, -1, 26, -1, 940, -1, 30, -1, 32, -1, - -1, -1, -1, 949, 38, -1, -1, -1, -1, -1, - 44, -1, -1, 47, -1, -1, 50, -1, 52, -1, - 54, -1, -1, -1, -1, 59, 60, -1, -1, -1, - 64, -1, -1, 67, 68, -1, 70, 71, 72, -1, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, - 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, - 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, - -1, -1, -1, -1, -1, -1, 32, -1, -1, -1, - -1, -1, 116, 117, -1, -1, -1, -1, 122, -1, - -1, -1, 126, -1, -1, -1, -1, 1043, -1, -1, - -1, 1047, -1, 59, 60, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, - -1, 155, 156, 157, 158, 159, 160, 161, 162, 163, - 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, - -1, -1, -1, -1, 178, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 188, -1, -1, -1, 192, -1, - -1, 195, 196, 197, -1, 199, 122, -1, 202, 203, - 126, -1, -1, -1, 20, 21, 210, -1, 212, -1, - 214, 215, 216, -1, 1130, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 9, -1, - -1, -1, -1, -1, -1, -1, 1152, 1153, 1154, 20, - 21, -1, 1158, -1, -1, -1, -1, -1, -1, -1, - 1166, 1167, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 188, -1, -1, -1, 192, -1, 194, 195, - -1, 1187, -1, -1, -1, -1, 1192, 1193, -1, -1, - -1, -1, -1, 1199, 210, -1, -1, -1, 1204, -1, - 216, -1, -1, -1, -1, -1, -1, -1, 114, 115, - 116, 117, 1218, -1, 1220, -1, -1, -1, 124, 1225, - 126, 127, 128, 129, -1, 1231, -1, -1, 134, 1235, - 136, 137, -1, -1, -1, 106, 107, 108, 109, 110, - 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 127, 128, 129, -1, - -1, -1, -1, 134, 135, 136, 137, 138, 139, 1275, - -1, 142, 143, 144, 145, 146, 147, 148, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 1293, -1, 195, - 196, 197, 198, 199, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 209, 210, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 187, 188, -1, 190, - 191, 192, 193, 194, 195, 196, 197, 198, 199, 34, - -1, -1, -1, -1, -1, -1, -1, -1, 209, 210, - -1, -1, -1, 214, 215, -1, -1, -1, 20, 21, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 1367, -1, 1369, -1, 70, -1, 72, 1374, 74, - 75, 76, 77, 78, -1, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, - 1396, -1, 97, 98, 99, 100, -1, -1, 1404, 1405, - 1406, -1, -1, -1, -1, 1411, -1, -1, -1, 1415, - -1, 116, 117, 1419, 1420, 1421, 1422, -1, -1, 1425, - 1426, -1, 1428, 1429, -1, -1, -1, -1, -1, -1, - 1436, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 1447, 114, 115, 116, 117, 118, -1, -1, 121, - 122, 123, 124, -1, 126, 127, 128, 129, -1, -1, - -1, -1, 134, 168, 136, 137, -1, -1, -1, 1475, - 142, 143, 144, -1, -1, -1, 148, -1, -1, -1, - -1, -1, -1, 1489, 1490, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 1503, -1, -1, - -1, -1, 1508, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 32, 1520, 1521, 188, -1, 190, 191, - 192, 193, 194, 195, 196, 197, 198, 199, -1, 1535, - -1, -1, -1, -1, -1, -1, -1, 209, 210, -1, - 59, 60, 214, 215, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 1561, -1, -1, -1, -1, - 1566, 1567, 1, -1, -1, 4, 5, 6, -1, 8, - 9, 10, -1, 12, -1, 14, 15, 16, 17, 18, - 1586, -1, 1588, 1589, -1, 24, 25, 26, 27, 28, - -1, 30, 1598, -1, -1, -1, -1, -1, 37, 38, - -1, -1, 41, 122, 43, 44, -1, 126, 47, -1, - 49, 50, 51, -1, 53, 54, -1, -1, 57, 58, - -1, -1, -1, -1, -1, 64, -1, -1, 67, 68, - -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, - 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, - 99, 100, 101, 102, 103, 104, -1, -1, -1, 188, - -1, -1, -1, 192, -1, 194, 195, 116, 117, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 210, 131, 132, 133, -1, -1, 216, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, - 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, - 179, 180, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 195, 196, 197, -1, - 199, -1, -1, 202, 203, -1, -1, -1, -1, -1, - -1, 210, -1, 212, 1, 214, 215, 4, 5, 6, + -1, 1537, -1, -1, -1, -1, -1, -1, -1, 209, + 210, -1, 59, 60, 214, 215, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 1563, -1, -1, + -1, -1, 1568, 1569, 1, -1, -1, 4, 5, 6, -1, 8, 9, 10, -1, 12, -1, 14, 15, 16, - 17, 18, -1, -1, -1, -1, -1, 24, 25, 26, - 27, 28, -1, 30, -1, -1, -1, -1, -1, -1, - 37, 38, -1, -1, 41, -1, 43, 44, -1, -1, + 17, 18, 1588, -1, 1590, 1591, -1, 24, 25, 26, + 27, 28, -1, 30, 1600, -1, -1, -1, -1, -1, + 37, 38, -1, -1, 41, 122, 43, 44, -1, 126, 47, -1, 49, 50, 51, -1, 53, 54, -1, -1, 57, 58, -1, -1, -1, -1, -1, 64, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, 104, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, + -1, 188, -1, -1, -1, 192, -1, 194, 195, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 131, 132, 133, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 149, 150, 151, 152, 153, 32, 155, -1, + -1, -1, -1, 210, 131, 132, 133, -1, -1, 216, + -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, + -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, - -1, 178, 179, 180, 59, 60, -1, -1, -1, -1, + -1, 178, 179, 180, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 195, 196, - 197, -1, 199, -1, -1, 202, 203, -1, -1, 4, - 5, -1, -1, 210, -1, 212, -1, 214, 215, 14, + 197, -1, 199, -1, -1, 202, 203, -1, -1, -1, + -1, -1, -1, 210, -1, 212, 1, 214, 215, 4, + 5, 6, -1, 8, 9, 10, -1, 12, -1, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, - -1, 26, -1, -1, -1, 30, -1, 32, -1, -1, - -1, -1, -1, 38, -1, -1, -1, 122, -1, 44, - -1, 126, 47, -1, -1, 50, -1, -1, -1, 54, - -1, -1, -1, -1, 59, 60, -1, -1, -1, 64, + 25, 26, 27, 28, -1, 30, -1, -1, -1, -1, + -1, -1, 37, 38, -1, -1, 41, -1, 43, 44, + -1, -1, 47, -1, 49, 50, 51, -1, 53, 54, + -1, -1, 57, 58, -1, -1, -1, -1, -1, 64, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, - -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, - -1, -1, -1, 188, -1, -1, -1, 192, -1, 194, - 195, 116, 117, -1, -1, -1, -1, 122, -1, -1, - -1, 126, -1, -1, -1, 210, -1, -1, -1, -1, - -1, 216, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 97, 98, 99, 100, 101, 102, 103, 104, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 131, 132, 133, -1, + -1, -1, -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, 32, - 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, + 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, - -1, -1, -1, 178, -1, -1, 59, 60, -1, -1, - -1, -1, -1, 188, -1, -1, -1, 192, -1, -1, - 195, 196, 197, -1, 199, -1, -1, 202, 203, -1, - -1, -1, 4, 5, -1, 210, -1, 212, -1, 214, - 215, 216, 14, 15, 16, 17, 18, -1, -1, -1, - -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, - 32, -1, -1, -1, -1, -1, 38, -1, -1, 122, - -1, -1, 44, 126, -1, 47, -1, -1, 50, -1, - -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 64, -1, -1, 67, 68, -1, 70, 71, - 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, - 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, - 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, - 102, 103, -1, -1, -1, 188, -1, -1, -1, 192, - -1, 194, 195, -1, 116, 117, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 210, -1, -1, - -1, -1, -1, 216, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, - 152, 153, 32, 155, -1, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, - -1, -1, -1, -1, -1, -1, 178, -1, -1, 59, - 60, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 192, -1, -1, 195, 196, 197, -1, 199, -1, -1, - 202, 203, -1, -1, -1, 4, 5, -1, 210, -1, - 212, -1, 214, 215, 216, 14, 15, 16, 17, 18, - -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, - -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, - -1, -1, 122, -1, -1, 44, 126, -1, 47, -1, - -1, 50, -1, -1, -1, 54, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 64, -1, -1, 67, 68, - -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, - 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, - 99, 100, 101, 102, 103, -1, -1, -1, 188, -1, - -1, -1, 192, -1, 194, 195, -1, 116, 117, -1, - -1, -1, -1, -1, -1, -1, 125, -1, -1, -1, - 210, -1, 131, 132, 133, -1, 216, -1, -1, -1, + -1, -1, -1, 178, 179, 180, 59, 60, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 149, 150, 151, 152, 153, 32, 155, -1, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, - 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, - -1, -1, 59, 60, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 195, 196, 197, -1, - 199, -1, -1, 202, 203, -1, -1, 4, 5, -1, - -1, 210, -1, 212, -1, 214, 215, 14, 15, 16, + 195, 196, 197, -1, 199, -1, -1, 202, 203, -1, + -1, 4, 5, -1, -1, 210, -1, 212, -1, 214, + 215, 14, 15, 16, 17, 18, -1, -1, -1, -1, + -1, 24, -1, 26, -1, -1, -1, 30, -1, 32, + -1, -1, -1, -1, -1, 38, -1, -1, -1, 122, + -1, 44, -1, 126, 47, -1, -1, 50, -1, -1, + -1, 54, -1, -1, -1, -1, 59, 60, -1, -1, + -1, 64, -1, -1, 67, 68, -1, 70, 71, 72, + -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, + 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, + 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, + 103, -1, -1, -1, -1, 188, -1, -1, -1, 192, + -1, 194, 195, 116, 117, -1, -1, -1, -1, 122, + -1, -1, -1, 126, -1, -1, -1, 210, -1, -1, + -1, -1, -1, 216, -1, -1, -1, -1, 141, -1, + -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, + 153, 32, 155, 156, 157, 158, 159, 160, 161, 162, + 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, + -1, -1, -1, -1, -1, 178, -1, -1, 59, 60, + -1, -1, -1, -1, -1, 188, -1, -1, -1, 192, + -1, -1, 195, 196, 197, -1, 199, -1, -1, 202, + 203, -1, -1, -1, 4, 5, -1, 210, -1, 212, + -1, 214, 215, 216, 14, 15, 16, 17, 18, -1, + -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, + 30, -1, 32, -1, -1, -1, -1, -1, 38, -1, + -1, 122, -1, -1, 44, 126, -1, 47, -1, -1, + 50, -1, -1, -1, 54, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 64, -1, -1, 67, 68, -1, + 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, + 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, + 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, + 100, 101, 102, 103, -1, -1, -1, 188, -1, -1, + -1, 192, -1, 194, 195, -1, 116, 117, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 210, + -1, -1, -1, -1, -1, 216, -1, -1, -1, -1, + -1, 141, -1, -1, -1, -1, -1, -1, -1, 149, + 150, 151, 152, 153, 32, 155, -1, 157, 158, 159, + 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, + 170, 171, -1, -1, -1, -1, -1, -1, 178, -1, + -1, 59, 60, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 192, -1, -1, 195, 196, 197, -1, 199, + -1, -1, 202, 203, -1, -1, -1, 4, 5, -1, + 210, -1, 212, -1, 214, 215, 216, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, - -1, 38, -1, -1, -1, 122, -1, 44, -1, 126, + -1, 38, -1, -1, 122, -1, -1, 44, 126, -1, 47, -1, -1, 50, -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, 64, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, - -1, 188, -1, -1, -1, 192, -1, 194, 195, 116, + 188, -1, -1, -1, 192, -1, 194, 195, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, 125, -1, - -1, -1, -1, 210, 131, 132, 133, -1, -1, 216, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 210, -1, 131, 132, 133, -1, 216, -1, + -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, 32, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, @@ -3494,18 +3507,18 @@ static const yytype_int16 yycheck[] = 197, -1, 199, -1, -1, 202, 203, -1, -1, 4, 5, -1, -1, 210, -1, 212, -1, 214, 215, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, - 25, 26, 27, -1, -1, 30, -1, -1, -1, -1, + -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, 122, -1, 44, - -1, 126, 47, -1, -1, 50, 51, -1, -1, 54, + -1, 126, 47, -1, -1, 50, -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, 64, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, - -1, -1, 97, 98, 99, 100, 101, 102, 103, 104, + -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, 188, -1, -1, -1, 192, -1, 194, 195, 116, 117, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 210, -1, -1, -1, -1, - -1, 216, -1, -1, -1, -1, -1, -1, -1, -1, + 125, -1, -1, -1, -1, 210, 131, 132, 133, -1, + -1, 216, -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, 32, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, @@ -3514,18 +3527,18 @@ static const yytype_int16 yycheck[] = 195, 196, 197, -1, 199, -1, -1, 202, 203, -1, -1, 4, 5, -1, -1, 210, -1, 212, -1, 214, 215, 14, 15, 16, 17, 18, -1, -1, -1, -1, - -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, + -1, 24, 25, 26, 27, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, 122, - -1, 44, -1, 126, 47, -1, -1, 50, -1, -1, + -1, 44, -1, 126, 47, -1, -1, 50, 51, -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, 64, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, - 103, -1, -1, -1, -1, 188, -1, -1, -1, 192, + 103, 104, -1, -1, -1, 188, -1, -1, -1, 192, -1, 194, 195, 116, 117, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 210, 131, 132, - 133, -1, -1, 216, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 210, -1, -1, + -1, -1, -1, 216, -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, 32, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, @@ -3534,87 +3547,46 @@ static const yytype_int16 yycheck[] = -1, -1, 195, 196, 197, -1, 199, -1, -1, 202, 203, -1, -1, 4, 5, -1, -1, 210, -1, 212, -1, 214, 215, 14, 15, 16, 17, 18, -1, -1, - -1, -1, -1, 24, -1, 26, -1, -1, 32, 30, + -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, 122, -1, 44, -1, 126, 47, -1, -1, 50, - -1, -1, -1, 54, -1, 59, 60, -1, -1, -1, + -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, 64, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, 188, -1, -1, - -1, 192, -1, 194, 195, 116, 117, -1, 122, -1, - -1, -1, 126, -1, -1, -1, -1, -1, -1, 210, + -1, 192, -1, 194, 195, 116, 117, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 210, 131, 132, 133, -1, -1, 216, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 149, 150, - 151, 152, 153, -1, 155, 32, 157, 158, 159, 160, + 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, + 151, 152, 153, 32, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, -1, -1, - -1, -1, 59, 60, 188, -1, -1, -1, 192, -1, - 194, 195, -1, -1, 195, 196, 197, -1, 199, -1, - -1, 202, 203, -1, -1, -1, 210, 4, 5, 210, - -1, 212, 216, 214, 215, 12, -1, 14, 15, 16, - 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, - -1, -1, 32, 30, -1, -1, -1, -1, -1, -1, - -1, 38, -1, -1, -1, 122, -1, 44, -1, 126, - 47, 48, -1, 50, -1, -1, -1, 54, -1, 59, - 60, -1, -1, -1, -1, -1, -1, 64, -1, -1, - 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, - 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, - -1, 188, -1, -1, -1, 192, -1, 194, 195, 116, - 117, -1, 122, -1, -1, -1, 126, -1, -1, -1, - -1, -1, -1, 210, -1, -1, -1, -1, -1, 216, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 149, 150, 151, 152, 153, -1, 155, 32, - 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, - -1, 178, -1, -1, -1, -1, 59, 60, 188, -1, - -1, -1, 192, -1, 194, 195, -1, -1, 195, 196, - 197, -1, 199, -1, -1, 202, 203, -1, -1, -1, - 210, 4, 5, 210, 211, 212, 216, 214, 215, 12, - -1, 14, 15, 16, 17, 18, -1, -1, -1, -1, - -1, 24, -1, 26, -1, -1, 32, 30, -1, -1, - -1, -1, -1, -1, -1, 38, -1, -1, -1, 122, - -1, 44, -1, 126, 47, 48, -1, 50, -1, -1, - -1, 54, -1, 59, 60, -1, -1, -1, -1, -1, - -1, 64, -1, -1, 67, 68, -1, 70, 71, 72, - -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, - 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, - 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, - 103, -1, -1, -1, -1, 188, -1, -1, -1, 192, - -1, 194, 195, 116, 117, -1, 122, -1, -1, -1, - 126, -1, -1, -1, -1, -1, -1, 210, -1, -1, - -1, -1, -1, 216, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, - 153, -1, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, - -1, -1, -1, -1, -1, 178, -1, -1, -1, -1, - -1, -1, 188, -1, -1, -1, 192, -1, 194, 195, - -1, -1, 195, 196, 197, -1, 199, -1, -1, 202, - 203, -1, -1, -1, 210, 4, 5, 210, -1, 212, - 216, 214, 215, 12, -1, 14, 15, 16, 17, 18, + 59, 60, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 195, 196, 197, -1, 199, -1, + -1, 202, 203, -1, -1, 4, 5, -1, -1, 210, + -1, 212, -1, 214, 215, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, 32, 30, -1, -1, -1, -1, -1, -1, -1, 38, - -1, -1, -1, -1, -1, 44, -1, -1, 47, 48, + -1, -1, -1, 122, -1, 44, -1, 126, 47, -1, -1, 50, -1, -1, -1, 54, -1, 59, 60, -1, -1, -1, -1, -1, -1, 64, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, - 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, + 99, 100, 101, 102, 103, -1, -1, -1, -1, 188, + -1, -1, -1, 192, -1, 194, 195, 116, 117, -1, 122, -1, -1, -1, 126, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 210, 131, 132, 133, -1, -1, 216, -1, -1, + -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, -1, -1, -1, -1, -1, -1, 188, -1, -1, -1, 192, -1, 194, 195, -1, -1, 195, 196, 197, -1, 199, -1, -1, 202, 203, -1, -1, -1, 210, 4, - 5, 210, 211, 212, 216, 214, 215, 12, -1, 14, + 5, 210, -1, 212, 216, 214, 215, 12, -1, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, @@ -3627,18 +3599,59 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 195, 196, 197, -1, 199, -1, -1, 202, 203, -1, - -1, 4, 5, -1, -1, 210, -1, 212, -1, 214, - 215, 14, 15, 16, 17, 18, -1, -1, -1, -1, + -1, -1, -1, 4, 5, 210, 211, 212, -1, 214, + 215, 12, -1, 14, 15, 16, 17, 18, -1, -1, + -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, + -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, + -1, -1, -1, 44, -1, -1, 47, 48, -1, 50, + -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 64, -1, -1, 67, 68, -1, 70, + 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, + 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, + -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, + 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, + 151, 152, 153, -1, 155, 156, 157, 158, 159, 160, + 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, + 171, -1, -1, -1, -1, -1, -1, 178, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 195, 196, 197, -1, 199, -1, + -1, 202, 203, -1, -1, -1, -1, 4, 5, 210, + -1, 212, -1, 214, 215, 12, -1, 14, 15, 16, + 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, + -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, + -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, + 47, 48, -1, 50, -1, -1, -1, 54, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 64, -1, -1, + 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, + 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, + 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, + 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, + 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, + -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, + 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, + 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, + -1, 178, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 195, 196, + 197, -1, 199, -1, -1, 202, 203, -1, -1, -1, + -1, 4, 5, 210, 211, 212, -1, 214, 215, 12, + -1, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, - -1, 44, -1, -1, 47, -1, -1, 50, -1, -1, + -1, 44, -1, -1, 47, 48, -1, 50, -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, 64, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, @@ -3647,15 +3660,15 @@ static const yytype_int16 yycheck[] = 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, - 153, -1, 155, 156, 157, 158, 159, 160, 161, 162, + 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 195, 196, 197, -1, 199, -1, -1, 202, 203, -1, -1, 4, 5, -1, -1, 210, -1, 212, - 213, 214, 215, 14, 15, 16, 17, 18, -1, -1, + -1, 214, 215, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, -1, -1, 50, @@ -3668,19 +3681,19 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 149, 150, - 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, + 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, + 151, 152, 153, -1, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 195, 196, 197, -1, 199, -1, -1, 202, 203, -1, -1, 4, 5, -1, -1, 210, - 211, 212, -1, 214, 215, 14, 15, 16, 17, 18, + -1, 212, 213, 214, 215, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, -1, -1, 50, -1, -1, -1, 54, -1, -1, -1, -1, - -1, 60, -1, -1, -1, 64, -1, -1, 67, 68, + -1, -1, -1, -1, -1, 64, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, @@ -3688,19 +3701,19 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 195, 196, 197, -1, 199, -1, -1, 202, 203, -1, -1, 4, 5, -1, - -1, 210, -1, 212, -1, 214, 215, 14, 15, 16, + -1, 210, 211, 212, -1, 214, 215, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, -1, -1, 50, -1, -1, -1, 54, -1, -1, - 57, -1, -1, -1, -1, -1, -1, 64, -1, -1, + -1, -1, -1, 60, -1, -1, -1, 64, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, @@ -3708,35 +3721,35 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 195, 196, - 197, -1, 199, -1, -1, 202, 203, -1, -1, -1, - -1, 4, 5, 210, -1, 212, -1, 214, 215, 12, - -1, 14, 15, 16, 17, 18, -1, -1, -1, -1, - -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, - -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, - -1, 44, -1, -1, 47, -1, -1, 50, -1, -1, - -1, 54, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 64, -1, -1, 67, 68, -1, 70, 71, 72, - -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, - 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, - 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, - 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, + 197, -1, 199, -1, -1, 202, 203, -1, -1, 4, + 5, -1, -1, 210, -1, 212, -1, 214, 215, 14, + 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, + -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, + -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, + -1, -1, 47, -1, -1, 50, -1, -1, -1, 54, + -1, -1, 57, -1, -1, -1, -1, -1, -1, 64, + -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, + 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, + 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, + -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, - 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, - -1, -1, -1, -1, -1, 178, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 141, -1, -1, -1, + -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, + 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, + 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, + -1, -1, -1, 178, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 195, 196, 197, -1, 199, -1, -1, 202, - 203, -1, -1, 4, 5, -1, -1, 210, -1, 212, - -1, 214, 215, 14, 15, 16, 17, 18, -1, -1, + 195, 196, 197, -1, 199, -1, -1, 202, 203, -1, + -1, -1, -1, 4, 5, 210, -1, 212, -1, 214, + 215, 12, -1, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, -1, -1, 50, @@ -3749,35 +3762,35 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 149, 150, + 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 193, -1, 195, 196, 197, -1, 199, -1, - -1, 202, 203, -1, -1, -1, -1, 4, 5, 210, - -1, 212, -1, 214, 215, 12, -1, 14, 15, 16, - 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, - -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, - -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, - 47, -1, -1, 50, -1, -1, -1, 54, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 64, -1, -1, - 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, - 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, - 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 195, 196, 197, -1, 199, -1, + -1, 202, 203, -1, -1, 4, 5, -1, -1, 210, + -1, 212, -1, 214, 215, 14, 15, 16, 17, 18, + -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, + -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, + -1, -1, -1, -1, -1, 44, -1, -1, 47, -1, + -1, 50, -1, -1, -1, 54, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 64, -1, -1, 67, 68, + -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, + 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, + 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, + 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, - 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, - -1, 178, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 195, 196, - 197, -1, 199, -1, -1, 202, 203, -1, -1, 4, - 5, -1, -1, 210, -1, 212, -1, 214, 215, 14, - 15, 16, 17, 18, -1, -1, 21, -1, -1, 24, + -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, + 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, + 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, + 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 193, -1, 195, 196, 197, -1, + 199, -1, -1, 202, 203, -1, -1, -1, -1, 4, + 5, 210, -1, 212, -1, 214, 215, 12, -1, 14, + 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, -1, -1, 50, -1, -1, -1, 54, @@ -3789,7 +3802,7 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, @@ -3797,7 +3810,7 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 195, 196, 197, -1, 199, -1, -1, 202, 203, -1, -1, 4, 5, -1, -1, 210, -1, 212, -1, 214, - 215, 14, 15, 16, 17, 18, -1, -1, -1, -1, + 215, 14, 15, 16, 17, 18, -1, -1, 21, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, -1, -1, 50, -1, -1, @@ -3809,7 +3822,7 @@ static const yytype_int16 yycheck[] = 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, @@ -3817,12 +3830,12 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 195, 196, 197, -1, 199, -1, -1, 202, 203, -1, -1, 4, 5, -1, -1, 210, -1, 212, - 213, 214, 215, 14, 15, 16, 17, 18, -1, -1, + -1, 214, 215, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, -1, -1, 50, -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 64, -1, -1, 67, 68, 69, 70, + -1, -1, -1, 64, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, @@ -3830,32 +3843,32 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 149, 150, + 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 195, 196, 197, -1, 199, -1, -1, 202, 203, -1, -1, 4, 5, -1, -1, 210, - -1, 212, -1, 214, 215, 14, 15, 16, 17, 18, + -1, 212, 213, 214, 215, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, -1, -1, 50, -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, 64, -1, -1, 67, 68, - -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, + 69, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 193, -1, 195, 196, 197, -1, + -1, -1, -1, -1, -1, -1, 195, 196, 197, -1, 199, -1, -1, 202, 203, -1, -1, 4, 5, -1, -1, 210, -1, 212, -1, 214, 215, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, @@ -3870,14 +3883,14 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 195, 196, + -1, -1, -1, -1, -1, -1, 193, -1, 195, 196, 197, -1, 199, -1, -1, 202, 203, -1, -1, 4, - 5, -1, -1, 210, -1, 212, 213, 214, 215, 14, + 5, -1, -1, 210, -1, 212, -1, 214, 215, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, @@ -3890,7 +3903,7 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, @@ -3910,7 +3923,7 @@ static const yytype_int16 yycheck[] = 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, @@ -3931,7 +3944,7 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 149, 150, + 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, -1, -1, @@ -3951,7 +3964,7 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, @@ -3971,7 +3984,7 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, @@ -3990,15 +4003,15 @@ static const yytype_int16 yycheck[] = -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, - 125, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 195, 196, 197, -1, 199, -1, -1, 202, 203, -1, - -1, 4, 5, -1, -1, 210, -1, 212, -1, 214, + -1, 4, 5, -1, -1, 210, -1, 212, 213, 214, 215, 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, @@ -4011,7 +4024,7 @@ static const yytype_int16 yycheck[] = 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, 125, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, @@ -4032,7 +4045,7 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, 125, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 149, 150, + 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, -1, -1, @@ -4050,9 +4063,9 @@ static const yytype_int16 yycheck[] = 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, + -1, -1, -1, -1, -1, -1, 125, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, -1, 178, @@ -4064,31 +4077,71 @@ static const yytype_int16 yycheck[] = -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, -1, -1, 50, -1, -1, -1, 54, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 64, -1, 18, + -1, -1, -1, -1, -1, -1, -1, 64, -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, - 117, 70, 71, 72, -1, 74, 75, 76, 77, 78, - 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, - 99, 100, 149, 150, 151, 152, 153, -1, 155, -1, + 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, + -1, -1, 149, 150, 151, 152, 153, -1, 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - 167, 168, 169, 170, 171, -1, 12, -1, -1, -1, - -1, 178, 18, -1, -1, -1, -1, -1, 24, -1, - -1, -1, -1, -1, 30, -1, -1, -1, 195, 196, - 197, -1, 199, -1, 40, 202, 203, 156, -1, -1, - -1, -1, 48, 210, -1, 212, -1, 214, 215, 168, + 167, 168, 169, 170, 171, -1, -1, -1, -1, -1, + -1, 178, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 195, 196, + 197, -1, 199, -1, -1, 202, 203, -1, -1, 4, + 5, -1, -1, 210, -1, 212, -1, 214, 215, 14, + 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, + -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, + -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, + -1, -1, 47, -1, -1, 50, -1, -1, -1, 54, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 64, + -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, + 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, + 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, + -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 141, -1, -1, -1, + -1, -1, -1, -1, 149, 150, 151, 152, 153, -1, + 155, -1, 157, 158, 159, 160, 161, 162, 163, 164, + 165, 166, 167, 168, 169, 170, 171, -1, 12, -1, + -1, -1, -1, 178, 18, -1, -1, -1, -1, -1, + 24, -1, -1, -1, -1, -1, 30, -1, -1, -1, + 195, 196, 197, -1, 199, -1, 40, 202, 203, -1, + -1, -1, -1, -1, 48, 210, -1, 212, -1, 214, + 215, -1, -1, -1, -1, -1, -1, -1, -1, 63, + -1, -1, -1, -1, -1, -1, 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, -1, + -1, -1, -1, -1, -1, -1, -1, 12, -1, -1, + -1, -1, -1, 18, -1, -1, -1, -1, -1, 24, + -1, -1, -1, -1, -1, 30, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 40, -1, 141, -1, -1, + -1, -1, -1, 48, -1, -1, -1, -1, -1, -1, + 154, -1, -1, -1, -1, -1, -1, -1, 63, -1, + -1, -1, -1, -1, 168, 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, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 214, -1, 18, -1, -1, -1, -1, -1, 24, -1, + -1, -1, -1, -1, 30, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 40, -1, 141, -1, -1, -1, + -1, -1, 48, -1, -1, -1, -1, -1, -1, 154, -1, -1, -1, -1, -1, -1, -1, 63, -1, -1, - -1, -1, -1, -1, 70, 71, 72, 73, 74, 75, + -1, -1, -1, 168, 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, -1, -1, -1, - -1, -1, -1, -1, -1, 12, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 214, -1, 18, -1, -1, -1, -1, -1, 24, -1, -1, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 40, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 40, -1, 141, -1, -1, -1, -1, -1, 48, -1, -1, -1, -1, -1, -1, 154, -1, -1, -1, -1, -1, -1, -1, 63, -1, -1, -1, -1, -1, 168, 70, 71, 72, 73, 74, 75, 76, @@ -4096,360 +4149,386 @@ static const yytype_int16 yycheck[] = 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 214, -1, - 18, -1, -1, -1, -1, -1, 24, -1, -1, -1, - -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 40, -1, -1, -1, -1, -1, -1, -1, - 48, -1, -1, -1, -1, -1, -1, 154, -1, -1, - -1, -1, -1, -1, -1, 63, -1, -1, -1, -1, - -1, 168, 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, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 214, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 18, -1, -1, -1, -1, -1, 24, -1, -1, - -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 40, -1, -1, 154, -1, -1, -1, - -1, 48, -1, -1, -1, -1, -1, -1, -1, -1, - 168, -1, -1, -1, -1, -1, 63, -1, -1, -1, - -1, -1, 180, 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, 214, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 18, -1, -1, -1, -1, -1, 24, -1, -1, -1, - -1, -1, 30, -1, -1, 20, 21, -1, -1, -1, - -1, -1, 40, -1, -1, -1, -1, -1, -1, -1, - 48, -1, -1, -1, -1, -1, -1, 154, -1, -1, - -1, -1, -1, -1, -1, 63, -1, -1, -1, -1, - -1, 168, 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, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 214, -1, -1, - -1, 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, 20, 21, -1, 134, - 135, 136, 137, 138, 139, -1, 154, 142, 143, 144, - 145, 146, 147, 148, -1, -1, -1, -1, -1, -1, - 168, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 187, 188, -1, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 199, -1, 214, -1, -1, -1, - -1, -1, -1, -1, 209, 210, -1, -1, -1, 214, - 215, -1, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128, 129, 20, 21, -1, -1, - 134, 135, 136, 137, 138, 139, -1, -1, 142, 143, - 144, 145, 146, 147, 148, -1, -1, -1, -1, -1, + 216, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 20, 21, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 180, -1, -1, -1, - -1, -1, -1, 187, 188, -1, 190, 191, 192, 193, - 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 209, 210, -1, -1, -1, - 214, 215, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128, 129, -1, -1, -1, -1, - 134, 135, 136, 137, 138, 139, -1, -1, 142, 143, - 144, 145, 146, 147, 148, 114, 115, 116, 117, 118, - -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, - 129, 20, 21, -1, -1, 134, -1, 136, 137, -1, - -1, -1, -1, 142, 143, 144, 180, -1, -1, 148, - -1, -1, -1, 187, 188, -1, 190, 191, 192, 193, - 194, 195, 196, 197, 198, 199, 20, 21, -1, -1, - -1, -1, -1, -1, -1, 209, 210, -1, -1, -1, - 214, 215, -1, -1, -1, -1, -1, -1, -1, 188, - -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 114, 115, 116, 117, 118, - -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, - 129, -1, -1, -1, -1, 134, -1, 136, 137, -1, - -1, -1, -1, 142, 143, 144, -1, -1, -1, 148, - 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, - 124, -1, 126, 127, 128, 129, 20, 21, -1, -1, - 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, - 144, -1, -1, -1, 148, -1, -1, -1, -1, 188, - -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 20, 21, -1, -1, -1, -1, -1, -1, -1, - 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, - 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 209, 210, -1, -1, 213, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, - 124, -1, 126, 127, 128, 129, -1, -1, -1, -1, - 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, - 144, -1, -1, -1, 148, 114, 115, 116, 117, 118, - -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, - 129, 20, 21, -1, -1, 134, -1, 136, 137, -1, - -1, -1, -1, 142, 143, 144, -1, -1, -1, 148, - -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, - 194, 195, 196, 197, 198, 199, 20, 21, -1, -1, - -1, -1, -1, -1, -1, 209, 210, -1, -1, 213, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 188, - -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 114, 115, 116, 117, 118, - -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, - 129, -1, -1, -1, -1, 134, -1, 136, 137, -1, - -1, -1, -1, 142, 143, 144, -1, -1, -1, 148, - 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, - 124, -1, 126, 127, 128, 129, 20, 21, -1, -1, - 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, - 144, -1, -1, -1, 148, -1, -1, -1, -1, 188, - -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 20, 21, -1, -1, -1, -1, -1, -1, -1, - 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, - 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 209, 210, -1, -1, 213, + -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 154, -1, -1, + -1, -1, -1, -1, -1, -1, 18, -1, -1, -1, + -1, 168, 24, -1, -1, -1, -1, -1, 30, -1, + -1, -1, -1, 180, -1, -1, -1, -1, 40, -1, + -1, -1, -1, -1, -1, -1, 48, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, - 124, -1, 126, 127, 128, 129, -1, -1, -1, -1, - 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, - 144, -1, -1, -1, 148, 114, 115, 116, 117, 118, - -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, - 129, 20, 21, -1, -1, 134, -1, 136, 137, -1, - -1, -1, -1, 142, 143, 144, -1, -1, -1, 148, - -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, - 194, 195, 196, 197, 198, 199, 20, 21, -1, -1, - -1, -1, -1, -1, -1, 209, 210, -1, -1, 213, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 188, - -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 114, 115, 116, 117, 118, - -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, - 129, -1, -1, -1, -1, 134, -1, 136, 137, -1, - -1, -1, -1, 142, 143, 144, -1, -1, -1, 148, - 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, - 124, -1, 126, 127, 128, 129, 20, 21, -1, -1, - 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, - 144, -1, -1, -1, 148, -1, -1, -1, -1, 188, - -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 20, 21, -1, -1, -1, -1, -1, -1, -1, - 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, - 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 209, 210, -1, -1, 213, + -1, 63, -1, -1, -1, -1, -1, 214, 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, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 18, -1, -1, -1, -1, + -1, 24, -1, -1, -1, -1, -1, 30, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 40, -1, 141, + -1, -1, -1, -1, -1, 48, -1, -1, -1, -1, + -1, -1, 154, -1, -1, -1, -1, -1, -1, -1, + 63, -1, -1, -1, -1, -1, 168, 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, + 20, 21, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 214, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, - 124, -1, 126, 127, 128, 129, -1, -1, -1, -1, - 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, - 144, -1, -1, -1, 148, 114, 115, 116, 117, 118, - -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, - 129, 20, 21, -1, -1, 134, -1, 136, 137, -1, - -1, -1, -1, 142, 143, 144, -1, -1, -1, 148, - -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, - 194, 195, 196, 197, 198, 199, 20, 21, -1, -1, - -1, -1, -1, -1, -1, 209, 210, -1, -1, 213, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 188, - -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 114, 115, 116, 117, 118, - -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, - 129, -1, -1, -1, -1, 134, -1, 136, 137, -1, - -1, -1, -1, 142, 143, 144, -1, -1, -1, 148, - 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, - 124, -1, 126, 127, 128, 129, 20, 21, -1, -1, - 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, - 144, -1, -1, -1, 148, -1, -1, -1, -1, 188, - -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 20, 21, -1, -1, -1, -1, -1, -1, -1, - 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, - 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 209, 210, -1, -1, 213, + -1, -1, -1, -1, -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, - 124, -1, 126, 127, 128, 129, -1, -1, -1, -1, - 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, - 144, -1, -1, -1, 148, 114, 115, 116, 117, 118, - -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, - 129, 20, 21, -1, -1, 134, -1, 136, 137, -1, - -1, -1, -1, 142, 143, 144, -1, -1, -1, 148, - -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, - 194, 195, 196, 197, 198, 199, 20, 21, -1, -1, - -1, -1, -1, -1, -1, 209, 210, -1, -1, 213, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 188, - -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 114, 115, 116, 117, 118, - -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, - 129, -1, -1, -1, -1, 134, -1, 136, 137, -1, - -1, -1, -1, 142, 143, 144, -1, -1, -1, 148, - 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, - 124, -1, 126, 127, 128, 129, 20, 21, -1, -1, - 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, - 144, -1, -1, -1, 148, -1, -1, -1, -1, 188, - -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 20, 21, -1, -1, -1, -1, -1, -1, -1, - 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, - 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 209, 210, -1, -1, 213, + -1, 154, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 168, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, - 124, -1, 126, 127, 128, 129, -1, -1, -1, -1, - 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, - 144, -1, -1, -1, 148, 114, 115, 116, 117, 118, - -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, - 129, 20, 21, -1, -1, 134, -1, 136, 137, -1, - -1, -1, -1, 142, 143, 144, -1, -1, -1, 148, - -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, - 194, 195, 196, 197, 198, 199, 20, 21, -1, -1, - -1, -1, -1, -1, -1, 209, 210, -1, -1, 213, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 188, - -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 114, 115, 116, 117, 118, - -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, - 129, -1, -1, -1, -1, 134, -1, 136, 137, -1, - -1, -1, -1, 142, 143, 144, -1, -1, -1, 148, - 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, - 124, -1, 126, 127, 128, 129, 20, 21, -1, -1, - 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, - 144, -1, -1, -1, 148, -1, -1, -1, -1, 188, - -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 20, 21, -1, -1, -1, -1, -1, -1, -1, - 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, - 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 209, 210, -1, -1, 213, + -1, -1, -1, -1, -1, -1, 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, 214, 20, 21, 134, 135, 136, 137, 138, 139, + -1, -1, 142, 143, 144, 145, 146, 147, 148, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, - 124, -1, 126, 127, 128, 129, -1, -1, -1, -1, - 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, - 144, -1, -1, -1, 148, 114, 115, 116, 117, 118, - -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, - 129, 20, 21, -1, -1, 134, -1, 136, 137, -1, - -1, -1, -1, 142, 143, 144, -1, -1, -1, 148, - -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, - 194, 195, 196, 197, 198, 199, 20, 21, -1, -1, - -1, -1, -1, -1, -1, 209, 210, -1, -1, 213, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 188, - -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 114, 115, 116, 117, 118, - -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 187, 188, -1, + 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 209, + 210, -1, -1, -1, 214, 215, -1, -1, 106, 107, + 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + 128, 129, 20, 21, -1, -1, 134, 135, 136, 137, + 138, 139, -1, -1, 142, 143, 144, 145, 146, 147, + 148, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 20, 21, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 180, -1, -1, -1, -1, -1, -1, 187, + 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, + 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 209, 210, -1, -1, -1, 214, 215, 106, 107, + 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + 128, 129, -1, -1, -1, -1, 134, 135, 136, 137, + 138, 139, -1, -1, 142, 143, 144, 145, 146, 147, + 148, 114, 115, 116, 117, 118, -1, -1, 121, 122, + 123, 124, -1, 126, 127, 128, 129, 20, 21, -1, + -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, + 143, 144, 180, -1, -1, 148, -1, -1, -1, 187, + 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, + 198, 199, 20, 21, -1, -1, -1, -1, -1, -1, + -1, 209, 210, -1, -1, -1, 214, 215, -1, -1, + -1, -1, -1, -1, -1, 188, -1, 190, 191, 192, + 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, + 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, + 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, + -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, + 143, 144, -1, -1, -1, 148, 114, 115, 116, 117, + 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, + 128, 129, 20, 21, -1, -1, 134, -1, 136, 137, + -1, -1, -1, -1, 142, 143, 144, -1, -1, -1, + 148, -1, -1, -1, -1, 188, -1, 190, 191, 192, + 193, 194, 195, 196, 197, 198, 199, 20, 21, -1, + -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, + 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, + 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 114, 115, 116, 117, + 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, + 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, + -1, -1, -1, -1, 142, 143, 144, -1, -1, -1, + 148, 114, 115, 116, 117, 118, -1, -1, 121, 122, + 123, 124, -1, 126, 127, 128, 129, 20, 21, -1, + -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, + 143, 144, -1, -1, -1, 148, -1, -1, -1, -1, + 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, + 198, 199, 20, 21, -1, -1, -1, -1, -1, -1, + -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 188, -1, 190, 191, 192, + 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, + 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, + 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, + -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, + 143, 144, -1, -1, -1, 148, 114, 115, 116, 117, + 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, + 128, 129, 20, 21, -1, -1, 134, -1, 136, 137, + -1, -1, -1, -1, 142, 143, 144, -1, -1, -1, + 148, -1, -1, -1, -1, 188, -1, 190, 191, 192, + 193, 194, 195, 196, 197, 198, 199, 20, 21, -1, + -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, + 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, + 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 114, 115, 116, 117, + 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, + 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, + -1, -1, -1, -1, 142, 143, 144, -1, -1, -1, + 148, 114, 115, 116, 117, 118, -1, -1, 121, 122, + 123, 124, -1, 126, 127, 128, 129, 20, 21, -1, + -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, + 143, 144, -1, -1, -1, 148, -1, -1, -1, -1, + 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, + 198, 199, 20, 21, -1, -1, -1, -1, -1, -1, + -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 188, -1, 190, 191, 192, + 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, + 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, + 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, + -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, + 143, 144, -1, -1, -1, 148, 114, 115, 116, 117, + 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, + 128, 129, 20, 21, -1, -1, 134, -1, 136, 137, + -1, -1, -1, -1, 142, 143, 144, -1, -1, -1, + 148, -1, -1, -1, -1, 188, -1, 190, 191, 192, + 193, 194, 195, 196, 197, 198, 199, 20, 21, -1, + -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, + 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, + 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 114, 115, 116, 117, + 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, + 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, + -1, -1, -1, -1, 142, 143, 144, -1, -1, -1, + 148, 114, 115, 116, 117, 118, -1, -1, 121, 122, + 123, 124, -1, 126, 127, 128, 129, 20, 21, -1, + -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, + 143, 144, -1, -1, -1, 148, -1, -1, -1, -1, + 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, + 198, 199, 20, 21, -1, -1, -1, -1, -1, -1, + -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 188, -1, 190, 191, 192, + 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, + 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, + 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, + -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, + 143, 144, -1, -1, -1, 148, 114, 115, 116, 117, + 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, + 128, 129, 20, 21, -1, -1, 134, -1, 136, 137, + -1, -1, -1, -1, 142, 143, 144, -1, -1, -1, + 148, -1, -1, -1, -1, 188, -1, 190, 191, 192, + 193, 194, 195, 196, 197, 198, 199, 20, 21, -1, + -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, + 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, + 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 114, 115, 116, 117, + 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, + 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, + -1, -1, -1, -1, 142, 143, 144, -1, -1, -1, + 148, 114, 115, 116, 117, 118, -1, -1, 121, 122, + 123, 124, -1, 126, 127, 128, 129, 20, 21, -1, + -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, + 143, 144, -1, -1, -1, 148, -1, -1, -1, -1, + 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, + 198, 199, 20, 21, -1, -1, -1, -1, -1, -1, + -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 188, -1, 190, 191, 192, + 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, + 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, + 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, + -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, + 143, 144, -1, -1, -1, 148, 114, 115, 116, 117, + 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, + 128, 129, 20, 21, -1, -1, 134, -1, 136, 137, + -1, -1, -1, -1, 142, 143, 144, -1, -1, -1, + 148, -1, -1, -1, -1, 188, -1, 190, 191, 192, + 193, 194, 195, 196, 197, 198, 199, 20, 21, -1, + -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, + 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, + 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 114, 115, 116, 117, + 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, + 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, + -1, -1, -1, -1, 142, 143, 144, -1, -1, -1, + 148, 114, 115, 116, 117, 118, -1, -1, 121, 122, + 123, 124, -1, 126, 127, 128, 129, 20, 21, -1, + -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, + 143, 144, -1, -1, -1, 148, -1, -1, -1, -1, + 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, + 198, 199, 20, 21, -1, -1, -1, -1, -1, -1, + -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 188, -1, 190, 191, 192, + 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, + 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, + 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, + -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, + 143, 144, -1, -1, -1, 148, 114, 115, 116, 117, + 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, + 128, 129, 20, 21, -1, -1, 134, -1, 136, 137, + -1, -1, -1, -1, 142, 143, 144, -1, -1, -1, + 148, -1, -1, -1, -1, 188, -1, 190, 191, 192, + 193, 194, 195, 196, 197, 198, 199, 20, 21, -1, + -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, + 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, + 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 114, 115, 116, 117, + 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, + 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, + -1, -1, -1, -1, 142, 143, 144, -1, -1, -1, + 148, 114, 115, 116, 117, 118, -1, -1, 121, 122, + 123, 124, -1, 126, 127, 128, 129, 20, 21, -1, + -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, + 143, 144, -1, -1, -1, 148, -1, -1, -1, -1, + 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, + 198, 199, 20, 21, -1, -1, -1, -1, -1, -1, + -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 188, -1, 190, 191, 192, + 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, + 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, + 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, + -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, + 143, 144, -1, -1, -1, 148, 114, 115, 116, 117, + 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, + 128, 129, 20, 21, -1, -1, 134, -1, 136, 137, + -1, -1, -1, -1, 142, 143, 144, -1, -1, -1, + 148, -1, -1, -1, -1, 188, -1, 190, 191, 192, + 193, 194, 195, 196, 197, 198, 199, 20, 21, -1, + -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, + 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, + 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 114, 115, 116, 117, + 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, + 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, + -1, -1, -1, -1, 142, 143, 144, -1, -1, -1, + 148, 114, 115, 116, 117, 118, -1, -1, 121, 122, + 123, 124, -1, 126, 127, 128, 129, 20, 21, -1, + -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, + 143, 144, -1, -1, -1, 148, -1, -1, -1, -1, + 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, + 198, 199, 20, 21, -1, -1, -1, -1, -1, -1, + -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 188, -1, 190, 191, 192, + 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, + 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, + 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, + -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, + 143, 144, -1, -1, -1, 148, 114, 115, 116, 117, + 118, 20, 21, 121, 122, 123, 124, -1, 126, 127, + 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, + -1, -1, -1, -1, 142, 143, 144, -1, -1, -1, + 148, -1, -1, -1, -1, 188, -1, 190, 191, 192, + 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 209, 210, 211, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, + 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 209, 210, 211, -1, 114, 115, 116, 117, 118, + 20, 21, 121, 122, 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, 144, -1, -1, -1, 148, - 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, - 124, -1, 126, 127, 128, 129, 20, 21, -1, -1, - 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, - 144, -1, -1, -1, 148, -1, -1, -1, -1, 188, - -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 20, 21, -1, -1, -1, -1, -1, -1, -1, - 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, - 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 209, 210, -1, -1, 213, + -1, -1, -1, -1, -1, 20, 21, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, - 124, -1, 126, 127, 128, 129, -1, -1, -1, -1, - 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, - 144, -1, -1, -1, 148, 114, 115, 116, 117, 118, - -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, - 129, 20, 21, -1, -1, 134, -1, 136, 137, -1, - -1, -1, -1, 142, 143, 144, -1, -1, -1, 148, - -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, - 194, 195, 196, 197, 198, 199, 20, 21, -1, -1, - -1, -1, -1, -1, -1, 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 209, 210, -1, -1, 213, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 114, 115, 116, 117, 118, - -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, - 129, -1, -1, -1, -1, 134, -1, 136, 137, -1, - -1, -1, -1, 142, 143, 144, -1, -1, -1, 148, - 114, 115, 116, 117, 118, 20, 21, 121, 122, 123, - 124, -1, 126, 127, 128, 129, -1, -1, -1, -1, - 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, - 144, -1, -1, -1, 148, -1, -1, -1, -1, 188, - -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 209, 210, 211, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, - 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 209, 210, 211, -1, 114, + 209, 210, 211, -1, 114, 115, 116, 117, 118, -1, + -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, + -1, -1, -1, -1, 134, -1, 136, 137, -1, -1, + -1, -1, 142, 143, 144, -1, -1, -1, 148, 114, 115, 116, 117, 118, 20, 21, 121, 122, 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, 144, - -1, -1, -1, 148, -1, -1, -1, -1, -1, 20, - 21, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 148, -1, -1, -1, -1, 188, -1, + 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 209, + 210, 211, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, -1, 209, 210, 211, -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, - 126, 127, 128, 129, -1, -1, -1, -1, 134, -1, + 126, 127, 128, 129, 20, 21, -1, -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, 144, -1, - -1, -1, 148, 114, 115, 116, 117, 118, 20, 21, + -1, 37, 148, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 20, + 21, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 188, -1, 190, 191, 192, 193, 194, 195, + 196, 197, 198, 199, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 209, 210, 211, -1, -1, -1, -1, + 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, + 116, 117, 118, 119, 120, 121, 122, 123, -1, -1, + 126, 127, 128, -1, -1, -1, -1, -1, -1, 135, + 136, 137, 138, 139, -1, -1, 142, 143, 144, 145, + 146, 147, 148, 114, 115, 116, 117, 118, 20, 21, 121, 122, 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, 144, -1, -1, -1, 148, -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, 194, 195, - 196, 197, 198, 199, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 209, 210, 211, -1, -1, -1, -1, + 196, 197, 198, 199, -1, -1, 202, 203, -1, -1, + -1, -1, -1, 209, 210, -1, -1, 178, -1, -1, -1, -1, -1, -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, -1, 209, 210, - 211, -1, 114, 115, 116, 117, 118, -1, -1, 121, - 122, 123, 124, -1, 126, 127, 128, 129, 20, 21, - -1, -1, 134, -1, 136, 137, -1, -1, -1, -1, - 142, 143, 144, -1, -1, 37, 148, -1, -1, -1, + -1, -1, 114, 115, 116, 117, 118, 20, 21, 121, + 122, 123, 124, -1, 126, 127, 128, 129, -1, -1, + -1, -1, 134, -1, 136, 137, -1, -1, 140, -1, + 142, 143, 144, -1, -1, -1, 148, -1, -1, -1, + -1, -1, 20, 21, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 20, 21, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 209, 210, 211, - -1, -1, -1, -1, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, -1, -1, 126, 127, 128, -1, -1, -1, - -1, -1, -1, 135, 136, 137, 138, 139, -1, -1, - 142, 143, 144, 145, 146, 147, 148, 114, 115, 116, - 117, 118, 20, 21, 121, 122, 123, 124, -1, 126, - 127, 128, 129, -1, -1, -1, -1, 134, -1, 136, - 137, -1, -1, -1, -1, 142, 143, 144, -1, -1, - -1, 148, -1, -1, -1, -1, 188, -1, 190, 191, - 192, 193, 194, 195, 196, 197, 198, 199, -1, -1, - 202, 203, -1, -1, -1, -1, -1, 209, 210, -1, - -1, 178, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 188, -1, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 209, 210, -1, -1, 114, 115, 116, 117, - 118, 20, 21, 121, 122, 123, 124, -1, 126, 127, + -1, -1, -1, -1, -1, -1, -1, 209, 210, -1, + -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, + 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, + -1, 134, -1, 136, 137, -1, -1, 140, -1, 142, + 143, 144, 20, 21, -1, 148, 114, 115, 116, 117, + 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, - -1, -1, 140, -1, 142, 143, 144, -1, -1, -1, - 148, -1, -1, -1, -1, -1, 20, 21, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 142, 143, 144, 20, 21, -1, + 148, -1, -1, -1, -1, 188, -1, 190, 191, 192, + 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, + 198, 199, -1, -1, -1, -1, 114, 115, 116, 117, + 118, 209, 210, 121, 122, 123, 124, -1, 126, 127, + 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, + -1, -1, -1, -1, 142, 143, 144, 20, 21, -1, + 148, 114, 115, 116, 117, 118, -1, -1, 121, 122, + 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, + -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, + 143, 144, 180, -1, -1, 148, 20, 21, -1, -1, 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 209, 210, -1, -1, 114, 115, 116, 117, 118, - -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, - 129, -1, -1, -1, -1, 134, -1, 136, 137, -1, - -1, 140, -1, 142, 143, 144, 20, 21, -1, 148, + -1, 209, 210, 176, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 188, -1, 190, 191, 192, + 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, + -1, 114, 115, 116, 117, 118, 209, 210, 121, 122, + 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, + -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, + 143, 144, -1, -1, -1, 148, 20, 21, -1, -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, -1, - 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, - 144, 20, 21, -1, 148, -1, -1, -1, -1, 188, - -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 209, 210, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 188, 189, 190, 191, 192, 193, + 134, -1, 136, 137, -1, -1, -1, 180, 142, 143, + 144, 20, 21, -1, 148, 188, -1, 190, 191, 192, + 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, + -1, -1, -1, -1, -1, -1, 180, -1, -1, -1, + -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, 114, 115, 116, 117, 118, 209, 210, 121, 122, 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, -1, @@ -4460,8 +4539,8 @@ static const yytype_int16 yycheck[] = -1, -1, -1, 142, 143, 144, 180, -1, -1, 148, 20, 21, -1, -1, 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 209, 210, 176, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 188, + -1, -1, -1, -1, -1, 209, 210, -1, -1, -1, + -1, 180, -1, -1, -1, -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, 114, 115, 116, 117, 118, 209, 210, 121, 122, 123, 124, -1, 126, 127, 128, @@ -4474,7 +4553,7 @@ static const yytype_int16 yycheck[] = -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, -1, -1, -1, -1, -1, -1, - 180, -1, -1, -1, -1, -1, -1, -1, 188, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, 114, 115, 116, 117, 118, 209, 210, 121, 122, 123, 124, -1, 126, 127, 128, 129, @@ -4483,84 +4562,69 @@ static const yytype_int16 yycheck[] = 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, -1, -1, -1, -1, 142, 143, 144, - 180, -1, -1, 148, 20, 21, -1, -1, 188, -1, + 20, 21, -1, -1, -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, -1, 209, - 210, -1, -1, -1, -1, 180, -1, -1, -1, -1, + 210, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, 114, 115, 116, 117, 118, 209, 210, 121, 122, 123, 124, -1, 126, 127, 128, 129, -1, -1, -1, -1, 134, - -1, 136, 137, -1, -1, -1, -1, 142, 143, 144, - -1, -1, -1, 148, 20, 21, -1, -1, 114, 115, - 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, - 126, 127, 128, 129, -1, -1, -1, -1, 134, -1, - 136, 137, -1, -1, -1, 180, 142, 143, 144, 20, - 21, -1, 148, 188, -1, 190, 191, 192, 193, 194, + -1, 136, 137, -1, -1, -1, -1, 142, -1, 144, + 20, 21, -1, -1, 114, 115, 116, 117, 118, -1, + -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, + -1, -1, -1, -1, 134, -1, 136, 137, 20, 21, + -1, -1, 142, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 188, -1, 190, 191, 192, 193, 194, 195, - 196, 197, 198, 199, -1, -1, -1, -1, 114, 115, - 116, 117, 118, 209, 210, 121, 122, 123, 124, -1, - 126, 127, 128, 129, -1, -1, -1, -1, 134, -1, - 136, 137, -1, -1, -1, -1, 142, 143, 144, 20, - 21, -1, 148, 114, 115, 116, 117, 118, -1, -1, - 121, 122, 123, 124, -1, 126, 127, 128, 129, -1, - -1, -1, -1, 134, -1, 136, 137, -1, -1, -1, - -1, 142, 143, 144, 20, 21, -1, -1, -1, -1, - -1, -1, 188, -1, 190, 191, 192, 193, 194, 195, - 196, 197, 198, 199, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 209, 210, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 188, -1, 190, - 191, 192, 193, 194, 195, 196, 197, 198, 199, -1, - -1, -1, -1, 114, 115, 116, 117, 118, 209, 210, - 121, 122, 123, 124, -1, 126, 127, 128, 129, -1, - -1, -1, -1, 134, -1, 136, 137, -1, -1, -1, - -1, 142, -1, 144, 20, 21, -1, -1, 114, 115, - 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, - 126, 127, 128, 129, -1, -1, -1, -1, 134, -1, - 136, 137, 20, 21, -1, -1, 142, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 190, - 191, 192, 193, 194, 195, 196, 197, 198, 199, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 209, 210, + 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, + -1, -1, -1, -1, 114, 115, 116, 117, 118, 209, + 210, 121, 122, 123, 124, -1, 126, 127, 128, 129, + -1, -1, -1, -1, 134, -1, 136, 137, 20, 21, + -1, -1, 114, 115, 116, 117, 118, -1, -1, 121, + 122, 123, 124, -1, 126, 127, 128, 129, -1, -1, + -1, -1, 134, -1, 136, 137, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 190, 191, 192, 193, 194, 195, - 196, 197, 198, 199, -1, -1, -1, -1, 114, 115, - 116, 117, 118, 209, 210, 121, 122, 123, 124, -1, - 126, 127, 128, 129, -1, -1, -1, -1, 134, -1, - 136, 137, 20, 21, -1, -1, 114, 115, 116, 117, - 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, - 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, + -1, -1, -1, -1, 18, -1, -1, -1, -1, 209, + 210, -1, -1, -1, -1, -1, -1, -1, -1, 191, + 192, 193, 194, 195, 196, 197, 198, 199, -1, -1, + -1, -1, 114, 115, 116, 117, 118, 209, 210, 121, + 122, 123, 124, -1, 126, 127, 128, 129, -1, -1, + -1, -1, 134, -1, 136, 137, 70, 71, 72, -1, + 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, + 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, + 94, -1, -1, 97, 98, 99, 100, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 18, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 190, 191, 192, 193, 194, 195, - 196, 197, 198, 199, -1, -1, -1, -1, 18, -1, - -1, -1, -1, 209, 210, -1, -1, -1, -1, -1, - -1, -1, -1, 191, 192, 193, 194, 195, 196, 197, - 198, 199, -1, -1, -1, -1, 114, 115, 116, 117, - 118, 209, 210, 121, 122, 123, 124, -1, 126, 127, - 128, 129, -1, -1, -1, -1, 134, -1, 136, 137, - 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, - 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 18, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 192, 193, 194, 195, 196, 197, - 198, 199, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 209, 210, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 156, -1, -1, -1, - -1, -1, -1, -1, -1, 70, 71, 72, 168, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, - -1, -1, 97, 98, 99, 100, -1, -1, -1, -1, + 192, 193, 194, 195, 196, 197, 198, 199, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 209, 210, -1, + 18, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 156, -1, -1, -1, -1, -1, -1, -1, + -1, 70, 71, 72, 168, 74, 75, 76, 77, 78, + 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, + 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, + 99, 100, 70, 71, 72, -1, 74, 75, 76, 77, + 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, + 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, + 98, 99, 100, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 34, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 156, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 168, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 70, + -1, 72, -1, 74, 75, 76, 77, 78, 156, 80, + 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, + 168, 92, 93, 94, -1, -1, 97, 98, 99, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 156, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 168 + -1, -1, -1, -1, -1, -1, -1, 168 }; /* YYSTOS[STATE-NUM] -- The symbol kind of the accessing symbol of @@ -4572,164 +4636,165 @@ static const yytype_int16 yystos[] = 231, 236, 266, 270, 303, 381, 388, 392, 403, 447, 452, 457, 18, 19, 168, 258, 259, 260, 161, 237, 238, 168, 169, 170, 199, 232, 233, 234, 178, 389, - 168, 214, 221, 56, 62, 384, 384, 384, 168, 289, - 33, 62, 134, 203, 212, 262, 263, 264, 265, 289, - 180, 4, 5, 7, 35, 400, 61, 379, 187, 186, - 189, 186, 233, 21, 56, 198, 209, 235, 384, 385, - 387, 385, 379, 458, 448, 453, 141, 229, 264, 264, - 264, 212, 142, 143, 144, 186, 211, 56, 62, 271, - 273, 56, 62, 390, 56, 62, 401, 56, 62, 380, - 14, 15, 161, 166, 168, 171, 212, 224, 259, 161, - 238, 168, 232, 232, 168, 180, 179, 385, 180, 56, - 62, 220, 168, 168, 168, 168, 172, 227, 213, 260, - 264, 264, 264, 264, 274, 168, 391, 404, 178, 382, - 172, 173, 223, 14, 15, 161, 166, 168, 224, 256, - 257, 235, 386, 180, 459, 449, 454, 172, 213, 34, - 70, 72, 74, 75, 76, 77, 78, 80, 81, 82, - 83, 84, 85, 86, 87, 88, 89, 90, 92, 93, - 94, 97, 98, 99, 100, 116, 117, 168, 269, 272, - 178, 189, 105, 398, 399, 377, 158, 215, 261, 353, - 172, 173, 174, 186, 213, 187, 178, 178, 178, 20, - 21, 37, 106, 107, 108, 109, 110, 111, 112, 113, + 168, 214, 221, 56, 62, 384, 384, 384, 141, 168, + 289, 33, 62, 134, 203, 212, 262, 263, 264, 265, + 289, 180, 4, 5, 7, 35, 400, 61, 379, 187, + 186, 189, 186, 233, 21, 56, 198, 209, 235, 384, + 385, 387, 385, 379, 458, 448, 453, 168, 141, 229, + 264, 264, 264, 212, 142, 143, 144, 186, 211, 56, + 62, 271, 273, 56, 62, 390, 56, 62, 401, 56, + 62, 380, 14, 15, 161, 166, 168, 171, 212, 224, + 259, 161, 238, 168, 232, 232, 168, 180, 179, 385, + 180, 56, 62, 220, 168, 168, 168, 168, 172, 227, + 213, 260, 264, 264, 264, 264, 274, 168, 391, 404, + 178, 382, 172, 173, 223, 14, 15, 161, 166, 168, + 224, 256, 257, 235, 386, 180, 459, 449, 454, 172, + 213, 34, 70, 72, 74, 75, 76, 77, 78, 80, + 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, + 92, 93, 94, 97, 98, 99, 100, 116, 117, 168, + 269, 272, 178, 189, 105, 398, 399, 377, 158, 215, + 261, 353, 172, 173, 174, 186, 213, 187, 178, 178, + 178, 20, 21, 37, 106, 107, 108, 109, 110, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 126, 127, 128, 135, 136, 137, 138, 139, + 142, 143, 144, 145, 146, 147, 148, 188, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, 202, 203, + 209, 210, 34, 34, 212, 267, 178, 275, 393, 74, + 78, 92, 93, 97, 98, 99, 100, 408, 168, 405, + 179, 378, 260, 259, 215, 150, 168, 375, 376, 256, + 18, 24, 30, 40, 48, 63, 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, 154, + 214, 289, 407, 409, 410, 413, 418, 446, 460, 450, + 455, 168, 168, 168, 211, 21, 168, 211, 153, 213, + 353, 363, 364, 189, 268, 278, 383, 178, 189, 397, + 178, 402, 353, 211, 259, 212, 42, 186, 189, 192, + 374, 193, 193, 193, 212, 193, 193, 212, 193, 193, + 193, 193, 193, 193, 212, 289, 32, 59, 60, 122, + 126, 188, 192, 195, 210, 216, 417, 190, 412, 367, + 370, 168, 135, 212, 6, 49, 302, 180, 213, 446, + 1, 4, 5, 8, 9, 10, 12, 14, 15, 16, + 17, 18, 24, 25, 26, 27, 28, 30, 37, 38, + 41, 43, 44, 47, 50, 51, 53, 54, 57, 58, + 64, 67, 68, 79, 101, 102, 103, 104, 116, 117, + 131, 132, 133, 149, 150, 151, 152, 153, 155, 157, + 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, + 169, 170, 171, 178, 179, 180, 195, 196, 197, 202, + 203, 210, 212, 214, 215, 226, 228, 239, 240, 243, + 246, 247, 249, 251, 252, 253, 254, 276, 277, 279, + 283, 288, 289, 290, 294, 295, 296, 297, 298, 299, + 300, 301, 303, 307, 308, 315, 318, 321, 326, 329, + 330, 332, 333, 334, 336, 341, 344, 345, 352, 407, + 462, 473, 484, 488, 501, 504, 168, 180, 394, 395, + 289, 359, 376, 211, 64, 169, 283, 345, 168, 168, + 418, 125, 135, 187, 373, 419, 424, 426, 345, 428, + 422, 168, 414, 430, 432, 434, 436, 438, 440, 442, + 444, 345, 193, 212, 32, 192, 32, 192, 210, 216, + 211, 345, 210, 216, 418, 168, 180, 461, 168, 180, + 365, 446, 451, 168, 180, 368, 456, 345, 150, 168, + 372, 406, 363, 193, 193, 345, 250, 193, 291, 409, + 462, 212, 193, 4, 101, 102, 193, 212, 125, 288, + 319, 330, 345, 275, 193, 212, 60, 345, 212, 345, + 168, 193, 193, 212, 180, 193, 161, 57, 345, 212, + 275, 193, 212, 193, 193, 212, 193, 193, 125, 288, + 345, 345, 345, 215, 275, 321, 325, 325, 325, 212, + 212, 212, 212, 212, 212, 12, 418, 12, 418, 12, + 345, 483, 499, 193, 345, 193, 225, 12, 483, 500, + 36, 345, 345, 345, 345, 345, 12, 48, 319, 345, + 319, 215, 180, 180, 345, 9, 321, 327, 168, 212, + 180, 180, 180, 180, 180, 65, 304, 266, 130, 180, + 20, 21, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 126, 127, 128, 135, 136, 137, 138, 139, 142, 143, - 144, 145, 146, 147, 148, 188, 190, 191, 192, 193, - 194, 195, 196, 197, 198, 199, 202, 203, 209, 210, - 34, 34, 212, 267, 178, 275, 393, 74, 78, 92, - 93, 97, 98, 99, 100, 408, 168, 405, 179, 378, - 260, 259, 215, 150, 168, 375, 376, 256, 18, 24, - 30, 40, 48, 63, 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, 154, 214, 289, - 407, 409, 410, 413, 418, 446, 460, 450, 455, 168, - 168, 168, 211, 21, 168, 211, 153, 213, 353, 363, - 364, 189, 268, 278, 383, 178, 189, 397, 178, 402, - 353, 211, 259, 212, 42, 186, 189, 192, 374, 193, - 193, 193, 212, 193, 193, 212, 193, 193, 193, 193, - 193, 193, 212, 289, 32, 59, 60, 122, 126, 188, - 192, 195, 210, 216, 417, 190, 412, 367, 370, 168, - 135, 212, 6, 49, 302, 180, 213, 446, 1, 4, - 5, 8, 9, 10, 12, 14, 15, 16, 17, 18, - 24, 25, 26, 27, 28, 30, 37, 38, 41, 43, - 44, 47, 50, 51, 53, 54, 57, 58, 64, 67, - 68, 79, 101, 102, 103, 104, 116, 117, 131, 132, - 133, 149, 150, 151, 152, 153, 155, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, 167, 169, 170, - 171, 178, 179, 180, 195, 196, 197, 202, 203, 210, - 212, 214, 215, 226, 228, 239, 240, 243, 246, 247, - 249, 251, 252, 253, 254, 276, 277, 279, 283, 288, - 289, 290, 294, 295, 296, 297, 298, 299, 300, 301, - 303, 307, 308, 315, 318, 321, 326, 329, 330, 332, - 333, 334, 336, 341, 344, 345, 352, 407, 462, 473, - 484, 488, 501, 504, 168, 180, 394, 395, 289, 359, - 376, 211, 64, 169, 283, 345, 168, 168, 418, 125, - 135, 187, 373, 419, 424, 426, 345, 428, 422, 168, - 414, 430, 432, 434, 436, 438, 440, 442, 444, 345, - 193, 212, 32, 192, 32, 192, 210, 216, 211, 345, - 210, 216, 418, 168, 180, 461, 168, 180, 365, 446, - 451, 168, 180, 368, 456, 345, 150, 168, 372, 406, - 363, 193, 193, 345, 250, 193, 291, 409, 462, 212, - 193, 4, 101, 102, 193, 212, 125, 288, 319, 330, - 345, 275, 193, 212, 60, 345, 212, 345, 168, 193, - 193, 212, 180, 193, 161, 57, 345, 212, 275, 193, - 212, 193, 193, 212, 193, 193, 125, 288, 345, 345, - 345, 215, 275, 321, 325, 325, 325, 212, 212, 212, - 212, 212, 212, 12, 418, 12, 418, 12, 345, 483, - 499, 193, 345, 193, 225, 12, 483, 500, 36, 345, - 345, 345, 345, 345, 12, 48, 319, 345, 319, 215, - 180, 180, 345, 9, 321, 327, 168, 212, 180, 180, - 180, 180, 180, 65, 304, 266, 130, 180, 20, 21, - 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 134, 135, 136, 137, 138, 139, - 142, 143, 144, 145, 146, 147, 148, 187, 188, 190, - 191, 192, 193, 194, 195, 196, 197, 198, 199, 209, - 210, 327, 212, 180, 187, 179, 383, 179, 210, 266, - 360, 213, 42, 180, 373, 288, 345, 446, 446, 416, - 446, 213, 446, 446, 213, 168, 411, 446, 267, 446, - 267, 446, 267, 365, 366, 368, 369, 213, 421, 280, - 319, 211, 211, 345, 180, 179, 189, 180, 179, 189, - 180, 179, 213, 212, 42, 125, 186, 187, 189, 192, - 371, 474, 476, 275, 406, 292, 212, 289, 316, 193, - 193, 193, 495, 319, 288, 319, 186, 106, 107, 108, - 109, 110, 111, 112, 113, 119, 120, 125, 138, 139, - 145, 146, 147, 187, 13, 418, 500, 345, 345, 275, - 187, 309, 311, 345, 313, 189, 161, 345, 497, 319, - 480, 485, 319, 478, 418, 288, 345, 215, 266, 345, - 345, 345, 345, 345, 345, 406, 52, 156, 168, 195, - 210, 212, 345, 463, 465, 466, 482, 487, 406, 212, - 465, 487, 406, 140, 179, 180, 181, 467, 284, 275, - 286, 174, 175, 223, 406, 186, 503, 178, 406, 12, - 186, 503, 503, 150, 155, 193, 289, 335, 275, 248, - 328, 210, 213, 319, 463, 464, 158, 212, 306, 376, - 158, 324, 325, 18, 156, 168, 407, 18, 156, 168, - 407, 131, 132, 133, 276, 331, 345, 331, 345, 331, + 124, 125, 126, 127, 128, 129, 134, 135, 136, 137, + 138, 139, 142, 143, 144, 145, 146, 147, 148, 187, + 188, 190, 191, 192, 193, 194, 195, 196, 197, 198, + 199, 209, 210, 327, 212, 180, 187, 179, 383, 179, + 210, 266, 360, 213, 42, 180, 373, 288, 345, 446, + 446, 416, 446, 213, 446, 446, 213, 168, 411, 446, + 267, 446, 267, 446, 267, 365, 366, 368, 369, 213, + 421, 280, 319, 211, 211, 345, 180, 179, 189, 180, + 179, 189, 180, 179, 213, 212, 42, 125, 186, 187, + 189, 192, 371, 474, 476, 275, 406, 292, 212, 289, + 316, 193, 193, 193, 495, 319, 288, 319, 186, 106, + 107, 108, 109, 110, 111, 112, 113, 119, 120, 125, + 138, 139, 145, 146, 147, 187, 13, 418, 500, 345, + 345, 275, 187, 309, 311, 345, 313, 189, 161, 345, + 497, 319, 480, 485, 319, 478, 418, 288, 345, 215, + 266, 345, 345, 345, 345, 345, 345, 406, 52, 156, + 168, 195, 210, 212, 345, 463, 465, 466, 482, 487, + 406, 212, 465, 487, 406, 140, 179, 180, 181, 467, + 284, 275, 286, 174, 175, 223, 406, 186, 503, 178, + 406, 12, 186, 503, 503, 150, 155, 193, 289, 335, + 275, 248, 328, 210, 213, 319, 463, 464, 158, 212, + 306, 376, 158, 324, 325, 18, 156, 168, 407, 18, + 156, 168, 407, 131, 132, 133, 276, 331, 345, 331, 345, 331, 345, 331, 345, 331, 345, 331, 345, 331, - 345, 345, 345, 345, 331, 345, 331, 345, 345, 345, - 345, 168, 331, 345, 345, 156, 168, 345, 345, 345, - 407, 345, 345, 345, 331, 345, 331, 345, 345, 345, - 345, 331, 345, 331, 345, 331, 345, 345, 331, 345, - 21, 345, 345, 345, 345, 345, 345, 345, 345, 345, - 345, 345, 127, 128, 156, 168, 209, 210, 342, 345, - 213, 319, 345, 396, 265, 7, 353, 358, 168, 288, - 345, 180, 194, 194, 194, 180, 194, 194, 180, 194, - 194, 268, 194, 268, 194, 268, 180, 194, 180, 194, - 282, 446, 213, 211, 446, 446, 345, 168, 168, 446, - 288, 345, 418, 418, 19, 446, 69, 319, 472, 193, - 345, 446, 489, 491, 493, 418, 503, 345, 345, 345, + 345, 331, 345, 345, 345, 345, 331, 345, 331, 345, + 345, 345, 345, 168, 331, 345, 345, 156, 168, 345, + 345, 345, 407, 345, 345, 345, 331, 345, 331, 345, + 345, 345, 345, 331, 345, 331, 345, 331, 345, 345, + 331, 345, 21, 345, 345, 345, 345, 345, 345, 345, + 345, 345, 345, 345, 127, 128, 156, 168, 209, 210, + 342, 345, 213, 319, 345, 396, 265, 7, 353, 358, + 168, 288, 345, 180, 194, 194, 194, 180, 194, 194, + 180, 194, 194, 268, 194, 268, 194, 268, 180, 194, + 180, 194, 282, 446, 213, 211, 446, 446, 345, 168, + 168, 446, 288, 345, 418, 418, 19, 446, 69, 319, + 472, 193, 345, 446, 489, 491, 493, 418, 503, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, - 345, 345, 345, 345, 345, 275, 180, 194, 503, 213, - 255, 418, 418, 213, 418, 213, 418, 503, 418, 418, - 503, 418, 194, 324, 213, 213, 213, 213, 213, 213, - 19, 325, 212, 135, 371, 210, 345, 213, 140, 186, - 180, 466, 183, 184, 211, 470, 186, 180, 183, 211, - 469, 19, 213, 466, 179, 182, 468, 19, 345, 179, - 483, 282, 282, 345, 19, 483, 179, 278, 19, 406, - 211, 213, 212, 212, 337, 339, 11, 22, 23, 241, - 242, 345, 266, 463, 186, 213, 213, 168, 305, 305, - 125, 135, 187, 192, 322, 323, 267, 193, 212, 193, - 212, 325, 325, 325, 212, 212, 211, 18, 156, 168, - 407, 189, 156, 168, 345, 212, 212, 156, 168, 345, - 1, 211, 213, 180, 179, 211, 56, 62, 356, 66, - 357, 180, 180, 420, 425, 427, 446, 429, 423, 168, - 415, 431, 194, 435, 194, 439, 194, 365, 443, 368, - 445, 180, 194, 213, 42, 371, 194, 194, 319, 194, - 213, 168, 213, 464, 168, 213, 194, 418, 418, 418, - 194, 213, 418, 212, 213, 345, 194, 194, 194, 194, - 213, 194, 194, 213, 194, 324, 267, 212, 319, 345, - 345, 345, 465, 466, 345, 156, 168, 463, 470, 211, - 345, 482, 211, 319, 465, 179, 182, 185, 471, 211, - 319, 194, 194, 176, 319, 179, 319, 19, 345, 345, - 418, 267, 275, 345, 11, 244, 324, 211, 210, 186, - 211, 213, 168, 168, 168, 168, 186, 211, 268, 346, - 345, 348, 345, 213, 319, 345, 193, 212, 345, 212, - 211, 345, 213, 319, 212, 211, 343, 180, 46, 357, - 45, 105, 354, 433, 437, 441, 446, 212, 168, 345, - 475, 477, 275, 293, 213, 180, 194, 317, 194, 194, - 194, 496, 194, 500, 310, 312, 314, 498, 481, 486, - 479, 212, 268, 213, 319, 180, 213, 466, 470, 212, - 135, 371, 180, 466, 211, 180, 285, 287, 180, 180, - 319, 213, 213, 194, 268, 275, 245, 180, 267, 213, - 463, 168, 211, 189, 374, 322, 211, 140, 275, 320, - 418, 213, 446, 213, 213, 213, 350, 345, 345, 213, - 213, 345, 32, 355, 354, 356, 280, 212, 212, 168, - 345, 490, 492, 494, 212, 212, 503, 345, 345, 345, - 212, 472, 212, 212, 213, 345, 320, 213, 345, 135, - 371, 470, 345, 345, 345, 345, 471, 483, 345, 212, - 281, 483, 345, 180, 338, 194, 242, 25, 104, 246, - 295, 296, 297, 299, 345, 268, 211, 189, 374, 418, - 373, 125, 345, 194, 194, 446, 213, 213, 213, 361, - 355, 372, 213, 472, 472, 194, 213, 212, 212, 212, - 319, 500, 213, 319, 472, 465, 213, 180, 502, 345, - 345, 213, 502, 502, 280, 502, 502, 345, 335, 340, - 125, 125, 345, 275, 213, 418, 373, 373, 345, 345, - 347, 349, 194, 272, 362, 465, 465, 345, 472, 472, - 465, 503, 503, 503, 465, 213, 52, 211, 135, 371, - 179, 179, 213, 179, 211, 502, 335, 345, 373, 345, - 345, 180, 351, 180, 272, 213, 213, 213, 465, 465, - 213, 213, 213, 213, 213, 345, 211, 345, 345, 211, - 179, 211, 345, 180, 180, 275, 213, 213, 180 + 345, 345, 345, 345, 345, 345, 345, 275, 180, 194, + 503, 213, 255, 418, 418, 213, 418, 213, 418, 503, + 418, 418, 503, 418, 194, 324, 213, 213, 213, 213, + 213, 213, 19, 325, 212, 135, 371, 210, 345, 213, + 140, 186, 180, 466, 183, 184, 211, 470, 186, 180, + 183, 211, 469, 19, 213, 466, 179, 182, 468, 19, + 345, 179, 483, 282, 282, 345, 19, 483, 179, 278, + 19, 406, 211, 213, 212, 212, 337, 339, 11, 22, + 23, 241, 242, 345, 266, 463, 186, 213, 213, 168, + 305, 305, 125, 135, 187, 192, 322, 323, 267, 193, + 212, 193, 212, 325, 325, 325, 212, 212, 211, 18, + 156, 168, 407, 189, 156, 168, 345, 212, 212, 156, + 168, 345, 1, 211, 213, 180, 179, 211, 56, 62, + 356, 66, 357, 180, 180, 420, 425, 427, 446, 429, + 423, 168, 415, 431, 194, 435, 194, 439, 194, 365, + 443, 368, 445, 180, 194, 213, 42, 371, 194, 194, + 319, 194, 213, 168, 213, 464, 168, 213, 194, 418, + 418, 418, 194, 213, 418, 212, 213, 345, 194, 194, + 194, 194, 213, 194, 194, 213, 194, 324, 267, 212, + 319, 345, 345, 345, 465, 466, 345, 156, 168, 463, + 470, 211, 345, 482, 211, 319, 465, 179, 182, 185, + 471, 211, 319, 194, 194, 176, 319, 179, 319, 19, + 345, 345, 418, 267, 275, 345, 11, 244, 324, 211, + 210, 186, 211, 213, 168, 168, 168, 168, 186, 211, + 268, 346, 345, 348, 345, 213, 319, 345, 193, 212, + 345, 212, 211, 345, 213, 319, 212, 211, 343, 180, + 46, 357, 45, 105, 354, 433, 437, 441, 446, 212, + 168, 345, 475, 477, 275, 293, 213, 180, 194, 317, + 194, 194, 194, 496, 194, 500, 310, 312, 314, 498, + 481, 486, 479, 212, 268, 213, 319, 180, 213, 466, + 470, 212, 135, 371, 180, 466, 211, 180, 285, 287, + 180, 180, 319, 213, 213, 194, 268, 275, 245, 180, + 267, 213, 463, 168, 211, 189, 374, 322, 211, 140, + 275, 320, 418, 213, 446, 213, 213, 213, 350, 345, + 345, 213, 213, 345, 32, 355, 354, 356, 280, 212, + 212, 168, 345, 490, 492, 494, 212, 212, 503, 345, + 345, 345, 212, 472, 212, 212, 213, 345, 320, 213, + 345, 135, 371, 470, 345, 345, 345, 345, 471, 483, + 345, 212, 281, 483, 345, 180, 338, 194, 242, 25, + 104, 246, 295, 296, 297, 299, 345, 268, 211, 189, + 374, 418, 373, 125, 345, 194, 194, 446, 213, 213, + 213, 361, 355, 372, 213, 472, 472, 194, 213, 212, + 212, 212, 319, 500, 213, 319, 472, 465, 213, 180, + 502, 345, 345, 213, 502, 502, 280, 502, 502, 345, + 335, 340, 125, 125, 345, 275, 213, 418, 373, 373, + 345, 345, 347, 349, 194, 272, 362, 465, 465, 345, + 472, 472, 465, 503, 503, 503, 465, 213, 52, 211, + 135, 371, 179, 179, 213, 179, 211, 502, 335, 345, + 373, 345, 345, 180, 351, 180, 272, 213, 213, 213, + 465, 465, 213, 213, 213, 213, 213, 345, 211, 345, + 345, 211, 179, 211, 345, 180, 180, 275, 213, 213, + 180 }; /* YYR1[RULE-NUM] -- Symbol kind of the left-hand side of rule RULE-NUM. */ @@ -4761,67 +4826,67 @@ static const yytype_int16 yyr1[] = 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 278, 278, 278, 279, 280, 280, 281, 281, 282, 282, 284, 285, 283, 286, 287, 283, - 288, 288, 288, 288, 288, 289, 289, 290, 290, 292, - 293, 291, 291, 294, 294, 294, 294, 294, 295, 296, - 297, 297, 297, 298, 298, 298, 299, 299, 300, 300, - 300, 301, 302, 302, 302, 303, 303, 304, 304, 305, - 305, 306, 306, 306, 306, 307, 307, 309, 310, 308, - 311, 312, 308, 313, 314, 308, 316, 317, 315, 318, - 318, 318, 319, 319, 320, 320, 320, 321, 321, 321, - 322, 322, 322, 322, 323, 323, 324, 324, 325, 325, - 326, 328, 327, 329, 329, 329, 329, 329, 329, 329, + 288, 288, 288, 288, 288, 289, 289, 289, 290, 290, + 292, 293, 291, 291, 294, 294, 294, 294, 294, 295, + 296, 297, 297, 297, 298, 298, 298, 299, 299, 300, + 300, 300, 301, 302, 302, 302, 303, 303, 304, 304, + 305, 305, 306, 306, 306, 306, 307, 307, 309, 310, + 308, 311, 312, 308, 313, 314, 308, 316, 317, 315, + 318, 318, 318, 319, 319, 320, 320, 320, 321, 321, + 321, 322, 322, 322, 322, 323, 323, 324, 324, 325, + 325, 326, 328, 327, 329, 329, 329, 329, 329, 329, + 329, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, - 330, 330, 330, 330, 330, 330, 330, 330, 330, 331, - 331, 331, 331, 332, 332, 332, 332, 332, 332, 332, + 331, 331, 331, 331, 332, 332, 332, 332, 332, 332, 332, 332, 332, 332, 332, 332, 332, 332, 332, 332, - 333, 333, 334, 334, 335, 335, 336, 337, 338, 336, - 339, 340, 336, 341, 341, 341, 341, 342, 343, 341, - 344, 344, 344, 344, 344, 345, 345, 345, 345, 345, + 332, 333, 333, 334, 334, 335, 335, 336, 337, 338, + 336, 339, 340, 336, 341, 341, 341, 341, 342, 343, + 341, 344, 344, 344, 344, 344, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, - 345, 346, 347, 345, 345, 345, 345, 348, 349, 345, - 345, 345, 350, 351, 345, 345, 345, 345, 345, 345, - 345, 345, 345, 345, 345, 345, 345, 345, 345, 352, + 345, 345, 346, 347, 345, 345, 345, 345, 348, 349, + 345, 345, 345, 350, 351, 345, 345, 345, 345, 345, + 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, - 352, 352, 352, 352, 352, 353, 353, 353, 354, 354, - 354, 355, 355, 356, 356, 356, 357, 357, 358, 359, - 360, 359, 361, 359, 362, 359, 359, 363, 363, 364, - 364, 365, 365, 366, 366, 367, 367, 367, 368, 369, - 369, 370, 370, 370, 371, 371, 372, 372, 372, 372, - 372, 372, 373, 373, 373, 374, 374, 375, 375, 375, - 375, 375, 376, 376, 376, 376, 376, 377, 378, 377, - 379, 379, 380, 380, 380, 381, 382, 381, 383, 383, - 383, 383, 384, 384, 384, 386, 385, 387, 387, 388, - 389, 388, 390, 390, 390, 391, 393, 394, 392, 395, - 396, 392, 397, 397, 398, 398, 399, 400, 400, 401, - 401, 401, 402, 402, 404, 405, 403, 406, 406, 406, - 406, 406, 407, 407, 407, 407, 407, 407, 407, 407, + 352, 352, 352, 352, 352, 352, 353, 353, 353, 354, + 354, 354, 355, 355, 356, 356, 356, 357, 357, 358, + 359, 360, 359, 361, 359, 362, 359, 359, 363, 363, + 364, 364, 365, 365, 366, 366, 367, 367, 367, 368, + 369, 369, 370, 370, 370, 371, 371, 372, 372, 372, + 372, 372, 372, 373, 373, 373, 374, 374, 375, 375, + 375, 375, 375, 376, 376, 376, 376, 376, 377, 378, + 377, 379, 379, 380, 380, 380, 381, 382, 381, 383, + 383, 383, 383, 384, 384, 384, 386, 385, 387, 387, + 388, 389, 388, 390, 390, 390, 391, 393, 394, 392, + 395, 396, 392, 397, 397, 398, 398, 399, 400, 400, + 401, 401, 401, 402, 402, 404, 405, 403, 406, 406, + 406, 406, 406, 407, 407, 407, 407, 407, 407, 407, + 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, - 407, 407, 407, 407, 407, 407, 407, 407, 407, 408, - 408, 408, 408, 408, 408, 408, 408, 409, 410, 410, - 410, 411, 411, 412, 412, 412, 414, 415, 413, 416, - 416, 417, 417, 418, 418, 418, 418, 418, 418, 419, - 420, 418, 418, 418, 421, 418, 418, 418, 418, 418, - 418, 418, 418, 418, 418, 418, 418, 418, 422, 423, - 418, 418, 424, 425, 418, 426, 427, 418, 428, 429, - 418, 418, 430, 431, 418, 432, 433, 418, 418, 434, - 435, 418, 436, 437, 418, 418, 438, 439, 418, 440, - 441, 418, 442, 443, 418, 444, 445, 418, 446, 446, - 446, 448, 449, 450, 451, 447, 453, 454, 455, 456, - 452, 458, 459, 460, 461, 457, 462, 462, 462, 462, - 462, 463, 463, 463, 463, 463, 463, 463, 463, 464, - 465, 465, 466, 466, 467, 467, 468, 468, 469, 469, - 470, 470, 470, 471, 471, 471, 472, 472, 473, 473, - 473, 473, 473, 473, 474, 475, 473, 476, 477, 473, - 478, 479, 473, 480, 481, 473, 482, 482, 482, 483, - 483, 484, 485, 486, 484, 487, 487, 488, 488, 488, - 489, 490, 488, 491, 492, 488, 493, 494, 488, 488, - 495, 496, 488, 488, 497, 498, 488, 499, 499, 500, - 500, 501, 501, 501, 501, 501, 502, 502, 503, 503, - 504, 504, 504, 504, 504, 504 + 408, 408, 408, 408, 408, 408, 408, 408, 409, 410, + 410, 410, 411, 411, 412, 412, 412, 414, 415, 413, + 416, 416, 417, 417, 418, 418, 418, 418, 418, 418, + 419, 420, 418, 418, 418, 421, 418, 418, 418, 418, + 418, 418, 418, 418, 418, 418, 418, 418, 418, 422, + 423, 418, 418, 424, 425, 418, 426, 427, 418, 428, + 429, 418, 418, 430, 431, 418, 432, 433, 418, 418, + 434, 435, 418, 436, 437, 418, 418, 438, 439, 418, + 440, 441, 418, 442, 443, 418, 444, 445, 418, 446, + 446, 446, 448, 449, 450, 451, 447, 453, 454, 455, + 456, 452, 458, 459, 460, 461, 457, 462, 462, 462, + 462, 462, 463, 463, 463, 463, 463, 463, 463, 463, + 464, 465, 465, 466, 466, 467, 467, 468, 468, 469, + 469, 470, 470, 470, 471, 471, 471, 472, 472, 473, + 473, 473, 473, 473, 473, 474, 475, 473, 476, 477, + 473, 478, 479, 473, 480, 481, 473, 482, 482, 482, + 483, 483, 484, 485, 486, 484, 487, 487, 488, 488, + 488, 489, 490, 488, 491, 492, 488, 493, 494, 488, + 488, 495, 496, 488, 488, 497, 498, 488, 499, 499, + 500, 500, 501, 501, 501, 501, 501, 502, 502, 503, + 503, 504, 504, 504, 504, 504, 504 }; /* YYR2[RULE-NUM] -- Number of symbols on the right-hand side of rule RULE-NUM. */ @@ -4853,67 +4918,67 @@ static const yytype_int8 yyr2[] = 1, 1, 1, 1, 1, 2, 2, 1, 1, 1, 1, 2, 2, 2, 0, 2, 2, 3, 0, 1, 0, 3, 1, 3, 0, 0, 7, 0, 0, 7, - 3, 2, 2, 2, 1, 1, 3, 2, 3, 0, - 0, 5, 1, 2, 5, 5, 6, 2, 1, 1, - 1, 2, 3, 2, 2, 3, 2, 3, 2, 2, - 3, 4, 1, 1, 0, 1, 1, 1, 0, 1, - 3, 9, 8, 8, 7, 3, 3, 0, 0, 7, - 0, 0, 7, 0, 0, 7, 0, 0, 6, 5, - 8, 10, 1, 3, 1, 2, 3, 1, 1, 2, - 2, 2, 2, 2, 1, 3, 0, 4, 1, 6, - 6, 0, 7, 1, 1, 1, 1, 1, 1, 1, - 1, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, - 2, 2, 1, 3, 3, 3, 3, 3, 3, 3, + 3, 2, 2, 2, 1, 1, 3, 2, 2, 3, + 0, 0, 5, 1, 2, 5, 5, 6, 2, 1, + 1, 1, 2, 3, 2, 2, 3, 2, 3, 2, + 2, 3, 4, 1, 1, 0, 1, 1, 1, 0, + 1, 3, 9, 8, 8, 7, 3, 3, 0, 0, + 7, 0, 0, 7, 0, 0, 7, 0, 0, 6, + 5, 8, 10, 1, 3, 1, 2, 3, 1, 1, + 2, 2, 2, 2, 2, 1, 3, 0, 4, 1, + 6, 6, 0, 7, 1, 1, 1, 1, 1, 1, + 1, 1, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 6, 8, 5, 6, 1, 4, 3, 0, 0, 8, - 0, 0, 9, 3, 4, 5, 6, 0, 0, 5, - 3, 4, 4, 3, 4, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, + 2, 2, 2, 1, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 6, 8, 5, 6, 1, 4, 3, 0, 0, + 8, 0, 0, 9, 3, 4, 5, 6, 0, 0, + 5, 3, 4, 4, 3, 4, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 2, 2, 2, 2, 4, 4, 5, 4, 5, - 3, 4, 1, 1, 2, 4, 4, 7, 8, 3, - 5, 0, 0, 8, 3, 3, 3, 0, 0, 8, - 3, 4, 0, 0, 9, 4, 1, 1, 1, 1, - 1, 1, 1, 3, 3, 3, 2, 4, 1, 4, - 4, 4, 4, 4, 1, 6, 7, 6, 6, 7, - 7, 6, 7, 6, 6, 0, 4, 1, 0, 1, - 1, 0, 1, 0, 1, 1, 0, 1, 5, 0, - 0, 4, 0, 9, 0, 10, 5, 3, 4, 1, - 3, 1, 3, 1, 3, 0, 2, 3, 3, 1, - 3, 0, 2, 3, 1, 1, 1, 2, 3, 5, - 3, 3, 1, 1, 1, 0, 1, 1, 4, 3, - 3, 5, 4, 6, 5, 5, 4, 0, 0, 4, - 0, 1, 0, 1, 1, 6, 0, 6, 0, 2, - 3, 5, 0, 1, 1, 0, 5, 2, 3, 4, - 0, 4, 0, 1, 1, 1, 0, 0, 9, 0, - 0, 11, 0, 2, 0, 1, 3, 1, 1, 0, - 1, 1, 0, 3, 0, 0, 7, 1, 4, 3, - 3, 5, 1, 1, 1, 1, 1, 1, 1, 1, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 2, 2, 2, 2, 4, 4, 5, 4, + 5, 3, 4, 1, 1, 2, 4, 4, 7, 8, + 3, 5, 0, 0, 8, 3, 3, 3, 0, 0, + 8, 3, 4, 0, 0, 9, 4, 1, 1, 1, + 1, 1, 1, 1, 3, 3, 3, 2, 4, 1, + 4, 4, 4, 4, 4, 1, 6, 7, 6, 6, + 7, 7, 6, 7, 6, 6, 0, 4, 1, 0, + 1, 1, 0, 1, 0, 1, 1, 0, 1, 5, + 0, 0, 4, 0, 9, 0, 10, 5, 3, 4, + 1, 3, 1, 3, 1, 3, 0, 2, 3, 3, + 1, 3, 0, 2, 3, 1, 1, 1, 2, 3, + 5, 3, 3, 1, 1, 1, 0, 1, 1, 4, + 3, 3, 5, 4, 6, 5, 5, 4, 0, 0, + 4, 0, 1, 0, 1, 1, 6, 0, 6, 0, + 2, 3, 5, 0, 1, 1, 0, 5, 2, 3, + 4, 0, 4, 0, 1, 1, 1, 0, 0, 9, + 0, 0, 11, 0, 2, 0, 1, 3, 1, 1, + 0, 1, 1, 0, 3, 0, 0, 7, 1, 4, + 3, 3, 5, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, - 4, 1, 3, 0, 2, 3, 0, 0, 6, 1, - 3, 3, 4, 1, 1, 1, 1, 2, 3, 0, - 0, 6, 4, 5, 0, 9, 4, 2, 2, 3, - 2, 3, 2, 2, 3, 3, 3, 2, 0, 0, - 6, 2, 0, 0, 6, 0, 0, 6, 0, 0, - 6, 1, 0, 0, 6, 0, 0, 7, 1, 0, - 0, 6, 0, 0, 7, 1, 0, 0, 6, 0, - 0, 7, 0, 0, 6, 0, 0, 6, 1, 3, - 3, 0, 0, 0, 0, 10, 0, 0, 0, 0, - 10, 0, 0, 0, 0, 10, 1, 1, 1, 1, - 1, 3, 3, 5, 5, 6, 6, 8, 8, 1, - 1, 3, 0, 2, 2, 1, 2, 1, 2, 1, - 2, 1, 1, 2, 1, 1, 0, 1, 5, 4, - 6, 7, 5, 7, 0, 0, 10, 0, 0, 10, - 0, 0, 9, 0, 0, 7, 1, 3, 3, 3, - 1, 5, 0, 0, 10, 1, 3, 4, 4, 4, - 0, 0, 11, 0, 0, 11, 0, 0, 10, 5, - 0, 0, 10, 5, 0, 0, 10, 1, 3, 1, - 3, 4, 3, 5, 8, 10, 0, 3, 0, 1, - 9, 10, 10, 10, 9, 10 + 4, 4, 1, 3, 0, 2, 3, 0, 0, 6, + 1, 3, 3, 4, 1, 1, 1, 1, 2, 3, + 0, 0, 6, 4, 5, 0, 9, 4, 2, 2, + 3, 2, 3, 2, 2, 3, 3, 3, 2, 0, + 0, 6, 2, 0, 0, 6, 0, 0, 6, 0, + 0, 6, 1, 0, 0, 6, 0, 0, 7, 1, + 0, 0, 6, 0, 0, 7, 1, 0, 0, 6, + 0, 0, 7, 0, 0, 6, 0, 0, 6, 1, + 3, 3, 0, 0, 0, 0, 10, 0, 0, 0, + 0, 10, 0, 0, 0, 0, 10, 1, 1, 1, + 1, 1, 3, 3, 5, 5, 6, 6, 8, 8, + 1, 1, 3, 0, 2, 2, 1, 2, 1, 2, + 1, 2, 1, 1, 2, 1, 1, 0, 1, 5, + 4, 6, 7, 5, 7, 0, 0, 10, 0, 0, + 10, 0, 0, 9, 0, 0, 7, 1, 3, 3, + 3, 1, 5, 0, 0, 10, 1, 3, 4, 4, + 4, 0, 0, 11, 0, 0, 11, 0, 0, 10, + 5, 0, 0, 10, 5, 0, 0, 10, 1, 3, + 1, 3, 4, 3, 5, 8, 10, 0, 3, 0, + 1, 9, 10, 10, 10, 9, 10 }; @@ -7738,13 +7803,17 @@ YYLTYPE yylloc = yyloc_default; } break; - case 267: /* expression_delete: "delete" expr */ + case 267: /* name_in_namespace: "::" "name" */ + { *(yyvsp[0].s) = "::" + *(yyvsp[0].s); (yyval.s) = (yyvsp[0].s); } + break; + + case 268: /* expression_delete: "delete" expr */ { (yyval.pExpression) = new ExprDelete(tokAt(scanner,(yylsp[-1])), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 268: /* expression_delete: "delete" "explicit" expr */ + case 269: /* expression_delete: "delete" "explicit" expr */ { auto delExpr = new ExprDelete(tokAt(scanner,(yylsp[-2])), ExpressionPtr((yyvsp[0].pExpression))); delExpr->native = true; @@ -7752,47 +7821,47 @@ YYLTYPE yylloc = yyloc_default; } break; - case 269: /* $@11: %empty */ + case 270: /* $@11: %empty */ { yyextra->das_arrow_depth ++; } break; - case 270: /* $@12: %empty */ + case 271: /* $@12: %empty */ { yyextra->das_arrow_depth --; } break; - case 271: /* new_type_declaration: '<' $@11 type_declaration '>' $@12 */ + case 272: /* new_type_declaration: '<' $@11 type_declaration '>' $@12 */ { (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); } break; - case 272: /* new_type_declaration: structure_type_declaration */ + case 273: /* new_type_declaration: structure_type_declaration */ { (yyval.pTypeDecl) = (yyvsp[0].pTypeDecl); } break; - case 273: /* expr_new: "new" new_type_declaration */ + case 274: /* expr_new: "new" new_type_declaration */ { (yyval.pExpression) = new ExprNew(tokAt(scanner,(yylsp[-1])),TypeDeclPtr((yyvsp[0].pTypeDecl)),false); } break; - case 274: /* expr_new: "new" new_type_declaration '(' use_initializer ')' */ + case 275: /* expr_new: "new" new_type_declaration '(' use_initializer ')' */ { (yyval.pExpression) = new ExprNew(tokAt(scanner,(yylsp[-4])),TypeDeclPtr((yyvsp[-3].pTypeDecl)),true); ((ExprNew *)(yyval.pExpression))->initializer = (yyvsp[-1].b); } break; - case 275: /* expr_new: "new" new_type_declaration '(' expr_list ')' */ + case 276: /* expr_new: "new" new_type_declaration '(' expr_list ')' */ { auto pNew = new ExprNew(tokAt(scanner,(yylsp[-4])),TypeDeclPtr((yyvsp[-3].pTypeDecl)),true); (yyval.pExpression) = parseFunctionArguments(pNew,(yyvsp[-1].pExpression)); } break; - case 276: /* expr_new: "new" new_type_declaration '(' use_initializer make_struct_single ')' */ + case 277: /* expr_new: "new" new_type_declaration '(' use_initializer make_struct_single ')' */ { ((ExprMakeStruct *)(yyvsp[-1].pExpression))->at = tokAt(scanner,(yylsp[-4])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = (yyvsp[-4].pTypeDecl); @@ -7802,33 +7871,33 @@ YYLTYPE yylloc = yyloc_default; } break; - case 277: /* expr_new: "new" make_decl */ + case 278: /* expr_new: "new" make_decl */ { (yyval.pExpression) = new ExprAscend(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 278: /* expression_break: "break" */ + case 279: /* expression_break: "break" */ { (yyval.pExpression) = new ExprBreak(tokAt(scanner,(yylsp[0]))); } break; - case 279: /* expression_continue: "continue" */ + case 280: /* expression_continue: "continue" */ { (yyval.pExpression) = new ExprContinue(tokAt(scanner,(yylsp[0]))); } break; - case 280: /* expression_return_no_pipe: "return" */ + case 281: /* expression_return_no_pipe: "return" */ { (yyval.pExpression) = new ExprReturn(tokAt(scanner,(yylsp[0])),nullptr); } break; - case 281: /* expression_return_no_pipe: "return" expr_list */ + case 282: /* expression_return_no_pipe: "return" expr_list */ { (yyval.pExpression) = new ExprReturn(tokAt(scanner,(yylsp[-1])),sequenceToTuple((yyvsp[0].pExpression))); } break; - case 282: /* expression_return_no_pipe: "return" "<-" expr_list */ + case 283: /* expression_return_no_pipe: "return" "<-" expr_list */ { auto pRet = new ExprReturn(tokAt(scanner,(yylsp[-2])),sequenceToTuple((yyvsp[0].pExpression))); pRet->moveSemantics = true; @@ -7836,19 +7905,19 @@ YYLTYPE yylloc = yyloc_default; } break; - case 283: /* expression_return: expression_return_no_pipe "end of expression" */ + case 284: /* expression_return: expression_return_no_pipe "end of expression" */ { (yyval.pExpression) = (yyvsp[-1].pExpression); } break; - case 284: /* expression_return: "return" expr_pipe */ + case 285: /* expression_return: "return" expr_pipe */ { (yyval.pExpression) = new ExprReturn(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 285: /* expression_return: "return" "<-" expr_pipe */ + case 286: /* expression_return: "return" "<-" expr_pipe */ { auto pRet = new ExprReturn(tokAt(scanner,(yylsp[-2])),ExpressionPtr((yyvsp[0].pExpression))); pRet->moveSemantics = true; @@ -7856,13 +7925,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 286: /* expression_yield_no_pipe: "yield" expr */ + case 287: /* expression_yield_no_pipe: "yield" expr */ { (yyval.pExpression) = new ExprYield(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 287: /* expression_yield_no_pipe: "yield" "<-" expr */ + case 288: /* expression_yield_no_pipe: "yield" "<-" expr */ { auto pRet = new ExprYield(tokAt(scanner,(yylsp[-2])),ExpressionPtr((yyvsp[0].pExpression))); pRet->moveSemantics = true; @@ -7870,19 +7939,19 @@ YYLTYPE yylloc = yyloc_default; } break; - case 288: /* expression_yield: expression_yield_no_pipe "end of expression" */ + case 289: /* expression_yield: expression_yield_no_pipe "end of expression" */ { (yyval.pExpression) = (yyvsp[-1].pExpression); } break; - case 289: /* expression_yield: "yield" expr_pipe */ + case 290: /* expression_yield: "yield" expr_pipe */ { (yyval.pExpression) = new ExprYield(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 290: /* expression_yield: "yield" "<-" expr_pipe */ + case 291: /* expression_yield: "yield" "<-" expr_pipe */ { auto pRet = new ExprYield(tokAt(scanner,(yylsp[-2])),ExpressionPtr((yyvsp[0].pExpression))); pRet->moveSemantics = true; @@ -7890,41 +7959,41 @@ YYLTYPE yylloc = yyloc_default; } break; - case 291: /* expression_try_catch: "try" expression_block "recover" expression_block */ + case 292: /* expression_try_catch: "try" expression_block "recover" expression_block */ { (yyval.pExpression) = new ExprTryCatch(tokAt(scanner,(yylsp[-3])),ExpressionPtr((yyvsp[-2].pExpression)),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 292: /* kwd_let_var_or_nothing: "let" */ + case 293: /* kwd_let_var_or_nothing: "let" */ { (yyval.b) = true; } break; - case 293: /* kwd_let_var_or_nothing: "var" */ + case 294: /* kwd_let_var_or_nothing: "var" */ { (yyval.b) = false; } break; - case 294: /* kwd_let_var_or_nothing: %empty */ + case 295: /* kwd_let_var_or_nothing: %empty */ { (yyval.b) = true; } break; - case 295: /* kwd_let: "let" */ + case 296: /* kwd_let: "let" */ { (yyval.b) = true; } break; - case 296: /* kwd_let: "var" */ + case 297: /* kwd_let: "var" */ { (yyval.b) = false; } break; - case 297: /* optional_in_scope: "inscope" */ + case 298: /* optional_in_scope: "inscope" */ { (yyval.b) = true; } break; - case 298: /* optional_in_scope: %empty */ + case 299: /* optional_in_scope: %empty */ { (yyval.b) = false; } break; - case 299: /* tuple_expansion: "name" */ + case 300: /* tuple_expansion: "name" */ { (yyval.pNameList) = new vector(); (yyval.pNameList)->push_back(*(yyvsp[0].s)); @@ -7932,7 +8001,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 300: /* tuple_expansion: tuple_expansion ',' "name" */ + case 301: /* tuple_expansion: tuple_expansion ',' "name" */ { (yyvsp[-2].pNameList)->push_back(*(yyvsp[0].s)); delete (yyvsp[0].s); @@ -7940,7 +8009,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 301: /* tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" */ + case 302: /* tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" */ { (yyval.pVarDecl) = new VariableDeclaration((yyvsp[-7].pNameList),tokAt(scanner,(yylsp[-7])),(yyvsp[-3].pTypeDecl),(yyvsp[-1].pExpression)); (yyval.pVarDecl)->init_via_move = ((yyvsp[-2].i) & CorM_MOVE) !=0; @@ -7949,7 +8018,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 302: /* tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" */ + case 303: /* tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" */ { (yyval.pVarDecl) = new VariableDeclaration((yyvsp[-6].pNameList),tokAt(scanner,(yylsp[-6])),(yyvsp[-3].pTypeDecl),(yyvsp[-1].pExpression)); (yyval.pVarDecl)->init_via_move = ((yyvsp[-2].i) & CorM_MOVE) !=0; @@ -7958,7 +8027,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 303: /* tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' optional_ref copy_or_move_or_clone expr "end of expression" */ + case 304: /* tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' optional_ref copy_or_move_or_clone expr "end of expression" */ { auto typeDecl = new TypeDecl(Type::autoinfer); typeDecl->at = tokAt(scanner,(yylsp[-6])); @@ -7970,7 +8039,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 304: /* tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" */ + case 305: /* tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" */ { auto typeDecl = new TypeDecl(Type::autoinfer); typeDecl->at = tokAt(scanner,(yylsp[-5])); @@ -7982,41 +8051,41 @@ YYLTYPE yylloc = yyloc_default; } break; - case 305: /* expression_let: kwd_let optional_in_scope let_variable_declaration */ + case 306: /* expression_let: kwd_let optional_in_scope let_variable_declaration */ { (yyval.pExpression) = ast_Let(scanner,(yyvsp[-2].b),(yyvsp[-1].b),(yyvsp[0].pVarDecl),tokAt(scanner,(yylsp[-2])),tokAt(scanner,(yylsp[0]))); } break; - case 306: /* expression_let: kwd_let optional_in_scope tuple_expansion_variable_declaration */ + case 307: /* expression_let: kwd_let optional_in_scope tuple_expansion_variable_declaration */ { (yyval.pExpression) = ast_Let(scanner,(yyvsp[-2].b),(yyvsp[-1].b),(yyvsp[0].pVarDecl),tokAt(scanner,(yylsp[-2])),tokAt(scanner,(yylsp[0]))); } break; - case 307: /* $@13: %empty */ + case 308: /* $@13: %empty */ { yyextra->das_arrow_depth ++; } break; - case 308: /* $@14: %empty */ + case 309: /* $@14: %empty */ { yyextra->das_arrow_depth --; } break; - case 309: /* expr_cast: "cast" '<' $@13 type_declaration_no_options '>' $@14 expr */ + case 310: /* expr_cast: "cast" '<' $@13 type_declaration_no_options '>' $@14 expr */ { (yyval.pExpression) = new ExprCast(tokAt(scanner,(yylsp[-6])),ExpressionPtr((yyvsp[0].pExpression)),TypeDeclPtr((yyvsp[-3].pTypeDecl))); } break; - case 310: /* $@15: %empty */ + case 311: /* $@15: %empty */ { yyextra->das_arrow_depth ++; } break; - case 311: /* $@16: %empty */ + case 312: /* $@16: %empty */ { yyextra->das_arrow_depth --; } break; - case 312: /* expr_cast: "upcast" '<' $@15 type_declaration_no_options '>' $@16 expr */ + case 313: /* expr_cast: "upcast" '<' $@15 type_declaration_no_options '>' $@16 expr */ { auto pCast = new ExprCast(tokAt(scanner,(yylsp[-6])),ExpressionPtr((yyvsp[0].pExpression)),TypeDeclPtr((yyvsp[-3].pTypeDecl))); pCast->upcast = true; @@ -8024,15 +8093,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 313: /* $@17: %empty */ + case 314: /* $@17: %empty */ { yyextra->das_arrow_depth ++; } break; - case 314: /* $@18: %empty */ + case 315: /* $@18: %empty */ { yyextra->das_arrow_depth --; } break; - case 315: /* expr_cast: "reinterpret" '<' $@17 type_declaration_no_options '>' $@18 expr */ + case 316: /* expr_cast: "reinterpret" '<' $@17 type_declaration_no_options '>' $@18 expr */ { auto pCast = new ExprCast(tokAt(scanner,(yylsp[-6])),ExpressionPtr((yyvsp[0].pExpression)),TypeDeclPtr((yyvsp[-3].pTypeDecl))); pCast->reinterpret = true; @@ -8040,21 +8109,21 @@ YYLTYPE yylloc = yyloc_default; } break; - case 316: /* $@19: %empty */ + case 317: /* $@19: %empty */ { yyextra->das_arrow_depth ++; } break; - case 317: /* $@20: %empty */ + case 318: /* $@20: %empty */ { yyextra->das_arrow_depth --; } break; - case 318: /* expr_type_decl: "type" '<' $@19 type_declaration '>' $@20 */ + case 319: /* expr_type_decl: "type" '<' $@19 type_declaration '>' $@20 */ { (yyval.pExpression) = new ExprTypeDecl(tokAt(scanner,(yylsp[-5])),TypeDeclPtr((yyvsp[-2].pTypeDecl))); } break; - case 319: /* expr_type_info: "typeinfo" '(' name_in_namespace expr ')' */ + case 320: /* expr_type_info: "typeinfo" '(' name_in_namespace expr ')' */ { if ( (yyvsp[-1].pExpression)->rtti_isTypeDecl() ) { auto ptd = (ExprTypeDecl *)(yyvsp[-1].pExpression); @@ -8067,7 +8136,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 320: /* expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' expr ')' */ + case 321: /* expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' expr ')' */ { if ( (yyvsp[-1].pExpression)->rtti_isTypeDecl() ) { auto ptd = (ExprTypeDecl *)(yyvsp[-1].pExpression); @@ -8081,7 +8150,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 321: /* expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' */ + case 322: /* expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' */ { if ( (yyvsp[-1].pExpression)->rtti_isTypeDecl() ) { auto ptd = (ExprTypeDecl *)(yyvsp[-1].pExpression); @@ -8096,23 +8165,23 @@ YYLTYPE yylloc = yyloc_default; } break; - case 322: /* expr_list: expr */ + case 323: /* expr_list: expr */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 323: /* expr_list: expr_list ',' expr */ + case 324: /* expr_list: expr_list ',' expr */ { (yyval.pExpression) = new ExprSequence(tokAt(scanner,(yylsp[-2])),ExpressionPtr((yyvsp[-2].pExpression)),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 324: /* block_or_simple_block: expression_block */ + case 325: /* block_or_simple_block: expression_block */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 325: /* block_or_simple_block: "=>" expr */ + case 326: /* block_or_simple_block: "=>" expr */ { auto retE = make_smart(tokAt(scanner,(yylsp[-1])), ExpressionPtr((yyvsp[0].pExpression))); auto blkE = new ExprBlock(); @@ -8122,7 +8191,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 326: /* block_or_simple_block: "=>" "<-" expr */ + case 327: /* block_or_simple_block: "=>" "<-" expr */ { auto retE = make_smart(tokAt(scanner,(yylsp[-2])), ExpressionPtr((yyvsp[0].pExpression))); retE->moveSemantics = true; @@ -8133,35 +8202,35 @@ YYLTYPE yylloc = yyloc_default; } break; - case 327: /* block_or_lambda: '$' */ + case 328: /* block_or_lambda: '$' */ { (yyval.i) = 0; /* block */ } break; - case 328: /* block_or_lambda: '@' */ + case 329: /* block_or_lambda: '@' */ { (yyval.i) = 1; /* lambda */ } break; - case 329: /* block_or_lambda: '@' '@' */ + case 330: /* block_or_lambda: '@' '@' */ { (yyval.i) = 2; /* local function */ } break; - case 330: /* capture_entry: '&' "name" */ + case 331: /* capture_entry: '&' "name" */ { (yyval.pCapt) = new CaptureEntry(*(yyvsp[0].s),CaptureMode::capture_by_reference); delete (yyvsp[0].s); } break; - case 331: /* capture_entry: '=' "name" */ + case 332: /* capture_entry: '=' "name" */ { (yyval.pCapt) = new CaptureEntry(*(yyvsp[0].s),CaptureMode::capture_by_copy); delete (yyvsp[0].s); } break; - case 332: /* capture_entry: "<-" "name" */ + case 333: /* capture_entry: "<-" "name" */ { (yyval.pCapt) = new CaptureEntry(*(yyvsp[0].s),CaptureMode::capture_by_move); delete (yyvsp[0].s); } break; - case 333: /* capture_entry: ":=" "name" */ + case 334: /* capture_entry: ":=" "name" */ { (yyval.pCapt) = new CaptureEntry(*(yyvsp[0].s),CaptureMode::capture_by_clone); delete (yyvsp[0].s); } break; - case 334: /* capture_list: capture_entry */ + case 335: /* capture_list: capture_entry */ { (yyval.pCaptList) = new vector(); (yyval.pCaptList)->push_back(*(yyvsp[0].pCapt)); @@ -8169,7 +8238,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 335: /* capture_list: capture_list ',' capture_entry */ + case 336: /* capture_list: capture_list ',' capture_entry */ { (yyvsp[-2].pCaptList)->push_back(*(yyvsp[0].pCapt)); delete (yyvsp[0].pCapt); @@ -8177,15 +8246,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 336: /* optional_capture_list: %empty */ + case 337: /* optional_capture_list: %empty */ { (yyval.pCaptList) = nullptr; } break; - case 337: /* optional_capture_list: "[[" capture_list ']' ']' */ + case 338: /* optional_capture_list: "[[" capture_list ']' ']' */ { (yyval.pCaptList) = (yyvsp[-2].pCaptList); } break; - case 338: /* expr_block: expression_block */ + case 339: /* expr_block: expression_block */ { ExprBlock * closure = (ExprBlock *) (yyvsp[0].pExpression); (yyval.pExpression) = new ExprMakeBlock(tokAt(scanner,(yylsp[0])),ExpressionPtr((yyvsp[0].pExpression))); @@ -8193,217 +8262,217 @@ YYLTYPE yylloc = yyloc_default; } break; - case 339: /* expr_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block */ + case 340: /* expr_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block */ { (yyval.pExpression) = ast_makeBlock(scanner,(yyvsp[-5].i),(yyvsp[-4].faList),(yyvsp[-3].pCaptList),(yyvsp[-2].pVarDeclList),(yyvsp[-1].pTypeDecl),(yyvsp[0].pExpression),tokAt(scanner,(yylsp[0])),tokAt(scanner,(yylsp[-4]))); } break; - case 340: /* expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block */ + case 341: /* expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block */ { (yyval.pExpression) = ast_makeBlock(scanner,(yyvsp[-5].i),(yyvsp[-4].faList),(yyvsp[-3].pCaptList),(yyvsp[-2].pVarDeclList),(yyvsp[-1].pTypeDecl),(yyvsp[0].pExpression),tokAt(scanner,(yylsp[0])),tokAt(scanner,(yylsp[-4]))); } break; - case 341: /* $@21: %empty */ + case 342: /* $@21: %empty */ { yyextra->das_need_oxford_comma = false; } break; - case 342: /* expr_full_block_assumed_piped: block_or_lambda $@21 optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block */ + case 343: /* expr_full_block_assumed_piped: block_or_lambda $@21 optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block */ { (yyval.pExpression) = ast_makeBlock(scanner,(yyvsp[-6].i),(yyvsp[-4].faList),(yyvsp[-3].pCaptList),(yyvsp[-2].pVarDeclList),(yyvsp[-1].pTypeDecl),(yyvsp[0].pExpression),tokAt(scanner,(yylsp[0])),tokAt(scanner,(yylsp[-4]))); } break; - case 343: /* expr_numeric_const: "integer constant" */ + case 344: /* expr_numeric_const: "integer constant" */ { (yyval.pExpression) = new ExprConstInt(tokAt(scanner,(yylsp[0])),(int32_t)(yyvsp[0].i)); } break; - case 344: /* expr_numeric_const: "unsigned integer constant" */ + case 345: /* expr_numeric_const: "unsigned integer constant" */ { (yyval.pExpression) = new ExprConstUInt(tokAt(scanner,(yylsp[0])),(uint32_t)(yyvsp[0].ui)); } break; - case 345: /* expr_numeric_const: "long integer constant" */ + case 346: /* expr_numeric_const: "long integer constant" */ { (yyval.pExpression) = new ExprConstInt64(tokAt(scanner,(yylsp[0])),(int64_t)(yyvsp[0].i64)); } break; - case 346: /* expr_numeric_const: "unsigned long integer constant" */ + case 347: /* expr_numeric_const: "unsigned long integer constant" */ { (yyval.pExpression) = new ExprConstUInt64(tokAt(scanner,(yylsp[0])),(uint64_t)(yyvsp[0].ui64)); } break; - case 347: /* expr_numeric_const: "unsigned int8 constant" */ + case 348: /* expr_numeric_const: "unsigned int8 constant" */ { (yyval.pExpression) = new ExprConstUInt8(tokAt(scanner,(yylsp[0])),(uint8_t)(yyvsp[0].ui)); } break; - case 348: /* expr_numeric_const: "floating point constant" */ + case 349: /* expr_numeric_const: "floating point constant" */ { (yyval.pExpression) = new ExprConstFloat(tokAt(scanner,(yylsp[0])),(float)(yyvsp[0].fd)); } break; - case 349: /* expr_numeric_const: "double constant" */ + case 350: /* expr_numeric_const: "double constant" */ { (yyval.pExpression) = new ExprConstDouble(tokAt(scanner,(yylsp[0])),(double)(yyvsp[0].d)); } break; - case 350: /* expr_assign: expr */ + case 351: /* expr_assign: expr */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 351: /* expr_assign: expr '=' expr */ + case 352: /* expr_assign: expr '=' expr */ { (yyval.pExpression) = new ExprCopy(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 352: /* expr_assign: expr "<-" expr */ + case 353: /* expr_assign: expr "<-" expr */ { (yyval.pExpression) = new ExprMove(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 353: /* expr_assign: expr ":=" expr */ + case 354: /* expr_assign: expr ":=" expr */ { (yyval.pExpression) = new ExprClone(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 354: /* expr_assign: expr "&=" expr */ + case 355: /* expr_assign: expr "&=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"&=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 355: /* expr_assign: expr "|=" expr */ + case 356: /* expr_assign: expr "|=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"|=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 356: /* expr_assign: expr "^=" expr */ + case 357: /* expr_assign: expr "^=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"^=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 357: /* expr_assign: expr "&&=" expr */ + case 358: /* expr_assign: expr "&&=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"&&=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 358: /* expr_assign: expr "||=" expr */ + case 359: /* expr_assign: expr "||=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"||=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 359: /* expr_assign: expr "^^=" expr */ + case 360: /* expr_assign: expr "^^=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"^^=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 360: /* expr_assign: expr "+=" expr */ + case 361: /* expr_assign: expr "+=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"+=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 361: /* expr_assign: expr "-=" expr */ + case 362: /* expr_assign: expr "-=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"-=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 362: /* expr_assign: expr "*=" expr */ + case 363: /* expr_assign: expr "*=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"*=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 363: /* expr_assign: expr "/=" expr */ + case 364: /* expr_assign: expr "/=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"/=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 364: /* expr_assign: expr "%=" expr */ + case 365: /* expr_assign: expr "%=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"%=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 365: /* expr_assign: expr "<<=" expr */ + case 366: /* expr_assign: expr "<<=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"<<=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 366: /* expr_assign: expr ">>=" expr */ + case 367: /* expr_assign: expr ">>=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),">>=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 367: /* expr_assign: expr "<<<=" expr */ + case 368: /* expr_assign: expr "<<<=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"<<<=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 368: /* expr_assign: expr ">>>=" expr */ + case 369: /* expr_assign: expr ">>>=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),">>>=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 369: /* expr_assign_pipe_right: "@ <|" expr_block */ + case 370: /* expr_assign_pipe_right: "@ <|" expr_block */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 370: /* expr_assign_pipe_right: "@@ <|" expr_block */ + case 371: /* expr_assign_pipe_right: "@@ <|" expr_block */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 371: /* expr_assign_pipe_right: "$ <|" expr_block */ + case 372: /* expr_assign_pipe_right: "$ <|" expr_block */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 372: /* expr_assign_pipe_right: expr_call_pipe */ + case 373: /* expr_assign_pipe_right: expr_call_pipe */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 373: /* expr_assign_pipe: expr '=' expr_assign_pipe_right */ + case 374: /* expr_assign_pipe: expr '=' expr_assign_pipe_right */ { (yyval.pExpression) = new ExprCopy(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 374: /* expr_assign_pipe: expr "<-" expr_assign_pipe_right */ + case 375: /* expr_assign_pipe: expr "<-" expr_assign_pipe_right */ { (yyval.pExpression) = new ExprMove(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 375: /* expr_assign_pipe: expr "&=" expr_assign_pipe_right */ + case 376: /* expr_assign_pipe: expr "&=" expr_assign_pipe_right */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"&=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 376: /* expr_assign_pipe: expr "|=" expr_assign_pipe_right */ + case 377: /* expr_assign_pipe: expr "|=" expr_assign_pipe_right */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"|=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 377: /* expr_assign_pipe: expr "^=" expr_assign_pipe_right */ + case 378: /* expr_assign_pipe: expr "^=" expr_assign_pipe_right */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"^=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 378: /* expr_assign_pipe: expr "&&=" expr_assign_pipe_right */ + case 379: /* expr_assign_pipe: expr "&&=" expr_assign_pipe_right */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"&&=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 379: /* expr_assign_pipe: expr "||=" expr_assign_pipe_right */ + case 380: /* expr_assign_pipe: expr "||=" expr_assign_pipe_right */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"||=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 380: /* expr_assign_pipe: expr "^^=" expr_assign_pipe_right */ + case 381: /* expr_assign_pipe: expr "^^=" expr_assign_pipe_right */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"^^=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 381: /* expr_assign_pipe: expr "+=" expr_assign_pipe_right */ + case 382: /* expr_assign_pipe: expr "+=" expr_assign_pipe_right */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"+=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 382: /* expr_assign_pipe: expr "-=" expr_assign_pipe_right */ + case 383: /* expr_assign_pipe: expr "-=" expr_assign_pipe_right */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"-=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 383: /* expr_assign_pipe: expr "*=" expr_assign_pipe_right */ + case 384: /* expr_assign_pipe: expr "*=" expr_assign_pipe_right */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"*=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 384: /* expr_assign_pipe: expr "/=" expr_assign_pipe_right */ + case 385: /* expr_assign_pipe: expr "/=" expr_assign_pipe_right */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"/=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 385: /* expr_assign_pipe: expr "%=" expr_assign_pipe_right */ + case 386: /* expr_assign_pipe: expr "%=" expr_assign_pipe_right */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"%=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 386: /* expr_assign_pipe: expr "<<=" expr_assign_pipe_right */ + case 387: /* expr_assign_pipe: expr "<<=" expr_assign_pipe_right */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"<<=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 387: /* expr_assign_pipe: expr ">>=" expr_assign_pipe_right */ + case 388: /* expr_assign_pipe: expr ">>=" expr_assign_pipe_right */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),">>=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 388: /* expr_assign_pipe: expr "<<<=" expr_assign_pipe_right */ + case 389: /* expr_assign_pipe: expr "<<<=" expr_assign_pipe_right */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"<<<=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 389: /* expr_assign_pipe: expr ">>>=" expr_assign_pipe_right */ + case 390: /* expr_assign_pipe: expr ">>>=" expr_assign_pipe_right */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),">>>=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 390: /* expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' ')' */ + case 391: /* expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' ')' */ { auto nc = new ExprNamedCall(tokAt(scanner,(yylsp[-5])),*(yyvsp[-5].s)); nc->arguments = *(yyvsp[-2].pMakeStruct); @@ -8413,7 +8482,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 391: /* expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' ')' */ + case 392: /* expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' ')' */ { auto nc = new ExprNamedCall(tokAt(scanner,(yylsp[-7])),*(yyvsp[-7].s)); nc->nonNamedArguments = sequenceToList((yyvsp[-5].pExpression)); @@ -8424,7 +8493,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 392: /* expr_method_call: expr "->" "name" '(' ')' */ + case 393: /* expr_method_call: expr "->" "name" '(' ')' */ { auto pInvoke = makeInvokeMethod(tokAt(scanner,(yylsp[-3])), (yyvsp[-4].pExpression), *(yyvsp[-2].s)); delete (yyvsp[-2].s); @@ -8432,7 +8501,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 393: /* expr_method_call: expr "->" "name" '(' expr_list ')' */ + case 394: /* expr_method_call: expr "->" "name" '(' expr_list ')' */ { auto pInvoke = makeInvokeMethod(tokAt(scanner,(yylsp[-4])), (yyvsp[-5].pExpression), *(yyvsp[-3].s)); auto callArgs = sequenceToList((yyvsp[-1].pExpression)); @@ -8442,35 +8511,35 @@ YYLTYPE yylloc = yyloc_default; } break; - case 394: /* func_addr_name: name_in_namespace */ + case 395: /* func_addr_name: name_in_namespace */ { (yyval.pExpression) = new ExprAddr(tokAt(scanner,(yylsp[0])),*(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 395: /* func_addr_name: "$i" '(' expr ')' */ + case 396: /* func_addr_name: "$i" '(' expr ')' */ { auto expr = new ExprAddr(tokAt(scanner,(yylsp[-3])),"``MACRO``TAG``ADDR``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression), expr, "i"); } break; - case 396: /* func_addr_expr: '@' '@' func_addr_name */ + case 397: /* func_addr_expr: '@' '@' func_addr_name */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 397: /* $@22: %empty */ + case 398: /* $@22: %empty */ { yyextra->das_arrow_depth ++; } break; - case 398: /* $@23: %empty */ + case 399: /* $@23: %empty */ { yyextra->das_arrow_depth --; } break; - case 399: /* func_addr_expr: '@' '@' '<' $@22 type_declaration_no_options '>' $@23 func_addr_name */ + case 400: /* func_addr_expr: '@' '@' '<' $@22 type_declaration_no_options '>' $@23 func_addr_name */ { auto expr = (ExprAddr *) ((yyvsp[0].pExpression)->rtti_isAddr() ? (yyvsp[0].pExpression) : (((ExprTag *) (yyvsp[0].pExpression))->value.get())); expr->funcType = TypeDeclPtr((yyvsp[-3].pTypeDecl)); @@ -8478,15 +8547,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 400: /* $@24: %empty */ + case 401: /* $@24: %empty */ { yyextra->das_arrow_depth ++; } break; - case 401: /* $@25: %empty */ + case 402: /* $@25: %empty */ { yyextra->das_arrow_depth --; } break; - case 402: /* func_addr_expr: '@' '@' '<' $@24 optional_function_argument_list optional_function_type '>' $@25 func_addr_name */ + case 403: /* func_addr_expr: '@' '@' '<' $@24 optional_function_argument_list optional_function_type '>' $@25 func_addr_name */ { auto expr = (ExprAddr *) ((yyvsp[0].pExpression)->rtti_isAddr() ? (yyvsp[0].pExpression) : (((ExprTag *) (yyvsp[0].pExpression))->value.get())); expr->funcType = make_smart(Type::tFunction); @@ -8499,21 +8568,21 @@ YYLTYPE yylloc = yyloc_default; } break; - case 403: /* expr_field: expr '.' "name" */ + case 404: /* expr_field: expr '.' "name" */ { (yyval.pExpression) = new ExprField(tokAt(scanner,(yylsp[-1])), tokAt(scanner,(yylsp[0])), ExpressionPtr((yyvsp[-2].pExpression)), *(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 404: /* expr_field: expr '.' '.' "name" */ + case 405: /* expr_field: expr '.' '.' "name" */ { (yyval.pExpression) = new ExprField(tokAt(scanner,(yylsp[-1])), tokAt(scanner,(yylsp[0])), ExpressionPtr((yyvsp[-3].pExpression)), *(yyvsp[0].s), true); delete (yyvsp[0].s); } break; - case 405: /* expr_field: expr '.' "name" '(' ')' */ + case 406: /* expr_field: expr '.' "name" '(' ')' */ { auto pInvoke = makeInvokeMethod(tokAt(scanner,(yylsp[-3])), (yyvsp[-4].pExpression), *(yyvsp[-2].s)); delete (yyvsp[-2].s); @@ -8521,7 +8590,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 406: /* expr_field: expr '.' "name" '(' expr_list ')' */ + case 407: /* expr_field: expr '.' "name" '(' expr_list ')' */ { auto pInvoke = makeInvokeMethod(tokAt(scanner,(yylsp[-4])), (yyvsp[-5].pExpression), *(yyvsp[-3].s)); auto callArgs = sequenceToList((yyvsp[-1].pExpression)); @@ -8531,29 +8600,29 @@ YYLTYPE yylloc = yyloc_default; } break; - case 407: /* $@26: %empty */ + case 408: /* $@26: %empty */ { yyextra->das_suppress_errors=true; } break; - case 408: /* $@27: %empty */ + case 409: /* $@27: %empty */ { yyextra->das_suppress_errors=false; } break; - case 409: /* expr_field: expr '.' $@26 error $@27 */ + case 410: /* expr_field: expr '.' $@26 error $@27 */ { (yyval.pExpression) = new ExprField(tokAt(scanner,(yylsp[-3])), tokAt(scanner,(yylsp[-3])), ExpressionPtr((yyvsp[-4].pExpression)), ""); yyerrok; } break; - case 410: /* expr_call: name_in_namespace '(' ')' */ + case 411: /* expr_call: name_in_namespace '(' ')' */ { (yyval.pExpression) = yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-2])),tokAt(scanner,(yylsp[0])),*(yyvsp[-2].s)); delete (yyvsp[-2].s); } break; - case 411: /* expr_call: name_in_namespace '(' make_struct_single ')' */ + case 412: /* expr_call: name_in_namespace '(' make_struct_single ')' */ { ((ExprMakeStruct *)(yyvsp[-1].pExpression))->at = tokAt(scanner,(yylsp[-3])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = new TypeDecl(Type::alias); @@ -8565,166 +8634,166 @@ YYLTYPE yylloc = yyloc_default; } break; - case 412: /* expr_call: name_in_namespace '(' expr_list ')' */ + case 413: /* expr_call: name_in_namespace '(' expr_list ')' */ { (yyval.pExpression) = parseFunctionArguments(yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-3])),tokAt(scanner,(yylsp[0])),*(yyvsp[-3].s)),(yyvsp[-1].pExpression)); delete (yyvsp[-3].s); } break; - case 413: /* expr_call: basic_type_declaration '(' ')' */ + case 414: /* expr_call: basic_type_declaration '(' ')' */ { (yyval.pExpression) = yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-2])),tokAt(scanner,(yylsp[0])),das_to_string((yyvsp[-2].type))); } break; - case 414: /* expr_call: basic_type_declaration '(' expr_list ')' */ + case 415: /* expr_call: basic_type_declaration '(' expr_list ')' */ { (yyval.pExpression) = parseFunctionArguments(yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-3])),tokAt(scanner,(yylsp[0])),das_to_string((yyvsp[-3].type))),(yyvsp[-1].pExpression)); } break; - case 415: /* expr: "null" */ + case 416: /* expr: "null" */ { (yyval.pExpression) = new ExprConstPtr(tokAt(scanner,(yylsp[0])),nullptr); } break; - case 416: /* expr: name_in_namespace */ + case 417: /* expr: name_in_namespace */ { (yyval.pExpression) = new ExprVar(tokAt(scanner,(yylsp[0])),*(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 417: /* expr: expr_numeric_const */ + case 418: /* expr: expr_numeric_const */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 418: /* expr: expr_reader */ + case 419: /* expr: expr_reader */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 419: /* expr: string_builder */ + case 420: /* expr: string_builder */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 420: /* expr: make_decl */ + case 421: /* expr: make_decl */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 421: /* expr: "true" */ + case 422: /* expr: "true" */ { (yyval.pExpression) = new ExprConstBool(tokAt(scanner,(yylsp[0])),true); } break; - case 422: /* expr: "false" */ + case 423: /* expr: "false" */ { (yyval.pExpression) = new ExprConstBool(tokAt(scanner,(yylsp[0])),false); } break; - case 423: /* expr: expr_field */ + case 424: /* expr: expr_field */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 424: /* expr: expr_mtag */ + case 425: /* expr: expr_mtag */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 425: /* expr: '!' expr */ + case 426: /* expr: '!' expr */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[-1])),"!",ExpressionPtr((yyvsp[0].pExpression))); } break; - case 426: /* expr: '~' expr */ + case 427: /* expr: '~' expr */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[-1])),"~",ExpressionPtr((yyvsp[0].pExpression))); } break; - case 427: /* expr: '+' expr */ + case 428: /* expr: '+' expr */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[-1])),"+",ExpressionPtr((yyvsp[0].pExpression))); } break; - case 428: /* expr: '-' expr */ + case 429: /* expr: '-' expr */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[-1])),"-",ExpressionPtr((yyvsp[0].pExpression))); } break; - case 429: /* expr: expr "<<" expr */ + case 430: /* expr: expr "<<" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"<<", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 430: /* expr: expr ">>" expr */ + case 431: /* expr: expr ">>" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),">>", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 431: /* expr: expr "<<<" expr */ + case 432: /* expr: expr "<<<" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"<<<", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 432: /* expr: expr ">>>" expr */ + case 433: /* expr: expr ">>>" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),">>>", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 433: /* expr: expr '+' expr */ + case 434: /* expr: expr '+' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"+", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 434: /* expr: expr '-' expr */ + case 435: /* expr: expr '-' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"-", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 435: /* expr: expr '*' expr */ + case 436: /* expr: expr '*' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"*", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 436: /* expr: expr '/' expr */ + case 437: /* expr: expr '/' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"/", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 437: /* expr: expr '%' expr */ + case 438: /* expr: expr '%' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"%", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 438: /* expr: expr '<' expr */ + case 439: /* expr: expr '<' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"<", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 439: /* expr: expr '>' expr */ + case 440: /* expr: expr '>' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),">", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 440: /* expr: expr "==" expr */ + case 441: /* expr: expr "==" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"==", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 441: /* expr: expr "!=" expr */ + case 442: /* expr: expr "!=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"!=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 442: /* expr: expr "<=" expr */ + case 443: /* expr: expr "<=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"<=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 443: /* expr: expr ">=" expr */ + case 444: /* expr: expr ">=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),">=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 444: /* expr: expr '&' expr */ + case 445: /* expr: expr '&' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"&", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 445: /* expr: expr '|' expr */ + case 446: /* expr: expr '|' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"|", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 446: /* expr: expr '^' expr */ + case 447: /* expr: expr '^' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"^", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 447: /* expr: expr "&&" expr */ + case 448: /* expr: expr "&&" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"&&", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 448: /* expr: expr "||" expr */ + case 449: /* expr: expr "||" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"||", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 449: /* expr: expr "^^" expr */ + case 450: /* expr: expr "^^" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"^^", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 450: /* expr: expr ".." expr */ + case 451: /* expr: expr ".." expr */ { auto itv = yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-1])),"interval"); itv->arguments.push_back(ExpressionPtr((yyvsp[-2].pExpression))); @@ -8733,23 +8802,23 @@ YYLTYPE yylloc = yyloc_default; } break; - case 451: /* expr: "++" expr */ + case 452: /* expr: "++" expr */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[-1])),"++", ExpressionPtr((yyvsp[0].pExpression))); } break; - case 452: /* expr: "--" expr */ + case 453: /* expr: "--" expr */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[-1])),"--", ExpressionPtr((yyvsp[0].pExpression))); } break; - case 453: /* expr: expr "++" */ + case 454: /* expr: expr "++" */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[0])),"+++", ExpressionPtr((yyvsp[-1].pExpression))); } break; - case 454: /* expr: expr "--" */ + case 455: /* expr: expr "--" */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[0])),"---", ExpressionPtr((yyvsp[-1].pExpression))); } break; - case 455: /* expr: '(' expr_list optional_comma ')' */ + case 456: /* expr: '(' expr_list optional_comma ')' */ { if ( (yyvsp[-2].pExpression)->rtti_isSequence() ) { auto mkt = new ExprMakeTuple(tokAt(scanner,(yylsp[-2]))); @@ -8765,87 +8834,87 @@ YYLTYPE yylloc = yyloc_default; } break; - case 456: /* expr: expr '[' expr ']' */ + case 457: /* expr: expr '[' expr ']' */ { (yyval.pExpression) = new ExprAt(tokAt(scanner,(yylsp[-2])), ExpressionPtr((yyvsp[-3].pExpression)), ExpressionPtr((yyvsp[-1].pExpression))); } break; - case 457: /* expr: expr '.' '[' expr ']' */ + case 458: /* expr: expr '.' '[' expr ']' */ { (yyval.pExpression) = new ExprAt(tokAt(scanner,(yylsp[-2])), ExpressionPtr((yyvsp[-4].pExpression)), ExpressionPtr((yyvsp[-1].pExpression)), true); } break; - case 458: /* expr: expr "?[" expr ']' */ + case 459: /* expr: expr "?[" expr ']' */ { (yyval.pExpression) = new ExprSafeAt(tokAt(scanner,(yylsp[-2])), ExpressionPtr((yyvsp[-3].pExpression)), ExpressionPtr((yyvsp[-1].pExpression))); } break; - case 459: /* expr: expr '.' "?[" expr ']' */ + case 460: /* expr: expr '.' "?[" expr ']' */ { (yyval.pExpression) = new ExprSafeAt(tokAt(scanner,(yylsp[-2])), ExpressionPtr((yyvsp[-4].pExpression)), ExpressionPtr((yyvsp[-1].pExpression)), true); } break; - case 460: /* expr: expr "?." "name" */ + case 461: /* expr: expr "?." "name" */ { (yyval.pExpression) = new ExprSafeField(tokAt(scanner,(yylsp[-1])), tokAt(scanner,(yylsp[0])), ExpressionPtr((yyvsp[-2].pExpression)), *(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 461: /* expr: expr '.' "?." "name" */ + case 462: /* expr: expr '.' "?." "name" */ { (yyval.pExpression) = new ExprSafeField(tokAt(scanner,(yylsp[-1])), tokAt(scanner,(yylsp[0])), ExpressionPtr((yyvsp[-3].pExpression)), *(yyvsp[0].s), true); delete (yyvsp[0].s); } break; - case 462: /* expr: func_addr_expr */ + case 463: /* expr: func_addr_expr */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 463: /* expr: expr_call */ + case 464: /* expr: expr_call */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 464: /* expr: '*' expr */ + case 465: /* expr: '*' expr */ { (yyval.pExpression) = new ExprPtr2Ref(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 465: /* expr: "deref" '(' expr ')' */ + case 466: /* expr: "deref" '(' expr ')' */ { (yyval.pExpression) = new ExprPtr2Ref(tokAt(scanner,(yylsp[-3])),ExpressionPtr((yyvsp[-1].pExpression))); } break; - case 466: /* expr: "addr" '(' expr ')' */ + case 467: /* expr: "addr" '(' expr ')' */ { (yyval.pExpression) = new ExprRef2Ptr(tokAt(scanner,(yylsp[-3])),ExpressionPtr((yyvsp[-1].pExpression))); } break; - case 467: /* expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' ')' */ + case 468: /* expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' ')' */ { (yyval.pExpression) = ast_makeGenerator(scanner,(yyvsp[-4].pTypeDecl),(yyvsp[-2].pCaptList),nullptr,tokAt(scanner,(yylsp[-6]))); } break; - case 468: /* expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' */ + case 469: /* expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' */ { (yyval.pExpression) = ast_makeGenerator(scanner,(yyvsp[-5].pTypeDecl),(yyvsp[-3].pCaptList),(yyvsp[-1].pExpression),tokAt(scanner,(yylsp[-7]))); } break; - case 469: /* expr: expr "??" expr */ + case 470: /* expr: expr "??" expr */ { (yyval.pExpression) = new ExprNullCoalescing(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 470: /* expr: expr '?' expr ':' expr */ + case 471: /* expr: expr '?' expr ':' expr */ { (yyval.pExpression) = new ExprOp3(tokAt(scanner,(yylsp[-3])),"?",ExpressionPtr((yyvsp[-4].pExpression)),ExpressionPtr((yyvsp[-2].pExpression)),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 471: /* $@28: %empty */ + case 472: /* $@28: %empty */ { yyextra->das_arrow_depth ++; } break; - case 472: /* $@29: %empty */ + case 473: /* $@29: %empty */ { yyextra->das_arrow_depth --; } break; - case 473: /* expr: expr "is" "type" '<' $@28 type_declaration_no_options '>' $@29 */ + case 474: /* expr: expr "is" "type" '<' $@28 type_declaration_no_options '>' $@29 */ { (yyval.pExpression) = new ExprIs(tokAt(scanner,(yylsp[-6])),ExpressionPtr((yyvsp[-7].pExpression)),TypeDeclPtr((yyvsp[-2].pTypeDecl))); } break; - case 474: /* expr: expr "is" basic_type_declaration */ + case 475: /* expr: expr "is" basic_type_declaration */ { auto vdecl = new TypeDecl((yyvsp[0].type)); vdecl->at = tokAt(scanner,(yylsp[0])); @@ -8853,29 +8922,29 @@ YYLTYPE yylloc = yyloc_default; } break; - case 475: /* expr: expr "is" "name" */ + case 476: /* expr: expr "is" "name" */ { (yyval.pExpression) = new ExprIsVariant(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)),*(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 476: /* expr: expr "as" "name" */ + case 477: /* expr: expr "as" "name" */ { (yyval.pExpression) = new ExprAsVariant(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)),*(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 477: /* $@30: %empty */ + case 478: /* $@30: %empty */ { yyextra->das_arrow_depth ++; } break; - case 478: /* $@31: %empty */ + case 479: /* $@31: %empty */ { yyextra->das_arrow_depth --; } break; - case 479: /* expr: expr "as" "type" '<' $@30 type_declaration '>' $@31 */ + case 480: /* expr: expr "as" "type" '<' $@30 type_declaration '>' $@31 */ { auto vname = (yyvsp[-2].pTypeDecl)->describe(); (yyval.pExpression) = new ExprAsVariant(tokAt(scanner,(yylsp[-6])),ExpressionPtr((yyvsp[-7].pExpression)),vname); @@ -8883,28 +8952,28 @@ YYLTYPE yylloc = yyloc_default; } break; - case 480: /* expr: expr "as" basic_type_declaration */ + case 481: /* expr: expr "as" basic_type_declaration */ { (yyval.pExpression) = new ExprAsVariant(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)),das_to_string((yyvsp[0].type))); } break; - case 481: /* expr: expr '?' "as" "name" */ + case 482: /* expr: expr '?' "as" "name" */ { (yyval.pExpression) = new ExprSafeAsVariant(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-3].pExpression)),*(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 482: /* $@32: %empty */ + case 483: /* $@32: %empty */ { yyextra->das_arrow_depth ++; } break; - case 483: /* $@33: %empty */ + case 484: /* $@33: %empty */ { yyextra->das_arrow_depth --; } break; - case 484: /* expr: expr '?' "as" "type" '<' $@32 type_declaration '>' $@33 */ + case 485: /* expr: expr '?' "as" "type" '<' $@32 type_declaration '>' $@33 */ { auto vname = (yyvsp[-2].pTypeDecl)->describe(); (yyval.pExpression) = new ExprSafeAsVariant(tokAt(scanner,(yylsp[-6])),ExpressionPtr((yyvsp[-8].pExpression)),vname); @@ -8912,60 +8981,60 @@ YYLTYPE yylloc = yyloc_default; } break; - case 485: /* expr: expr '?' "as" basic_type_declaration */ + case 486: /* expr: expr '?' "as" basic_type_declaration */ { (yyval.pExpression) = new ExprSafeAsVariant(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-3].pExpression)),das_to_string((yyvsp[0].type))); } break; - case 486: /* expr: expr_type_info */ + case 487: /* expr: expr_type_info */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 487: /* expr: expr_type_decl */ + case 488: /* expr: expr_type_decl */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 488: /* expr: expr_cast */ + case 489: /* expr: expr_cast */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 489: /* expr: expr_new */ + case 490: /* expr: expr_new */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 490: /* expr: expr_method_call */ + case 491: /* expr: expr_method_call */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 491: /* expr: expr_named_call */ + case 492: /* expr: expr_named_call */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 492: /* expr: expr_full_block */ + case 493: /* expr: expr_full_block */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 493: /* expr: expr "<|" expr */ + case 494: /* expr: expr "<|" expr */ { (yyval.pExpression) = ast_lpipe(scanner,(yyvsp[-2].pExpression),(yyvsp[0].pExpression),tokAt(scanner,(yylsp[-1]))); } break; - case 494: /* expr: expr "|>" expr */ + case 495: /* expr: expr "|>" expr */ { (yyval.pExpression) = ast_rpipe(scanner,(yyvsp[-2].pExpression),(yyvsp[0].pExpression),tokAt(scanner,(yylsp[-1]))); } break; - case 495: /* expr: expr "|>" basic_type_declaration */ + case 496: /* expr: expr "|>" basic_type_declaration */ { auto fncall = yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[0])),tokAt(scanner,(yylsp[0])),das_to_string((yyvsp[0].type))); (yyval.pExpression) = ast_rpipe(scanner,(yyvsp[-2].pExpression),fncall,tokAt(scanner,(yylsp[-1]))); } break; - case 496: /* expr: name_in_namespace "name" */ + case 497: /* expr: name_in_namespace "name" */ { (yyval.pExpression) = ast_NameName(scanner,(yyvsp[-1].s),(yyvsp[0].s),tokAt(scanner,(yylsp[-1])),tokAt(scanner,(yylsp[0]))); } break; - case 497: /* expr: "unsafe" '(' expr ')' */ + case 498: /* expr: "unsafe" '(' expr ')' */ { (yyvsp[-1].pExpression)->alwaysSafe = true; (yyvsp[-1].pExpression)->userSaidItsSafe = true; @@ -8973,157 +9042,157 @@ YYLTYPE yylloc = yyloc_default; } break; - case 498: /* expr: expression_keyword */ + case 499: /* expr: expression_keyword */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 499: /* expr_mtag: "$$" '(' expr ')' */ + case 500: /* expr_mtag: "$$" '(' expr ')' */ { (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),"e"); } break; - case 500: /* expr_mtag: "$i" '(' expr ')' */ + case 501: /* expr_mtag: "$i" '(' expr ')' */ { (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),"i"); } break; - case 501: /* expr_mtag: "$v" '(' expr ')' */ + case 502: /* expr_mtag: "$v" '(' expr ')' */ { (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),"v"); } break; - case 502: /* expr_mtag: "$b" '(' expr ')' */ + case 503: /* expr_mtag: "$b" '(' expr ')' */ { (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),"b"); } break; - case 503: /* expr_mtag: "$a" '(' expr ')' */ + case 504: /* expr_mtag: "$a" '(' expr ')' */ { (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),"a"); } break; - case 504: /* expr_mtag: "..." */ + case 505: /* expr_mtag: "..." */ { (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[0])),nullptr,"..."); } break; - case 505: /* expr_mtag: "$c" '(' expr ')' '(' ')' */ + case 506: /* expr_mtag: "$c" '(' expr ')' '(' ')' */ { auto ccall = yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-5])),tokAt(scanner,(yylsp[0])),"``MACRO``TAG``CALL``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-5])),(yyvsp[-3].pExpression),ccall,"c"); } break; - case 506: /* expr_mtag: "$c" '(' expr ')' '(' expr_list ')' */ + case 507: /* expr_mtag: "$c" '(' expr ')' '(' expr_list ')' */ { auto ccall = parseFunctionArguments(yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-6])),tokAt(scanner,(yylsp[0])),"``MACRO``TAG``CALL``"),(yyvsp[-1].pExpression)); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-6])),(yyvsp[-4].pExpression),ccall,"c"); } break; - case 507: /* expr_mtag: expr '.' "$f" '(' expr ')' */ + case 508: /* expr_mtag: expr '.' "$f" '(' expr ')' */ { auto cfield = new ExprField(tokAt(scanner,(yylsp[-4])), tokAt(scanner,(yylsp[-1])), ExpressionPtr((yyvsp[-5].pExpression)), "``MACRO``TAG``FIELD``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 508: /* expr_mtag: expr "?." "$f" '(' expr ')' */ + case 509: /* expr_mtag: expr "?." "$f" '(' expr ')' */ { auto cfield = new ExprSafeField(tokAt(scanner,(yylsp[-4])), tokAt(scanner,(yylsp[-1])), ExpressionPtr((yyvsp[-5].pExpression)), "``MACRO``TAG``FIELD``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 509: /* expr_mtag: expr '.' '.' "$f" '(' expr ')' */ + case 510: /* expr_mtag: expr '.' '.' "$f" '(' expr ')' */ { auto cfield = new ExprField(tokAt(scanner,(yylsp[-4])), tokAt(scanner,(yylsp[-1])), ExpressionPtr((yyvsp[-6].pExpression)), "``MACRO``TAG``FIELD``", true); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 510: /* expr_mtag: expr '.' "?." "$f" '(' expr ')' */ + case 511: /* expr_mtag: expr '.' "?." "$f" '(' expr ')' */ { auto cfield = new ExprSafeField(tokAt(scanner,(yylsp[-4])), tokAt(scanner,(yylsp[-1])), ExpressionPtr((yyvsp[-6].pExpression)), "``MACRO``TAG``FIELD``", true); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 511: /* expr_mtag: expr "as" "$f" '(' expr ')' */ + case 512: /* expr_mtag: expr "as" "$f" '(' expr ')' */ { auto cfield = new ExprAsVariant(tokAt(scanner,(yylsp[-4])),ExpressionPtr((yyvsp[-5].pExpression)),"``MACRO``TAG``FIELD``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 512: /* expr_mtag: expr '?' "as" "$f" '(' expr ')' */ + case 513: /* expr_mtag: expr '?' "as" "$f" '(' expr ')' */ { auto cfield = new ExprSafeAsVariant(tokAt(scanner,(yylsp[-4])),ExpressionPtr((yyvsp[-6].pExpression)),"``MACRO``TAG``FIELD``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 513: /* expr_mtag: expr "is" "$f" '(' expr ')' */ + case 514: /* expr_mtag: expr "is" "$f" '(' expr ')' */ { auto cfield = new ExprIsVariant(tokAt(scanner,(yylsp[-4])),ExpressionPtr((yyvsp[-5].pExpression)),"``MACRO``TAG``FIELD``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 514: /* expr_mtag: '@' '@' "$c" '(' expr ')' */ + case 515: /* expr_mtag: '@' '@' "$c" '(' expr ')' */ { auto ccall = new ExprAddr(tokAt(scanner,(yylsp[-4])),"``MACRO``TAG``ADDR``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-3])),(yyvsp[-1].pExpression),ccall,"c"); } break; - case 515: /* optional_field_annotation: %empty */ + case 516: /* optional_field_annotation: %empty */ { (yyval.aaList) = nullptr; } break; - case 516: /* optional_field_annotation: "[[" annotation_argument_list ']' ']' */ + case 517: /* optional_field_annotation: "[[" annotation_argument_list ']' ']' */ { (yyval.aaList) = (yyvsp[-2].aaList); /*this one is gone when BRABRA is disabled*/ } break; - case 517: /* optional_field_annotation: metadata_argument_list */ + case 518: /* optional_field_annotation: metadata_argument_list */ { (yyval.aaList) = (yyvsp[0].aaList); } break; - case 518: /* optional_override: %empty */ + case 519: /* optional_override: %empty */ { (yyval.i) = OVERRIDE_NONE; } break; - case 519: /* optional_override: "override" */ + case 520: /* optional_override: "override" */ { (yyval.i) = OVERRIDE_OVERRIDE; } break; - case 520: /* optional_override: "sealed" */ + case 521: /* optional_override: "sealed" */ { (yyval.i) = OVERRIDE_SEALED; } break; - case 521: /* optional_constant: %empty */ + case 522: /* optional_constant: %empty */ { (yyval.b) = false; } break; - case 522: /* optional_constant: "const" */ + case 523: /* optional_constant: "const" */ { (yyval.b) = true; } break; - case 523: /* optional_public_or_private_member_variable: %empty */ + case 524: /* optional_public_or_private_member_variable: %empty */ { (yyval.b) = false; } break; - case 524: /* optional_public_or_private_member_variable: "public" */ + case 525: /* optional_public_or_private_member_variable: "public" */ { (yyval.b) = false; } break; - case 525: /* optional_public_or_private_member_variable: "private" */ + case 526: /* optional_public_or_private_member_variable: "private" */ { (yyval.b) = true; } break; - case 526: /* optional_static_member_variable: %empty */ + case 527: /* optional_static_member_variable: %empty */ { (yyval.b) = false; } break; - case 527: /* optional_static_member_variable: "static" */ + case 528: /* optional_static_member_variable: "static" */ { (yyval.b) = true; } break; - case 528: /* structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration */ + case 529: /* structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration */ { (yyvsp[0].pVarDecl)->override = (yyvsp[-2].i) == OVERRIDE_OVERRIDE; (yyvsp[0].pVarDecl)->sealed = (yyvsp[-2].i) == OVERRIDE_SEALED; @@ -9134,13 +9203,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 529: /* struct_variable_declaration_list: %empty */ + case 530: /* struct_variable_declaration_list: %empty */ { (yyval.pVarDeclList) = new vector(); } break; - case 530: /* $@34: %empty */ + case 531: /* $@34: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -9149,7 +9218,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 531: /* struct_variable_declaration_list: struct_variable_declaration_list $@34 structure_variable_declaration "end of expression" */ + case 532: /* struct_variable_declaration_list: struct_variable_declaration_list $@34 structure_variable_declaration "end of expression" */ { (yyval.pVarDeclList) = (yyvsp[-3].pVarDeclList); if ( (yyvsp[-1].pVarDecl) ) (yyvsp[-3].pVarDeclList)->push_back((yyvsp[-1].pVarDecl)); @@ -9165,7 +9234,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 532: /* $@35: %empty */ + case 533: /* $@35: %empty */ { yyextra->das_force_oxford_comma=true; if ( !yyextra->g_CommentReaders.empty() ) { @@ -9175,7 +9244,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 533: /* struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@35 function_declaration_header "end of expression" */ + case 534: /* struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@35 function_declaration_header "end of expression" */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[-1])); @@ -9185,7 +9254,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 534: /* $@36: %empty */ + case 535: /* $@36: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -9194,7 +9263,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 535: /* struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@36 function_declaration_header expression_block */ + case 536: /* struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@36 function_declaration_header expression_block */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -9204,7 +9273,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 536: /* struct_variable_declaration_list: struct_variable_declaration_list '[' annotation_list ']' "end of expression" */ + case 537: /* struct_variable_declaration_list: struct_variable_declaration_list '[' annotation_list ']' "end of expression" */ { das_yyerror(scanner,"structure field or class method annotation expected to remain on the same line with the field or the class", tokAt(scanner,(yylsp[-2])), CompilationError::syntax_error); @@ -9213,7 +9282,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 537: /* function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing variable_declaration */ + case 538: /* function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing variable_declaration */ { (yyval.pVarDecl) = (yyvsp[0].pVarDecl); if ( (yyvsp[-1].b) ) { @@ -9225,7 +9294,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 538: /* function_argument_declaration: "$a" '(' expr ')' */ + case 539: /* function_argument_declaration: "$a" '(' expr ')' */ { auto na = new vector(); na->push_back(VariableNameAndPosition{"``MACRO``TAG``","",tokAt(scanner,(yylsp[-1]))}); @@ -9235,21 +9304,21 @@ YYLTYPE yylloc = yyloc_default; } break; - case 539: /* function_argument_list: function_argument_declaration */ + case 540: /* function_argument_list: function_argument_declaration */ { (yyval.pVarDeclList) = new vector(); (yyval.pVarDeclList)->push_back((yyvsp[0].pVarDecl)); } break; - case 540: /* function_argument_list: function_argument_list "end of expression" function_argument_declaration */ + case 541: /* function_argument_list: function_argument_list "end of expression" function_argument_declaration */ { (yyval.pVarDeclList) = (yyvsp[-2].pVarDeclList); (yyvsp[-2].pVarDeclList)->push_back((yyvsp[0].pVarDecl)); } break; - case 541: /* tuple_type: type_declaration */ + case 542: /* tuple_type: type_declaration */ { (yyval.pVarDecl) = new VariableDeclaration(nullptr,(yyvsp[0].pTypeDecl),nullptr); } break; - case 542: /* tuple_type: "name" ':' type_declaration */ + case 543: /* tuple_type: "name" ':' type_declaration */ { auto na = new vector(); na->push_back(VariableNameAndPosition{*(yyvsp[-2].s),"",tokAt(scanner,(yylsp[-2]))}); @@ -9258,27 +9327,27 @@ YYLTYPE yylloc = yyloc_default; } break; - case 543: /* tuple_type_list: tuple_type */ + case 544: /* tuple_type_list: tuple_type */ { (yyval.pVarDeclList) = new vector(); (yyval.pVarDeclList)->push_back((yyvsp[0].pVarDecl)); } break; - case 544: /* tuple_type_list: tuple_type_list "end of expression" tuple_type */ + case 545: /* tuple_type_list: tuple_type_list "end of expression" tuple_type */ { (yyval.pVarDeclList) = (yyvsp[-2].pVarDeclList); (yyvsp[-2].pVarDeclList)->push_back((yyvsp[0].pVarDecl)); } break; - case 545: /* tuple_alias_type_list: %empty */ + case 546: /* tuple_alias_type_list: %empty */ { (yyval.pVarDeclList) = new vector(); } break; - case 546: /* tuple_alias_type_list: tuple_alias_type_list "end of expression" */ + case 547: /* tuple_alias_type_list: tuple_alias_type_list "end of expression" */ { (yyval.pVarDeclList) = (yyvsp[-1].pVarDeclList); } break; - case 547: /* tuple_alias_type_list: tuple_alias_type_list tuple_type "end of expression" */ + case 548: /* tuple_alias_type_list: tuple_alias_type_list tuple_type "end of expression" */ { (yyval.pVarDeclList) = (yyvsp[-2].pVarDeclList); (yyvsp[-2].pVarDeclList)->push_back((yyvsp[-1].pVarDecl)); /* @@ -9294,7 +9363,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 548: /* variant_type: "name" ':' type_declaration */ + case 549: /* variant_type: "name" ':' type_declaration */ { auto na = new vector(); na->push_back(VariableNameAndPosition{*(yyvsp[-2].s),"",tokAt(scanner,(yylsp[-2]))}); @@ -9303,27 +9372,27 @@ YYLTYPE yylloc = yyloc_default; } break; - case 549: /* variant_type_list: variant_type */ + case 550: /* variant_type_list: variant_type */ { (yyval.pVarDeclList) = new vector(); (yyval.pVarDeclList)->push_back((yyvsp[0].pVarDecl)); } break; - case 550: /* variant_type_list: variant_type_list "end of expression" variant_type */ + case 551: /* variant_type_list: variant_type_list "end of expression" variant_type */ { (yyval.pVarDeclList) = (yyvsp[-2].pVarDeclList); (yyvsp[-2].pVarDeclList)->push_back((yyvsp[0].pVarDecl)); } break; - case 551: /* variant_alias_type_list: %empty */ + case 552: /* variant_alias_type_list: %empty */ { (yyval.pVarDeclList) = new vector(); } break; - case 552: /* variant_alias_type_list: variant_alias_type_list "end of expression" */ + case 553: /* variant_alias_type_list: variant_alias_type_list "end of expression" */ { (yyval.pVarDeclList) = (yyvsp[-1].pVarDeclList); } break; - case 553: /* variant_alias_type_list: variant_alias_type_list variant_type "end of expression" */ + case 554: /* variant_alias_type_list: variant_alias_type_list variant_type "end of expression" */ { (yyval.pVarDeclList) = (yyvsp[-2].pVarDeclList); (yyvsp[-2].pVarDeclList)->push_back((yyvsp[-1].pVarDecl)); if ( !yyextra->g_CommentReaders.empty() ) { @@ -9337,15 +9406,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 554: /* copy_or_move: '=' */ + case 555: /* copy_or_move: '=' */ { (yyval.b) = false; } break; - case 555: /* copy_or_move: "<-" */ + case 556: /* copy_or_move: "<-" */ { (yyval.b) = true; } break; - case 556: /* variable_declaration: variable_name_with_pos_list */ + case 557: /* variable_declaration: variable_name_with_pos_list */ { auto autoT = new TypeDecl(Type::autoinfer); autoT->at = tokAt(scanner,(yylsp[0])); @@ -9354,7 +9423,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 557: /* variable_declaration: variable_name_with_pos_list '&' */ + case 558: /* variable_declaration: variable_name_with_pos_list '&' */ { auto autoT = new TypeDecl(Type::autoinfer); autoT->at = tokAt(scanner,(yylsp[-1])); @@ -9363,20 +9432,20 @@ YYLTYPE yylloc = yyloc_default; } break; - case 558: /* variable_declaration: variable_name_with_pos_list ':' type_declaration */ + case 559: /* variable_declaration: variable_name_with_pos_list ':' type_declaration */ { (yyval.pVarDecl) = new VariableDeclaration((yyvsp[-2].pNameWithPosList),(yyvsp[0].pTypeDecl),nullptr); } break; - case 559: /* variable_declaration: variable_name_with_pos_list ':' type_declaration copy_or_move expr */ + case 560: /* variable_declaration: variable_name_with_pos_list ':' type_declaration copy_or_move expr */ { (yyval.pVarDecl) = new VariableDeclaration((yyvsp[-4].pNameWithPosList),(yyvsp[-2].pTypeDecl),(yyvsp[0].pExpression)); (yyval.pVarDecl)->init_via_move = (yyvsp[-1].b); } break; - case 560: /* variable_declaration: variable_name_with_pos_list copy_or_move expr */ + case 561: /* variable_declaration: variable_name_with_pos_list copy_or_move expr */ { auto typeDecl = new TypeDecl(Type::autoinfer); typeDecl->at = tokAt(scanner,(yylsp[-2])); @@ -9385,7 +9454,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 561: /* variable_declaration: variable_name_with_pos_list copy_or_move expr_pipe */ + case 562: /* variable_declaration: variable_name_with_pos_list copy_or_move expr_pipe */ { auto typeDecl = new TypeDecl(Type::autoinfer); typeDecl->at = tokAt(scanner,(yylsp[-2])); @@ -9394,27 +9463,27 @@ YYLTYPE yylloc = yyloc_default; } break; - case 562: /* copy_or_move_or_clone: '=' */ + case 563: /* copy_or_move_or_clone: '=' */ { (yyval.i) = CorM_COPY; } break; - case 563: /* copy_or_move_or_clone: "<-" */ + case 564: /* copy_or_move_or_clone: "<-" */ { (yyval.i) = CorM_MOVE; } break; - case 564: /* copy_or_move_or_clone: ":=" */ + case 565: /* copy_or_move_or_clone: ":=" */ { (yyval.i) = CorM_CLONE; } break; - case 565: /* optional_ref: %empty */ + case 566: /* optional_ref: %empty */ { (yyval.b) = false; } break; - case 566: /* optional_ref: '&' */ + case 567: /* optional_ref: '&' */ { (yyval.b) = true; } break; - case 567: /* let_variable_name_with_pos_list: "name" */ + case 568: /* let_variable_name_with_pos_list: "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); auto pSL = new vector(); @@ -9424,7 +9493,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 568: /* let_variable_name_with_pos_list: "$i" '(' expr ')' */ + case 569: /* let_variable_name_with_pos_list: "$i" '(' expr ')' */ { auto pSL = new vector(); pSL->push_back(VariableNameAndPosition{"``MACRO``TAG``","",tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-1].pExpression))}); @@ -9432,7 +9501,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 569: /* let_variable_name_with_pos_list: "name" "aka" "name" */ + case 570: /* let_variable_name_with_pos_list: "name" "aka" "name" */ { das_checkName(scanner,*(yyvsp[-2].s),tokAt(scanner,(yylsp[-2]))); das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); @@ -9444,7 +9513,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 570: /* let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" */ + case 571: /* let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); (yyvsp[-2].pNameWithPosList)->push_back(VariableNameAndPosition{*(yyvsp[0].s),"",tokAt(scanner,(yylsp[0]))}); @@ -9453,7 +9522,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 571: /* let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" "aka" "name" */ + case 572: /* let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" "aka" "name" */ { das_checkName(scanner,*(yyvsp[-2].s),tokAt(scanner,(yylsp[-2]))); das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); @@ -9464,13 +9533,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 572: /* let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" */ + case 573: /* let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" */ { (yyval.pVarDecl) = new VariableDeclaration((yyvsp[-3].pNameWithPosList),(yyvsp[-1].pTypeDecl),nullptr); } break; - case 573: /* let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" */ + case 574: /* let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" */ { (yyval.pVarDecl) = new VariableDeclaration((yyvsp[-5].pNameWithPosList),(yyvsp[-3].pTypeDecl),(yyvsp[-1].pExpression)); (yyval.pVarDecl)->init_via_move = ((yyvsp[-2].i) & CorM_MOVE) !=0; @@ -9478,7 +9547,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 574: /* let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr_pipe */ + case 575: /* let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr_pipe */ { (yyval.pVarDecl) = new VariableDeclaration((yyvsp[-4].pNameWithPosList),(yyvsp[-2].pTypeDecl),(yyvsp[0].pExpression)); (yyval.pVarDecl)->init_via_move = ((yyvsp[-1].i) & CorM_MOVE) !=0; @@ -9486,7 +9555,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 575: /* let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr "end of expression" */ + case 576: /* let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr "end of expression" */ { auto typeDecl = new TypeDecl(Type::autoinfer); typeDecl->at = tokAt(scanner,(yylsp[-4])); @@ -9497,7 +9566,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 576: /* let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr_pipe */ + case 577: /* let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr_pipe */ { auto typeDecl = new TypeDecl(Type::autoinfer); typeDecl->at = tokAt(scanner,(yylsp[-3])); @@ -9508,13 +9577,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 577: /* global_variable_declaration_list: %empty */ + case 578: /* global_variable_declaration_list: %empty */ { (yyval.pVarDeclList) = new vector(); } break; - case 578: /* $@37: %empty */ + case 579: /* $@37: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -9523,7 +9592,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 579: /* global_variable_declaration_list: global_variable_declaration_list $@37 optional_field_annotation let_variable_declaration */ + case 580: /* global_variable_declaration_list: global_variable_declaration_list $@37 optional_field_annotation let_variable_declaration */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -9538,33 +9607,33 @@ YYLTYPE yylloc = yyloc_default; } break; - case 580: /* optional_shared: %empty */ + case 581: /* optional_shared: %empty */ { (yyval.b) = false; } break; - case 581: /* optional_shared: "shared" */ + case 582: /* optional_shared: "shared" */ { (yyval.b) = true; } break; - case 582: /* optional_public_or_private_variable: %empty */ + case 583: /* optional_public_or_private_variable: %empty */ { (yyval.b) = yyextra->g_Program->thisModule->isPublic; } break; - case 583: /* optional_public_or_private_variable: "private" */ + case 584: /* optional_public_or_private_variable: "private" */ { (yyval.b) = false; } break; - case 584: /* optional_public_or_private_variable: "public" */ + case 585: /* optional_public_or_private_variable: "public" */ { (yyval.b) = true; } break; - case 585: /* global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" */ + case 586: /* global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" */ { ast_globalLetList(scanner,(yyvsp[-5].b),(yyvsp[-4].b),(yyvsp[-3].b),(yyvsp[-1].pVarDeclList)); } break; - case 586: /* $@38: %empty */ + case 587: /* $@38: %empty */ { yyextra->das_force_oxford_comma=true; if ( !yyextra->g_CommentReaders.empty() ) { @@ -9574,7 +9643,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 587: /* global_let: kwd_let optional_shared optional_public_or_private_variable $@38 optional_field_annotation let_variable_declaration */ + case 588: /* global_let: kwd_let optional_shared optional_public_or_private_variable $@38 optional_field_annotation let_variable_declaration */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -9587,19 +9656,19 @@ YYLTYPE yylloc = yyloc_default; } break; - case 588: /* enum_list: %empty */ + case 589: /* enum_list: %empty */ { (yyval.pEnum) = new Enumeration(); } break; - case 589: /* enum_list: enum_list "end of expression" */ + case 590: /* enum_list: enum_list "end of expression" */ { (yyval.pEnum) = (yyvsp[-1].pEnum); } break; - case 590: /* enum_list: enum_list "name" "end of expression" */ + case 591: /* enum_list: enum_list "name" "end of expression" */ { das_checkName(scanner,*(yyvsp[-1].s),tokAt(scanner,(yylsp[-1]))); if ( !(yyvsp[-2].pEnum)->add(*(yyvsp[-1].s),nullptr,tokAt(scanner,(yylsp[-1]))) ) { @@ -9617,7 +9686,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 591: /* enum_list: enum_list "name" '=' expr "end of expression" */ + case 592: /* enum_list: enum_list "name" '=' expr "end of expression" */ { das_checkName(scanner,*(yyvsp[-3].s),tokAt(scanner,(yylsp[-3]))); if ( !(yyvsp[-4].pEnum)->add(*(yyvsp[-3].s),ExpressionPtr((yyvsp[-1].pExpression)),tokAt(scanner,(yylsp[-3]))) ) { @@ -9635,19 +9704,19 @@ YYLTYPE yylloc = yyloc_default; } break; - case 592: /* optional_public_or_private_alias: %empty */ + case 593: /* optional_public_or_private_alias: %empty */ { (yyval.b) = yyextra->g_Program->thisModule->isPublic; } break; - case 593: /* optional_public_or_private_alias: "private" */ + case 594: /* optional_public_or_private_alias: "private" */ { (yyval.b) = false; } break; - case 594: /* optional_public_or_private_alias: "public" */ + case 595: /* optional_public_or_private_alias: "public" */ { (yyval.b) = true; } break; - case 595: /* $@39: %empty */ + case 596: /* $@39: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto pubename = tokAt(scanner,(yylsp[0])); @@ -9656,7 +9725,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 596: /* single_alias: optional_public_or_private_alias "name" $@39 '=' type_declaration */ + case 597: /* single_alias: optional_public_or_private_alias "name" $@39 '=' type_declaration */ { das_checkName(scanner,*(yyvsp[-3].s),tokAt(scanner,(yylsp[-3]))); (yyvsp[0].pTypeDecl)->isPrivateAlias = !(yyvsp[-4].b); @@ -9677,23 +9746,23 @@ YYLTYPE yylloc = yyloc_default; } break; - case 600: /* $@40: %empty */ + case 601: /* $@40: %empty */ { yyextra->das_force_oxford_comma=true;} break; - case 602: /* optional_public_or_private_enum: %empty */ + case 603: /* optional_public_or_private_enum: %empty */ { (yyval.b) = yyextra->g_Program->thisModule->isPublic; } break; - case 603: /* optional_public_or_private_enum: "private" */ + case 604: /* optional_public_or_private_enum: "private" */ { (yyval.b) = false; } break; - case 604: /* optional_public_or_private_enum: "public" */ + case 605: /* optional_public_or_private_enum: "public" */ { (yyval.b) = true; } break; - case 605: /* enum_name: "name" */ + case 606: /* enum_name: "name" */ { if ( !yyextra->g_CommentReaders.empty() ) { auto pubename = tokAt(scanner,(yylsp[0])); @@ -9703,7 +9772,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 606: /* $@41: %empty */ + case 607: /* $@41: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[-1])); @@ -9712,7 +9781,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 607: /* $@42: %empty */ + case 608: /* $@42: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -9721,7 +9790,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 608: /* enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name "begin of code block" $@41 enum_list $@42 "end of code block" */ + case 609: /* enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name "begin of code block" $@41 enum_list $@42 "end of code block" */ { if ( !yyextra->g_CommentReaders.empty() ) { auto pubename = tokAt(scanner,(yylsp[-2])); @@ -9731,7 +9800,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 609: /* $@43: %empty */ + case 610: /* $@43: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[-3])); @@ -9740,7 +9809,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 610: /* $@44: %empty */ + case 611: /* $@44: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -9749,7 +9818,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 611: /* enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 "end of code block" */ + case 612: /* enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 "end of code block" */ { if ( !yyextra->g_CommentReaders.empty() ) { auto pubename = tokAt(scanner,(yylsp[-2])); @@ -9759,61 +9828,61 @@ YYLTYPE yylloc = yyloc_default; } break; - case 612: /* optional_structure_parent: %empty */ + case 613: /* optional_structure_parent: %empty */ { (yyval.s) = nullptr; } break; - case 613: /* optional_structure_parent: ':' name_in_namespace */ + case 614: /* optional_structure_parent: ':' name_in_namespace */ { (yyval.s) = (yyvsp[0].s); } break; - case 614: /* optional_sealed: %empty */ + case 615: /* optional_sealed: %empty */ { (yyval.b) = false; } break; - case 615: /* optional_sealed: "sealed" */ + case 616: /* optional_sealed: "sealed" */ { (yyval.b) = true; } break; - case 616: /* structure_name: optional_sealed "name" optional_structure_parent */ + case 617: /* structure_name: optional_sealed "name" optional_structure_parent */ { (yyval.pStructure) = ast_structureName(scanner,(yyvsp[-2].b),(yyvsp[-1].s),tokAt(scanner,(yylsp[-1])),(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); } break; - case 617: /* class_or_struct: "class" */ + case 618: /* class_or_struct: "class" */ { (yyval.b) = true; } break; - case 618: /* class_or_struct: "struct" */ + case 619: /* class_or_struct: "struct" */ { (yyval.b) = false; } break; - case 619: /* optional_public_or_private_structure: %empty */ + case 620: /* optional_public_or_private_structure: %empty */ { (yyval.b) = yyextra->g_Program->thisModule->isPublic; } break; - case 620: /* optional_public_or_private_structure: "private" */ + case 621: /* optional_public_or_private_structure: "private" */ { (yyval.b) = false; } break; - case 621: /* optional_public_or_private_structure: "public" */ + case 622: /* optional_public_or_private_structure: "public" */ { (yyval.b) = true; } break; - case 622: /* optional_struct_variable_declaration_list: %empty */ + case 623: /* optional_struct_variable_declaration_list: %empty */ { (yyval.pVarDeclList) = new vector(); } break; - case 623: /* optional_struct_variable_declaration_list: "begin of code block" struct_variable_declaration_list "end of code block" */ + case 624: /* optional_struct_variable_declaration_list: "begin of code block" struct_variable_declaration_list "end of code block" */ { (yyval.pVarDeclList) = (yyvsp[-1].pVarDeclList); } break; - case 624: /* $@45: %empty */ + case 625: /* $@45: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[-1])); @@ -9822,11 +9891,11 @@ YYLTYPE yylloc = yyloc_default; } break; - case 625: /* $@46: %empty */ + case 626: /* $@46: %empty */ { if ( (yyvsp[0].pStructure) ) { (yyvsp[0].pStructure)->isClass = (yyvsp[-3].b); (yyvsp[0].pStructure)->privateStructure = !(yyvsp[-2].b); } } break; - case 626: /* structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@45 structure_name $@46 optional_struct_variable_declaration_list */ + case 627: /* structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@45 structure_name $@46 optional_struct_variable_declaration_list */ { if ( (yyvsp[-2].pStructure) ) { ast_structureDeclaration ( scanner, (yyvsp[-6].faList), tokAt(scanner,(yylsp[-5])), (yyvsp[-2].pStructure), tokAt(scanner,(yylsp[-2])), (yyvsp[0].pVarDeclList) ); @@ -9840,7 +9909,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 627: /* variable_name_with_pos_list: "name" */ + case 628: /* variable_name_with_pos_list: "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); auto pSL = new vector(); @@ -9850,7 +9919,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 628: /* variable_name_with_pos_list: "$i" '(' expr ')' */ + case 629: /* variable_name_with_pos_list: "$i" '(' expr ')' */ { auto pSL = new vector(); pSL->push_back(VariableNameAndPosition{"``MACRO``TAG``","",tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression)}); @@ -9858,7 +9927,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 629: /* variable_name_with_pos_list: "name" "aka" "name" */ + case 630: /* variable_name_with_pos_list: "name" "aka" "name" */ { das_checkName(scanner,*(yyvsp[-2].s),tokAt(scanner,(yylsp[-2]))); das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); @@ -9870,7 +9939,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 630: /* variable_name_with_pos_list: variable_name_with_pos_list ',' "name" */ + case 631: /* variable_name_with_pos_list: variable_name_with_pos_list ',' "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); (yyvsp[-2].pNameWithPosList)->push_back(VariableNameAndPosition{*(yyvsp[0].s),"",tokAt(scanner,(yylsp[0]))}); @@ -9879,7 +9948,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 631: /* variable_name_with_pos_list: variable_name_with_pos_list ',' "name" "aka" "name" */ + case 632: /* variable_name_with_pos_list: variable_name_with_pos_list ',' "name" "aka" "name" */ { das_checkName(scanner,*(yyvsp[-2].s),tokAt(scanner,(yylsp[-2]))); das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); @@ -9890,147 +9959,147 @@ YYLTYPE yylloc = yyloc_default; } break; - case 632: /* basic_type_declaration: "bool" */ + case 633: /* basic_type_declaration: "bool" */ { (yyval.type) = Type::tBool; } break; - case 633: /* basic_type_declaration: "string" */ + case 634: /* basic_type_declaration: "string" */ { (yyval.type) = Type::tString; } break; - case 634: /* basic_type_declaration: "int" */ + case 635: /* basic_type_declaration: "int" */ { (yyval.type) = Type::tInt; } break; - case 635: /* basic_type_declaration: "int8" */ + case 636: /* basic_type_declaration: "int8" */ { (yyval.type) = Type::tInt8; } break; - case 636: /* basic_type_declaration: "int16" */ + case 637: /* basic_type_declaration: "int16" */ { (yyval.type) = Type::tInt16; } break; - case 637: /* basic_type_declaration: "int64" */ + case 638: /* basic_type_declaration: "int64" */ { (yyval.type) = Type::tInt64; } break; - case 638: /* basic_type_declaration: "int2" */ + case 639: /* basic_type_declaration: "int2" */ { (yyval.type) = Type::tInt2; } break; - case 639: /* basic_type_declaration: "int3" */ + case 640: /* basic_type_declaration: "int3" */ { (yyval.type) = Type::tInt3; } break; - case 640: /* basic_type_declaration: "int4" */ + case 641: /* basic_type_declaration: "int4" */ { (yyval.type) = Type::tInt4; } break; - case 641: /* basic_type_declaration: "uint" */ + case 642: /* basic_type_declaration: "uint" */ { (yyval.type) = Type::tUInt; } break; - case 642: /* basic_type_declaration: "uint8" */ + case 643: /* basic_type_declaration: "uint8" */ { (yyval.type) = Type::tUInt8; } break; - case 643: /* basic_type_declaration: "uint16" */ + case 644: /* basic_type_declaration: "uint16" */ { (yyval.type) = Type::tUInt16; } break; - case 644: /* basic_type_declaration: "uint64" */ + case 645: /* basic_type_declaration: "uint64" */ { (yyval.type) = Type::tUInt64; } break; - case 645: /* basic_type_declaration: "uint2" */ + case 646: /* basic_type_declaration: "uint2" */ { (yyval.type) = Type::tUInt2; } break; - case 646: /* basic_type_declaration: "uint3" */ + case 647: /* basic_type_declaration: "uint3" */ { (yyval.type) = Type::tUInt3; } break; - case 647: /* basic_type_declaration: "uint4" */ + case 648: /* basic_type_declaration: "uint4" */ { (yyval.type) = Type::tUInt4; } break; - case 648: /* basic_type_declaration: "float" */ + case 649: /* basic_type_declaration: "float" */ { (yyval.type) = Type::tFloat; } break; - case 649: /* basic_type_declaration: "float2" */ + case 650: /* basic_type_declaration: "float2" */ { (yyval.type) = Type::tFloat2; } break; - case 650: /* basic_type_declaration: "float3" */ + case 651: /* basic_type_declaration: "float3" */ { (yyval.type) = Type::tFloat3; } break; - case 651: /* basic_type_declaration: "float4" */ + case 652: /* basic_type_declaration: "float4" */ { (yyval.type) = Type::tFloat4; } break; - case 652: /* basic_type_declaration: "void" */ + case 653: /* basic_type_declaration: "void" */ { (yyval.type) = Type::tVoid; } break; - case 653: /* basic_type_declaration: "range" */ + case 654: /* basic_type_declaration: "range" */ { (yyval.type) = Type::tRange; } break; - case 654: /* basic_type_declaration: "urange" */ + case 655: /* basic_type_declaration: "urange" */ { (yyval.type) = Type::tURange; } break; - case 655: /* basic_type_declaration: "range64" */ + case 656: /* basic_type_declaration: "range64" */ { (yyval.type) = Type::tRange64; } break; - case 656: /* basic_type_declaration: "urange64" */ + case 657: /* basic_type_declaration: "urange64" */ { (yyval.type) = Type::tURange64; } break; - case 657: /* basic_type_declaration: "double" */ + case 658: /* basic_type_declaration: "double" */ { (yyval.type) = Type::tDouble; } break; - case 658: /* basic_type_declaration: "bitfield" */ + case 659: /* basic_type_declaration: "bitfield" */ { (yyval.type) = Type::tBitfield; } break; - case 659: /* enum_basic_type_declaration: "int" */ + case 660: /* enum_basic_type_declaration: "int" */ { (yyval.type) = Type::tInt; } break; - case 660: /* enum_basic_type_declaration: "int8" */ + case 661: /* enum_basic_type_declaration: "int8" */ { (yyval.type) = Type::tInt8; } break; - case 661: /* enum_basic_type_declaration: "int16" */ + case 662: /* enum_basic_type_declaration: "int16" */ { (yyval.type) = Type::tInt16; } break; - case 662: /* enum_basic_type_declaration: "uint" */ + case 663: /* enum_basic_type_declaration: "uint" */ { (yyval.type) = Type::tUInt; } break; - case 663: /* enum_basic_type_declaration: "uint8" */ + case 664: /* enum_basic_type_declaration: "uint8" */ { (yyval.type) = Type::tUInt8; } break; - case 664: /* enum_basic_type_declaration: "uint16" */ + case 665: /* enum_basic_type_declaration: "uint16" */ { (yyval.type) = Type::tUInt16; } break; - case 665: /* enum_basic_type_declaration: "int64" */ + case 666: /* enum_basic_type_declaration: "int64" */ { (yyval.type) = Type::tInt64; } break; - case 666: /* enum_basic_type_declaration: "uint64" */ + case 667: /* enum_basic_type_declaration: "uint64" */ { (yyval.type) = Type::tUInt64; } break; - case 667: /* structure_type_declaration: name_in_namespace */ + case 668: /* structure_type_declaration: name_in_namespace */ { (yyval.pTypeDecl) = yyextra->g_Program->makeTypeDeclaration(tokAt(scanner,(yylsp[0])),*(yyvsp[0].s)); if ( !(yyval.pTypeDecl) ) { @@ -10041,14 +10110,14 @@ YYLTYPE yylloc = yyloc_default; } break; - case 668: /* auto_type_declaration: "auto" */ + case 669: /* auto_type_declaration: "auto" */ { (yyval.pTypeDecl) = new TypeDecl(Type::autoinfer); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[0])); } break; - case 669: /* auto_type_declaration: "auto" '(' "name" ')' */ + case 670: /* auto_type_declaration: "auto" '(' "name" ')' */ { das_checkName(scanner,*(yyvsp[-1].s),tokAt(scanner,(yylsp[-1]))); (yyval.pTypeDecl) = new TypeDecl(Type::autoinfer); @@ -10058,7 +10127,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 670: /* auto_type_declaration: "$t" '(' expr ')' */ + case 671: /* auto_type_declaration: "$t" '(' expr ')' */ { (yyval.pTypeDecl) = new TypeDecl(Type::alias); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-3])); @@ -10070,7 +10139,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 671: /* bitfield_bits: "name" */ + case 672: /* bitfield_bits: "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); auto pSL = new vector(); @@ -10080,7 +10149,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 672: /* bitfield_bits: bitfield_bits "end of expression" "name" */ + case 673: /* bitfield_bits: bitfield_bits "end of expression" "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); (yyvsp[-2].pNameList)->push_back(*(yyvsp[0].s)); @@ -10089,7 +10158,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 673: /* bitfield_alias_bits: %empty */ + case 674: /* bitfield_alias_bits: %empty */ { auto pSL = new vector(); (yyval.pNameList) = pSL; @@ -10097,13 +10166,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 674: /* bitfield_alias_bits: bitfield_alias_bits "end of expression" */ + case 675: /* bitfield_alias_bits: bitfield_alias_bits "end of expression" */ { (yyval.pNameList) = (yyvsp[-1].pNameList); } break; - case 675: /* bitfield_alias_bits: bitfield_alias_bits "name" "end of expression" */ + case 676: /* bitfield_alias_bits: bitfield_alias_bits "name" "end of expression" */ { das_checkName(scanner,*(yyvsp[-1].s),tokAt(scanner,(yylsp[-1]))); (yyvsp[-2].pNameList)->push_back(*(yyvsp[-1].s)); @@ -10116,15 +10185,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 676: /* $@47: %empty */ + case 677: /* $@47: %empty */ { yyextra->das_arrow_depth ++; } break; - case 677: /* $@48: %empty */ + case 678: /* $@48: %empty */ { yyextra->das_arrow_depth --; } break; - case 678: /* bitfield_type_declaration: "bitfield" '<' $@47 bitfield_bits '>' $@48 */ + case 679: /* bitfield_type_declaration: "bitfield" '<' $@47 bitfield_bits '>' $@48 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tBitfield); (yyval.pTypeDecl)->argNames = *(yyvsp[-2].pNameList); @@ -10137,51 +10206,51 @@ YYLTYPE yylloc = yyloc_default; } break; - case 679: /* table_type_pair: type_declaration */ + case 680: /* table_type_pair: type_declaration */ { (yyval.aTypePair).firstType = (yyvsp[0].pTypeDecl); (yyval.aTypePair).secondType = new TypeDecl(Type::tVoid); } break; - case 680: /* table_type_pair: type_declaration "end of expression" type_declaration */ + case 681: /* table_type_pair: type_declaration "end of expression" type_declaration */ { (yyval.aTypePair).firstType = (yyvsp[-2].pTypeDecl); (yyval.aTypePair).secondType = (yyvsp[0].pTypeDecl); } break; - case 681: /* dim_list: '[' expr ']' */ + case 682: /* dim_list: '[' expr ']' */ { (yyval.pTypeDecl) = new TypeDecl(Type::autoinfer); appendDimExpr((yyval.pTypeDecl), (yyvsp[-1].pExpression)); } break; - case 682: /* dim_list: dim_list '[' expr ']' */ + case 683: /* dim_list: dim_list '[' expr ']' */ { (yyval.pTypeDecl) = (yyvsp[-3].pTypeDecl); appendDimExpr((yyval.pTypeDecl), (yyvsp[-1].pExpression)); } break; - case 683: /* type_declaration_no_options: basic_type_declaration */ + case 684: /* type_declaration_no_options: basic_type_declaration */ { (yyval.pTypeDecl) = new TypeDecl((yyvsp[0].type)); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[0])); } break; - case 684: /* type_declaration_no_options: auto_type_declaration */ + case 685: /* type_declaration_no_options: auto_type_declaration */ { (yyval.pTypeDecl) = (yyvsp[0].pTypeDecl); } break; - case 685: /* type_declaration_no_options: bitfield_type_declaration */ + case 686: /* type_declaration_no_options: bitfield_type_declaration */ { (yyval.pTypeDecl) = (yyvsp[0].pTypeDecl); } break; - case 686: /* type_declaration_no_options: structure_type_declaration */ + case 687: /* type_declaration_no_options: structure_type_declaration */ { (yyval.pTypeDecl) = (yyvsp[0].pTypeDecl); } break; - case 687: /* type_declaration_no_options: type_declaration_no_options dim_list */ + case 688: /* type_declaration_no_options: type_declaration_no_options dim_list */ { if ( (yyvsp[-1].pTypeDecl)->baseType==Type::typeDecl ) { das_yyerror(scanner,"type declaration can`t be used as array base type",tokAt(scanner,(yylsp[-1])), @@ -10199,7 +10268,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 688: /* type_declaration_no_options: type_declaration_no_options '[' ']' */ + case 689: /* type_declaration_no_options: type_declaration_no_options '[' ']' */ { (yyvsp[-2].pTypeDecl)->dim.push_back(TypeDecl::dimAuto); (yyvsp[-2].pTypeDecl)->dimExpr.push_back(nullptr); @@ -10208,22 +10277,22 @@ YYLTYPE yylloc = yyloc_default; } break; - case 689: /* $@49: %empty */ + case 690: /* $@49: %empty */ { yyextra->das_arrow_depth ++; } break; - case 690: /* $@50: %empty */ + case 691: /* $@50: %empty */ { yyextra->das_arrow_depth --; } break; - case 691: /* type_declaration_no_options: "type" '<' $@49 type_declaration '>' $@50 */ + case 692: /* type_declaration_no_options: "type" '<' $@49 type_declaration '>' $@50 */ { (yyvsp[-2].pTypeDecl)->autoToAlias = true; (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); } break; - case 692: /* type_declaration_no_options: "typedecl" '(' expr ')' */ + case 693: /* type_declaration_no_options: "typedecl" '(' expr ')' */ { (yyval.pTypeDecl) = new TypeDecl(Type::typeDecl); (yyval.pTypeDecl)->at = tokRangeAt(scanner,(yylsp[-3]),(yylsp[-1])); @@ -10231,7 +10300,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 693: /* type_declaration_no_options: '$' name_in_namespace '(' optional_expr_list ')' */ + case 694: /* type_declaration_no_options: '$' name_in_namespace '(' optional_expr_list ')' */ { (yyval.pTypeDecl) = new TypeDecl(Type::typeMacro); (yyval.pTypeDecl)->at = tokRangeAt(scanner,(yylsp[-3]), (yylsp[-1])); @@ -10241,11 +10310,11 @@ YYLTYPE yylloc = yyloc_default; } break; - case 694: /* $@51: %empty */ + case 695: /* $@51: %empty */ { yyextra->das_arrow_depth ++; } break; - case 695: /* type_declaration_no_options: '$' name_in_namespace '<' $@51 type_declaration_no_options_list '>' '(' optional_expr_list ')' */ + case 696: /* type_declaration_no_options: '$' name_in_namespace '<' $@51 type_declaration_no_options_list '>' '(' optional_expr_list ')' */ { (yyval.pTypeDecl) = new TypeDecl(Type::typeMacro); (yyval.pTypeDecl)->at = tokRangeAt(scanner,(yylsp[-7]), (yylsp[-1])); @@ -10255,21 +10324,21 @@ YYLTYPE yylloc = yyloc_default; } break; - case 696: /* type_declaration_no_options: type_declaration_no_options '-' '[' ']' */ + case 697: /* type_declaration_no_options: type_declaration_no_options '-' '[' ']' */ { (yyvsp[-3].pTypeDecl)->removeDim = true; (yyval.pTypeDecl) = (yyvsp[-3].pTypeDecl); } break; - case 697: /* type_declaration_no_options: type_declaration_no_options "explicit" */ + case 698: /* type_declaration_no_options: type_declaration_no_options "explicit" */ { (yyvsp[-1].pTypeDecl)->isExplicit = true; (yyval.pTypeDecl) = (yyvsp[-1].pTypeDecl); } break; - case 698: /* type_declaration_no_options: type_declaration_no_options "const" */ + case 699: /* type_declaration_no_options: type_declaration_no_options "const" */ { (yyvsp[-1].pTypeDecl)->constant = true; (yyvsp[-1].pTypeDecl)->removeConstant = false; @@ -10277,7 +10346,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 699: /* type_declaration_no_options: type_declaration_no_options '-' "const" */ + case 700: /* type_declaration_no_options: type_declaration_no_options '-' "const" */ { (yyvsp[-2].pTypeDecl)->constant = false; (yyvsp[-2].pTypeDecl)->removeConstant = true; @@ -10285,7 +10354,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 700: /* type_declaration_no_options: type_declaration_no_options '&' */ + case 701: /* type_declaration_no_options: type_declaration_no_options '&' */ { (yyvsp[-1].pTypeDecl)->ref = true; (yyvsp[-1].pTypeDecl)->removeRef = false; @@ -10293,7 +10362,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 701: /* type_declaration_no_options: type_declaration_no_options '-' '&' */ + case 702: /* type_declaration_no_options: type_declaration_no_options '-' '&' */ { (yyvsp[-2].pTypeDecl)->ref = false; (yyvsp[-2].pTypeDecl)->removeRef = true; @@ -10301,21 +10370,21 @@ YYLTYPE yylloc = yyloc_default; } break; - case 702: /* type_declaration_no_options: type_declaration_no_options '#' */ + case 703: /* type_declaration_no_options: type_declaration_no_options '#' */ { (yyval.pTypeDecl) = (yyvsp[-1].pTypeDecl); (yyval.pTypeDecl)->temporary = true; } break; - case 703: /* type_declaration_no_options: type_declaration_no_options "implicit" */ + case 704: /* type_declaration_no_options: type_declaration_no_options "implicit" */ { (yyval.pTypeDecl) = (yyvsp[-1].pTypeDecl); (yyval.pTypeDecl)->implicit = true; } break; - case 704: /* type_declaration_no_options: type_declaration_no_options '-' '#' */ + case 705: /* type_declaration_no_options: type_declaration_no_options '-' '#' */ { (yyvsp[-2].pTypeDecl)->temporary = false; (yyvsp[-2].pTypeDecl)->removeTemporary = true; @@ -10323,21 +10392,21 @@ YYLTYPE yylloc = yyloc_default; } break; - case 705: /* type_declaration_no_options: type_declaration_no_options "==" "const" */ + case 706: /* type_declaration_no_options: type_declaration_no_options "==" "const" */ { (yyvsp[-2].pTypeDecl)->explicitConst = true; (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); } break; - case 706: /* type_declaration_no_options: type_declaration_no_options "==" '&' */ + case 707: /* type_declaration_no_options: type_declaration_no_options "==" '&' */ { (yyvsp[-2].pTypeDecl)->explicitRef = true; (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); } break; - case 707: /* type_declaration_no_options: type_declaration_no_options '?' */ + case 708: /* type_declaration_no_options: type_declaration_no_options '?' */ { (yyval.pTypeDecl) = new TypeDecl(Type::tPointer); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-1])); @@ -10345,15 +10414,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 708: /* $@52: %empty */ + case 709: /* $@52: %empty */ { yyextra->das_arrow_depth ++; } break; - case 709: /* $@53: %empty */ + case 710: /* $@53: %empty */ { yyextra->das_arrow_depth --; } break; - case 710: /* type_declaration_no_options: "smart_ptr" '<' $@52 type_declaration '>' $@53 */ + case 711: /* type_declaration_no_options: "smart_ptr" '<' $@52 type_declaration '>' $@53 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tPointer); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -10362,7 +10431,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 711: /* type_declaration_no_options: type_declaration_no_options "??" */ + case 712: /* type_declaration_no_options: type_declaration_no_options "??" */ { (yyval.pTypeDecl) = new TypeDecl(Type::tPointer); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-1])); @@ -10372,15 +10441,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 712: /* $@54: %empty */ + case 713: /* $@54: %empty */ { yyextra->das_arrow_depth ++; } break; - case 713: /* $@55: %empty */ + case 714: /* $@55: %empty */ { yyextra->das_arrow_depth --; } break; - case 714: /* type_declaration_no_options: "array" '<' $@54 type_declaration '>' $@55 */ + case 715: /* type_declaration_no_options: "array" '<' $@54 type_declaration '>' $@55 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tArray); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -10388,15 +10457,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 715: /* $@56: %empty */ + case 716: /* $@56: %empty */ { yyextra->das_arrow_depth ++; } break; - case 716: /* $@57: %empty */ + case 717: /* $@57: %empty */ { yyextra->das_arrow_depth --; } break; - case 717: /* type_declaration_no_options: "table" '<' $@56 table_type_pair '>' $@57 */ + case 718: /* type_declaration_no_options: "table" '<' $@56 table_type_pair '>' $@57 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tTable); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -10405,15 +10474,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 718: /* $@58: %empty */ + case 719: /* $@58: %empty */ { yyextra->das_arrow_depth ++; } break; - case 719: /* $@59: %empty */ + case 720: /* $@59: %empty */ { yyextra->das_arrow_depth --; } break; - case 720: /* type_declaration_no_options: "iterator" '<' $@58 type_declaration '>' $@59 */ + case 721: /* type_declaration_no_options: "iterator" '<' $@58 type_declaration '>' $@59 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tIterator); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -10421,22 +10490,22 @@ YYLTYPE yylloc = yyloc_default; } break; - case 721: /* type_declaration_no_options: "block" */ + case 722: /* type_declaration_no_options: "block" */ { (yyval.pTypeDecl) = new TypeDecl(Type::tBlock); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[0])); } break; - case 722: /* $@60: %empty */ + case 723: /* $@60: %empty */ { yyextra->das_arrow_depth ++; } break; - case 723: /* $@61: %empty */ + case 724: /* $@61: %empty */ { yyextra->das_arrow_depth --; } break; - case 724: /* type_declaration_no_options: "block" '<' $@60 type_declaration '>' $@61 */ + case 725: /* type_declaration_no_options: "block" '<' $@60 type_declaration '>' $@61 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tBlock); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -10444,15 +10513,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 725: /* $@62: %empty */ + case 726: /* $@62: %empty */ { yyextra->das_arrow_depth ++; } break; - case 726: /* $@63: %empty */ + case 727: /* $@63: %empty */ { yyextra->das_arrow_depth --; } break; - case 727: /* type_declaration_no_options: "block" '<' $@62 optional_function_argument_list optional_function_type '>' $@63 */ + case 728: /* type_declaration_no_options: "block" '<' $@62 optional_function_argument_list optional_function_type '>' $@63 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tBlock); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-6])); @@ -10464,22 +10533,22 @@ YYLTYPE yylloc = yyloc_default; } break; - case 728: /* type_declaration_no_options: "function" */ + case 729: /* type_declaration_no_options: "function" */ { (yyval.pTypeDecl) = new TypeDecl(Type::tFunction); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[0])); } break; - case 729: /* $@64: %empty */ + case 730: /* $@64: %empty */ { yyextra->das_arrow_depth ++; } break; - case 730: /* $@65: %empty */ + case 731: /* $@65: %empty */ { yyextra->das_arrow_depth --; } break; - case 731: /* type_declaration_no_options: "function" '<' $@64 type_declaration '>' $@65 */ + case 732: /* type_declaration_no_options: "function" '<' $@64 type_declaration '>' $@65 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tFunction); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -10487,15 +10556,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 732: /* $@66: %empty */ + case 733: /* $@66: %empty */ { yyextra->das_arrow_depth ++; } break; - case 733: /* $@67: %empty */ + case 734: /* $@67: %empty */ { yyextra->das_arrow_depth --; } break; - case 734: /* type_declaration_no_options: "function" '<' $@66 optional_function_argument_list optional_function_type '>' $@67 */ + case 735: /* type_declaration_no_options: "function" '<' $@66 optional_function_argument_list optional_function_type '>' $@67 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tFunction); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-6])); @@ -10507,22 +10576,22 @@ YYLTYPE yylloc = yyloc_default; } break; - case 735: /* type_declaration_no_options: "lambda" */ + case 736: /* type_declaration_no_options: "lambda" */ { (yyval.pTypeDecl) = new TypeDecl(Type::tLambda); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[0])); } break; - case 736: /* $@68: %empty */ + case 737: /* $@68: %empty */ { yyextra->das_arrow_depth ++; } break; - case 737: /* $@69: %empty */ + case 738: /* $@69: %empty */ { yyextra->das_arrow_depth --; } break; - case 738: /* type_declaration_no_options: "lambda" '<' $@68 type_declaration '>' $@69 */ + case 739: /* type_declaration_no_options: "lambda" '<' $@68 type_declaration '>' $@69 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tLambda); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -10530,15 +10599,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 739: /* $@70: %empty */ + case 740: /* $@70: %empty */ { yyextra->das_arrow_depth ++; } break; - case 740: /* $@71: %empty */ + case 741: /* $@71: %empty */ { yyextra->das_arrow_depth --; } break; - case 741: /* type_declaration_no_options: "lambda" '<' $@70 optional_function_argument_list optional_function_type '>' $@71 */ + case 742: /* type_declaration_no_options: "lambda" '<' $@70 optional_function_argument_list optional_function_type '>' $@71 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tLambda); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-6])); @@ -10550,15 +10619,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 742: /* $@72: %empty */ + case 743: /* $@72: %empty */ { yyextra->das_arrow_depth ++; } break; - case 743: /* $@73: %empty */ + case 744: /* $@73: %empty */ { yyextra->das_arrow_depth --; } break; - case 744: /* type_declaration_no_options: "tuple" '<' $@72 tuple_type_list '>' $@73 */ + case 745: /* type_declaration_no_options: "tuple" '<' $@72 tuple_type_list '>' $@73 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tTuple); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -10567,15 +10636,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 745: /* $@74: %empty */ + case 746: /* $@74: %empty */ { yyextra->das_arrow_depth ++; } break; - case 746: /* $@75: %empty */ + case 747: /* $@75: %empty */ { yyextra->das_arrow_depth --; } break; - case 747: /* type_declaration_no_options: "variant" '<' $@74 variant_type_list '>' $@75 */ + case 748: /* type_declaration_no_options: "variant" '<' $@74 variant_type_list '>' $@75 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tVariant); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -10584,13 +10653,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 748: /* type_declaration: type_declaration_no_options */ + case 749: /* type_declaration: type_declaration_no_options */ { (yyval.pTypeDecl) = (yyvsp[0].pTypeDecl); } break; - case 749: /* type_declaration: type_declaration '|' type_declaration_no_options */ + case 750: /* type_declaration: type_declaration '|' type_declaration_no_options */ { if ( (yyvsp[-2].pTypeDecl)->baseType==Type::option ) { (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); @@ -10604,7 +10673,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 750: /* type_declaration: type_declaration '|' '#' */ + case 751: /* type_declaration: type_declaration '|' '#' */ { if ( (yyvsp[-2].pTypeDecl)->baseType==Type::option ) { (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); @@ -10620,11 +10689,11 @@ YYLTYPE yylloc = yyloc_default; } break; - case 751: /* $@76: %empty */ + case 752: /* $@76: %empty */ { yyextra->das_need_oxford_comma=false; } break; - case 752: /* $@77: %empty */ + case 753: /* $@77: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[0])); @@ -10633,7 +10702,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 753: /* $@78: %empty */ + case 754: /* $@78: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[-2])); @@ -10642,7 +10711,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 754: /* $@79: %empty */ + case 755: /* $@79: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[-4])); @@ -10651,7 +10720,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 755: /* tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" $@77 "begin of code block" $@78 tuple_alias_type_list $@79 "end of code block" */ + case 756: /* tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" $@77 "begin of code block" $@78 tuple_alias_type_list $@79 "end of code block" */ { auto vtype = make_smart(Type::tTuple); vtype->alias = *(yyvsp[-6].s); @@ -10671,11 +10740,11 @@ YYLTYPE yylloc = yyloc_default; } break; - case 756: /* $@80: %empty */ + case 757: /* $@80: %empty */ { yyextra->das_need_oxford_comma=false; } break; - case 757: /* $@81: %empty */ + case 758: /* $@81: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[0])); @@ -10684,7 +10753,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 758: /* $@82: %empty */ + case 759: /* $@82: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[-2])); @@ -10694,7 +10763,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 759: /* $@83: %empty */ + case 760: /* $@83: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[-4])); @@ -10703,7 +10772,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 760: /* variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" $@81 "begin of code block" $@82 variant_alias_type_list $@83 "end of code block" */ + case 761: /* variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" $@81 "begin of code block" $@82 variant_alias_type_list $@83 "end of code block" */ { auto vtype = make_smart(Type::tVariant); vtype->alias = *(yyvsp[-6].s); @@ -10723,11 +10792,11 @@ YYLTYPE yylloc = yyloc_default; } break; - case 761: /* $@84: %empty */ + case 762: /* $@84: %empty */ { yyextra->das_need_oxford_comma=false; } break; - case 762: /* $@85: %empty */ + case 763: /* $@85: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[0])); @@ -10736,7 +10805,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 763: /* $@86: %empty */ + case 764: /* $@86: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[-2])); @@ -10745,7 +10814,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 764: /* $@87: %empty */ + case 765: /* $@87: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[-4])); @@ -10754,7 +10823,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 765: /* bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" $@85 "begin of code block" $@86 bitfield_alias_bits $@87 "end of code block" */ + case 766: /* bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" $@85 "begin of code block" $@86 bitfield_alias_bits $@87 "end of code block" */ { auto btype = make_smart(Type::tBitfield); btype->alias = *(yyvsp[-6].s); @@ -10778,27 +10847,27 @@ YYLTYPE yylloc = yyloc_default; } break; - case 766: /* make_decl: make_struct_decl */ + case 767: /* make_decl: make_struct_decl */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 767: /* make_decl: make_dim_decl */ + case 768: /* make_decl: make_dim_decl */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 768: /* make_decl: make_table_decl */ + case 769: /* make_decl: make_table_decl */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 769: /* make_decl: array_comprehension */ + case 770: /* make_decl: array_comprehension */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 770: /* make_decl: make_tuple_call */ + case 771: /* make_decl: make_tuple_call */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 771: /* make_struct_fields: "name" copy_or_move expr */ + case 772: /* make_struct_fields: "name" copy_or_move expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-2])),*(yyvsp[-2].s),ExpressionPtr((yyvsp[0].pExpression)),(yyvsp[-1].b),false); delete (yyvsp[-2].s); @@ -10808,7 +10877,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 772: /* make_struct_fields: "name" ":=" expr */ + case 773: /* make_struct_fields: "name" ":=" expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-2])),*(yyvsp[-2].s),ExpressionPtr((yyvsp[0].pExpression)),false,true); delete (yyvsp[-2].s); @@ -10818,7 +10887,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 773: /* make_struct_fields: make_struct_fields ',' "name" copy_or_move expr */ + case 774: /* make_struct_fields: make_struct_fields ',' "name" copy_or_move expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-2])),*(yyvsp[-2].s),ExpressionPtr((yyvsp[0].pExpression)),(yyvsp[-1].b),false); delete (yyvsp[-2].s); @@ -10827,7 +10896,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 774: /* make_struct_fields: make_struct_fields ',' "name" ":=" expr */ + case 775: /* make_struct_fields: make_struct_fields ',' "name" ":=" expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-2])),*(yyvsp[-2].s),ExpressionPtr((yyvsp[0].pExpression)),false,true); delete (yyvsp[-2].s); @@ -10836,7 +10905,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 775: /* make_struct_fields: "$f" '(' expr ')' copy_or_move expr */ + case 776: /* make_struct_fields: "$f" '(' expr ')' copy_or_move expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-3])),"``MACRO``TAG``FIELD``",ExpressionPtr((yyvsp[0].pExpression)),(yyvsp[-1].b),false); mfd->tag = ExpressionPtr((yyvsp[-3].pExpression)); @@ -10846,7 +10915,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 776: /* make_struct_fields: "$f" '(' expr ')' ":=" expr */ + case 777: /* make_struct_fields: "$f" '(' expr ')' ":=" expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-3])),"``MACRO``TAG``FIELD``",ExpressionPtr((yyvsp[0].pExpression)),false,true); mfd->tag = ExpressionPtr((yyvsp[-3].pExpression)); @@ -10856,7 +10925,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 777: /* make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' copy_or_move expr */ + case 778: /* make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' copy_or_move expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-3])),"``MACRO``TAG``FIELD``",ExpressionPtr((yyvsp[0].pExpression)),(yyvsp[-1].b),false); mfd->tag = ExpressionPtr((yyvsp[-3].pExpression)); @@ -10865,7 +10934,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 778: /* make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' ":=" expr */ + case 779: /* make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' ":=" expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-3])),"``MACRO``TAG``FIELD``",ExpressionPtr((yyvsp[0].pExpression)),false,true); mfd->tag = ExpressionPtr((yyvsp[-3].pExpression)); @@ -10874,7 +10943,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 779: /* make_struct_single: make_struct_fields */ + case 780: /* make_struct_single: make_struct_fields */ { auto msd = new ExprMakeStruct(); msd->structs.push_back(MakeStructPtr((yyvsp[0].pMakeStruct))); @@ -10882,7 +10951,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 780: /* make_struct_dim: make_struct_fields */ + case 781: /* make_struct_dim: make_struct_fields */ { auto msd = new ExprMakeStruct(); msd->structs.push_back(MakeStructPtr((yyvsp[0].pMakeStruct))); @@ -10890,30 +10959,30 @@ YYLTYPE yylloc = yyloc_default; } break; - case 781: /* make_struct_dim: make_struct_dim "end of expression" make_struct_fields */ + case 782: /* make_struct_dim: make_struct_dim "end of expression" make_struct_fields */ { ((ExprMakeStruct *) (yyvsp[-2].pExpression))->structs.push_back(MakeStructPtr((yyvsp[0].pMakeStruct))); (yyval.pExpression) = (yyvsp[-2].pExpression); } break; - case 782: /* optional_block: %empty */ + case 783: /* optional_block: %empty */ { (yyval.pExpression) = nullptr; } break; - case 783: /* optional_block: "where" expr_block */ + case 784: /* optional_block: "where" expr_block */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 796: /* use_initializer: %empty */ + case 797: /* use_initializer: %empty */ { (yyval.b) = true; } break; - case 797: /* use_initializer: "uninitialized" */ + case 798: /* use_initializer: "uninitialized" */ { (yyval.b) = false; } break; - case 798: /* make_struct_decl: "[[" type_declaration_no_options make_struct_dim optional_block optional_trailing_delim_sqr_sqr */ + case 799: /* make_struct_decl: "[[" type_declaration_no_options make_struct_dim optional_block optional_trailing_delim_sqr_sqr */ { ((ExprMakeStruct *)(yyvsp[-2].pExpression))->makeType = TypeDeclPtr((yyvsp[-3].pTypeDecl)); ((ExprMakeStruct *)(yyvsp[-2].pExpression))->block = (yyvsp[-1].pExpression); @@ -10922,7 +10991,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 799: /* make_struct_decl: "[[" type_declaration_no_options optional_block optional_trailing_delim_sqr_sqr */ + case 800: /* make_struct_decl: "[[" type_declaration_no_options optional_block optional_trailing_delim_sqr_sqr */ { auto msd = new ExprMakeStruct(); msd->makeType = TypeDeclPtr((yyvsp[-2].pTypeDecl)); @@ -10932,7 +11001,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 800: /* make_struct_decl: "[[" type_declaration_no_options '(' ')' optional_block optional_trailing_delim_sqr_sqr */ + case 801: /* make_struct_decl: "[[" type_declaration_no_options '(' ')' optional_block optional_trailing_delim_sqr_sqr */ { auto msd = new ExprMakeStruct(); msd->makeType = TypeDeclPtr((yyvsp[-4].pTypeDecl)); @@ -10943,7 +11012,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 801: /* make_struct_decl: "[[" type_declaration_no_options '(' ')' make_struct_dim optional_block optional_trailing_delim_sqr_sqr */ + case 802: /* make_struct_decl: "[[" type_declaration_no_options '(' ')' make_struct_dim optional_block optional_trailing_delim_sqr_sqr */ { ((ExprMakeStruct *)(yyvsp[-2].pExpression))->makeType = TypeDeclPtr((yyvsp[-5].pTypeDecl)); ((ExprMakeStruct *)(yyvsp[-2].pExpression))->useInitializer = true; @@ -10953,7 +11022,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 802: /* make_struct_decl: "[{" type_declaration_no_options make_struct_dim optional_block optional_trailing_delim_cur_sqr */ + case 803: /* make_struct_decl: "[{" type_declaration_no_options make_struct_dim optional_block optional_trailing_delim_cur_sqr */ { ((ExprMakeStruct *)(yyvsp[-2].pExpression))->makeType = TypeDeclPtr((yyvsp[-3].pTypeDecl)); ((ExprMakeStruct *)(yyvsp[-2].pExpression))->block = (yyvsp[-1].pExpression); @@ -10964,7 +11033,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 803: /* make_struct_decl: "[{" type_declaration_no_options '(' ')' make_struct_dim optional_block optional_trailing_delim_cur_sqr */ + case 804: /* make_struct_decl: "[{" type_declaration_no_options '(' ')' make_struct_dim optional_block optional_trailing_delim_cur_sqr */ { ((ExprMakeStruct *)(yyvsp[-2].pExpression))->makeType = TypeDeclPtr((yyvsp[-5].pTypeDecl)); ((ExprMakeStruct *)(yyvsp[-2].pExpression))->useInitializer = true; @@ -10976,15 +11045,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 804: /* $@88: %empty */ + case 805: /* $@88: %empty */ { yyextra->das_force_oxford_comma=true; yyextra->das_arrow_depth ++; } break; - case 805: /* $@89: %empty */ + case 806: /* $@89: %empty */ { yyextra->das_arrow_depth --; } break; - case 806: /* make_struct_decl: "struct" '<' $@88 type_declaration_no_options '>' $@89 '(' use_initializer make_struct_dim ')' */ + case 807: /* make_struct_decl: "struct" '<' $@88 type_declaration_no_options '>' $@89 '(' use_initializer make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-9])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-6].pTypeDecl)); @@ -10995,15 +11064,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 807: /* $@90: %empty */ + case 808: /* $@90: %empty */ { yyextra->das_force_oxford_comma=true; yyextra->das_arrow_depth ++; } break; - case 808: /* $@91: %empty */ + case 809: /* $@91: %empty */ { yyextra->das_arrow_depth --; } break; - case 809: /* make_struct_decl: "class" '<' $@90 type_declaration_no_options '>' $@91 '(' use_initializer make_struct_dim ')' */ + case 810: /* make_struct_decl: "class" '<' $@90 type_declaration_no_options '>' $@91 '(' use_initializer make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-9])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-6].pTypeDecl)); @@ -11013,15 +11082,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 810: /* $@92: %empty */ + case 811: /* $@92: %empty */ { yyextra->das_force_oxford_comma=true; yyextra->das_arrow_depth ++; } break; - case 811: /* $@93: %empty */ + case 812: /* $@93: %empty */ { yyextra->das_arrow_depth --; } break; - case 812: /* make_struct_decl: "variant" '<' $@92 type_declaration_no_options '>' $@93 '(' make_struct_dim ')' */ + case 813: /* make_struct_decl: "variant" '<' $@92 type_declaration_no_options '>' $@93 '(' make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-8])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-5].pTypeDecl)); @@ -11031,15 +11100,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 813: /* $@94: %empty */ + case 814: /* $@94: %empty */ { yyextra->das_arrow_depth ++; } break; - case 814: /* $@95: %empty */ + case 815: /* $@95: %empty */ { yyextra->das_arrow_depth --; } break; - case 815: /* make_struct_decl: "default" '<' $@94 type_declaration_no_options '>' $@95 use_initializer */ + case 816: /* make_struct_decl: "default" '<' $@94 type_declaration_no_options '>' $@95 use_initializer */ { auto msd = new ExprMakeStruct(); msd->at = tokAt(scanner,(yylsp[-6])); @@ -11050,13 +11119,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 816: /* make_tuple: expr */ + case 817: /* make_tuple: expr */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 817: /* make_tuple: expr "=>" expr */ + case 818: /* make_tuple: expr "=>" expr */ { ExprMakeTuple * mt = new ExprMakeTuple(tokAt(scanner,(yylsp[-1]))); mt->values.push_back(ExpressionPtr((yyvsp[-2].pExpression))); @@ -11065,7 +11134,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 818: /* make_tuple: make_tuple ',' expr */ + case 819: /* make_tuple: make_tuple ',' expr */ { ExprMakeTuple * mt; if ( (yyvsp[-2].pExpression)->rtti_isMakeTuple() ) { @@ -11079,7 +11148,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 819: /* make_map_tuple: expr "=>" expr */ + case 820: /* make_map_tuple: expr "=>" expr */ { ExprMakeTuple * mt = new ExprMakeTuple(tokAt(scanner,(yylsp[-1]))); mt->values.push_back(ExpressionPtr((yyvsp[-2].pExpression))); @@ -11088,13 +11157,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 820: /* make_map_tuple: expr */ + case 821: /* make_map_tuple: expr */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 821: /* make_tuple_call: "tuple" '(' expr_list optional_comma ')' */ + case 822: /* make_tuple_call: "tuple" '(' expr_list optional_comma ')' */ { auto mkt = new ExprMakeTuple(tokAt(scanner,(yylsp[-4]))); mkt->values = sequenceToList((yyvsp[-2].pExpression)); @@ -11103,15 +11172,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 822: /* $@96: %empty */ + case 823: /* $@96: %empty */ { yyextra->das_force_oxford_comma=true; yyextra->das_arrow_depth ++; } break; - case 823: /* $@97: %empty */ + case 824: /* $@97: %empty */ { yyextra->das_arrow_depth --; } break; - case 824: /* make_tuple_call: "tuple" '<' $@96 type_declaration_no_options '>' $@97 '(' use_initializer make_struct_dim ')' */ + case 825: /* make_tuple_call: "tuple" '<' $@96 type_declaration_no_options '>' $@97 '(' use_initializer make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-9])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-6].pTypeDecl)); @@ -11121,7 +11190,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 825: /* make_dim: make_tuple */ + case 826: /* make_dim: make_tuple */ { auto mka = new ExprMakeArray(); mka->values.push_back(ExpressionPtr((yyvsp[0].pExpression))); @@ -11129,14 +11198,14 @@ YYLTYPE yylloc = yyloc_default; } break; - case 826: /* make_dim: make_dim "end of expression" make_tuple */ + case 827: /* make_dim: make_dim "end of expression" make_tuple */ { ((ExprMakeArray *) (yyvsp[-2].pExpression))->values.push_back(ExpressionPtr((yyvsp[0].pExpression))); (yyval.pExpression) = (yyvsp[-2].pExpression); } break; - case 827: /* make_dim_decl: '[' expr_list optional_comma ']' */ + case 828: /* make_dim_decl: '[' expr_list optional_comma ']' */ { auto mka = make_smart(tokAt(scanner,(yylsp[-3]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -11147,7 +11216,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 828: /* make_dim_decl: "[[" type_declaration_no_options make_dim optional_trailing_semicolon_sqr_sqr */ + case 829: /* make_dim_decl: "[[" type_declaration_no_options make_dim optional_trailing_semicolon_sqr_sqr */ { ((ExprMakeArray *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-2].pTypeDecl)); (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-3])); @@ -11155,7 +11224,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 829: /* make_dim_decl: "[{" type_declaration_no_options make_dim optional_trailing_semicolon_cur_sqr */ + case 830: /* make_dim_decl: "[{" type_declaration_no_options make_dim optional_trailing_semicolon_cur_sqr */ { ((ExprMakeArray *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-2].pTypeDecl)); (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-3])); @@ -11165,15 +11234,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 830: /* $@98: %empty */ + case 831: /* $@98: %empty */ { yyextra->das_arrow_depth ++; } break; - case 831: /* $@99: %empty */ + case 832: /* $@99: %empty */ { yyextra->das_arrow_depth --; } break; - case 832: /* make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options '>' $@99 '(' use_initializer make_struct_dim ')' */ + case 833: /* make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options '>' $@99 '(' use_initializer make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-10])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-6].pTypeDecl)); @@ -11186,15 +11255,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 833: /* $@100: %empty */ + case 834: /* $@100: %empty */ { yyextra->das_arrow_depth ++; } break; - case 834: /* $@101: %empty */ + case 835: /* $@101: %empty */ { yyextra->das_arrow_depth --; } break; - case 835: /* make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options '>' $@101 '(' use_initializer make_struct_dim ')' */ + case 836: /* make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options '>' $@101 '(' use_initializer make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-10])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-6].pTypeDecl)); @@ -11207,15 +11276,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 836: /* $@102: %empty */ + case 837: /* $@102: %empty */ { yyextra->das_arrow_depth ++; } break; - case 837: /* $@103: %empty */ + case 838: /* $@103: %empty */ { yyextra->das_arrow_depth --; } break; - case 838: /* make_dim_decl: "array" "variant" '<' $@102 type_declaration_no_options '>' $@103 '(' make_struct_dim ')' */ + case 839: /* make_dim_decl: "array" "variant" '<' $@102 type_declaration_no_options '>' $@103 '(' make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-9])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-5].pTypeDecl)); @@ -11228,7 +11297,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 839: /* make_dim_decl: "array" '(' expr_list optional_comma ')' */ + case 840: /* make_dim_decl: "array" '(' expr_list optional_comma ')' */ { auto mka = make_smart(tokAt(scanner,(yylsp[-4]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -11239,15 +11308,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 840: /* $@104: %empty */ + case 841: /* $@104: %empty */ { yyextra->das_arrow_depth ++; } break; - case 841: /* $@105: %empty */ + case 842: /* $@105: %empty */ { yyextra->das_arrow_depth --; } break; - case 842: /* make_dim_decl: "array" '<' $@104 type_declaration_no_options '>' $@105 '(' expr_list optional_comma ')' */ + case 843: /* make_dim_decl: "array" '<' $@104 type_declaration_no_options '>' $@105 '(' expr_list optional_comma ')' */ { auto mka = make_smart(tokAt(scanner,(yylsp[-9]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -11258,7 +11327,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 843: /* make_dim_decl: "fixed_array" '(' expr_list optional_comma ')' */ + case 844: /* make_dim_decl: "fixed_array" '(' expr_list optional_comma ')' */ { auto mka = new ExprMakeArray(tokAt(scanner,(yylsp[-4]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -11268,15 +11337,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 844: /* $@106: %empty */ + case 845: /* $@106: %empty */ { yyextra->das_arrow_depth ++; } break; - case 845: /* $@107: %empty */ + case 846: /* $@107: %empty */ { yyextra->das_arrow_depth --; } break; - case 846: /* make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options '>' $@107 '(' expr_list optional_comma ')' */ + case 847: /* make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options '>' $@107 '(' expr_list optional_comma ')' */ { auto mka = new ExprMakeArray(tokAt(scanner,(yylsp[-9]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -11286,7 +11355,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 847: /* make_table: make_map_tuple */ + case 848: /* make_table: make_map_tuple */ { auto mka = new ExprMakeArray(); mka->values.push_back(ExpressionPtr((yyvsp[0].pExpression))); @@ -11294,26 +11363,26 @@ YYLTYPE yylloc = yyloc_default; } break; - case 848: /* make_table: make_table "end of expression" make_map_tuple */ + case 849: /* make_table: make_table "end of expression" make_map_tuple */ { ((ExprMakeArray *) (yyvsp[-2].pExpression))->values.push_back(ExpressionPtr((yyvsp[0].pExpression))); (yyval.pExpression) = (yyvsp[-2].pExpression); } break; - case 849: /* expr_map_tuple_list: make_map_tuple */ + case 850: /* expr_map_tuple_list: make_map_tuple */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 850: /* expr_map_tuple_list: expr_map_tuple_list ',' make_map_tuple */ + case 851: /* expr_map_tuple_list: expr_map_tuple_list ',' make_map_tuple */ { (yyval.pExpression) = new ExprSequence(tokAt(scanner,(yylsp[-2])),ExpressionPtr((yyvsp[-2].pExpression)),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 851: /* make_table_decl: "begin of code block" expr_map_tuple_list optional_comma "end of code block" */ + case 852: /* make_table_decl: "begin of code block" expr_map_tuple_list optional_comma "end of code block" */ { auto mka = make_smart(tokAt(scanner,(yylsp[-3]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -11324,7 +11393,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 852: /* make_table_decl: "{{" make_table optional_trailing_semicolon_cur_cur */ + case 853: /* make_table_decl: "{{" make_table optional_trailing_semicolon_cur_cur */ { auto mkt = make_smart(Type::autoinfer); mkt->dim.push_back(TypeDecl::dimAuto); @@ -11336,7 +11405,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 853: /* make_table_decl: "table" '(' expr_map_tuple_list optional_comma ')' */ + case 854: /* make_table_decl: "table" '(' expr_map_tuple_list optional_comma ')' */ { auto mka = make_smart(tokAt(scanner,(yylsp[-4]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -11347,7 +11416,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 854: /* make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' */ + case 855: /* make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' */ { auto mka = make_smart(tokAt(scanner,(yylsp[-7]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -11358,7 +11427,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 855: /* make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' */ + case 856: /* make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' */ { auto mka = make_smart(tokAt(scanner,(yylsp[-9]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -11371,53 +11440,53 @@ YYLTYPE yylloc = yyloc_default; } break; - case 856: /* array_comprehension_where: %empty */ + case 857: /* array_comprehension_where: %empty */ { (yyval.pExpression) = nullptr; } break; - case 857: /* array_comprehension_where: "end of expression" "where" expr */ + case 858: /* array_comprehension_where: "end of expression" "where" expr */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 858: /* optional_comma: %empty */ + case 859: /* optional_comma: %empty */ { (yyval.b) = false; } break; - case 859: /* optional_comma: ',' */ + case 860: /* optional_comma: ',' */ { (yyval.b) = true; } break; - case 860: /* array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' */ + case 861: /* array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' */ { (yyval.pExpression) = ast_arrayComprehension(scanner,tokAt(scanner,(yylsp[-7])),(yyvsp[-6].pNameWithPosList),(yyvsp[-4].pExpression),(yyvsp[-2].pExpression),(yyvsp[-1].pExpression),tokRangeAt(scanner,(yylsp[-2]),(yylsp[0])),false,false); } break; - case 861: /* array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' */ + case 862: /* array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' */ { (yyval.pExpression) = ast_arrayComprehension(scanner,tokAt(scanner,(yylsp[-7])),(yyvsp[-6].pNameWithPosList),(yyvsp[-4].pExpression),(yyvsp[-2].pExpression),(yyvsp[-1].pExpression),tokRangeAt(scanner,(yylsp[-2]),(yylsp[0])),true,false); } break; - case 862: /* array_comprehension: "[[" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' ']' */ + case 863: /* array_comprehension: "[[" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' ']' */ { (yyval.pExpression) = ast_arrayComprehension(scanner,tokAt(scanner,(yylsp[-8])),(yyvsp[-7].pNameWithPosList),(yyvsp[-5].pExpression),(yyvsp[-3].pExpression),(yyvsp[-2].pExpression),tokRangeAt(scanner,(yylsp[-3]),(yylsp[0])),true,false); } break; - case 863: /* array_comprehension: "[{" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where "end of code block" ']' */ + case 864: /* array_comprehension: "[{" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where "end of code block" ']' */ { (yyval.pExpression) = ast_arrayComprehension(scanner,tokAt(scanner,(yylsp[-8])),(yyvsp[-7].pNameWithPosList),(yyvsp[-5].pExpression),(yyvsp[-3].pExpression),(yyvsp[-2].pExpression),tokRangeAt(scanner,(yylsp[-3]),(yylsp[0])),false,false); } break; - case 864: /* array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" */ + case 865: /* array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" */ { (yyval.pExpression) = ast_arrayComprehension(scanner,tokAt(scanner,(yylsp[-7])),(yyvsp[-6].pNameWithPosList),(yyvsp[-4].pExpression),(yyvsp[-2].pExpression),(yyvsp[-1].pExpression),tokRangeAt(scanner,(yylsp[-2]),(yylsp[0])),false,true); } break; - case 865: /* array_comprehension: "{{" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" "end of code block" */ + case 866: /* array_comprehension: "{{" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" "end of code block" */ { (yyval.pExpression) = ast_arrayComprehension(scanner,tokAt(scanner,(yylsp[-8])),(yyvsp[-7].pNameWithPosList),(yyvsp[-5].pExpression),(yyvsp[-3].pExpression),(yyvsp[-2].pExpression),tokRangeAt(scanner,(yylsp[-3]),(yylsp[0])),true,true); } diff --git a/src/parser/ds_parser.output b/src/parser/ds_parser.output index e0334fad6..774a3fa44 100644 --- a/src/parser/ds_parser.output +++ b/src/parser/ds_parser.output @@ -4,16 +4,17 @@ Terminals unused in grammar "end of failed eader macro" -State 317 conflicts: 1 shift/reduce -State 414 conflicts: 1 shift/reduce -State 518 conflicts: 2 shift/reduce +State 59 conflicts: 1 shift/reduce +State 319 conflicts: 1 shift/reduce +State 416 conflicts: 1 shift/reduce State 520 conflicts: 2 shift/reduce -State 626 conflicts: 1 shift/reduce -State 846 conflicts: 1 shift/reduce -State 933 conflicts: 2 shift/reduce -State 1045 conflicts: 1 shift/reduce -State 1156 conflicts: 1 shift/reduce -State 1427 conflicts: 1 shift/reduce +State 522 conflicts: 2 shift/reduce +State 628 conflicts: 1 shift/reduce +State 848 conflicts: 1 shift/reduce +State 935 conflicts: 2 shift/reduce +State 1047 conflicts: 1 shift/reduce +State 1158 conflicts: 1 shift/reduce +State 1429 conflicts: 1 shift/reduce Grammar @@ -359,1058 +360,1059 @@ Grammar 264 name_in_namespace: "name" 265 | "name" "::" "name" + 266 | "::" "name" - 266 expression_delete: "delete" expr - 267 | "delete" "explicit" expr + 267 expression_delete: "delete" expr + 268 | "delete" "explicit" expr - 268 $@11: %empty + 269 $@11: %empty - 269 $@12: %empty + 270 $@12: %empty - 270 new_type_declaration: '<' $@11 type_declaration '>' $@12 - 271 | structure_type_declaration + 271 new_type_declaration: '<' $@11 type_declaration '>' $@12 + 272 | structure_type_declaration - 272 expr_new: "new" new_type_declaration - 273 | "new" new_type_declaration '(' use_initializer ')' - 274 | "new" new_type_declaration '(' expr_list ')' - 275 | "new" new_type_declaration '(' use_initializer make_struct_single ')' - 276 | "new" make_decl + 273 expr_new: "new" new_type_declaration + 274 | "new" new_type_declaration '(' use_initializer ')' + 275 | "new" new_type_declaration '(' expr_list ')' + 276 | "new" new_type_declaration '(' use_initializer make_struct_single ')' + 277 | "new" make_decl - 277 expression_break: "break" + 278 expression_break: "break" - 278 expression_continue: "continue" + 279 expression_continue: "continue" - 279 expression_return_no_pipe: "return" - 280 | "return" expr_list - 281 | "return" "<-" expr_list + 280 expression_return_no_pipe: "return" + 281 | "return" expr_list + 282 | "return" "<-" expr_list - 282 expression_return: expression_return_no_pipe "end of expression" - 283 | "return" expr_pipe - 284 | "return" "<-" expr_pipe + 283 expression_return: expression_return_no_pipe "end of expression" + 284 | "return" expr_pipe + 285 | "return" "<-" expr_pipe - 285 expression_yield_no_pipe: "yield" expr - 286 | "yield" "<-" expr + 286 expression_yield_no_pipe: "yield" expr + 287 | "yield" "<-" expr - 287 expression_yield: expression_yield_no_pipe "end of expression" - 288 | "yield" expr_pipe - 289 | "yield" "<-" expr_pipe + 288 expression_yield: expression_yield_no_pipe "end of expression" + 289 | "yield" expr_pipe + 290 | "yield" "<-" expr_pipe - 290 expression_try_catch: "try" expression_block "recover" expression_block + 291 expression_try_catch: "try" expression_block "recover" expression_block - 291 kwd_let_var_or_nothing: "let" - 292 | "var" - 293 | %empty + 292 kwd_let_var_or_nothing: "let" + 293 | "var" + 294 | %empty - 294 kwd_let: "let" - 295 | "var" + 295 kwd_let: "let" + 296 | "var" - 296 optional_in_scope: "inscope" - 297 | %empty + 297 optional_in_scope: "inscope" + 298 | %empty - 298 tuple_expansion: "name" - 299 | tuple_expansion ',' "name" + 299 tuple_expansion: "name" + 300 | tuple_expansion ',' "name" - 300 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 301 | '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 302 | "[[" tuple_expansion ']' ']' optional_ref copy_or_move_or_clone expr "end of expression" - 303 | '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" + 301 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 302 | '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 303 | "[[" tuple_expansion ']' ']' optional_ref copy_or_move_or_clone expr "end of expression" + 304 | '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" - 304 expression_let: kwd_let optional_in_scope let_variable_declaration - 305 | kwd_let optional_in_scope tuple_expansion_variable_declaration + 305 expression_let: kwd_let optional_in_scope let_variable_declaration + 306 | kwd_let optional_in_scope tuple_expansion_variable_declaration - 306 $@13: %empty + 307 $@13: %empty - 307 $@14: %empty + 308 $@14: %empty - 308 expr_cast: "cast" '<' $@13 type_declaration_no_options '>' $@14 expr + 309 expr_cast: "cast" '<' $@13 type_declaration_no_options '>' $@14 expr - 309 $@15: %empty + 310 $@15: %empty - 310 $@16: %empty + 311 $@16: %empty - 311 expr_cast: "upcast" '<' $@15 type_declaration_no_options '>' $@16 expr + 312 expr_cast: "upcast" '<' $@15 type_declaration_no_options '>' $@16 expr - 312 $@17: %empty + 313 $@17: %empty - 313 $@18: %empty + 314 $@18: %empty - 314 expr_cast: "reinterpret" '<' $@17 type_declaration_no_options '>' $@18 expr + 315 expr_cast: "reinterpret" '<' $@17 type_declaration_no_options '>' $@18 expr - 315 $@19: %empty + 316 $@19: %empty - 316 $@20: %empty + 317 $@20: %empty - 317 expr_type_decl: "type" '<' $@19 type_declaration '>' $@20 + 318 expr_type_decl: "type" '<' $@19 type_declaration '>' $@20 - 318 expr_type_info: "typeinfo" '(' name_in_namespace expr ')' - 319 | "typeinfo" '(' name_in_namespace '<' "name" '>' expr ')' - 320 | "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' + 319 expr_type_info: "typeinfo" '(' name_in_namespace expr ')' + 320 | "typeinfo" '(' name_in_namespace '<' "name" '>' expr ')' + 321 | "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' - 321 expr_list: expr - 322 | expr_list ',' expr + 322 expr_list: expr + 323 | expr_list ',' expr - 323 block_or_simple_block: expression_block - 324 | "=>" expr - 325 | "=>" "<-" expr + 324 block_or_simple_block: expression_block + 325 | "=>" expr + 326 | "=>" "<-" expr - 326 block_or_lambda: '$' - 327 | '@' - 328 | '@' '@' + 327 block_or_lambda: '$' + 328 | '@' + 329 | '@' '@' - 329 capture_entry: '&' "name" - 330 | '=' "name" - 331 | "<-" "name" - 332 | ":=" "name" + 330 capture_entry: '&' "name" + 331 | '=' "name" + 332 | "<-" "name" + 333 | ":=" "name" - 333 capture_list: capture_entry - 334 | capture_list ',' capture_entry + 334 capture_list: capture_entry + 335 | capture_list ',' capture_entry - 335 optional_capture_list: %empty - 336 | "[[" capture_list ']' ']' + 336 optional_capture_list: %empty + 337 | "[[" capture_list ']' ']' - 337 expr_block: expression_block - 338 | block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block + 338 expr_block: expression_block + 339 | block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block - 339 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block + 340 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block - 340 $@21: %empty + 341 $@21: %empty - 341 expr_full_block_assumed_piped: block_or_lambda $@21 optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block + 342 expr_full_block_assumed_piped: block_or_lambda $@21 optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block - 342 expr_numeric_const: "integer constant" - 343 | "unsigned integer constant" - 344 | "long integer constant" - 345 | "unsigned long integer constant" - 346 | "unsigned int8 constant" - 347 | "floating point constant" - 348 | "double constant" + 343 expr_numeric_const: "integer constant" + 344 | "unsigned integer constant" + 345 | "long integer constant" + 346 | "unsigned long integer constant" + 347 | "unsigned int8 constant" + 348 | "floating point constant" + 349 | "double constant" - 349 expr_assign: expr - 350 | expr '=' expr - 351 | expr "<-" expr - 352 | expr ":=" expr - 353 | expr "&=" expr - 354 | expr "|=" expr - 355 | expr "^=" expr - 356 | expr "&&=" expr - 357 | expr "||=" expr - 358 | expr "^^=" expr - 359 | expr "+=" expr - 360 | expr "-=" expr - 361 | expr "*=" expr - 362 | expr "/=" expr - 363 | expr "%=" expr - 364 | expr "<<=" expr - 365 | expr ">>=" expr - 366 | expr "<<<=" expr - 367 | expr ">>>=" expr - - 368 expr_assign_pipe_right: "@ <|" expr_block - 369 | "@@ <|" expr_block - 370 | "$ <|" expr_block - 371 | expr_call_pipe - - 372 expr_assign_pipe: expr '=' expr_assign_pipe_right - 373 | expr "<-" expr_assign_pipe_right - 374 | expr "&=" expr_assign_pipe_right - 375 | expr "|=" expr_assign_pipe_right - 376 | expr "^=" expr_assign_pipe_right - 377 | expr "&&=" expr_assign_pipe_right - 378 | expr "||=" expr_assign_pipe_right - 379 | expr "^^=" expr_assign_pipe_right - 380 | expr "+=" expr_assign_pipe_right - 381 | expr "-=" expr_assign_pipe_right - 382 | expr "*=" expr_assign_pipe_right - 383 | expr "/=" expr_assign_pipe_right - 384 | expr "%=" expr_assign_pipe_right - 385 | expr "<<=" expr_assign_pipe_right - 386 | expr ">>=" expr_assign_pipe_right - 387 | expr "<<<=" expr_assign_pipe_right - 388 | expr ">>>=" expr_assign_pipe_right - - 389 expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' ')' - 390 | name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' ')' - - 391 expr_method_call: expr "->" "name" '(' ')' - 392 | expr "->" "name" '(' expr_list ')' - - 393 func_addr_name: name_in_namespace - 394 | "$i" '(' expr ')' - - 395 func_addr_expr: '@' '@' func_addr_name - - 396 $@22: %empty - - 397 $@23: %empty - - 398 func_addr_expr: '@' '@' '<' $@22 type_declaration_no_options '>' $@23 func_addr_name - - 399 $@24: %empty - - 400 $@25: %empty - - 401 func_addr_expr: '@' '@' '<' $@24 optional_function_argument_list optional_function_type '>' $@25 func_addr_name - - 402 expr_field: expr '.' "name" - 403 | expr '.' '.' "name" - 404 | expr '.' "name" '(' ')' - 405 | expr '.' "name" '(' expr_list ')' - - 406 $@26: %empty - - 407 $@27: %empty - - 408 expr_field: expr '.' $@26 error $@27 - - 409 expr_call: name_in_namespace '(' ')' - 410 | name_in_namespace '(' make_struct_single ')' - 411 | name_in_namespace '(' expr_list ')' - 412 | basic_type_declaration '(' ')' - 413 | basic_type_declaration '(' expr_list ')' - - 414 expr: "null" - 415 | name_in_namespace - 416 | expr_numeric_const - 417 | expr_reader - 418 | string_builder - 419 | make_decl - 420 | "true" - 421 | "false" - 422 | expr_field - 423 | expr_mtag - 424 | '!' expr - 425 | '~' expr - 426 | '+' expr - 427 | '-' expr - 428 | expr "<<" expr - 429 | expr ">>" expr - 430 | expr "<<<" expr - 431 | expr ">>>" expr - 432 | expr '+' expr - 433 | expr '-' expr - 434 | expr '*' expr - 435 | expr '/' expr - 436 | expr '%' expr - 437 | expr '<' expr - 438 | expr '>' expr - 439 | expr "==" expr - 440 | expr "!=" expr - 441 | expr "<=" expr - 442 | expr ">=" expr - 443 | expr '&' expr - 444 | expr '|' expr - 445 | expr '^' expr - 446 | expr "&&" expr - 447 | expr "||" expr - 448 | expr "^^" expr - 449 | expr ".." expr - 450 | "++" expr - 451 | "--" expr - 452 | expr "++" - 453 | expr "--" - 454 | '(' expr_list optional_comma ')' - 455 | expr '[' expr ']' - 456 | expr '.' '[' expr ']' - 457 | expr "?[" expr ']' - 458 | expr '.' "?[" expr ']' - 459 | expr "?." "name" - 460 | expr '.' "?." "name" - 461 | func_addr_expr - 462 | expr_call - 463 | '*' expr - 464 | "deref" '(' expr ')' - 465 | "addr" '(' expr ')' - 466 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' ')' - 467 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' - 468 | expr "??" expr - 469 | expr '?' expr ':' expr - - 470 $@28: %empty - - 471 $@29: %empty - - 472 expr: expr "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr "is" basic_type_declaration - 474 | expr "is" "name" - 475 | expr "as" "name" - - 476 $@30: %empty - - 477 $@31: %empty - - 478 expr: expr "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr "as" basic_type_declaration - 480 | expr '?' "as" "name" - - 481 $@32: %empty - - 482 $@33: %empty - - 483 expr: expr '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr '?' "as" basic_type_declaration - 485 | expr_type_info - 486 | expr_type_decl - 487 | expr_cast - 488 | expr_new - 489 | expr_method_call - 490 | expr_named_call - 491 | expr_full_block - 492 | expr "<|" expr - 493 | expr "|>" expr - 494 | expr "|>" basic_type_declaration - 495 | name_in_namespace "name" - 496 | "unsafe" '(' expr ')' - 497 | expression_keyword - - 498 expr_mtag: "$$" '(' expr ')' - 499 | "$i" '(' expr ')' - 500 | "$v" '(' expr ')' - 501 | "$b" '(' expr ')' - 502 | "$a" '(' expr ')' - 503 | "..." - 504 | "$c" '(' expr ')' '(' ')' - 505 | "$c" '(' expr ')' '(' expr_list ')' - 506 | expr '.' "$f" '(' expr ')' - 507 | expr "?." "$f" '(' expr ')' - 508 | expr '.' '.' "$f" '(' expr ')' - 509 | expr '.' "?." "$f" '(' expr ')' - 510 | expr "as" "$f" '(' expr ')' - 511 | expr '?' "as" "$f" '(' expr ')' - 512 | expr "is" "$f" '(' expr ')' - 513 | '@' '@' "$c" '(' expr ')' - - 514 optional_field_annotation: %empty - 515 | "[[" annotation_argument_list ']' ']' - 516 | metadata_argument_list - - 517 optional_override: %empty - 518 | "override" - 519 | "sealed" - - 520 optional_constant: %empty - 521 | "const" - - 522 optional_public_or_private_member_variable: %empty - 523 | "public" - 524 | "private" - - 525 optional_static_member_variable: %empty - 526 | "static" - - 527 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration - - 528 struct_variable_declaration_list: %empty + 350 expr_assign: expr + 351 | expr '=' expr + 352 | expr "<-" expr + 353 | expr ":=" expr + 354 | expr "&=" expr + 355 | expr "|=" expr + 356 | expr "^=" expr + 357 | expr "&&=" expr + 358 | expr "||=" expr + 359 | expr "^^=" expr + 360 | expr "+=" expr + 361 | expr "-=" expr + 362 | expr "*=" expr + 363 | expr "/=" expr + 364 | expr "%=" expr + 365 | expr "<<=" expr + 366 | expr ">>=" expr + 367 | expr "<<<=" expr + 368 | expr ">>>=" expr + + 369 expr_assign_pipe_right: "@ <|" expr_block + 370 | "@@ <|" expr_block + 371 | "$ <|" expr_block + 372 | expr_call_pipe + + 373 expr_assign_pipe: expr '=' expr_assign_pipe_right + 374 | expr "<-" expr_assign_pipe_right + 375 | expr "&=" expr_assign_pipe_right + 376 | expr "|=" expr_assign_pipe_right + 377 | expr "^=" expr_assign_pipe_right + 378 | expr "&&=" expr_assign_pipe_right + 379 | expr "||=" expr_assign_pipe_right + 380 | expr "^^=" expr_assign_pipe_right + 381 | expr "+=" expr_assign_pipe_right + 382 | expr "-=" expr_assign_pipe_right + 383 | expr "*=" expr_assign_pipe_right + 384 | expr "/=" expr_assign_pipe_right + 385 | expr "%=" expr_assign_pipe_right + 386 | expr "<<=" expr_assign_pipe_right + 387 | expr ">>=" expr_assign_pipe_right + 388 | expr "<<<=" expr_assign_pipe_right + 389 | expr ">>>=" expr_assign_pipe_right + + 390 expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' ')' + 391 | name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' ')' + + 392 expr_method_call: expr "->" "name" '(' ')' + 393 | expr "->" "name" '(' expr_list ')' + + 394 func_addr_name: name_in_namespace + 395 | "$i" '(' expr ')' + + 396 func_addr_expr: '@' '@' func_addr_name + + 397 $@22: %empty + + 398 $@23: %empty + + 399 func_addr_expr: '@' '@' '<' $@22 type_declaration_no_options '>' $@23 func_addr_name + + 400 $@24: %empty + + 401 $@25: %empty + + 402 func_addr_expr: '@' '@' '<' $@24 optional_function_argument_list optional_function_type '>' $@25 func_addr_name + + 403 expr_field: expr '.' "name" + 404 | expr '.' '.' "name" + 405 | expr '.' "name" '(' ')' + 406 | expr '.' "name" '(' expr_list ')' + + 407 $@26: %empty + + 408 $@27: %empty + + 409 expr_field: expr '.' $@26 error $@27 + + 410 expr_call: name_in_namespace '(' ')' + 411 | name_in_namespace '(' make_struct_single ')' + 412 | name_in_namespace '(' expr_list ')' + 413 | basic_type_declaration '(' ')' + 414 | basic_type_declaration '(' expr_list ')' + + 415 expr: "null" + 416 | name_in_namespace + 417 | expr_numeric_const + 418 | expr_reader + 419 | string_builder + 420 | make_decl + 421 | "true" + 422 | "false" + 423 | expr_field + 424 | expr_mtag + 425 | '!' expr + 426 | '~' expr + 427 | '+' expr + 428 | '-' expr + 429 | expr "<<" expr + 430 | expr ">>" expr + 431 | expr "<<<" expr + 432 | expr ">>>" expr + 433 | expr '+' expr + 434 | expr '-' expr + 435 | expr '*' expr + 436 | expr '/' expr + 437 | expr '%' expr + 438 | expr '<' expr + 439 | expr '>' expr + 440 | expr "==" expr + 441 | expr "!=" expr + 442 | expr "<=" expr + 443 | expr ">=" expr + 444 | expr '&' expr + 445 | expr '|' expr + 446 | expr '^' expr + 447 | expr "&&" expr + 448 | expr "||" expr + 449 | expr "^^" expr + 450 | expr ".." expr + 451 | "++" expr + 452 | "--" expr + 453 | expr "++" + 454 | expr "--" + 455 | '(' expr_list optional_comma ')' + 456 | expr '[' expr ']' + 457 | expr '.' '[' expr ']' + 458 | expr "?[" expr ']' + 459 | expr '.' "?[" expr ']' + 460 | expr "?." "name" + 461 | expr '.' "?." "name" + 462 | func_addr_expr + 463 | expr_call + 464 | '*' expr + 465 | "deref" '(' expr ')' + 466 | "addr" '(' expr ')' + 467 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' ')' + 468 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' + 469 | expr "??" expr + 470 | expr '?' expr ':' expr + + 471 $@28: %empty + + 472 $@29: %empty + + 473 expr: expr "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr "is" basic_type_declaration + 475 | expr "is" "name" + 476 | expr "as" "name" + + 477 $@30: %empty + + 478 $@31: %empty + + 479 expr: expr "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr "as" basic_type_declaration + 481 | expr '?' "as" "name" + + 482 $@32: %empty + + 483 $@33: %empty + + 484 expr: expr '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr '?' "as" basic_type_declaration + 486 | expr_type_info + 487 | expr_type_decl + 488 | expr_cast + 489 | expr_new + 490 | expr_method_call + 491 | expr_named_call + 492 | expr_full_block + 493 | expr "<|" expr + 494 | expr "|>" expr + 495 | expr "|>" basic_type_declaration + 496 | name_in_namespace "name" + 497 | "unsafe" '(' expr ')' + 498 | expression_keyword + + 499 expr_mtag: "$$" '(' expr ')' + 500 | "$i" '(' expr ')' + 501 | "$v" '(' expr ')' + 502 | "$b" '(' expr ')' + 503 | "$a" '(' expr ')' + 504 | "..." + 505 | "$c" '(' expr ')' '(' ')' + 506 | "$c" '(' expr ')' '(' expr_list ')' + 507 | expr '.' "$f" '(' expr ')' + 508 | expr "?." "$f" '(' expr ')' + 509 | expr '.' '.' "$f" '(' expr ')' + 510 | expr '.' "?." "$f" '(' expr ')' + 511 | expr "as" "$f" '(' expr ')' + 512 | expr '?' "as" "$f" '(' expr ')' + 513 | expr "is" "$f" '(' expr ')' + 514 | '@' '@' "$c" '(' expr ')' + + 515 optional_field_annotation: %empty + 516 | "[[" annotation_argument_list ']' ']' + 517 | metadata_argument_list + + 518 optional_override: %empty + 519 | "override" + 520 | "sealed" + + 521 optional_constant: %empty + 522 | "const" + + 523 optional_public_or_private_member_variable: %empty + 524 | "public" + 525 | "private" + + 526 optional_static_member_variable: %empty + 527 | "static" + + 528 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration + + 529 struct_variable_declaration_list: %empty - 529 $@34: %empty + 530 $@34: %empty - 530 struct_variable_declaration_list: struct_variable_declaration_list $@34 structure_variable_declaration "end of expression" + 531 struct_variable_declaration_list: struct_variable_declaration_list $@34 structure_variable_declaration "end of expression" - 531 $@35: %empty + 532 $@35: %empty - 532 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@35 function_declaration_header "end of expression" + 533 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@35 function_declaration_header "end of expression" - 533 $@36: %empty + 534 $@36: %empty - 534 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@36 function_declaration_header expression_block - 535 | struct_variable_declaration_list '[' annotation_list ']' "end of expression" + 535 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@36 function_declaration_header expression_block + 536 | struct_variable_declaration_list '[' annotation_list ']' "end of expression" - 536 function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing variable_declaration - 537 | "$a" '(' expr ')' + 537 function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing variable_declaration + 538 | "$a" '(' expr ')' - 538 function_argument_list: function_argument_declaration - 539 | function_argument_list "end of expression" function_argument_declaration + 539 function_argument_list: function_argument_declaration + 540 | function_argument_list "end of expression" function_argument_declaration - 540 tuple_type: type_declaration - 541 | "name" ':' type_declaration + 541 tuple_type: type_declaration + 542 | "name" ':' type_declaration - 542 tuple_type_list: tuple_type - 543 | tuple_type_list "end of expression" tuple_type + 543 tuple_type_list: tuple_type + 544 | tuple_type_list "end of expression" tuple_type - 544 tuple_alias_type_list: %empty - 545 | tuple_alias_type_list "end of expression" - 546 | tuple_alias_type_list tuple_type "end of expression" + 545 tuple_alias_type_list: %empty + 546 | tuple_alias_type_list "end of expression" + 547 | tuple_alias_type_list tuple_type "end of expression" - 547 variant_type: "name" ':' type_declaration + 548 variant_type: "name" ':' type_declaration - 548 variant_type_list: variant_type - 549 | variant_type_list "end of expression" variant_type + 549 variant_type_list: variant_type + 550 | variant_type_list "end of expression" variant_type - 550 variant_alias_type_list: %empty - 551 | variant_alias_type_list "end of expression" - 552 | variant_alias_type_list variant_type "end of expression" + 551 variant_alias_type_list: %empty + 552 | variant_alias_type_list "end of expression" + 553 | variant_alias_type_list variant_type "end of expression" - 553 copy_or_move: '=' - 554 | "<-" + 554 copy_or_move: '=' + 555 | "<-" - 555 variable_declaration: variable_name_with_pos_list - 556 | variable_name_with_pos_list '&' - 557 | variable_name_with_pos_list ':' type_declaration - 558 | variable_name_with_pos_list ':' type_declaration copy_or_move expr - 559 | variable_name_with_pos_list copy_or_move expr - 560 | variable_name_with_pos_list copy_or_move expr_pipe + 556 variable_declaration: variable_name_with_pos_list + 557 | variable_name_with_pos_list '&' + 558 | variable_name_with_pos_list ':' type_declaration + 559 | variable_name_with_pos_list ':' type_declaration copy_or_move expr + 560 | variable_name_with_pos_list copy_or_move expr + 561 | variable_name_with_pos_list copy_or_move expr_pipe - 561 copy_or_move_or_clone: '=' - 562 | "<-" - 563 | ":=" + 562 copy_or_move_or_clone: '=' + 563 | "<-" + 564 | ":=" - 564 optional_ref: %empty - 565 | '&' + 565 optional_ref: %empty + 566 | '&' - 566 let_variable_name_with_pos_list: "name" - 567 | "$i" '(' expr ')' - 568 | "name" "aka" "name" - 569 | let_variable_name_with_pos_list ',' "name" - 570 | let_variable_name_with_pos_list ',' "name" "aka" "name" + 567 let_variable_name_with_pos_list: "name" + 568 | "$i" '(' expr ')' + 569 | "name" "aka" "name" + 570 | let_variable_name_with_pos_list ',' "name" + 571 | let_variable_name_with_pos_list ',' "name" "aka" "name" - 571 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" - 572 | let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 573 | let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr_pipe - 574 | let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr "end of expression" - 575 | let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr_pipe + 572 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" + 573 | let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 574 | let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr_pipe + 575 | let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr "end of expression" + 576 | let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr_pipe - 576 global_variable_declaration_list: %empty + 577 global_variable_declaration_list: %empty - 577 $@37: %empty + 578 $@37: %empty - 578 global_variable_declaration_list: global_variable_declaration_list $@37 optional_field_annotation let_variable_declaration + 579 global_variable_declaration_list: global_variable_declaration_list $@37 optional_field_annotation let_variable_declaration - 579 optional_shared: %empty - 580 | "shared" + 580 optional_shared: %empty + 581 | "shared" - 581 optional_public_or_private_variable: %empty - 582 | "private" - 583 | "public" + 582 optional_public_or_private_variable: %empty + 583 | "private" + 584 | "public" - 584 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" + 585 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" - 585 $@38: %empty + 586 $@38: %empty - 586 global_let: kwd_let optional_shared optional_public_or_private_variable $@38 optional_field_annotation let_variable_declaration + 587 global_let: kwd_let optional_shared optional_public_or_private_variable $@38 optional_field_annotation let_variable_declaration - 587 enum_list: %empty - 588 | enum_list "end of expression" - 589 | enum_list "name" "end of expression" - 590 | enum_list "name" '=' expr "end of expression" + 588 enum_list: %empty + 589 | enum_list "end of expression" + 590 | enum_list "name" "end of expression" + 591 | enum_list "name" '=' expr "end of expression" - 591 optional_public_or_private_alias: %empty - 592 | "private" - 593 | "public" + 592 optional_public_or_private_alias: %empty + 593 | "private" + 594 | "public" - 594 $@39: %empty + 595 $@39: %empty - 595 single_alias: optional_public_or_private_alias "name" $@39 '=' type_declaration + 596 single_alias: optional_public_or_private_alias "name" $@39 '=' type_declaration - 596 alias_list: single_alias "end of expression" - 597 | alias_list single_alias "end of expression" + 597 alias_list: single_alias "end of expression" + 598 | alias_list single_alias "end of expression" - 598 alias_declaration: "typedef" "begin of code block" alias_list "end of code block" + 599 alias_declaration: "typedef" "begin of code block" alias_list "end of code block" - 599 $@40: %empty + 600 $@40: %empty - 600 alias_declaration: "typedef" $@40 single_alias "end of expression" + 601 alias_declaration: "typedef" $@40 single_alias "end of expression" - 601 optional_public_or_private_enum: %empty - 602 | "private" - 603 | "public" + 602 optional_public_or_private_enum: %empty + 603 | "private" + 604 | "public" - 604 enum_name: "name" + 605 enum_name: "name" - 605 $@41: %empty + 606 $@41: %empty - 606 $@42: %empty + 607 $@42: %empty - 607 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name "begin of code block" $@41 enum_list $@42 "end of code block" + 608 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name "begin of code block" $@41 enum_list $@42 "end of code block" - 608 $@43: %empty + 609 $@43: %empty - 609 $@44: %empty + 610 $@44: %empty - 610 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 "end of code block" + 611 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 "end of code block" - 611 optional_structure_parent: %empty - 612 | ':' name_in_namespace + 612 optional_structure_parent: %empty + 613 | ':' name_in_namespace - 613 optional_sealed: %empty - 614 | "sealed" + 614 optional_sealed: %empty + 615 | "sealed" - 615 structure_name: optional_sealed "name" optional_structure_parent + 616 structure_name: optional_sealed "name" optional_structure_parent - 616 class_or_struct: "class" - 617 | "struct" + 617 class_or_struct: "class" + 618 | "struct" - 618 optional_public_or_private_structure: %empty - 619 | "private" - 620 | "public" + 619 optional_public_or_private_structure: %empty + 620 | "private" + 621 | "public" - 621 optional_struct_variable_declaration_list: %empty - 622 | "begin of code block" struct_variable_declaration_list "end of code block" + 622 optional_struct_variable_declaration_list: %empty + 623 | "begin of code block" struct_variable_declaration_list "end of code block" - 623 $@45: %empty + 624 $@45: %empty - 624 $@46: %empty + 625 $@46: %empty - 625 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@45 structure_name $@46 optional_struct_variable_declaration_list + 626 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@45 structure_name $@46 optional_struct_variable_declaration_list - 626 variable_name_with_pos_list: "name" - 627 | "$i" '(' expr ')' - 628 | "name" "aka" "name" - 629 | variable_name_with_pos_list ',' "name" - 630 | variable_name_with_pos_list ',' "name" "aka" "name" + 627 variable_name_with_pos_list: "name" + 628 | "$i" '(' expr ')' + 629 | "name" "aka" "name" + 630 | variable_name_with_pos_list ',' "name" + 631 | variable_name_with_pos_list ',' "name" "aka" "name" - 631 basic_type_declaration: "bool" - 632 | "string" - 633 | "int" - 634 | "int8" - 635 | "int16" - 636 | "int64" - 637 | "int2" - 638 | "int3" - 639 | "int4" - 640 | "uint" - 641 | "uint8" - 642 | "uint16" - 643 | "uint64" - 644 | "uint2" - 645 | "uint3" - 646 | "uint4" - 647 | "float" - 648 | "float2" - 649 | "float3" - 650 | "float4" - 651 | "void" - 652 | "range" - 653 | "urange" - 654 | "range64" - 655 | "urange64" - 656 | "double" - 657 | "bitfield" + 632 basic_type_declaration: "bool" + 633 | "string" + 634 | "int" + 635 | "int8" + 636 | "int16" + 637 | "int64" + 638 | "int2" + 639 | "int3" + 640 | "int4" + 641 | "uint" + 642 | "uint8" + 643 | "uint16" + 644 | "uint64" + 645 | "uint2" + 646 | "uint3" + 647 | "uint4" + 648 | "float" + 649 | "float2" + 650 | "float3" + 651 | "float4" + 652 | "void" + 653 | "range" + 654 | "urange" + 655 | "range64" + 656 | "urange64" + 657 | "double" + 658 | "bitfield" - 658 enum_basic_type_declaration: "int" - 659 | "int8" - 660 | "int16" - 661 | "uint" - 662 | "uint8" - 663 | "uint16" - 664 | "int64" - 665 | "uint64" + 659 enum_basic_type_declaration: "int" + 660 | "int8" + 661 | "int16" + 662 | "uint" + 663 | "uint8" + 664 | "uint16" + 665 | "int64" + 666 | "uint64" - 666 structure_type_declaration: name_in_namespace + 667 structure_type_declaration: name_in_namespace - 667 auto_type_declaration: "auto" - 668 | "auto" '(' "name" ')' - 669 | "$t" '(' expr ')' + 668 auto_type_declaration: "auto" + 669 | "auto" '(' "name" ')' + 670 | "$t" '(' expr ')' - 670 bitfield_bits: "name" - 671 | bitfield_bits "end of expression" "name" + 671 bitfield_bits: "name" + 672 | bitfield_bits "end of expression" "name" - 672 bitfield_alias_bits: %empty - 673 | bitfield_alias_bits "end of expression" - 674 | bitfield_alias_bits "name" "end of expression" + 673 bitfield_alias_bits: %empty + 674 | bitfield_alias_bits "end of expression" + 675 | bitfield_alias_bits "name" "end of expression" - 675 $@47: %empty + 676 $@47: %empty - 676 $@48: %empty + 677 $@48: %empty - 677 bitfield_type_declaration: "bitfield" '<' $@47 bitfield_bits '>' $@48 + 678 bitfield_type_declaration: "bitfield" '<' $@47 bitfield_bits '>' $@48 - 678 table_type_pair: type_declaration - 679 | type_declaration "end of expression" type_declaration + 679 table_type_pair: type_declaration + 680 | type_declaration "end of expression" type_declaration - 680 dim_list: '[' expr ']' - 681 | dim_list '[' expr ']' + 681 dim_list: '[' expr ']' + 682 | dim_list '[' expr ']' - 682 type_declaration_no_options: basic_type_declaration - 683 | auto_type_declaration - 684 | bitfield_type_declaration - 685 | structure_type_declaration - 686 | type_declaration_no_options dim_list - 687 | type_declaration_no_options '[' ']' + 683 type_declaration_no_options: basic_type_declaration + 684 | auto_type_declaration + 685 | bitfield_type_declaration + 686 | structure_type_declaration + 687 | type_declaration_no_options dim_list + 688 | type_declaration_no_options '[' ']' - 688 $@49: %empty + 689 $@49: %empty - 689 $@50: %empty + 690 $@50: %empty - 690 type_declaration_no_options: "type" '<' $@49 type_declaration '>' $@50 - 691 | "typedecl" '(' expr ')' - 692 | '$' name_in_namespace '(' optional_expr_list ')' + 691 type_declaration_no_options: "type" '<' $@49 type_declaration '>' $@50 + 692 | "typedecl" '(' expr ')' + 693 | '$' name_in_namespace '(' optional_expr_list ')' - 693 $@51: %empty + 694 $@51: %empty - 694 type_declaration_no_options: '$' name_in_namespace '<' $@51 type_declaration_no_options_list '>' '(' optional_expr_list ')' - 695 | type_declaration_no_options '-' '[' ']' - 696 | type_declaration_no_options "explicit" - 697 | type_declaration_no_options "const" - 698 | type_declaration_no_options '-' "const" - 699 | type_declaration_no_options '&' - 700 | type_declaration_no_options '-' '&' - 701 | type_declaration_no_options '#' - 702 | type_declaration_no_options "implicit" - 703 | type_declaration_no_options '-' '#' - 704 | type_declaration_no_options "==" "const" - 705 | type_declaration_no_options "==" '&' - 706 | type_declaration_no_options '?' + 695 type_declaration_no_options: '$' name_in_namespace '<' $@51 type_declaration_no_options_list '>' '(' optional_expr_list ')' + 696 | type_declaration_no_options '-' '[' ']' + 697 | type_declaration_no_options "explicit" + 698 | type_declaration_no_options "const" + 699 | type_declaration_no_options '-' "const" + 700 | type_declaration_no_options '&' + 701 | type_declaration_no_options '-' '&' + 702 | type_declaration_no_options '#' + 703 | type_declaration_no_options "implicit" + 704 | type_declaration_no_options '-' '#' + 705 | type_declaration_no_options "==" "const" + 706 | type_declaration_no_options "==" '&' + 707 | type_declaration_no_options '?' - 707 $@52: %empty + 708 $@52: %empty - 708 $@53: %empty + 709 $@53: %empty - 709 type_declaration_no_options: "smart_ptr" '<' $@52 type_declaration '>' $@53 - 710 | type_declaration_no_options "??" + 710 type_declaration_no_options: "smart_ptr" '<' $@52 type_declaration '>' $@53 + 711 | type_declaration_no_options "??" - 711 $@54: %empty + 712 $@54: %empty - 712 $@55: %empty + 713 $@55: %empty - 713 type_declaration_no_options: "array" '<' $@54 type_declaration '>' $@55 + 714 type_declaration_no_options: "array" '<' $@54 type_declaration '>' $@55 - 714 $@56: %empty + 715 $@56: %empty - 715 $@57: %empty + 716 $@57: %empty - 716 type_declaration_no_options: "table" '<' $@56 table_type_pair '>' $@57 + 717 type_declaration_no_options: "table" '<' $@56 table_type_pair '>' $@57 - 717 $@58: %empty + 718 $@58: %empty - 718 $@59: %empty + 719 $@59: %empty - 719 type_declaration_no_options: "iterator" '<' $@58 type_declaration '>' $@59 - 720 | "block" + 720 type_declaration_no_options: "iterator" '<' $@58 type_declaration '>' $@59 + 721 | "block" - 721 $@60: %empty + 722 $@60: %empty - 722 $@61: %empty + 723 $@61: %empty - 723 type_declaration_no_options: "block" '<' $@60 type_declaration '>' $@61 + 724 type_declaration_no_options: "block" '<' $@60 type_declaration '>' $@61 - 724 $@62: %empty + 725 $@62: %empty - 725 $@63: %empty + 726 $@63: %empty - 726 type_declaration_no_options: "block" '<' $@62 optional_function_argument_list optional_function_type '>' $@63 - 727 | "function" + 727 type_declaration_no_options: "block" '<' $@62 optional_function_argument_list optional_function_type '>' $@63 + 728 | "function" - 728 $@64: %empty + 729 $@64: %empty - 729 $@65: %empty + 730 $@65: %empty - 730 type_declaration_no_options: "function" '<' $@64 type_declaration '>' $@65 + 731 type_declaration_no_options: "function" '<' $@64 type_declaration '>' $@65 - 731 $@66: %empty + 732 $@66: %empty - 732 $@67: %empty + 733 $@67: %empty - 733 type_declaration_no_options: "function" '<' $@66 optional_function_argument_list optional_function_type '>' $@67 - 734 | "lambda" + 734 type_declaration_no_options: "function" '<' $@66 optional_function_argument_list optional_function_type '>' $@67 + 735 | "lambda" - 735 $@68: %empty + 736 $@68: %empty - 736 $@69: %empty + 737 $@69: %empty - 737 type_declaration_no_options: "lambda" '<' $@68 type_declaration '>' $@69 + 738 type_declaration_no_options: "lambda" '<' $@68 type_declaration '>' $@69 - 738 $@70: %empty + 739 $@70: %empty - 739 $@71: %empty + 740 $@71: %empty - 740 type_declaration_no_options: "lambda" '<' $@70 optional_function_argument_list optional_function_type '>' $@71 + 741 type_declaration_no_options: "lambda" '<' $@70 optional_function_argument_list optional_function_type '>' $@71 - 741 $@72: %empty + 742 $@72: %empty - 742 $@73: %empty + 743 $@73: %empty - 743 type_declaration_no_options: "tuple" '<' $@72 tuple_type_list '>' $@73 + 744 type_declaration_no_options: "tuple" '<' $@72 tuple_type_list '>' $@73 - 744 $@74: %empty + 745 $@74: %empty - 745 $@75: %empty + 746 $@75: %empty - 746 type_declaration_no_options: "variant" '<' $@74 variant_type_list '>' $@75 + 747 type_declaration_no_options: "variant" '<' $@74 variant_type_list '>' $@75 - 747 type_declaration: type_declaration_no_options - 748 | type_declaration '|' type_declaration_no_options - 749 | type_declaration '|' '#' + 748 type_declaration: type_declaration_no_options + 749 | type_declaration '|' type_declaration_no_options + 750 | type_declaration '|' '#' - 750 $@76: %empty + 751 $@76: %empty - 751 $@77: %empty + 752 $@77: %empty - 752 $@78: %empty + 753 $@78: %empty - 753 $@79: %empty + 754 $@79: %empty - 754 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" $@77 "begin of code block" $@78 tuple_alias_type_list $@79 "end of code block" + 755 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" $@77 "begin of code block" $@78 tuple_alias_type_list $@79 "end of code block" - 755 $@80: %empty + 756 $@80: %empty - 756 $@81: %empty + 757 $@81: %empty - 757 $@82: %empty + 758 $@82: %empty - 758 $@83: %empty + 759 $@83: %empty - 759 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" $@81 "begin of code block" $@82 variant_alias_type_list $@83 "end of code block" + 760 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" $@81 "begin of code block" $@82 variant_alias_type_list $@83 "end of code block" - 760 $@84: %empty + 761 $@84: %empty - 761 $@85: %empty + 762 $@85: %empty - 762 $@86: %empty + 763 $@86: %empty - 763 $@87: %empty + 764 $@87: %empty - 764 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" $@85 "begin of code block" $@86 bitfield_alias_bits $@87 "end of code block" + 765 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" $@85 "begin of code block" $@86 bitfield_alias_bits $@87 "end of code block" - 765 make_decl: make_struct_decl - 766 | make_dim_decl - 767 | make_table_decl - 768 | array_comprehension - 769 | make_tuple_call + 766 make_decl: make_struct_decl + 767 | make_dim_decl + 768 | make_table_decl + 769 | array_comprehension + 770 | make_tuple_call - 770 make_struct_fields: "name" copy_or_move expr - 771 | "name" ":=" expr - 772 | make_struct_fields ',' "name" copy_or_move expr - 773 | make_struct_fields ',' "name" ":=" expr - 774 | "$f" '(' expr ')' copy_or_move expr - 775 | "$f" '(' expr ')' ":=" expr - 776 | make_struct_fields ',' "$f" '(' expr ')' copy_or_move expr - 777 | make_struct_fields ',' "$f" '(' expr ')' ":=" expr + 771 make_struct_fields: "name" copy_or_move expr + 772 | "name" ":=" expr + 773 | make_struct_fields ',' "name" copy_or_move expr + 774 | make_struct_fields ',' "name" ":=" expr + 775 | "$f" '(' expr ')' copy_or_move expr + 776 | "$f" '(' expr ')' ":=" expr + 777 | make_struct_fields ',' "$f" '(' expr ')' copy_or_move expr + 778 | make_struct_fields ',' "$f" '(' expr ')' ":=" expr - 778 make_struct_single: make_struct_fields + 779 make_struct_single: make_struct_fields - 779 make_struct_dim: make_struct_fields - 780 | make_struct_dim "end of expression" make_struct_fields + 780 make_struct_dim: make_struct_fields + 781 | make_struct_dim "end of expression" make_struct_fields - 781 optional_block: %empty - 782 | "where" expr_block + 782 optional_block: %empty + 783 | "where" expr_block - 783 optional_trailing_semicolon_cur_cur: "end of code block" "end of code block" - 784 | ";}}" + 784 optional_trailing_semicolon_cur_cur: "end of code block" "end of code block" + 785 | ";}}" - 785 optional_trailing_semicolon_cur_sqr: "end of code block" ']' - 786 | ";}]" + 786 optional_trailing_semicolon_cur_sqr: "end of code block" ']' + 787 | ";}]" - 787 optional_trailing_semicolon_sqr_sqr: ']' ']' - 788 | ";]]" + 788 optional_trailing_semicolon_sqr_sqr: ']' ']' + 789 | ";]]" - 789 optional_trailing_delim_sqr_sqr: ']' ']' - 790 | ";]]" - 791 | ",]]" + 790 optional_trailing_delim_sqr_sqr: ']' ']' + 791 | ";]]" + 792 | ",]]" - 792 optional_trailing_delim_cur_sqr: "end of code block" ']' - 793 | ";}]" - 794 | ",}]" + 793 optional_trailing_delim_cur_sqr: "end of code block" ']' + 794 | ";}]" + 795 | ",}]" - 795 use_initializer: %empty - 796 | "uninitialized" + 796 use_initializer: %empty + 797 | "uninitialized" - 797 make_struct_decl: "[[" type_declaration_no_options make_struct_dim optional_block optional_trailing_delim_sqr_sqr - 798 | "[[" type_declaration_no_options optional_block optional_trailing_delim_sqr_sqr - 799 | "[[" type_declaration_no_options '(' ')' optional_block optional_trailing_delim_sqr_sqr - 800 | "[[" type_declaration_no_options '(' ')' make_struct_dim optional_block optional_trailing_delim_sqr_sqr - 801 | "[{" type_declaration_no_options make_struct_dim optional_block optional_trailing_delim_cur_sqr - 802 | "[{" type_declaration_no_options '(' ')' make_struct_dim optional_block optional_trailing_delim_cur_sqr + 798 make_struct_decl: "[[" type_declaration_no_options make_struct_dim optional_block optional_trailing_delim_sqr_sqr + 799 | "[[" type_declaration_no_options optional_block optional_trailing_delim_sqr_sqr + 800 | "[[" type_declaration_no_options '(' ')' optional_block optional_trailing_delim_sqr_sqr + 801 | "[[" type_declaration_no_options '(' ')' make_struct_dim optional_block optional_trailing_delim_sqr_sqr + 802 | "[{" type_declaration_no_options make_struct_dim optional_block optional_trailing_delim_cur_sqr + 803 | "[{" type_declaration_no_options '(' ')' make_struct_dim optional_block optional_trailing_delim_cur_sqr - 803 $@88: %empty + 804 $@88: %empty - 804 $@89: %empty + 805 $@89: %empty - 805 make_struct_decl: "struct" '<' $@88 type_declaration_no_options '>' $@89 '(' use_initializer make_struct_dim ')' + 806 make_struct_decl: "struct" '<' $@88 type_declaration_no_options '>' $@89 '(' use_initializer make_struct_dim ')' - 806 $@90: %empty + 807 $@90: %empty - 807 $@91: %empty + 808 $@91: %empty - 808 make_struct_decl: "class" '<' $@90 type_declaration_no_options '>' $@91 '(' use_initializer make_struct_dim ')' + 809 make_struct_decl: "class" '<' $@90 type_declaration_no_options '>' $@91 '(' use_initializer make_struct_dim ')' - 809 $@92: %empty + 810 $@92: %empty - 810 $@93: %empty + 811 $@93: %empty - 811 make_struct_decl: "variant" '<' $@92 type_declaration_no_options '>' $@93 '(' make_struct_dim ')' + 812 make_struct_decl: "variant" '<' $@92 type_declaration_no_options '>' $@93 '(' make_struct_dim ')' - 812 $@94: %empty + 813 $@94: %empty - 813 $@95: %empty + 814 $@95: %empty - 814 make_struct_decl: "default" '<' $@94 type_declaration_no_options '>' $@95 use_initializer + 815 make_struct_decl: "default" '<' $@94 type_declaration_no_options '>' $@95 use_initializer - 815 make_tuple: expr - 816 | expr "=>" expr - 817 | make_tuple ',' expr + 816 make_tuple: expr + 817 | expr "=>" expr + 818 | make_tuple ',' expr - 818 make_map_tuple: expr "=>" expr - 819 | expr + 819 make_map_tuple: expr "=>" expr + 820 | expr - 820 make_tuple_call: "tuple" '(' expr_list optional_comma ')' + 821 make_tuple_call: "tuple" '(' expr_list optional_comma ')' - 821 $@96: %empty + 822 $@96: %empty - 822 $@97: %empty + 823 $@97: %empty - 823 make_tuple_call: "tuple" '<' $@96 type_declaration_no_options '>' $@97 '(' use_initializer make_struct_dim ')' + 824 make_tuple_call: "tuple" '<' $@96 type_declaration_no_options '>' $@97 '(' use_initializer make_struct_dim ')' - 824 make_dim: make_tuple - 825 | make_dim "end of expression" make_tuple + 825 make_dim: make_tuple + 826 | make_dim "end of expression" make_tuple - 826 make_dim_decl: '[' expr_list optional_comma ']' - 827 | "[[" type_declaration_no_options make_dim optional_trailing_semicolon_sqr_sqr - 828 | "[{" type_declaration_no_options make_dim optional_trailing_semicolon_cur_sqr + 827 make_dim_decl: '[' expr_list optional_comma ']' + 828 | "[[" type_declaration_no_options make_dim optional_trailing_semicolon_sqr_sqr + 829 | "[{" type_declaration_no_options make_dim optional_trailing_semicolon_cur_sqr - 829 $@98: %empty + 830 $@98: %empty - 830 $@99: %empty + 831 $@99: %empty - 831 make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options '>' $@99 '(' use_initializer make_struct_dim ')' + 832 make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options '>' $@99 '(' use_initializer make_struct_dim ')' - 832 $@100: %empty + 833 $@100: %empty - 833 $@101: %empty + 834 $@101: %empty - 834 make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options '>' $@101 '(' use_initializer make_struct_dim ')' + 835 make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options '>' $@101 '(' use_initializer make_struct_dim ')' - 835 $@102: %empty + 836 $@102: %empty - 836 $@103: %empty + 837 $@103: %empty - 837 make_dim_decl: "array" "variant" '<' $@102 type_declaration_no_options '>' $@103 '(' make_struct_dim ')' - 838 | "array" '(' expr_list optional_comma ')' + 838 make_dim_decl: "array" "variant" '<' $@102 type_declaration_no_options '>' $@103 '(' make_struct_dim ')' + 839 | "array" '(' expr_list optional_comma ')' - 839 $@104: %empty + 840 $@104: %empty - 840 $@105: %empty + 841 $@105: %empty - 841 make_dim_decl: "array" '<' $@104 type_declaration_no_options '>' $@105 '(' expr_list optional_comma ')' - 842 | "fixed_array" '(' expr_list optional_comma ')' + 842 make_dim_decl: "array" '<' $@104 type_declaration_no_options '>' $@105 '(' expr_list optional_comma ')' + 843 | "fixed_array" '(' expr_list optional_comma ')' - 843 $@106: %empty + 844 $@106: %empty - 844 $@107: %empty + 845 $@107: %empty - 845 make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options '>' $@107 '(' expr_list optional_comma ')' + 846 make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options '>' $@107 '(' expr_list optional_comma ')' - 846 make_table: make_map_tuple - 847 | make_table "end of expression" make_map_tuple + 847 make_table: make_map_tuple + 848 | make_table "end of expression" make_map_tuple - 848 expr_map_tuple_list: make_map_tuple - 849 | expr_map_tuple_list ',' make_map_tuple + 849 expr_map_tuple_list: make_map_tuple + 850 | expr_map_tuple_list ',' make_map_tuple - 850 make_table_decl: "begin of code block" expr_map_tuple_list optional_comma "end of code block" - 851 | "{{" make_table optional_trailing_semicolon_cur_cur - 852 | "table" '(' expr_map_tuple_list optional_comma ')' - 853 | "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - 854 | "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + 851 make_table_decl: "begin of code block" expr_map_tuple_list optional_comma "end of code block" + 852 | "{{" make_table optional_trailing_semicolon_cur_cur + 853 | "table" '(' expr_map_tuple_list optional_comma ')' + 854 | "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + 855 | "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - 855 array_comprehension_where: %empty - 856 | "end of expression" "where" expr + 856 array_comprehension_where: %empty + 857 | "end of expression" "where" expr - 857 optional_comma: %empty - 858 | ',' + 858 optional_comma: %empty + 859 | ',' - 859 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - 860 | '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - 861 | "[[" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' ']' - 862 | "[{" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where "end of code block" ']' - 863 | "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" - 864 | "{{" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" "end of code block" + 860 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 861 | '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 862 | "[[" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' ']' + 863 | "[{" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where "end of code block" ']' + 864 | "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" + 865 | "{{" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" "end of code block" Terminals, with rules where they appear $end (0) 0 - '!' (33) 111 127 424 - '#' (35) 701 703 749 - '$' (36) 20 326 692 694 - '%' (37) 35 42 147 436 - '&' (38) 155 329 443 556 565 699 700 705 - '(' (40) 100 109 115 122 123 250 273 274 275 301 303 318 319 320 389 390 391 392 394 404 405 409 410 411 412 413 454 464 465 466 467 496 498 499 500 501 502 504 505 506 507 508 509 510 511 512 513 537 567 627 668 669 691 692 694 774 775 776 777 799 800 802 805 808 811 820 823 831 834 837 838 841 842 845 852 853 854 - ')' (41) 100 109 115 122 123 250 273 274 275 301 303 318 319 320 389 390 391 392 394 404 405 409 410 411 412 413 454 464 465 466 467 496 498 499 500 501 502 504 505 506 507 508 509 510 511 512 513 537 567 627 668 669 691 692 694 774 775 776 777 799 800 802 805 808 811 820 823 831 834 837 838 841 842 845 852 853 854 - '*' (42) 145 434 463 - '+' (43) 143 426 432 - ',' (44) 51 89 102 118 299 322 334 390 569 570 629 630 772 773 776 777 817 849 858 - '-' (45) 144 427 433 695 698 700 703 - '.' (46) 43 172 174 175 402 403 404 405 408 456 458 460 506 508 509 - '/' (47) 44 146 435 - ':' (58) 53 54 125 300 301 469 541 547 557 558 571 572 573 610 612 - "end of expression" (59) 15 16 74 222 226 227 234 235 240 241 242 252 282 287 300 301 302 303 320 530 532 535 539 543 545 546 549 551 552 571 572 574 588 589 590 596 597 600 671 673 674 679 780 825 847 854 856 859 860 861 862 863 864 - '<' (60) 148 255 258 270 308 311 314 317 319 320 398 401 437 466 467 472 478 483 677 690 694 709 713 716 719 723 726 730 733 737 740 743 746 805 808 811 814 823 831 834 837 841 845 853 854 - '=' (61) 81 93 94 95 96 97 98 100 330 350 372 553 561 590 595 - '>' (62) 149 255 258 270 308 311 314 317 319 320 398 401 438 466 467 472 478 483 677 690 694 709 713 716 719 723 726 730 733 737 740 743 746 805 808 811 814 823 831 834 837 841 845 853 854 - '?' (63) 184 185 469 480 483 484 511 706 - '@' (64) 103 104 327 328 395 398 401 513 - '[' (91) 120 170 389 390 455 456 535 680 681 687 695 826 859 860 - ']' (93) 120 170 171 300 302 336 389 390 455 456 457 458 515 535 680 681 687 695 785 787 789 792 826 859 860 861 862 - '^' (94) 157 445 - "begin of code block" (123) 218 219 584 598 607 610 622 754 759 764 850 863 - '|' (124) 156 444 748 749 - "end of code block" (125) 218 219 584 598 607 610 622 754 759 764 783 785 792 850 862 863 864 - '~' (126) 128 425 - error (256) 245 408 + '!' (33) 111 127 425 + '#' (35) 702 704 750 + '$' (36) 20 327 693 695 + '%' (37) 35 42 147 437 + '&' (38) 155 330 444 557 566 700 701 706 + '(' (40) 100 109 115 122 123 250 274 275 276 302 304 319 320 321 390 391 392 393 395 405 406 410 411 412 413 414 455 465 466 467 468 497 499 500 501 502 503 505 506 507 508 509 510 511 512 513 514 538 568 628 669 670 692 693 695 775 776 777 778 800 801 803 806 809 812 821 824 832 835 838 839 842 843 846 853 854 855 + ')' (41) 100 109 115 122 123 250 274 275 276 302 304 319 320 321 390 391 392 393 395 405 406 410 411 412 413 414 455 465 466 467 468 497 499 500 501 502 503 505 506 507 508 509 510 511 512 513 514 538 568 628 669 670 692 693 695 775 776 777 778 800 801 803 806 809 812 821 824 832 835 838 839 842 843 846 853 854 855 + '*' (42) 145 435 464 + '+' (43) 143 427 433 + ',' (44) 51 89 102 118 300 323 335 391 570 571 630 631 773 774 777 778 818 850 859 + '-' (45) 144 428 434 696 699 701 704 + '.' (46) 43 172 174 175 403 404 405 406 409 457 459 461 507 509 510 + '/' (47) 44 146 436 + ':' (58) 53 54 125 301 302 470 542 548 558 559 572 573 574 611 613 + "end of expression" (59) 15 16 74 222 226 227 234 235 240 241 242 252 283 288 301 302 303 304 321 531 533 536 540 544 546 547 550 552 553 572 573 575 589 590 591 597 598 601 672 674 675 680 781 826 848 855 857 860 861 862 863 864 865 + '<' (60) 148 255 258 271 309 312 315 318 320 321 399 402 438 467 468 473 479 484 678 691 695 710 714 717 720 724 727 731 734 738 741 744 747 806 809 812 815 824 832 835 838 842 846 854 855 + '=' (61) 81 93 94 95 96 97 98 100 331 351 373 554 562 591 596 + '>' (62) 149 255 258 271 309 312 315 318 320 321 399 402 439 467 468 473 479 484 678 691 695 710 714 717 720 724 727 731 734 738 741 744 747 806 809 812 815 824 832 835 838 842 846 854 855 + '?' (63) 184 185 470 481 484 485 512 707 + '@' (64) 103 104 328 329 396 399 402 514 + '[' (91) 120 170 390 391 456 457 536 681 682 688 696 827 860 861 + ']' (93) 120 170 171 301 303 337 390 391 456 457 458 459 516 536 681 682 688 696 786 788 790 793 827 860 861 862 863 + '^' (94) 157 446 + "begin of code block" (123) 218 219 585 599 608 611 623 755 760 765 851 864 + '|' (124) 156 445 749 750 + "end of code block" (125) 218 219 585 599 608 611 623 755 760 765 784 786 793 851 863 864 865 + '~' (126) 128 426 + error (256) 245 409 "lexer error" (258) - "struct" (259) 617 805 831 - "class" (260) 616 808 - "let" (261) 291 294 - "def" (262) 211 532 534 + "struct" (259) 618 806 832 + "class" (260) 617 809 + "let" (261) 292 295 + "def" (262) 211 533 535 "while" (263) 78 "if" (264) 62 74 "static_if" (265) 63 "else" (266) 60 66 - "for" (267) 76 859 860 861 862 863 864 - "recover" (268) 290 - "true" (269) 86 97 420 - "false" (270) 87 98 421 - "new" (271) 272 273 274 275 276 - "typeinfo" (272) 318 319 320 - "type" (273) 91 317 472 478 483 690 - "in" (274) 76 92 859 860 861 862 863 864 - "is" (275) 180 182 472 473 474 512 - "as" (276) 46 181 183 184 185 475 478 479 480 483 484 510 511 + "for" (267) 76 860 861 862 863 864 865 + "recover" (268) 291 + "true" (269) 86 97 421 + "false" (270) 87 98 422 + "new" (271) 273 274 275 276 277 + "typeinfo" (272) 319 320 321 + "type" (273) 91 318 473 479 484 691 + "in" (274) 76 92 860 861 862 863 864 865 + "is" (275) 180 182 473 474 475 513 + "as" (276) 46 181 183 184 185 476 479 480 481 484 485 511 512 "elif" (277) 57 "static_elif" (278) 58 - "array" (279) 713 831 834 837 838 841 - "return" (280) 279 280 281 283 284 - "null" (281) 414 - "break" (282) 277 - "try" (283) 290 + "array" (279) 714 832 835 838 839 842 + "return" (280) 280 281 282 284 285 + "null" (281) 415 + "break" (282) 278 + "try" (283) 291 "options" (284) 36 - "table" (285) 716 852 853 854 + "table" (285) 717 853 854 855 "expect" (286) 49 - "const" (287) 521 697 698 704 + "const" (287) 522 698 699 705 "require" (288) 37 106 "operator" (289) 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 - "enum" (290) 607 610 + "enum" (290) 608 611 "finally" (291) 219 - "delete" (292) 178 266 267 - "deref" (293) 464 - "typedef" (294) 598 600 - "typedecl" (295) 691 + "delete" (292) 178 267 268 + "deref" (293) 465 + "typedef" (294) 599 601 + "typedecl" (295) 692 "with" (296) 79 - "aka" (297) 568 570 628 630 + "aka" (297) 569 571 629 631 "assume" (298) 81 - "cast" (299) 308 - "override" (300) 518 - "abstract" (301) 532 - "upcast" (302) 311 - "iterator" (303) 719 860 - "var" (304) 292 295 - "addr" (305) 465 - "continue" (306) 278 - "where" (307) 782 856 + "cast" (299) 309 + "override" (300) 519 + "abstract" (301) 533 + "upcast" (302) 312 + "iterator" (303) 720 861 + "var" (304) 293 296 + "addr" (305) 466 + "continue" (306) 279 + "where" (307) 783 857 "pass" (308) 242 - "reinterpret" (309) 314 + "reinterpret" (309) 315 "module" (310) 22 - "public" (311) 18 48 214 523 583 593 603 620 + "public" (311) 18 48 214 524 584 594 604 621 "label" (312) 54 55 "goto" (313) 55 56 - "implicit" (314) 702 - "explicit" (315) 267 696 - "shared" (316) 580 - "private" (317) 19 107 213 524 582 592 602 619 - "smart_ptr" (318) 709 - "unsafe" (319) 77 496 - "inscope" (320) 296 - "static" (321) 526 - "fixed_array" (322) 842 845 - "default" (323) 814 - "uninitialized" (324) 796 - "bool" (325) 186 631 - "void" (326) 651 - "string" (327) 187 632 - "auto" (328) 667 668 - "int" (329) 188 633 658 - "int2" (330) 189 637 - "int3" (331) 190 638 - "int4" (332) 191 639 - "uint" (333) 192 640 661 - "bitfield" (334) 657 677 764 - "uint2" (335) 193 644 - "uint3" (336) 194 645 - "uint4" (337) 195 646 - "float" (338) 196 647 - "float2" (339) 197 648 - "float3" (340) 198 649 - "float4" (341) 199 650 - "range" (342) 200 652 - "urange" (343) 201 653 - "range64" (344) 202 654 - "urange64" (345) 203 655 - "block" (346) 720 723 726 - "int64" (347) 204 636 664 - "uint64" (348) 205 643 665 - "double" (349) 206 656 - "function" (350) 727 730 733 - "lambda" (351) 734 737 740 - "int8" (352) 207 634 659 - "uint8" (353) 208 641 662 - "int16" (354) 209 635 660 - "uint16" (355) 210 642 663 - "tuple" (356) 743 754 820 823 834 - "variant" (357) 746 759 811 837 - "generator" (358) 466 467 - "yield" (359) 285 286 288 289 - "sealed" (360) 519 614 - "+=" (361) 129 359 380 - "-=" (362) 130 360 381 - "/=" (363) 132 362 383 - "*=" (364) 131 361 382 - "%=" (365) 133 363 384 - "&=" (366) 134 353 374 - "|=" (367) 135 354 375 - "^=" (368) 136 355 376 - "<<" (369) 162 428 - ">>" (370) 163 429 - "++" (371) 158 160 450 452 - "--" (372) 159 161 451 453 - "<=" (373) 153 441 - "<<=" (374) 164 364 385 - ">>=" (375) 165 365 386 - ">=" (376) 154 442 - "==" (377) 151 439 704 705 - "!=" (378) 152 440 - "->" (379) 391 392 - "<-" (380) 281 284 286 289 325 331 351 373 554 562 - "??" (381) 179 468 710 - "?." (382) 173 176 459 460 507 509 - "?[" (383) 171 457 458 - "<|" (384) 492 + "implicit" (314) 703 + "explicit" (315) 268 697 + "shared" (316) 581 + "private" (317) 19 107 213 525 583 593 603 620 + "smart_ptr" (318) 710 + "unsafe" (319) 77 497 + "inscope" (320) 297 + "static" (321) 527 + "fixed_array" (322) 843 846 + "default" (323) 815 + "uninitialized" (324) 797 + "bool" (325) 186 632 + "void" (326) 652 + "string" (327) 187 633 + "auto" (328) 668 669 + "int" (329) 188 634 659 + "int2" (330) 189 638 + "int3" (331) 190 639 + "int4" (332) 191 640 + "uint" (333) 192 641 662 + "bitfield" (334) 658 678 765 + "uint2" (335) 193 645 + "uint3" (336) 194 646 + "uint4" (337) 195 647 + "float" (338) 196 648 + "float2" (339) 197 649 + "float3" (340) 198 650 + "float4" (341) 199 651 + "range" (342) 200 653 + "urange" (343) 201 654 + "range64" (344) 202 655 + "urange64" (345) 203 656 + "block" (346) 721 724 727 + "int64" (347) 204 637 665 + "uint64" (348) 205 644 666 + "double" (349) 206 657 + "function" (350) 728 731 734 + "lambda" (351) 735 738 741 + "int8" (352) 207 635 660 + "uint8" (353) 208 642 663 + "int16" (354) 209 636 661 + "uint16" (355) 210 643 664 + "tuple" (356) 744 755 821 824 835 + "variant" (357) 747 760 812 838 + "generator" (358) 467 468 + "yield" (359) 286 287 289 290 + "sealed" (360) 520 615 + "+=" (361) 129 360 381 + "-=" (362) 130 361 382 + "/=" (363) 132 363 384 + "*=" (364) 131 362 383 + "%=" (365) 133 364 385 + "&=" (366) 134 354 375 + "|=" (367) 135 355 376 + "^=" (368) 136 356 377 + "<<" (369) 162 429 + ">>" (370) 163 430 + "++" (371) 158 160 451 453 + "--" (372) 159 161 452 454 + "<=" (373) 153 442 + "<<=" (374) 164 365 386 + ">>=" (375) 165 366 387 + ">=" (376) 154 443 + "==" (377) 151 440 705 706 + "!=" (378) 152 441 + "->" (379) 392 393 + "<-" (380) 282 285 287 290 326 332 352 374 555 563 + "??" (381) 179 469 711 + "?." (382) 173 176 460 461 508 510 + "?[" (383) 171 458 459 + "<|" (384) 493 " <|" (385) 259 - "$ <|" (386) 262 370 - "@ <|" (387) 260 368 - "@@ <|" (388) 261 369 - "|>" (389) 116 493 494 - ":=" (390) 175 177 332 352 563 771 773 775 777 - "<<<" (391) 166 430 - ">>>" (392) 167 431 - "<<<=" (393) 168 366 387 - ">>>=" (394) 169 367 388 - "=>" (395) 324 325 816 818 - "::" (396) 265 - "&&" (397) 112 140 446 - "||" (398) 113 141 447 - "^^" (399) 114 142 448 - "&&=" (400) 137 356 377 - "||=" (401) 138 357 378 - "^^=" (402) 139 358 379 - ".." (403) 150 449 - "$$" (404) 498 - "$i" (405) 394 499 567 627 - "$v" (406) 500 - "$b" (407) 501 - "$a" (408) 502 537 - "$t" (409) 669 - "$c" (410) 504 505 513 - "$f" (411) 506 507 508 509 510 511 512 774 775 776 777 - "..." (412) 503 - "[[" (413) 300 302 336 515 797 798 799 800 827 861 - "[{" (414) 801 802 828 862 - "{{" (415) 851 864 - "integer constant" (416) 52 53 54 55 84 95 342 - "long integer constant" (417) 344 - "unsigned integer constant" (418) 343 - "unsigned long integer constant" (419) 345 - "unsigned int8 constant" (420) 346 - "floating point constant" (421) 85 96 347 - "double constant" (422) 348 - "name" (423) 21 38 46 81 83 90 94 126 174 175 176 182 183 185 264 265 298 299 319 320 329 330 331 332 391 392 402 403 404 405 459 460 474 475 480 495 541 547 566 568 569 570 589 590 595 604 615 626 628 629 630 668 670 671 674 754 759 764 770 771 772 773 + "$ <|" (386) 262 371 + "@ <|" (387) 260 369 + "@@ <|" (388) 261 370 + "|>" (389) 116 494 495 + ":=" (390) 175 177 333 353 564 772 774 776 778 + "<<<" (391) 166 431 + ">>>" (392) 167 432 + "<<<=" (393) 168 367 388 + ">>>=" (394) 169 368 389 + "=>" (395) 325 326 817 819 + "::" (396) 265 266 + "&&" (397) 112 140 447 + "||" (398) 113 141 448 + "^^" (399) 114 142 449 + "&&=" (400) 137 357 378 + "||=" (401) 138 358 379 + "^^=" (402) 139 359 380 + ".." (403) 150 450 + "$$" (404) 499 + "$i" (405) 395 500 568 628 + "$v" (406) 501 + "$b" (407) 502 + "$a" (408) 503 538 + "$t" (409) 670 + "$c" (410) 505 506 514 + "$f" (411) 507 508 509 510 511 512 513 775 776 777 778 + "..." (412) 504 + "[[" (413) 301 303 337 516 798 799 800 801 828 862 + "[{" (414) 802 803 829 863 + "{{" (415) 852 865 + "integer constant" (416) 52 53 54 55 84 95 343 + "long integer constant" (417) 345 + "unsigned integer constant" (418) 344 + "unsigned long integer constant" (419) 346 + "unsigned int8 constant" (420) 347 + "floating point constant" (421) 85 96 348 + "double constant" (422) 349 + "name" (423) 21 38 46 81 83 90 94 126 174 175 176 182 183 185 264 265 266 299 300 320 321 330 331 332 333 392 393 403 404 405 406 460 461 475 476 481 496 542 548 567 569 570 571 590 591 596 605 616 627 629 630 631 669 671 672 675 755 760 765 771 772 773 774 "keyword" (424) 39 246 255 "type function" (425) 40 258 "start of the string" (426) 27 31 @@ -1420,11 +1422,11 @@ Terminals, with rules where they appear "{" (430) 30 "}" (431) 30 "end of failed eader macro" (432) - ";}}" (433) 784 - ";}]" (434) 786 793 - ";]]" (435) 788 790 - ",]]" (436) 791 - ",}]" (437) 794 + ";}}" (433) 785 + ";}]" (434) 787 794 + ";]]" (435) 789 791 + ",]]" (436) 792 + ",}]" (437) 795 UNARY_MINUS (438) UNARY_PLUS (439) PRE_INC (440) @@ -1464,13 +1466,13 @@ Nonterminals, with rules where they appear on right: 29 30 31 string_builder (226) on left: 31 - on right: 418 + on right: 419 reader_character_sequence (227) on left: 32 33 on right: 33 35 expr_reader (228) on left: 35 - on right: 16 417 + on right: 16 418 $@1 (229) on left: 34 on right: 35 @@ -1566,10 +1568,10 @@ Nonterminals, with rules where they appear on right: 101 102 103 104 annotation_argument_list (260) on left: 101 102 - on right: 36 102 109 515 + on right: 36 102 109 516 metadata_argument_list (261) on left: 103 104 - on right: 104 516 + on right: 104 517 annotation_declaration_name (262) on left: 105 106 107 on right: 108 109 @@ -1581,16 +1583,16 @@ Nonterminals, with rules where they appear on right: 111 112 113 114 115 116 117 118 annotation_list (265) on left: 117 118 - on right: 118 120 535 + on right: 118 120 536 optional_annotation_list (266) on left: 119 120 - on right: 211 338 339 341 532 534 607 610 625 + on right: 211 339 340 342 533 535 608 611 626 optional_function_argument_list (267) on left: 121 122 123 - on right: 215 338 339 341 401 726 733 740 + on right: 215 339 340 342 402 727 734 741 optional_function_type (268) on left: 124 125 - on right: 215 338 339 341 401 726 733 740 + on right: 215 339 340 342 402 727 734 741 function_name (269) on left: 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 on right: 215 @@ -1602,7 +1604,7 @@ Nonterminals, with rules where they appear on right: 217 function_declaration_header (272) on left: 215 - on right: 217 532 534 + on right: 217 533 535 function_declaration (273) on left: 217 on right: 211 @@ -1611,10 +1613,10 @@ Nonterminals, with rules where they appear on right: 217 expression_block (275) on left: 218 219 - on right: 60 61 72 76 77 78 79 217 246 290 323 337 341 534 + on right: 60 61 72 76 77 78 79 217 246 291 324 338 342 535 expr_call_pipe (276) on left: 220 221 - on right: 263 371 + on right: 263 372 expression_any (277) on left: 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 on right: 244 @@ -1626,16 +1628,16 @@ Nonterminals, with rules where they appear on right: 224 optional_expr_list (280) on left: 247 248 - on right: 250 692 694 + on right: 250 693 695 optional_expr_list_in_braces (281) on left: 249 250 on right: 258 type_declaration_no_options_list (282) on left: 251 252 - on right: 252 255 258 694 + on right: 252 255 258 695 expression_keyword (283) on left: 255 258 - on right: 221 497 + on right: 221 498 $@7 (284) on left: 253 on right: 255 @@ -1650,655 +1652,655 @@ Nonterminals, with rules where they appear on right: 258 expr_pipe (288) on left: 259 260 261 262 263 - on right: 223 283 284 288 289 560 573 575 + on right: 223 284 285 289 290 561 574 576 name_in_namespace (289) - on left: 264 265 - on right: 35 105 318 319 320 389 390 393 409 410 411 415 495 612 666 692 694 + on left: 264 265 266 + on right: 35 105 319 320 321 390 391 394 410 411 412 416 496 613 667 693 695 expression_delete (290) - on left: 266 267 + on left: 267 268 on right: 227 new_type_declaration (291) - on left: 270 271 - on right: 272 273 274 275 + on left: 271 272 + on right: 273 274 275 276 $@11 (292) - on left: 268 - on right: 270 - $@12 (293) on left: 269 - on right: 270 + on right: 271 + $@12 (293) + on left: 270 + on right: 271 expr_new (294) - on left: 272 273 274 275 276 - on right: 488 + on left: 273 274 275 276 277 + on right: 489 expression_break (295) - on left: 277 + on left: 278 on right: 70 234 expression_continue (296) - on left: 278 + on left: 279 on right: 71 235 expression_return_no_pipe (297) - on left: 279 280 281 - on right: 68 282 + on left: 280 281 282 + on right: 68 283 expression_return (298) - on left: 282 283 284 + on left: 283 284 285 on right: 236 expression_yield_no_pipe (299) - on left: 285 286 - on right: 69 287 + on left: 286 287 + on right: 69 288 expression_yield (300) - on left: 287 288 289 + on left: 288 289 290 on right: 237 expression_try_catch (301) - on left: 290 + on left: 291 on right: 239 kwd_let_var_or_nothing (302) - on left: 291 292 293 - on right: 536 + on left: 292 293 294 + on right: 537 kwd_let (303) - on left: 294 295 - on right: 304 305 584 586 + on left: 295 296 + on right: 305 306 585 587 optional_in_scope (304) - on left: 296 297 - on right: 304 305 + on left: 297 298 + on right: 305 306 tuple_expansion (305) - on left: 298 299 - on right: 299 300 301 302 303 + on left: 299 300 + on right: 300 301 302 303 304 tuple_expansion_variable_declaration (306) - on left: 300 301 302 303 - on right: 305 + on left: 301 302 303 304 + on right: 306 expression_let (307) - on left: 304 305 + on left: 305 306 on right: 228 expr_cast (308) - on left: 308 311 314 - on right: 487 + on left: 309 312 315 + on right: 488 $@13 (309) - on left: 306 - on right: 308 - $@14 (310) on left: 307 - on right: 308 + on right: 309 + $@14 (310) + on left: 308 + on right: 309 $@15 (311) - on left: 309 - on right: 311 - $@16 (312) on left: 310 - on right: 311 + on right: 312 + $@16 (312) + on left: 311 + on right: 312 $@17 (313) - on left: 312 - on right: 314 - $@18 (314) on left: 313 - on right: 314 + on right: 315 + $@18 (314) + on left: 314 + on right: 315 expr_type_decl (315) - on left: 317 - on right: 486 + on left: 318 + on right: 487 $@19 (316) - on left: 315 - on right: 317 - $@20 (317) on left: 316 - on right: 317 + on right: 318 + $@20 (317) + on left: 317 + on right: 318 expr_type_info (318) - on left: 318 319 320 - on right: 485 + on left: 319 320 321 + on right: 486 expr_list (319) - on left: 321 322 - on right: 76 248 274 280 281 322 390 392 405 411 413 454 505 820 826 838 841 842 845 859 860 861 862 863 864 + on left: 322 323 + on right: 76 248 275 281 282 323 391 393 406 412 414 455 506 821 827 839 842 843 846 860 861 862 863 864 865 block_or_simple_block (320) - on left: 323 324 325 - on right: 338 339 + on left: 324 325 326 + on right: 339 340 block_or_lambda (321) - on left: 326 327 328 - on right: 338 339 341 + on left: 327 328 329 + on right: 339 340 342 capture_entry (322) - on left: 329 330 331 332 - on right: 333 334 + on left: 330 331 332 333 + on right: 334 335 capture_list (323) - on left: 333 334 - on right: 334 336 + on left: 334 335 + on right: 335 337 optional_capture_list (324) - on left: 335 336 - on right: 338 339 341 466 467 + on left: 336 337 + on right: 339 340 342 467 468 expr_block (325) - on left: 337 338 - on right: 259 260 261 262 368 369 370 782 + on left: 338 339 + on right: 259 260 261 262 369 370 371 783 expr_full_block (326) - on left: 339 - on right: 491 + on left: 340 + on right: 492 expr_full_block_assumed_piped (327) - on left: 341 + on left: 342 on right: 220 221 $@21 (328) - on left: 340 - on right: 341 + on left: 341 + on right: 342 expr_numeric_const (329) - on left: 342 343 344 345 346 347 348 - on right: 416 + on left: 343 344 345 346 347 348 349 + on right: 417 expr_assign (330) - on left: 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 + on left: 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 on right: 226 259 expr_assign_pipe_right (331) - on left: 368 369 370 371 - on right: 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 + on left: 369 370 371 372 + on right: 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 expr_assign_pipe (332) - on left: 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 + on left: 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 on right: 225 expr_named_call (333) - on left: 389 390 - on right: 490 + on left: 390 391 + on right: 491 expr_method_call (334) - on left: 391 392 - on right: 489 + on left: 392 393 + on right: 490 func_addr_name (335) - on left: 393 394 - on right: 395 398 401 + on left: 394 395 + on right: 396 399 402 func_addr_expr (336) - on left: 395 398 401 - on right: 461 + on left: 396 399 402 + on right: 462 $@22 (337) - on left: 396 - on right: 398 - $@23 (338) on left: 397 - on right: 398 + on right: 399 + $@23 (338) + on left: 398 + on right: 399 $@24 (339) - on left: 399 - on right: 401 - $@25 (340) on left: 400 - on right: 401 + on right: 402 + $@25 (340) + on left: 401 + on right: 402 expr_field (341) - on left: 402 403 404 405 408 - on right: 422 + on left: 403 404 405 406 409 + on right: 423 $@26 (342) - on left: 406 - on right: 408 - $@27 (343) on left: 407 - on right: 408 + on right: 409 + $@27 (343) + on left: 408 + on right: 409 expr_call (344) - on left: 409 410 411 412 413 - on right: 462 + on left: 410 411 412 413 414 + on right: 463 expr (345) - on left: 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 472 473 474 475 478 479 480 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 - on right: 30 56 61 67 72 74 78 79 81 220 246 255 266 267 285 286 300 301 302 303 308 311 314 318 319 320 321 322 324 325 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 391 392 394 402 403 404 405 408 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 455 456 457 458 459 460 463 464 465 467 468 469 472 473 474 475 478 479 480 483 484 492 493 494 496 498 499 500 501 502 504 505 506 507 508 509 510 511 512 513 537 558 559 567 572 574 590 627 669 680 681 691 770 771 772 773 774 775 776 777 815 816 817 818 819 856 859 860 861 862 + on left: 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 473 474 475 476 479 480 481 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 + on right: 30 56 61 67 72 74 78 79 81 220 246 255 267 268 286 287 301 302 303 304 309 312 315 319 320 321 322 323 325 326 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 392 393 395 403 404 405 406 409 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 456 457 458 459 460 461 464 465 466 468 469 470 473 474 475 476 479 480 481 484 485 493 494 495 497 499 500 501 502 503 505 506 507 508 509 510 511 512 513 514 538 559 560 568 573 575 591 628 670 681 682 692 771 772 773 774 775 776 777 778 816 817 818 819 820 857 860 861 862 863 $@28 (346) - on left: 470 - on right: 472 - $@29 (347) on left: 471 - on right: 472 + on right: 473 + $@29 (347) + on left: 472 + on right: 473 $@30 (348) - on left: 476 - on right: 478 - $@31 (349) on left: 477 - on right: 478 + on right: 479 + $@31 (349) + on left: 478 + on right: 479 $@32 (350) - on left: 481 - on right: 483 - $@33 (351) on left: 482 - on right: 483 + on right: 484 + $@33 (351) + on left: 483 + on right: 484 expr_mtag (352) - on left: 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 - on right: 423 + on left: 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 + on right: 424 optional_field_annotation (353) - on left: 514 515 516 - on right: 527 536 578 586 + on left: 515 516 517 + on right: 528 537 579 587 optional_override (354) - on left: 517 518 519 - on right: 527 534 + on left: 518 519 520 + on right: 528 535 optional_constant (355) - on left: 520 521 - on right: 532 534 + on left: 521 522 + on right: 533 535 optional_public_or_private_member_variable (356) - on left: 522 523 524 - on right: 527 532 534 + on left: 523 524 525 + on right: 528 533 535 optional_static_member_variable (357) - on left: 525 526 - on right: 527 534 + on left: 526 527 + on right: 528 535 structure_variable_declaration (358) - on left: 527 - on right: 530 + on left: 528 + on right: 531 struct_variable_declaration_list (359) - on left: 528 530 532 534 535 - on right: 530 532 534 535 622 + on left: 529 531 533 535 536 + on right: 531 533 535 536 623 $@34 (360) - on left: 529 - on right: 530 + on left: 530 + on right: 531 $@35 (361) - on left: 531 - on right: 532 + on left: 532 + on right: 533 $@36 (362) - on left: 533 - on right: 534 + on left: 534 + on right: 535 function_argument_declaration (363) - on left: 536 537 - on right: 538 539 + on left: 537 538 + on right: 539 540 function_argument_list (364) - on left: 538 539 - on right: 123 539 + on left: 539 540 + on right: 123 540 tuple_type (365) - on left: 540 541 - on right: 542 543 546 + on left: 541 542 + on right: 543 544 547 tuple_type_list (366) - on left: 542 543 - on right: 543 743 + on left: 543 544 + on right: 544 744 tuple_alias_type_list (367) - on left: 544 545 546 - on right: 545 546 754 + on left: 545 546 547 + on right: 546 547 755 variant_type (368) - on left: 547 - on right: 548 549 552 + on left: 548 + on right: 549 550 553 variant_type_list (369) - on left: 548 549 - on right: 549 746 + on left: 549 550 + on right: 550 747 variant_alias_type_list (370) - on left: 550 551 552 - on right: 551 552 759 + on left: 551 552 553 + on right: 552 553 760 copy_or_move (371) - on left: 553 554 - on right: 558 559 560 770 772 774 776 + on left: 554 555 + on right: 559 560 561 771 773 775 777 variable_declaration (372) - on left: 555 556 557 558 559 560 - on right: 527 536 + on left: 556 557 558 559 560 561 + on right: 528 537 copy_or_move_or_clone (373) - on left: 561 562 563 - on right: 300 301 302 303 572 573 574 575 + on left: 562 563 564 + on right: 301 302 303 304 573 574 575 576 optional_ref (374) - on left: 564 565 - on right: 302 303 574 575 + on left: 565 566 + on right: 303 304 575 576 let_variable_name_with_pos_list (375) - on left: 566 567 568 569 570 - on right: 569 570 571 572 573 574 575 + on left: 567 568 569 570 571 + on right: 570 571 572 573 574 575 576 let_variable_declaration (376) - on left: 571 572 573 574 575 - on right: 304 578 586 + on left: 572 573 574 575 576 + on right: 305 579 587 global_variable_declaration_list (377) - on left: 576 578 - on right: 578 584 + on left: 577 579 + on right: 579 585 $@37 (378) - on left: 577 - on right: 578 + on left: 578 + on right: 579 optional_shared (379) - on left: 579 580 - on right: 22 584 586 + on left: 580 581 + on right: 22 585 587 optional_public_or_private_variable (380) - on left: 581 582 583 - on right: 584 586 + on left: 582 583 584 + on right: 585 587 global_let (381) - on left: 584 586 + on left: 585 587 on right: 5 $@38 (382) - on left: 585 - on right: 586 + on left: 586 + on right: 587 enum_list (383) - on left: 587 588 589 590 - on right: 588 589 590 607 610 + on left: 588 589 590 591 + on right: 589 590 591 608 611 optional_public_or_private_alias (384) - on left: 591 592 593 - on right: 595 754 759 764 + on left: 592 593 594 + on right: 596 755 760 765 single_alias (385) - on left: 595 - on right: 596 597 600 + on left: 596 + on right: 597 598 601 $@39 (386) - on left: 594 - on right: 595 + on left: 595 + on right: 596 alias_list (387) - on left: 596 597 - on right: 597 598 + on left: 597 598 + on right: 598 599 alias_declaration (388) - on left: 598 600 + on left: 599 601 on right: 10 $@40 (389) - on left: 599 - on right: 600 + on left: 600 + on right: 601 optional_public_or_private_enum (390) - on left: 601 602 603 - on right: 607 610 + on left: 602 603 604 + on right: 608 611 enum_name (391) - on left: 604 - on right: 607 610 + on left: 605 + on right: 608 611 enum_declaration (392) - on left: 607 610 + on left: 608 611 on right: 4 $@41 (393) - on left: 605 - on right: 607 - $@42 (394) on left: 606 - on right: 607 + on right: 608 + $@42 (394) + on left: 607 + on right: 608 $@43 (395) - on left: 608 - on right: 610 - $@44 (396) on left: 609 - on right: 610 + on right: 611 + $@44 (396) + on left: 610 + on right: 611 optional_structure_parent (397) - on left: 611 612 - on right: 615 + on left: 612 613 + on right: 616 optional_sealed (398) - on left: 613 614 - on right: 615 + on left: 614 615 + on right: 616 structure_name (399) - on left: 615 - on right: 625 + on left: 616 + on right: 626 class_or_struct (400) - on left: 616 617 - on right: 625 + on left: 617 618 + on right: 626 optional_public_or_private_structure (401) - on left: 618 619 620 - on right: 625 + on left: 619 620 621 + on right: 626 optional_struct_variable_declaration_list (402) - on left: 621 622 - on right: 625 + on left: 622 623 + on right: 626 structure_declaration (403) - on left: 625 + on left: 626 on right: 3 $@45 (404) - on left: 623 - on right: 625 - $@46 (405) on left: 624 - on right: 625 + on right: 626 + $@46 (405) + on left: 625 + on right: 626 variable_name_with_pos_list (406) - on left: 626 627 628 629 630 - on right: 76 555 556 557 558 559 560 629 630 859 860 861 862 863 864 + on left: 627 628 629 630 631 + on right: 76 556 557 558 559 560 561 630 631 860 861 862 863 864 865 basic_type_declaration (407) - on left: 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 - on right: 412 413 473 479 484 494 682 + on left: 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 + on right: 413 414 474 480 485 495 683 enum_basic_type_declaration (408) - on left: 658 659 660 661 662 663 664 665 - on right: 610 + on left: 659 660 661 662 663 664 665 666 + on right: 611 structure_type_declaration (409) - on left: 666 - on right: 271 685 + on left: 667 + on right: 272 686 auto_type_declaration (410) - on left: 667 668 669 - on right: 683 + on left: 668 669 670 + on right: 684 bitfield_bits (411) - on left: 670 671 - on right: 671 677 + on left: 671 672 + on right: 672 678 bitfield_alias_bits (412) - on left: 672 673 674 - on right: 673 674 764 + on left: 673 674 675 + on right: 674 675 765 bitfield_type_declaration (413) - on left: 677 - on right: 684 + on left: 678 + on right: 685 $@47 (414) - on left: 675 - on right: 677 - $@48 (415) on left: 676 - on right: 677 + on right: 678 + $@48 (415) + on left: 677 + on right: 678 table_type_pair (416) - on left: 678 679 - on right: 716 + on left: 679 680 + on right: 717 dim_list (417) - on left: 680 681 - on right: 681 686 + on left: 681 682 + on right: 682 687 type_declaration_no_options (418) - on left: 682 683 684 685 686 687 690 691 692 694 695 696 697 698 699 700 701 702 703 704 705 706 709 710 713 716 719 720 723 726 727 730 733 734 737 740 743 746 - on right: 300 301 308 311 314 398 466 467 472 571 572 573 686 687 695 696 697 698 699 700 701 702 703 704 705 706 710 747 748 797 798 799 800 801 802 805 808 811 814 823 827 828 831 834 837 841 845 853 854 + on left: 683 684 685 686 687 688 691 692 693 695 696 697 698 699 700 701 702 703 704 705 706 707 710 711 714 717 720 721 724 727 728 731 734 735 738 741 744 747 + on right: 301 302 309 312 315 399 467 468 473 572 573 574 687 688 696 697 698 699 700 701 702 703 704 705 706 707 711 748 749 798 799 800 801 802 803 806 809 812 815 824 828 829 832 835 838 842 846 854 855 $@49 (419) - on left: 688 - on right: 690 - $@50 (420) on left: 689 - on right: 690 + on right: 691 + $@50 (420) + on left: 690 + on right: 691 $@51 (421) - on left: 693 - on right: 694 + on left: 694 + on right: 695 $@52 (422) - on left: 707 - on right: 709 - $@53 (423) on left: 708 - on right: 709 + on right: 710 + $@53 (423) + on left: 709 + on right: 710 $@54 (424) - on left: 711 - on right: 713 - $@55 (425) on left: 712 - on right: 713 + on right: 714 + $@55 (425) + on left: 713 + on right: 714 $@56 (426) - on left: 714 - on right: 716 - $@57 (427) on left: 715 - on right: 716 + on right: 717 + $@57 (427) + on left: 716 + on right: 717 $@58 (428) - on left: 717 - on right: 719 - $@59 (429) on left: 718 - on right: 719 + on right: 720 + $@59 (429) + on left: 719 + on right: 720 $@60 (430) - on left: 721 - on right: 723 - $@61 (431) on left: 722 - on right: 723 + on right: 724 + $@61 (431) + on left: 723 + on right: 724 $@62 (432) - on left: 724 - on right: 726 - $@63 (433) on left: 725 - on right: 726 + on right: 727 + $@63 (433) + on left: 726 + on right: 727 $@64 (434) - on left: 728 - on right: 730 - $@65 (435) on left: 729 - on right: 730 + on right: 731 + $@65 (435) + on left: 730 + on right: 731 $@66 (436) - on left: 731 - on right: 733 - $@67 (437) on left: 732 - on right: 733 + on right: 734 + $@67 (437) + on left: 733 + on right: 734 $@68 (438) - on left: 735 - on right: 737 - $@69 (439) on left: 736 - on right: 737 + on right: 738 + $@69 (439) + on left: 737 + on right: 738 $@70 (440) - on left: 738 - on right: 740 - $@71 (441) on left: 739 - on right: 740 + on right: 741 + $@71 (441) + on left: 740 + on right: 741 $@72 (442) - on left: 741 - on right: 743 - $@73 (443) on left: 742 - on right: 743 + on right: 744 + $@73 (443) + on left: 743 + on right: 744 $@74 (444) - on left: 744 - on right: 746 - $@75 (445) on left: 745 - on right: 746 + on right: 747 + $@75 (445) + on left: 746 + on right: 747 type_declaration (446) - on left: 747 748 749 - on right: 125 251 252 270 317 478 483 540 541 547 557 558 595 678 679 690 709 713 719 723 730 737 748 749 + on left: 748 749 750 + on right: 125 251 252 271 318 479 484 541 542 548 558 559 596 679 680 691 710 714 720 724 731 738 749 750 tuple_alias_declaration (447) - on left: 754 + on left: 755 on right: 12 $@76 (448) - on left: 750 - on right: 754 - $@77 (449) on left: 751 - on right: 754 - $@78 (450) + on right: 755 + $@77 (449) on left: 752 - on right: 754 - $@79 (451) + on right: 755 + $@78 (450) on left: 753 - on right: 754 + on right: 755 + $@79 (451) + on left: 754 + on right: 755 variant_alias_declaration (452) - on left: 759 + on left: 760 on right: 11 $@80 (453) - on left: 755 - on right: 759 - $@81 (454) on left: 756 - on right: 759 - $@82 (455) + on right: 760 + $@81 (454) on left: 757 - on right: 759 - $@83 (456) + on right: 760 + $@82 (455) on left: 758 - on right: 759 + on right: 760 + $@83 (456) + on left: 759 + on right: 760 bitfield_alias_declaration (457) - on left: 764 + on left: 765 on right: 13 $@84 (458) - on left: 760 - on right: 764 - $@85 (459) on left: 761 - on right: 764 - $@86 (460) + on right: 765 + $@85 (459) on left: 762 - on right: 764 - $@87 (461) + on right: 765 + $@86 (460) on left: 763 - on right: 764 + on right: 765 + $@87 (461) + on left: 764 + on right: 765 make_decl (462) - on left: 765 766 767 768 769 - on right: 276 419 + on left: 766 767 768 769 770 + on right: 277 420 make_struct_fields (463) - on left: 770 771 772 773 774 775 776 777 - on right: 389 390 772 773 776 777 778 779 780 + on left: 771 772 773 774 775 776 777 778 + on right: 390 391 773 774 777 778 779 780 781 make_struct_single (464) - on left: 778 - on right: 275 410 + on left: 779 + on right: 276 411 make_struct_dim (465) - on left: 779 780 - on right: 780 797 800 801 802 805 808 811 823 831 834 837 + on left: 780 781 + on right: 781 798 801 802 803 806 809 812 824 832 835 838 optional_block (466) - on left: 781 782 - on right: 797 798 799 800 801 802 + on left: 782 783 + on right: 798 799 800 801 802 803 optional_trailing_semicolon_cur_cur (467) - on left: 783 784 - on right: 851 + on left: 784 785 + on right: 852 optional_trailing_semicolon_cur_sqr (468) - on left: 785 786 - on right: 828 + on left: 786 787 + on right: 829 optional_trailing_semicolon_sqr_sqr (469) - on left: 787 788 - on right: 827 + on left: 788 789 + on right: 828 optional_trailing_delim_sqr_sqr (470) - on left: 789 790 791 - on right: 797 798 799 800 + on left: 790 791 792 + on right: 798 799 800 801 optional_trailing_delim_cur_sqr (471) - on left: 792 793 794 - on right: 801 802 + on left: 793 794 795 + on right: 802 803 use_initializer (472) - on left: 795 796 - on right: 273 275 805 808 814 823 831 834 + on left: 796 797 + on right: 274 276 806 809 815 824 832 835 make_struct_decl (473) - on left: 797 798 799 800 801 802 805 808 811 814 - on right: 765 + on left: 798 799 800 801 802 803 806 809 812 815 + on right: 766 $@88 (474) - on left: 803 - on right: 805 - $@89 (475) on left: 804 - on right: 805 + on right: 806 + $@89 (475) + on left: 805 + on right: 806 $@90 (476) - on left: 806 - on right: 808 - $@91 (477) on left: 807 - on right: 808 + on right: 809 + $@91 (477) + on left: 808 + on right: 809 $@92 (478) - on left: 809 - on right: 811 - $@93 (479) on left: 810 - on right: 811 + on right: 812 + $@93 (479) + on left: 811 + on right: 812 $@94 (480) - on left: 812 - on right: 814 - $@95 (481) on left: 813 - on right: 814 + on right: 815 + $@95 (481) + on left: 814 + on right: 815 make_tuple (482) - on left: 815 816 817 - on right: 817 824 825 + on left: 816 817 818 + on right: 818 825 826 make_map_tuple (483) - on left: 818 819 - on right: 846 847 848 849 863 864 + on left: 819 820 + on right: 847 848 849 850 864 865 make_tuple_call (484) - on left: 820 823 - on right: 769 + on left: 821 824 + on right: 770 $@96 (485) - on left: 821 - on right: 823 - $@97 (486) on left: 822 - on right: 823 + on right: 824 + $@97 (486) + on left: 823 + on right: 824 make_dim (487) - on left: 824 825 - on right: 825 827 828 + on left: 825 826 + on right: 826 828 829 make_dim_decl (488) - on left: 826 827 828 831 834 837 838 841 842 845 - on right: 766 + on left: 827 828 829 832 835 838 839 842 843 846 + on right: 767 $@98 (489) - on left: 829 - on right: 831 - $@99 (490) on left: 830 - on right: 831 + on right: 832 + $@99 (490) + on left: 831 + on right: 832 $@100 (491) - on left: 832 - on right: 834 - $@101 (492) on left: 833 - on right: 834 + on right: 835 + $@101 (492) + on left: 834 + on right: 835 $@102 (493) - on left: 835 - on right: 837 - $@103 (494) on left: 836 - on right: 837 + on right: 838 + $@103 (494) + on left: 837 + on right: 838 $@104 (495) - on left: 839 - on right: 841 - $@105 (496) on left: 840 - on right: 841 + on right: 842 + $@105 (496) + on left: 841 + on right: 842 $@106 (497) - on left: 843 - on right: 845 - $@107 (498) on left: 844 - on right: 845 + on right: 846 + $@107 (498) + on left: 845 + on right: 846 make_table (499) - on left: 846 847 - on right: 847 851 + on left: 847 848 + on right: 848 852 expr_map_tuple_list (500) - on left: 848 849 - on right: 849 850 852 853 854 + on left: 849 850 + on right: 850 851 853 854 855 make_table_decl (501) - on left: 850 851 852 853 854 - on right: 767 + on left: 851 852 853 854 855 + on right: 768 array_comprehension_where (502) - on left: 855 856 - on right: 859 860 861 862 863 864 + on left: 856 857 + on right: 860 861 862 863 864 865 optional_comma (503) - on left: 857 858 - on right: 454 820 826 838 841 842 845 850 852 853 854 + on left: 858 859 + on right: 455 821 827 839 842 843 846 851 853 854 855 array_comprehension (504) - on left: 859 860 861 862 863 864 - on right: 768 + on left: 860 861 862 863 864 865 + on right: 769 State 0 @@ -2372,9 +2374,9 @@ State 2 State 3 - 294 kwd_let: "let" . + 295 kwd_let: "let" . - $default reduce using rule 294 (kwd_let) + $default reduce using rule 295 (kwd_let) State 4 @@ -2416,21 +2418,21 @@ State 6 State 7 - 598 alias_declaration: "typedef" . "begin of code block" alias_list "end of code block" - 600 | "typedef" . $@40 single_alias "end of expression" + 599 alias_declaration: "typedef" . "begin of code block" alias_list "end of code block" + 601 | "typedef" . $@40 single_alias "end of expression" "begin of code block" shift, and go to state 48 - $default reduce using rule 599 ($@40) + $default reduce using rule 600 ($@40) $@40 go to state 49 State 8 - 295 kwd_let: "var" . + 296 kwd_let: "var" . - $default reduce using rule 295 (kwd_let) + $default reduce using rule 296 (kwd_let) State 9 @@ -2445,36 +2447,36 @@ State 9 State 10 - 764 bitfield_alias_declaration: "bitfield" . optional_public_or_private_alias $@84 "name" $@85 "begin of code block" $@86 bitfield_alias_bits $@87 "end of code block" + 765 bitfield_alias_declaration: "bitfield" . optional_public_or_private_alias $@84 "name" $@85 "begin of code block" $@86 bitfield_alias_bits $@87 "end of code block" "public" shift, and go to state 53 "private" shift, and go to state 54 - $default reduce using rule 591 (optional_public_or_private_alias) + $default reduce using rule 592 (optional_public_or_private_alias) optional_public_or_private_alias go to state 55 State 11 - 754 tuple_alias_declaration: "tuple" . optional_public_or_private_alias $@76 "name" $@77 "begin of code block" $@78 tuple_alias_type_list $@79 "end of code block" + 755 tuple_alias_declaration: "tuple" . optional_public_or_private_alias $@76 "name" $@77 "begin of code block" $@78 tuple_alias_type_list $@79 "end of code block" "public" shift, and go to state 53 "private" shift, and go to state 54 - $default reduce using rule 591 (optional_public_or_private_alias) + $default reduce using rule 592 (optional_public_or_private_alias) optional_public_or_private_alias go to state 56 State 12 - 759 variant_alias_declaration: "variant" . optional_public_or_private_alias $@80 "name" $@81 "begin of code block" $@82 variant_alias_type_list $@83 "end of code block" + 760 variant_alias_declaration: "variant" . optional_public_or_private_alias $@80 "name" $@81 "begin of code block" $@82 variant_alias_type_list $@83 "end of code block" "public" shift, and go to state 53 "private" shift, and go to state 54 - $default reduce using rule 591 (optional_public_or_private_alias) + $default reduce using rule 592 (optional_public_or_private_alias) optional_public_or_private_alias go to state 57 @@ -2490,27 +2492,29 @@ State 14 35 expr_reader: '%' . name_in_namespace $@1 reader_character_sequence - "name" shift, and go to state 58 + "::" shift, and go to state 58 + "name" shift, and go to state 59 - name_in_namespace go to state 59 + name_in_namespace go to state 60 State 15 120 optional_annotation_list: '[' . annotation_list ']' - "require" shift, and go to state 60 - "private" shift, and go to state 61 - "|>" shift, and go to state 62 - "name" shift, and go to state 58 - '!' shift, and go to state 63 - '(' shift, and go to state 64 + "require" shift, and go to state 61 + "private" shift, and go to state 62 + "|>" shift, and go to state 63 + "::" shift, and go to state 58 + "name" shift, and go to state 59 + '!' shift, and go to state 64 + '(' shift, and go to state 65 - annotation_declaration_name go to state 65 - annotation_declaration_basic go to state 66 - annotation_declaration go to state 67 - annotation_list go to state 68 - name_in_namespace go to state 69 + annotation_declaration_name go to state 66 + annotation_declaration_basic go to state 67 + annotation_declaration go to state 68 + annotation_list go to state 69 + name_in_namespace go to state 70 State 16 @@ -2531,7 +2535,7 @@ State 18 16 top_level_reader_macro: expr_reader . "end of expression" - "end of expression" shift, and go to state 70 + "end of expression" shift, and go to state 71 State 19 @@ -2558,16 +2562,16 @@ State 21 State 22 211 global_function_declaration: optional_annotation_list . "def" function_declaration - 607 enum_declaration: optional_annotation_list . "enum" optional_public_or_private_enum enum_name "begin of code block" $@41 enum_list $@42 "end of code block" - 610 | optional_annotation_list . "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 "end of code block" - 625 structure_declaration: optional_annotation_list . class_or_struct optional_public_or_private_structure $@45 structure_name $@46 optional_struct_variable_declaration_list + 608 enum_declaration: optional_annotation_list . "enum" optional_public_or_private_enum enum_name "begin of code block" $@41 enum_list $@42 "end of code block" + 611 | optional_annotation_list . "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 "end of code block" + 626 structure_declaration: optional_annotation_list . class_or_struct optional_public_or_private_structure $@45 structure_name $@46 optional_struct_variable_declaration_list - "struct" shift, and go to state 71 - "class" shift, and go to state 72 - "def" shift, and go to state 73 - "enum" shift, and go to state 74 + "struct" shift, and go to state 72 + "class" shift, and go to state 73 + "def" shift, and go to state 74 + "enum" shift, and go to state 75 - class_or_struct go to state 75 + class_or_struct go to state 76 State 23 @@ -2579,14 +2583,14 @@ State 23 State 24 - 584 global_let: kwd_let . optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" - 586 | kwd_let . optional_shared optional_public_or_private_variable $@38 optional_field_annotation let_variable_declaration + 585 global_let: kwd_let . optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" + 587 | kwd_let . optional_shared optional_public_or_private_variable $@38 optional_field_annotation let_variable_declaration - "shared" shift, and go to state 76 + "shared" shift, and go to state 77 - $default reduce using rule 579 (optional_shared) + $default reduce using rule 580 (optional_shared) - optional_shared go to state 77 + optional_shared go to state 78 State 25 @@ -2670,7 +2674,7 @@ State 35 99 | annotation_argument_name . 100 | annotation_argument_name . '=' '(' annotation_argument_value_list ')' - '=' shift, and go to state 78 + '=' shift, and go to state 79 $default reduce using rule 99 (annotation_argument) @@ -2687,7 +2691,7 @@ State 37 36 options_declaration: "options" annotation_argument_list . 102 annotation_argument_list: annotation_argument_list . ',' annotation_argument - ',' shift, and go to state 79 + ',' shift, and go to state 80 $default reduce using rule 36 (options_declaration) @@ -2697,7 +2701,7 @@ State 38 52 expect_error: "integer constant" . 53 | "integer constant" . ':' "integer constant" - ':' shift, and go to state 80 + ':' shift, and go to state 81 $default reduce using rule 52 (expect_error) @@ -2707,7 +2711,7 @@ State 39 49 expect_declaration: "expect" expect_list . 51 expect_list: expect_list . ',' expect_error - ',' shift, and go to state 81 + ',' shift, and go to state 82 $default reduce using rule 49 (expect_declaration) @@ -2750,7 +2754,7 @@ State 44 '%' shift, and go to state 44 keyword_or_name go to state 45 - require_module_name go to state 82 + require_module_name go to state 83 State 45 @@ -2767,14 +2771,14 @@ State 46 45 require_module: require_module_name . is_public_module 46 | require_module_name . "as" "name" is_public_module - "as" shift, and go to state 83 - "public" shift, and go to state 84 - '/' shift, and go to state 85 - '.' shift, and go to state 86 + "as" shift, and go to state 84 + "public" shift, and go to state 85 + '/' shift, and go to state 86 + '.' shift, and go to state 87 $default reduce using rule 47 (is_public_module) - is_public_module go to state 87 + is_public_module go to state 88 State 47 @@ -2786,29 +2790,29 @@ State 47 State 48 - 598 alias_declaration: "typedef" "begin of code block" . alias_list "end of code block" + 599 alias_declaration: "typedef" "begin of code block" . alias_list "end of code block" "public" shift, and go to state 53 "private" shift, and go to state 54 - $default reduce using rule 591 (optional_public_or_private_alias) + $default reduce using rule 592 (optional_public_or_private_alias) - optional_public_or_private_alias go to state 88 - single_alias go to state 89 - alias_list go to state 90 + optional_public_or_private_alias go to state 89 + single_alias go to state 90 + alias_list go to state 91 State 49 - 600 alias_declaration: "typedef" $@40 . single_alias "end of expression" + 601 alias_declaration: "typedef" $@40 . single_alias "end of expression" "public" shift, and go to state 53 "private" shift, and go to state 54 - $default reduce using rule 591 (optional_public_or_private_alias) + $default reduce using rule 592 (optional_public_or_private_alias) - optional_public_or_private_alias go to state 88 - single_alias go to state 91 + optional_public_or_private_alias go to state 89 + single_alias go to state 92 State 50 @@ -2829,265 +2833,276 @@ State 52 22 module_declaration: "module" module_name . optional_shared optional_public_or_private_module - "shared" shift, and go to state 76 + "shared" shift, and go to state 77 - $default reduce using rule 579 (optional_shared) + $default reduce using rule 580 (optional_shared) - optional_shared go to state 92 + optional_shared go to state 93 State 53 - 593 optional_public_or_private_alias: "public" . + 594 optional_public_or_private_alias: "public" . - $default reduce using rule 593 (optional_public_or_private_alias) + $default reduce using rule 594 (optional_public_or_private_alias) State 54 - 592 optional_public_or_private_alias: "private" . + 593 optional_public_or_private_alias: "private" . - $default reduce using rule 592 (optional_public_or_private_alias) + $default reduce using rule 593 (optional_public_or_private_alias) State 55 - 764 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias . $@84 "name" $@85 "begin of code block" $@86 bitfield_alias_bits $@87 "end of code block" + 765 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias . $@84 "name" $@85 "begin of code block" $@86 bitfield_alias_bits $@87 "end of code block" - $default reduce using rule 760 ($@84) + $default reduce using rule 761 ($@84) - $@84 go to state 93 + $@84 go to state 94 State 56 - 754 tuple_alias_declaration: "tuple" optional_public_or_private_alias . $@76 "name" $@77 "begin of code block" $@78 tuple_alias_type_list $@79 "end of code block" + 755 tuple_alias_declaration: "tuple" optional_public_or_private_alias . $@76 "name" $@77 "begin of code block" $@78 tuple_alias_type_list $@79 "end of code block" - $default reduce using rule 750 ($@76) + $default reduce using rule 751 ($@76) - $@76 go to state 94 + $@76 go to state 95 State 57 - 759 variant_alias_declaration: "variant" optional_public_or_private_alias . $@80 "name" $@81 "begin of code block" $@82 variant_alias_type_list $@83 "end of code block" + 760 variant_alias_declaration: "variant" optional_public_or_private_alias . $@80 "name" $@81 "begin of code block" $@82 variant_alias_type_list $@83 "end of code block" - $default reduce using rule 755 ($@80) + $default reduce using rule 756 ($@80) - $@80 go to state 95 + $@80 go to state 96 State 58 + 266 name_in_namespace: "::" . "name" + + "name" shift, and go to state 97 + + +State 59 + 264 name_in_namespace: "name" . 265 | "name" . "::" "name" - "::" shift, and go to state 96 + "::" shift, and go to state 98 + "::" [reduce using rule 264 (name_in_namespace)] $default reduce using rule 264 (name_in_namespace) -State 59 +State 60 35 expr_reader: '%' name_in_namespace . $@1 reader_character_sequence $default reduce using rule 34 ($@1) - $@1 go to state 97 + $@1 go to state 99 -State 60 +State 61 106 annotation_declaration_name: "require" . $default reduce using rule 106 (annotation_declaration_name) -State 61 +State 62 107 annotation_declaration_name: "private" . $default reduce using rule 107 (annotation_declaration_name) -State 62 +State 63 116 annotation_declaration: "|>" . annotation_declaration - "require" shift, and go to state 60 - "private" shift, and go to state 61 - "|>" shift, and go to state 62 - "name" shift, and go to state 58 - '!' shift, and go to state 63 - '(' shift, and go to state 64 + "require" shift, and go to state 61 + "private" shift, and go to state 62 + "|>" shift, and go to state 63 + "::" shift, and go to state 58 + "name" shift, and go to state 59 + '!' shift, and go to state 64 + '(' shift, and go to state 65 - annotation_declaration_name go to state 65 - annotation_declaration_basic go to state 66 - annotation_declaration go to state 98 - name_in_namespace go to state 69 + annotation_declaration_name go to state 66 + annotation_declaration_basic go to state 67 + annotation_declaration go to state 100 + name_in_namespace go to state 70 -State 63 +State 64 111 annotation_declaration: '!' . annotation_declaration - "require" shift, and go to state 60 - "private" shift, and go to state 61 - "|>" shift, and go to state 62 - "name" shift, and go to state 58 - '!' shift, and go to state 63 - '(' shift, and go to state 64 + "require" shift, and go to state 61 + "private" shift, and go to state 62 + "|>" shift, and go to state 63 + "::" shift, and go to state 58 + "name" shift, and go to state 59 + '!' shift, and go to state 64 + '(' shift, and go to state 65 - annotation_declaration_name go to state 65 - annotation_declaration_basic go to state 66 - annotation_declaration go to state 99 - name_in_namespace go to state 69 + annotation_declaration_name go to state 66 + annotation_declaration_basic go to state 67 + annotation_declaration go to state 101 + name_in_namespace go to state 70 -State 64 +State 65 115 annotation_declaration: '(' . annotation_declaration ')' - "require" shift, and go to state 60 - "private" shift, and go to state 61 - "|>" shift, and go to state 62 - "name" shift, and go to state 58 - '!' shift, and go to state 63 - '(' shift, and go to state 64 + "require" shift, and go to state 61 + "private" shift, and go to state 62 + "|>" shift, and go to state 63 + "::" shift, and go to state 58 + "name" shift, and go to state 59 + '!' shift, and go to state 64 + '(' shift, and go to state 65 - annotation_declaration_name go to state 65 - annotation_declaration_basic go to state 66 - annotation_declaration go to state 100 - name_in_namespace go to state 69 + annotation_declaration_name go to state 66 + annotation_declaration_basic go to state 67 + annotation_declaration go to state 102 + name_in_namespace go to state 70 -State 65 +State 66 108 annotation_declaration_basic: annotation_declaration_name . 109 | annotation_declaration_name . '(' annotation_argument_list ')' - '(' shift, and go to state 101 + '(' shift, and go to state 103 $default reduce using rule 108 (annotation_declaration_basic) -State 66 +State 67 110 annotation_declaration: annotation_declaration_basic . $default reduce using rule 110 (annotation_declaration) -State 67 +State 68 112 annotation_declaration: annotation_declaration . "&&" annotation_declaration 113 | annotation_declaration . "||" annotation_declaration 114 | annotation_declaration . "^^" annotation_declaration 117 annotation_list: annotation_declaration . - "&&" shift, and go to state 102 - "||" shift, and go to state 103 - "^^" shift, and go to state 104 + "&&" shift, and go to state 104 + "||" shift, and go to state 105 + "^^" shift, and go to state 106 $default reduce using rule 117 (annotation_list) -State 68 +State 69 118 annotation_list: annotation_list . ',' annotation_declaration 120 optional_annotation_list: '[' annotation_list . ']' - ',' shift, and go to state 105 - ']' shift, and go to state 106 + ',' shift, and go to state 107 + ']' shift, and go to state 108 -State 69 +State 70 105 annotation_declaration_name: name_in_namespace . $default reduce using rule 105 (annotation_declaration_name) -State 70 +State 71 16 top_level_reader_macro: expr_reader "end of expression" . $default reduce using rule 16 (top_level_reader_macro) -State 71 +State 72 - 617 class_or_struct: "struct" . + 618 class_or_struct: "struct" . - $default reduce using rule 617 (class_or_struct) + $default reduce using rule 618 (class_or_struct) -State 72 +State 73 - 616 class_or_struct: "class" . + 617 class_or_struct: "class" . - $default reduce using rule 616 (class_or_struct) + $default reduce using rule 617 (class_or_struct) -State 73 +State 74 211 global_function_declaration: optional_annotation_list "def" . function_declaration - "public" shift, and go to state 107 - "private" shift, and go to state 108 + "public" shift, and go to state 109 + "private" shift, and go to state 110 $default reduce using rule 212 (optional_public_or_private_function) - optional_public_or_private_function go to state 109 - function_declaration go to state 110 + optional_public_or_private_function go to state 111 + function_declaration go to state 112 -State 74 +State 75 - 607 enum_declaration: optional_annotation_list "enum" . optional_public_or_private_enum enum_name "begin of code block" $@41 enum_list $@42 "end of code block" - 610 | optional_annotation_list "enum" . optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 "end of code block" + 608 enum_declaration: optional_annotation_list "enum" . optional_public_or_private_enum enum_name "begin of code block" $@41 enum_list $@42 "end of code block" + 611 | optional_annotation_list "enum" . optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 "end of code block" - "public" shift, and go to state 111 - "private" shift, and go to state 112 + "public" shift, and go to state 113 + "private" shift, and go to state 114 - $default reduce using rule 601 (optional_public_or_private_enum) + $default reduce using rule 602 (optional_public_or_private_enum) - optional_public_or_private_enum go to state 113 + optional_public_or_private_enum go to state 115 -State 75 +State 76 - 625 structure_declaration: optional_annotation_list class_or_struct . optional_public_or_private_structure $@45 structure_name $@46 optional_struct_variable_declaration_list + 626 structure_declaration: optional_annotation_list class_or_struct . optional_public_or_private_structure $@45 structure_name $@46 optional_struct_variable_declaration_list - "public" shift, and go to state 114 - "private" shift, and go to state 115 + "public" shift, and go to state 116 + "private" shift, and go to state 117 - $default reduce using rule 618 (optional_public_or_private_structure) + $default reduce using rule 619 (optional_public_or_private_structure) - optional_public_or_private_structure go to state 116 + optional_public_or_private_structure go to state 118 -State 76 +State 77 - 580 optional_shared: "shared" . + 581 optional_shared: "shared" . - $default reduce using rule 580 (optional_shared) + $default reduce using rule 581 (optional_shared) -State 77 +State 78 - 584 global_let: kwd_let optional_shared . optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" - 586 | kwd_let optional_shared . optional_public_or_private_variable $@38 optional_field_annotation let_variable_declaration + 585 global_let: kwd_let optional_shared . optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" + 587 | kwd_let optional_shared . optional_public_or_private_variable $@38 optional_field_annotation let_variable_declaration - "public" shift, and go to state 117 - "private" shift, and go to state 118 + "public" shift, and go to state 119 + "private" shift, and go to state 120 - $default reduce using rule 581 (optional_public_or_private_variable) + $default reduce using rule 582 (optional_public_or_private_variable) - optional_public_or_private_variable go to state 119 + optional_public_or_private_variable go to state 121 -State 78 +State 79 93 annotation_argument: annotation_argument_name '=' . string_constant 94 | annotation_argument_name '=' . "name" @@ -3097,18 +3112,18 @@ State 78 98 | annotation_argument_name '=' . "false" 100 | annotation_argument_name '=' . '(' annotation_argument_value_list ')' - "true" shift, and go to state 120 - "false" shift, and go to state 121 - "integer constant" shift, and go to state 122 - "floating point constant" shift, and go to state 123 - "name" shift, and go to state 124 - "start of the string" shift, and go to state 125 - '(' shift, and go to state 126 + "true" shift, and go to state 122 + "false" shift, and go to state 123 + "integer constant" shift, and go to state 124 + "floating point constant" shift, and go to state 125 + "name" shift, and go to state 126 + "start of the string" shift, and go to state 127 + '(' shift, and go to state 128 - string_constant go to state 127 + string_constant go to state 129 -State 79 +State 80 102 annotation_argument_list: annotation_argument_list ',' . annotation_argument @@ -3117,51 +3132,51 @@ State 79 "name" shift, and go to state 34 annotation_argument_name go to state 35 - annotation_argument go to state 128 + annotation_argument go to state 130 -State 80 +State 81 53 expect_error: "integer constant" ':' . "integer constant" - "integer constant" shift, and go to state 129 + "integer constant" shift, and go to state 131 -State 81 +State 82 51 expect_list: expect_list ',' . expect_error "integer constant" shift, and go to state 38 - expect_error go to state 130 + expect_error go to state 132 -State 82 +State 83 42 require_module_name: '%' require_module_name . 43 | require_module_name . '.' keyword_or_name 44 | require_module_name . '/' keyword_or_name - '.' shift, and go to state 86 + '.' shift, and go to state 87 $default reduce using rule 42 (require_module_name) -State 83 +State 84 46 require_module: require_module_name "as" . "name" is_public_module - "name" shift, and go to state 131 + "name" shift, and go to state 133 -State 84 +State 85 48 is_public_module: "public" . $default reduce using rule 48 (is_public_module) -State 85 +State 86 44 require_module_name: require_module_name '/' . keyword_or_name @@ -3169,10 +3184,10 @@ State 85 "keyword" shift, and go to state 42 "type function" shift, and go to state 43 - keyword_or_name go to state 132 + keyword_or_name go to state 134 -State 86 +State 87 43 require_module_name: require_module_name '.' . keyword_or_name @@ -3180,102 +3195,109 @@ State 86 "keyword" shift, and go to state 42 "type function" shift, and go to state 43 - keyword_or_name go to state 133 + keyword_or_name go to state 135 -State 87 +State 88 45 require_module: require_module_name is_public_module . $default reduce using rule 45 (require_module) -State 88 +State 89 - 595 single_alias: optional_public_or_private_alias . "name" $@39 '=' type_declaration + 596 single_alias: optional_public_or_private_alias . "name" $@39 '=' type_declaration - "name" shift, and go to state 134 + "name" shift, and go to state 136 -State 89 +State 90 - 596 alias_list: single_alias . "end of expression" + 597 alias_list: single_alias . "end of expression" - "end of expression" shift, and go to state 135 + "end of expression" shift, and go to state 137 -State 90 +State 91 - 597 alias_list: alias_list . single_alias "end of expression" - 598 alias_declaration: "typedef" "begin of code block" alias_list . "end of code block" + 598 alias_list: alias_list . single_alias "end of expression" + 599 alias_declaration: "typedef" "begin of code block" alias_list . "end of code block" "public" shift, and go to state 53 "private" shift, and go to state 54 - "end of code block" shift, and go to state 136 + "end of code block" shift, and go to state 138 - $default reduce using rule 591 (optional_public_or_private_alias) + $default reduce using rule 592 (optional_public_or_private_alias) - optional_public_or_private_alias go to state 88 - single_alias go to state 137 + optional_public_or_private_alias go to state 89 + single_alias go to state 139 -State 91 +State 92 - 600 alias_declaration: "typedef" $@40 single_alias . "end of expression" + 601 alias_declaration: "typedef" $@40 single_alias . "end of expression" - "end of expression" shift, and go to state 138 + "end of expression" shift, and go to state 140 -State 92 +State 93 22 module_declaration: "module" module_name optional_shared . optional_public_or_private_module - "public" shift, and go to state 139 - "private" shift, and go to state 140 + "public" shift, and go to state 141 + "private" shift, and go to state 142 $default reduce using rule 17 (optional_public_or_private_module) - optional_public_or_private_module go to state 141 - - -State 93 - - 764 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 . "name" $@85 "begin of code block" $@86 bitfield_alias_bits $@87 "end of code block" - - "name" shift, and go to state 142 + optional_public_or_private_module go to state 143 State 94 - 754 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 . "name" $@77 "begin of code block" $@78 tuple_alias_type_list $@79 "end of code block" + 765 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 . "name" $@85 "begin of code block" $@86 bitfield_alias_bits $@87 "end of code block" - "name" shift, and go to state 143 + "name" shift, and go to state 144 State 95 - 759 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 . "name" $@81 "begin of code block" $@82 variant_alias_type_list $@83 "end of code block" + 755 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 . "name" $@77 "begin of code block" $@78 tuple_alias_type_list $@79 "end of code block" - "name" shift, and go to state 144 + "name" shift, and go to state 145 State 96 - 265 name_in_namespace: "name" "::" . "name" + 760 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 . "name" $@81 "begin of code block" $@82 variant_alias_type_list $@83 "end of code block" - "name" shift, and go to state 145 + "name" shift, and go to state 146 State 97 + 266 name_in_namespace: "::" "name" . + + $default reduce using rule 266 (name_in_namespace) + + +State 98 + + 265 name_in_namespace: "name" "::" . "name" + + "name" shift, and go to state 147 + + +State 99 + 35 expr_reader: '%' name_in_namespace $@1 . reader_character_sequence - STRING_CHARACTER shift, and go to state 146 + STRING_CHARACTER shift, and go to state 148 - reader_character_sequence go to state 147 + reader_character_sequence go to state 149 -State 98 +State 100 112 annotation_declaration: annotation_declaration . "&&" annotation_declaration 113 | annotation_declaration . "||" annotation_declaration @@ -3285,7 +3307,7 @@ State 98 $default reduce using rule 116 (annotation_declaration) -State 99 +State 101 111 annotation_declaration: '!' annotation_declaration . 112 | annotation_declaration . "&&" annotation_declaration @@ -3295,20 +3317,20 @@ State 99 $default reduce using rule 111 (annotation_declaration) -State 100 +State 102 112 annotation_declaration: annotation_declaration . "&&" annotation_declaration 113 | annotation_declaration . "||" annotation_declaration 114 | annotation_declaration . "^^" annotation_declaration 115 | '(' annotation_declaration . ')' - "&&" shift, and go to state 102 - "||" shift, and go to state 103 - "^^" shift, and go to state 104 - ')' shift, and go to state 148 + "&&" shift, and go to state 104 + "||" shift, and go to state 105 + "^^" shift, and go to state 106 + ')' shift, and go to state 150 -State 101 +State 103 109 annotation_declaration_basic: annotation_declaration_name '(' . annotation_argument_list ')' @@ -3318,427 +3340,431 @@ State 101 annotation_argument_name go to state 35 annotation_argument go to state 36 - annotation_argument_list go to state 149 + annotation_argument_list go to state 151 -State 102 +State 104 112 annotation_declaration: annotation_declaration "&&" . annotation_declaration - "require" shift, and go to state 60 - "private" shift, and go to state 61 - "|>" shift, and go to state 62 - "name" shift, and go to state 58 - '!' shift, and go to state 63 - '(' shift, and go to state 64 + "require" shift, and go to state 61 + "private" shift, and go to state 62 + "|>" shift, and go to state 63 + "::" shift, and go to state 58 + "name" shift, and go to state 59 + '!' shift, and go to state 64 + '(' shift, and go to state 65 - annotation_declaration_name go to state 65 - annotation_declaration_basic go to state 66 - annotation_declaration go to state 150 - name_in_namespace go to state 69 + annotation_declaration_name go to state 66 + annotation_declaration_basic go to state 67 + annotation_declaration go to state 152 + name_in_namespace go to state 70 -State 103 +State 105 113 annotation_declaration: annotation_declaration "||" . annotation_declaration - "require" shift, and go to state 60 - "private" shift, and go to state 61 - "|>" shift, and go to state 62 - "name" shift, and go to state 58 - '!' shift, and go to state 63 - '(' shift, and go to state 64 + "require" shift, and go to state 61 + "private" shift, and go to state 62 + "|>" shift, and go to state 63 + "::" shift, and go to state 58 + "name" shift, and go to state 59 + '!' shift, and go to state 64 + '(' shift, and go to state 65 - annotation_declaration_name go to state 65 - annotation_declaration_basic go to state 66 - annotation_declaration go to state 151 - name_in_namespace go to state 69 + annotation_declaration_name go to state 66 + annotation_declaration_basic go to state 67 + annotation_declaration go to state 153 + name_in_namespace go to state 70 -State 104 +State 106 114 annotation_declaration: annotation_declaration "^^" . annotation_declaration - "require" shift, and go to state 60 - "private" shift, and go to state 61 - "|>" shift, and go to state 62 - "name" shift, and go to state 58 - '!' shift, and go to state 63 - '(' shift, and go to state 64 + "require" shift, and go to state 61 + "private" shift, and go to state 62 + "|>" shift, and go to state 63 + "::" shift, and go to state 58 + "name" shift, and go to state 59 + '!' shift, and go to state 64 + '(' shift, and go to state 65 - annotation_declaration_name go to state 65 - annotation_declaration_basic go to state 66 - annotation_declaration go to state 152 - name_in_namespace go to state 69 + annotation_declaration_name go to state 66 + annotation_declaration_basic go to state 67 + annotation_declaration go to state 154 + name_in_namespace go to state 70 -State 105 +State 107 118 annotation_list: annotation_list ',' . annotation_declaration - "require" shift, and go to state 60 - "private" shift, and go to state 61 - "|>" shift, and go to state 62 - "name" shift, and go to state 58 - '!' shift, and go to state 63 - '(' shift, and go to state 64 + "require" shift, and go to state 61 + "private" shift, and go to state 62 + "|>" shift, and go to state 63 + "::" shift, and go to state 58 + "name" shift, and go to state 59 + '!' shift, and go to state 64 + '(' shift, and go to state 65 - annotation_declaration_name go to state 65 - annotation_declaration_basic go to state 66 - annotation_declaration go to state 153 - name_in_namespace go to state 69 + annotation_declaration_name go to state 66 + annotation_declaration_basic go to state 67 + annotation_declaration go to state 155 + name_in_namespace go to state 70 -State 106 +State 108 120 optional_annotation_list: '[' annotation_list ']' . $default reduce using rule 120 (optional_annotation_list) -State 107 +State 109 214 optional_public_or_private_function: "public" . $default reduce using rule 214 (optional_public_or_private_function) -State 108 +State 110 213 optional_public_or_private_function: "private" . $default reduce using rule 213 (optional_public_or_private_function) -State 109 +State 111 217 function_declaration: optional_public_or_private_function . $@6 function_declaration_header expression_block $default reduce using rule 216 ($@6) - $@6 go to state 154 + $@6 go to state 156 -State 110 +State 112 211 global_function_declaration: optional_annotation_list "def" function_declaration . $default reduce using rule 211 (global_function_declaration) -State 111 +State 113 - 603 optional_public_or_private_enum: "public" . + 604 optional_public_or_private_enum: "public" . - $default reduce using rule 603 (optional_public_or_private_enum) + $default reduce using rule 604 (optional_public_or_private_enum) -State 112 +State 114 - 602 optional_public_or_private_enum: "private" . + 603 optional_public_or_private_enum: "private" . - $default reduce using rule 602 (optional_public_or_private_enum) + $default reduce using rule 603 (optional_public_or_private_enum) -State 113 +State 115 - 607 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum . enum_name "begin of code block" $@41 enum_list $@42 "end of code block" - 610 | optional_annotation_list "enum" optional_public_or_private_enum . enum_name ':' enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 "end of code block" + 608 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum . enum_name "begin of code block" $@41 enum_list $@42 "end of code block" + 611 | optional_annotation_list "enum" optional_public_or_private_enum . enum_name ':' enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 "end of code block" - "name" shift, and go to state 155 + "name" shift, and go to state 157 - enum_name go to state 156 + enum_name go to state 158 -State 114 +State 116 - 620 optional_public_or_private_structure: "public" . + 621 optional_public_or_private_structure: "public" . - $default reduce using rule 620 (optional_public_or_private_structure) + $default reduce using rule 621 (optional_public_or_private_structure) -State 115 +State 117 - 619 optional_public_or_private_structure: "private" . + 620 optional_public_or_private_structure: "private" . - $default reduce using rule 619 (optional_public_or_private_structure) + $default reduce using rule 620 (optional_public_or_private_structure) -State 116 +State 118 - 625 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure . $@45 structure_name $@46 optional_struct_variable_declaration_list + 626 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure . $@45 structure_name $@46 optional_struct_variable_declaration_list - $default reduce using rule 623 ($@45) + $default reduce using rule 624 ($@45) - $@45 go to state 157 + $@45 go to state 159 -State 117 +State 119 - 583 optional_public_or_private_variable: "public" . + 584 optional_public_or_private_variable: "public" . - $default reduce using rule 583 (optional_public_or_private_variable) + $default reduce using rule 584 (optional_public_or_private_variable) -State 118 +State 120 - 582 optional_public_or_private_variable: "private" . + 583 optional_public_or_private_variable: "private" . - $default reduce using rule 582 (optional_public_or_private_variable) + $default reduce using rule 583 (optional_public_or_private_variable) -State 119 +State 121 - 584 global_let: kwd_let optional_shared optional_public_or_private_variable . "begin of code block" global_variable_declaration_list "end of code block" - 586 | kwd_let optional_shared optional_public_or_private_variable . $@38 optional_field_annotation let_variable_declaration + 585 global_let: kwd_let optional_shared optional_public_or_private_variable . "begin of code block" global_variable_declaration_list "end of code block" + 587 | kwd_let optional_shared optional_public_or_private_variable . $@38 optional_field_annotation let_variable_declaration - "begin of code block" shift, and go to state 158 + "begin of code block" shift, and go to state 160 - $default reduce using rule 585 ($@38) + $default reduce using rule 586 ($@38) - $@38 go to state 159 + $@38 go to state 161 -State 120 +State 122 97 annotation_argument: annotation_argument_name '=' "true" . $default reduce using rule 97 (annotation_argument) -State 121 +State 123 98 annotation_argument: annotation_argument_name '=' "false" . $default reduce using rule 98 (annotation_argument) -State 122 +State 124 95 annotation_argument: annotation_argument_name '=' "integer constant" . $default reduce using rule 95 (annotation_argument) -State 123 +State 125 96 annotation_argument: annotation_argument_name '=' "floating point constant" . $default reduce using rule 96 (annotation_argument) -State 124 +State 126 94 annotation_argument: annotation_argument_name '=' "name" . $default reduce using rule 94 (annotation_argument) -State 125 +State 127 27 string_constant: "start of the string" . character_sequence "end of the string" - STRING_CHARACTER shift, and go to state 160 - STRING_CHARACTER_ESC shift, and go to state 161 + STRING_CHARACTER shift, and go to state 162 + STRING_CHARACTER_ESC shift, and go to state 163 - character_sequence go to state 162 + character_sequence go to state 164 -State 126 +State 128 100 annotation_argument: annotation_argument_name '=' '(' . annotation_argument_value_list ')' - "true" shift, and go to state 163 - "false" shift, and go to state 164 - "integer constant" shift, and go to state 165 - "floating point constant" shift, and go to state 166 - "name" shift, and go to state 167 - "start of the string" shift, and go to state 125 + "true" shift, and go to state 165 + "false" shift, and go to state 166 + "integer constant" shift, and go to state 167 + "floating point constant" shift, and go to state 168 + "name" shift, and go to state 169 + "start of the string" shift, and go to state 127 - string_constant go to state 168 - annotation_argument_value go to state 169 - annotation_argument_value_list go to state 170 + string_constant go to state 170 + annotation_argument_value go to state 171 + annotation_argument_value_list go to state 172 -State 127 +State 129 93 annotation_argument: annotation_argument_name '=' string_constant . $default reduce using rule 93 (annotation_argument) -State 128 +State 130 102 annotation_argument_list: annotation_argument_list ',' annotation_argument . $default reduce using rule 102 (annotation_argument_list) -State 129 +State 131 53 expect_error: "integer constant" ':' "integer constant" . $default reduce using rule 53 (expect_error) -State 130 +State 132 51 expect_list: expect_list ',' expect_error . $default reduce using rule 51 (expect_list) -State 131 +State 133 46 require_module: require_module_name "as" "name" . is_public_module - "public" shift, and go to state 84 + "public" shift, and go to state 85 $default reduce using rule 47 (is_public_module) - is_public_module go to state 171 + is_public_module go to state 173 -State 132 +State 134 44 require_module_name: require_module_name '/' keyword_or_name . $default reduce using rule 44 (require_module_name) -State 133 +State 135 43 require_module_name: require_module_name '.' keyword_or_name . $default reduce using rule 43 (require_module_name) -State 134 +State 136 - 595 single_alias: optional_public_or_private_alias "name" . $@39 '=' type_declaration + 596 single_alias: optional_public_or_private_alias "name" . $@39 '=' type_declaration - $default reduce using rule 594 ($@39) + $default reduce using rule 595 ($@39) - $@39 go to state 172 + $@39 go to state 174 -State 135 +State 137 - 596 alias_list: single_alias "end of expression" . + 597 alias_list: single_alias "end of expression" . - $default reduce using rule 596 (alias_list) + $default reduce using rule 597 (alias_list) -State 136 +State 138 - 598 alias_declaration: "typedef" "begin of code block" alias_list "end of code block" . + 599 alias_declaration: "typedef" "begin of code block" alias_list "end of code block" . - $default reduce using rule 598 (alias_declaration) + $default reduce using rule 599 (alias_declaration) -State 137 +State 139 - 597 alias_list: alias_list single_alias . "end of expression" + 598 alias_list: alias_list single_alias . "end of expression" - "end of expression" shift, and go to state 173 + "end of expression" shift, and go to state 175 -State 138 +State 140 - 600 alias_declaration: "typedef" $@40 single_alias "end of expression" . + 601 alias_declaration: "typedef" $@40 single_alias "end of expression" . - $default reduce using rule 600 (alias_declaration) + $default reduce using rule 601 (alias_declaration) -State 139 +State 141 18 optional_public_or_private_module: "public" . $default reduce using rule 18 (optional_public_or_private_module) -State 140 +State 142 19 optional_public_or_private_module: "private" . $default reduce using rule 19 (optional_public_or_private_module) -State 141 +State 143 22 module_declaration: "module" module_name optional_shared optional_public_or_private_module . $default reduce using rule 22 (module_declaration) -State 142 +State 144 - 764 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" . $@85 "begin of code block" $@86 bitfield_alias_bits $@87 "end of code block" + 765 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" . $@85 "begin of code block" $@86 bitfield_alias_bits $@87 "end of code block" - $default reduce using rule 761 ($@85) + $default reduce using rule 762 ($@85) - $@85 go to state 174 + $@85 go to state 176 -State 143 +State 145 - 754 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" . $@77 "begin of code block" $@78 tuple_alias_type_list $@79 "end of code block" + 755 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" . $@77 "begin of code block" $@78 tuple_alias_type_list $@79 "end of code block" - $default reduce using rule 751 ($@77) + $default reduce using rule 752 ($@77) - $@77 go to state 175 + $@77 go to state 177 -State 144 +State 146 - 759 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" . $@81 "begin of code block" $@82 variant_alias_type_list $@83 "end of code block" + 760 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" . $@81 "begin of code block" $@82 variant_alias_type_list $@83 "end of code block" - $default reduce using rule 756 ($@81) + $default reduce using rule 757 ($@81) - $@81 go to state 176 + $@81 go to state 178 -State 145 +State 147 265 name_in_namespace: "name" "::" "name" . $default reduce using rule 265 (name_in_namespace) -State 146 +State 148 32 reader_character_sequence: STRING_CHARACTER . $default reduce using rule 32 (reader_character_sequence) -State 147 +State 149 33 reader_character_sequence: reader_character_sequence . STRING_CHARACTER 35 expr_reader: '%' name_in_namespace $@1 reader_character_sequence . - STRING_CHARACTER shift, and go to state 177 + STRING_CHARACTER shift, and go to state 179 $default reduce using rule 35 (expr_reader) -State 148 +State 150 115 annotation_declaration: '(' annotation_declaration ')' . $default reduce using rule 115 (annotation_declaration) -State 149 +State 151 102 annotation_argument_list: annotation_argument_list . ',' annotation_argument 109 annotation_declaration_basic: annotation_declaration_name '(' annotation_argument_list . ')' - ',' shift, and go to state 79 - ')' shift, and go to state 178 + ',' shift, and go to state 80 + ')' shift, and go to state 180 -State 150 +State 152 112 annotation_declaration: annotation_declaration . "&&" annotation_declaration 112 | annotation_declaration "&&" annotation_declaration . @@ -3748,273 +3774,273 @@ State 150 $default reduce using rule 112 (annotation_declaration) -State 151 +State 153 112 annotation_declaration: annotation_declaration . "&&" annotation_declaration 113 | annotation_declaration . "||" annotation_declaration 113 | annotation_declaration "||" annotation_declaration . 114 | annotation_declaration . "^^" annotation_declaration - "&&" shift, and go to state 102 - "^^" shift, and go to state 104 + "&&" shift, and go to state 104 + "^^" shift, and go to state 106 $default reduce using rule 113 (annotation_declaration) -State 152 +State 154 112 annotation_declaration: annotation_declaration . "&&" annotation_declaration 113 | annotation_declaration . "||" annotation_declaration 114 | annotation_declaration . "^^" annotation_declaration 114 | annotation_declaration "^^" annotation_declaration . - "&&" shift, and go to state 102 + "&&" shift, and go to state 104 $default reduce using rule 114 (annotation_declaration) -State 153 +State 155 112 annotation_declaration: annotation_declaration . "&&" annotation_declaration 113 | annotation_declaration . "||" annotation_declaration 114 | annotation_declaration . "^^" annotation_declaration 118 annotation_list: annotation_list ',' annotation_declaration . - "&&" shift, and go to state 102 - "||" shift, and go to state 103 - "^^" shift, and go to state 104 + "&&" shift, and go to state 104 + "||" shift, and go to state 105 + "^^" shift, and go to state 106 $default reduce using rule 118 (annotation_list) -State 154 +State 156 217 function_declaration: optional_public_or_private_function $@6 . function_declaration_header expression_block - "operator" shift, and go to state 179 - "bool" shift, and go to state 180 - "string" shift, and go to state 181 - "int" shift, and go to state 182 - "int2" shift, and go to state 183 - "int3" shift, and go to state 184 - "int4" shift, and go to state 185 - "uint" shift, and go to state 186 - "uint2" shift, and go to state 187 - "uint3" shift, and go to state 188 - "uint4" shift, and go to state 189 - "float" shift, and go to state 190 - "float2" shift, and go to state 191 - "float3" shift, and go to state 192 - "float4" shift, and go to state 193 - "range" shift, and go to state 194 - "urange" shift, and go to state 195 - "range64" shift, and go to state 196 - "urange64" shift, and go to state 197 - "int64" shift, and go to state 198 - "uint64" shift, and go to state 199 - "double" shift, and go to state 200 - "int8" shift, and go to state 201 - "uint8" shift, and go to state 202 - "int16" shift, and go to state 203 - "uint16" shift, and go to state 204 - "++" shift, and go to state 205 - "--" shift, and go to state 206 - "name" shift, and go to state 207 - - function_name go to state 208 - function_declaration_header go to state 209 + "operator" shift, and go to state 181 + "bool" shift, and go to state 182 + "string" shift, and go to state 183 + "int" shift, and go to state 184 + "int2" shift, and go to state 185 + "int3" shift, and go to state 186 + "int4" shift, and go to state 187 + "uint" shift, and go to state 188 + "uint2" shift, and go to state 189 + "uint3" shift, and go to state 190 + "uint4" shift, and go to state 191 + "float" shift, and go to state 192 + "float2" shift, and go to state 193 + "float3" shift, and go to state 194 + "float4" shift, and go to state 195 + "range" shift, and go to state 196 + "urange" shift, and go to state 197 + "range64" shift, and go to state 198 + "urange64" shift, and go to state 199 + "int64" shift, and go to state 200 + "uint64" shift, and go to state 201 + "double" shift, and go to state 202 + "int8" shift, and go to state 203 + "uint8" shift, and go to state 204 + "int16" shift, and go to state 205 + "uint16" shift, and go to state 206 + "++" shift, and go to state 207 + "--" shift, and go to state 208 + "name" shift, and go to state 209 + + function_name go to state 210 + function_declaration_header go to state 211 -State 155 +State 157 - 604 enum_name: "name" . + 605 enum_name: "name" . - $default reduce using rule 604 (enum_name) + $default reduce using rule 605 (enum_name) -State 156 +State 158 - 607 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name . "begin of code block" $@41 enum_list $@42 "end of code block" - 610 | optional_annotation_list "enum" optional_public_or_private_enum enum_name . ':' enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 "end of code block" + 608 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name . "begin of code block" $@41 enum_list $@42 "end of code block" + 611 | optional_annotation_list "enum" optional_public_or_private_enum enum_name . ':' enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 "end of code block" - "begin of code block" shift, and go to state 210 - ':' shift, and go to state 211 + "begin of code block" shift, and go to state 212 + ':' shift, and go to state 213 -State 157 +State 159 - 625 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@45 . structure_name $@46 optional_struct_variable_declaration_list + 626 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@45 . structure_name $@46 optional_struct_variable_declaration_list - "sealed" shift, and go to state 212 + "sealed" shift, and go to state 214 - $default reduce using rule 613 (optional_sealed) + $default reduce using rule 614 (optional_sealed) - optional_sealed go to state 213 - structure_name go to state 214 + optional_sealed go to state 215 + structure_name go to state 216 -State 158 +State 160 - 584 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" . global_variable_declaration_list "end of code block" + 585 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" . global_variable_declaration_list "end of code block" - $default reduce using rule 576 (global_variable_declaration_list) + $default reduce using rule 577 (global_variable_declaration_list) - global_variable_declaration_list go to state 215 + global_variable_declaration_list go to state 217 -State 159 +State 161 - 586 global_let: kwd_let optional_shared optional_public_or_private_variable $@38 . optional_field_annotation let_variable_declaration + 587 global_let: kwd_let optional_shared optional_public_or_private_variable $@38 . optional_field_annotation let_variable_declaration - "[[" shift, and go to state 216 - '@' shift, and go to state 217 + "[[" shift, and go to state 218 + '@' shift, and go to state 219 - $default reduce using rule 514 (optional_field_annotation) + $default reduce using rule 515 (optional_field_annotation) - metadata_argument_list go to state 218 - optional_field_annotation go to state 219 + metadata_argument_list go to state 220 + optional_field_annotation go to state 221 -State 160 +State 162 23 character_sequence: STRING_CHARACTER . $default reduce using rule 23 (character_sequence) -State 161 +State 163 24 character_sequence: STRING_CHARACTER_ESC . $default reduce using rule 24 (character_sequence) -State 162 +State 164 25 character_sequence: character_sequence . STRING_CHARACTER 26 | character_sequence . STRING_CHARACTER_ESC 27 string_constant: "start of the string" character_sequence . "end of the string" - STRING_CHARACTER shift, and go to state 220 - STRING_CHARACTER_ESC shift, and go to state 221 - "end of the string" shift, and go to state 222 + STRING_CHARACTER shift, and go to state 222 + STRING_CHARACTER_ESC shift, and go to state 223 + "end of the string" shift, and go to state 224 -State 163 +State 165 86 annotation_argument_value: "true" . $default reduce using rule 86 (annotation_argument_value) -State 164 +State 166 87 annotation_argument_value: "false" . $default reduce using rule 87 (annotation_argument_value) -State 165 +State 167 84 annotation_argument_value: "integer constant" . $default reduce using rule 84 (annotation_argument_value) -State 166 +State 168 85 annotation_argument_value: "floating point constant" . $default reduce using rule 85 (annotation_argument_value) -State 167 +State 169 83 annotation_argument_value: "name" . $default reduce using rule 83 (annotation_argument_value) -State 168 +State 170 82 annotation_argument_value: string_constant . $default reduce using rule 82 (annotation_argument_value) -State 169 +State 171 88 annotation_argument_value_list: annotation_argument_value . $default reduce using rule 88 (annotation_argument_value_list) -State 170 +State 172 89 annotation_argument_value_list: annotation_argument_value_list . ',' annotation_argument_value 100 annotation_argument: annotation_argument_name '=' '(' annotation_argument_value_list . ')' - ',' shift, and go to state 223 - ')' shift, and go to state 224 + ',' shift, and go to state 225 + ')' shift, and go to state 226 -State 171 +State 173 46 require_module: require_module_name "as" "name" is_public_module . $default reduce using rule 46 (require_module) -State 172 +State 174 - 595 single_alias: optional_public_or_private_alias "name" $@39 . '=' type_declaration + 596 single_alias: optional_public_or_private_alias "name" $@39 . '=' type_declaration - '=' shift, and go to state 225 + '=' shift, and go to state 227 -State 173 +State 175 - 597 alias_list: alias_list single_alias "end of expression" . + 598 alias_list: alias_list single_alias "end of expression" . - $default reduce using rule 597 (alias_list) + $default reduce using rule 598 (alias_list) -State 174 +State 176 - 764 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" $@85 . "begin of code block" $@86 bitfield_alias_bits $@87 "end of code block" + 765 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" $@85 . "begin of code block" $@86 bitfield_alias_bits $@87 "end of code block" - "begin of code block" shift, and go to state 226 + "begin of code block" shift, and go to state 228 -State 175 +State 177 - 754 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" $@77 . "begin of code block" $@78 tuple_alias_type_list $@79 "end of code block" + 755 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" $@77 . "begin of code block" $@78 tuple_alias_type_list $@79 "end of code block" - "begin of code block" shift, and go to state 227 + "begin of code block" shift, and go to state 229 -State 176 +State 178 - 759 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" $@81 . "begin of code block" $@82 variant_alias_type_list $@83 "end of code block" + 760 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" $@81 . "begin of code block" $@82 variant_alias_type_list $@83 "end of code block" - "begin of code block" shift, and go to state 228 + "begin of code block" shift, and go to state 230 -State 177 +State 179 33 reader_character_sequence: reader_character_sequence STRING_CHARACTER . $default reduce using rule 33 (reader_character_sequence) -State 178 +State 180 109 annotation_declaration_basic: annotation_declaration_name '(' annotation_argument_list ')' . $default reduce using rule 109 (annotation_declaration_basic) -State 179 +State 181 127 function_name: "operator" . '!' 128 | "operator" . '~' @@ -4074,338 +4100,338 @@ State 179 184 | "operator" . '?' "as" 185 | "operator" . '?' "as" "name" - "is" shift, and go to state 229 - "as" shift, and go to state 230 - "delete" shift, and go to state 231 - "+=" shift, and go to state 232 - "-=" shift, and go to state 233 - "/=" shift, and go to state 234 - "*=" shift, and go to state 235 - "%=" shift, and go to state 236 - "&=" shift, and go to state 237 - "|=" shift, and go to state 238 - "^=" shift, and go to state 239 - "<<" shift, and go to state 240 - ">>" shift, and go to state 241 - "++" shift, and go to state 242 - "--" shift, and go to state 243 - "<=" shift, and go to state 244 - "<<=" shift, and go to state 245 - ">>=" shift, and go to state 246 - ">=" shift, and go to state 247 - "==" shift, and go to state 248 - "!=" shift, and go to state 249 - "??" shift, and go to state 250 - "?." shift, and go to state 251 - "?[" shift, and go to state 252 - ":=" shift, and go to state 253 - "<<<" shift, and go to state 254 - ">>>" shift, and go to state 255 - "<<<=" shift, and go to state 256 - ">>>=" shift, and go to state 257 - "&&" shift, and go to state 258 - "||" shift, and go to state 259 - "^^" shift, and go to state 260 - "&&=" shift, and go to state 261 - "||=" shift, and go to state 262 - "^^=" shift, and go to state 263 - ".." shift, and go to state 264 - '?' shift, and go to state 265 - '|' shift, and go to state 266 - '^' shift, and go to state 267 - '&' shift, and go to state 268 - '<' shift, and go to state 269 - '>' shift, and go to state 270 - '-' shift, and go to state 271 - '+' shift, and go to state 272 - '*' shift, and go to state 273 - '/' shift, and go to state 274 - '%' shift, and go to state 275 - '~' shift, and go to state 276 - '!' shift, and go to state 277 - '.' shift, and go to state 278 - '[' shift, and go to state 279 + "is" shift, and go to state 231 + "as" shift, and go to state 232 + "delete" shift, and go to state 233 + "+=" shift, and go to state 234 + "-=" shift, and go to state 235 + "/=" shift, and go to state 236 + "*=" shift, and go to state 237 + "%=" shift, and go to state 238 + "&=" shift, and go to state 239 + "|=" shift, and go to state 240 + "^=" shift, and go to state 241 + "<<" shift, and go to state 242 + ">>" shift, and go to state 243 + "++" shift, and go to state 244 + "--" shift, and go to state 245 + "<=" shift, and go to state 246 + "<<=" shift, and go to state 247 + ">>=" shift, and go to state 248 + ">=" shift, and go to state 249 + "==" shift, and go to state 250 + "!=" shift, and go to state 251 + "??" shift, and go to state 252 + "?." shift, and go to state 253 + "?[" shift, and go to state 254 + ":=" shift, and go to state 255 + "<<<" shift, and go to state 256 + ">>>" shift, and go to state 257 + "<<<=" shift, and go to state 258 + ">>>=" shift, and go to state 259 + "&&" shift, and go to state 260 + "||" shift, and go to state 261 + "^^" shift, and go to state 262 + "&&=" shift, and go to state 263 + "||=" shift, and go to state 264 + "^^=" shift, and go to state 265 + ".." shift, and go to state 266 + '?' shift, and go to state 267 + '|' shift, and go to state 268 + '^' shift, and go to state 269 + '&' shift, and go to state 270 + '<' shift, and go to state 271 + '>' shift, and go to state 272 + '-' shift, and go to state 273 + '+' shift, and go to state 274 + '*' shift, and go to state 275 + '/' shift, and go to state 276 + '%' shift, and go to state 277 + '~' shift, and go to state 278 + '!' shift, and go to state 279 + '.' shift, and go to state 280 + '[' shift, and go to state 281 -State 180 +State 182 186 function_name: "bool" . $default reduce using rule 186 (function_name) -State 181 +State 183 187 function_name: "string" . $default reduce using rule 187 (function_name) -State 182 +State 184 188 function_name: "int" . $default reduce using rule 188 (function_name) -State 183 +State 185 189 function_name: "int2" . $default reduce using rule 189 (function_name) -State 184 +State 186 190 function_name: "int3" . $default reduce using rule 190 (function_name) -State 185 +State 187 191 function_name: "int4" . $default reduce using rule 191 (function_name) -State 186 +State 188 192 function_name: "uint" . $default reduce using rule 192 (function_name) -State 187 +State 189 193 function_name: "uint2" . $default reduce using rule 193 (function_name) -State 188 +State 190 194 function_name: "uint3" . $default reduce using rule 194 (function_name) -State 189 +State 191 195 function_name: "uint4" . $default reduce using rule 195 (function_name) -State 190 +State 192 196 function_name: "float" . $default reduce using rule 196 (function_name) -State 191 +State 193 197 function_name: "float2" . $default reduce using rule 197 (function_name) -State 192 +State 194 198 function_name: "float3" . $default reduce using rule 198 (function_name) -State 193 +State 195 199 function_name: "float4" . $default reduce using rule 199 (function_name) -State 194 +State 196 200 function_name: "range" . $default reduce using rule 200 (function_name) -State 195 +State 197 201 function_name: "urange" . $default reduce using rule 201 (function_name) -State 196 +State 198 202 function_name: "range64" . $default reduce using rule 202 (function_name) -State 197 +State 199 203 function_name: "urange64" . $default reduce using rule 203 (function_name) -State 198 +State 200 204 function_name: "int64" . $default reduce using rule 204 (function_name) -State 199 +State 201 205 function_name: "uint64" . $default reduce using rule 205 (function_name) -State 200 +State 202 206 function_name: "double" . $default reduce using rule 206 (function_name) -State 201 +State 203 207 function_name: "int8" . $default reduce using rule 207 (function_name) -State 202 +State 204 208 function_name: "uint8" . $default reduce using rule 208 (function_name) -State 203 +State 205 209 function_name: "int16" . $default reduce using rule 209 (function_name) -State 204 +State 206 210 function_name: "uint16" . $default reduce using rule 210 (function_name) -State 205 +State 207 158 function_name: "++" . "operator" - "operator" shift, and go to state 280 + "operator" shift, and go to state 282 -State 206 +State 208 159 function_name: "--" . "operator" - "operator" shift, and go to state 281 + "operator" shift, and go to state 283 -State 207 +State 209 126 function_name: "name" . $default reduce using rule 126 (function_name) -State 208 +State 210 215 function_declaration_header: function_name . optional_function_argument_list optional_function_type - '(' shift, and go to state 282 + '(' shift, and go to state 284 $default reduce using rule 121 (optional_function_argument_list) - optional_function_argument_list go to state 283 + optional_function_argument_list go to state 285 -State 209 +State 211 217 function_declaration: optional_public_or_private_function $@6 function_declaration_header . expression_block - "begin of code block" shift, and go to state 284 + "begin of code block" shift, and go to state 286 - expression_block go to state 285 + expression_block go to state 287 -State 210 +State 212 - 607 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name "begin of code block" . $@41 enum_list $@42 "end of code block" + 608 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name "begin of code block" . $@41 enum_list $@42 "end of code block" - $default reduce using rule 605 ($@41) + $default reduce using rule 606 ($@41) - $@41 go to state 286 + $@41 go to state 288 -State 211 +State 213 - 610 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' . enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 "end of code block" + 611 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' . enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 "end of code block" - "int" shift, and go to state 287 - "uint" shift, and go to state 288 - "int64" shift, and go to state 289 - "uint64" shift, and go to state 290 - "int8" shift, and go to state 291 - "uint8" shift, and go to state 292 - "int16" shift, and go to state 293 - "uint16" shift, and go to state 294 + "int" shift, and go to state 289 + "uint" shift, and go to state 290 + "int64" shift, and go to state 291 + "uint64" shift, and go to state 292 + "int8" shift, and go to state 293 + "uint8" shift, and go to state 294 + "int16" shift, and go to state 295 + "uint16" shift, and go to state 296 - enum_basic_type_declaration go to state 295 + enum_basic_type_declaration go to state 297 -State 212 +State 214 - 614 optional_sealed: "sealed" . + 615 optional_sealed: "sealed" . - $default reduce using rule 614 (optional_sealed) + $default reduce using rule 615 (optional_sealed) -State 213 +State 215 - 615 structure_name: optional_sealed . "name" optional_structure_parent + 616 structure_name: optional_sealed . "name" optional_structure_parent - "name" shift, and go to state 296 + "name" shift, and go to state 298 -State 214 +State 216 - 625 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@45 structure_name . $@46 optional_struct_variable_declaration_list + 626 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@45 structure_name . $@46 optional_struct_variable_declaration_list - $default reduce using rule 624 ($@46) + $default reduce using rule 625 ($@46) - $@46 go to state 297 + $@46 go to state 299 -State 215 +State 217 - 578 global_variable_declaration_list: global_variable_declaration_list . $@37 optional_field_annotation let_variable_declaration - 584 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list . "end of code block" + 579 global_variable_declaration_list: global_variable_declaration_list . $@37 optional_field_annotation let_variable_declaration + 585 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list . "end of code block" - "end of code block" shift, and go to state 298 + "end of code block" shift, and go to state 300 - $default reduce using rule 577 ($@37) + $default reduce using rule 578 ($@37) - $@37 go to state 299 + $@37 go to state 301 -State 216 +State 218 - 515 optional_field_annotation: "[[" . annotation_argument_list ']' ']' + 516 optional_field_annotation: "[[" . annotation_argument_list ']' ']' "type" shift, and go to state 32 "in" shift, and go to state 33 @@ -4413,10 +4439,10 @@ State 216 annotation_argument_name go to state 35 annotation_argument go to state 36 - annotation_argument_list go to state 300 + annotation_argument_list go to state 302 -State 217 +State 219 103 metadata_argument_list: '@' . annotation_argument @@ -4425,6964 +4451,6939 @@ State 217 "name" shift, and go to state 34 annotation_argument_name go to state 35 - annotation_argument go to state 301 + annotation_argument go to state 303 -State 218 +State 220 104 metadata_argument_list: metadata_argument_list . '@' annotation_argument - 516 optional_field_annotation: metadata_argument_list . + 517 optional_field_annotation: metadata_argument_list . - '@' shift, and go to state 302 + '@' shift, and go to state 304 - $default reduce using rule 516 (optional_field_annotation) + $default reduce using rule 517 (optional_field_annotation) -State 219 +State 221 - 586 global_let: kwd_let optional_shared optional_public_or_private_variable $@38 optional_field_annotation . let_variable_declaration + 587 global_let: kwd_let optional_shared optional_public_or_private_variable $@38 optional_field_annotation . let_variable_declaration - "$i" shift, and go to state 303 - "name" shift, and go to state 304 + "$i" shift, and go to state 305 + "name" shift, and go to state 306 - let_variable_name_with_pos_list go to state 305 - let_variable_declaration go to state 306 + let_variable_name_with_pos_list go to state 307 + let_variable_declaration go to state 308 -State 220 +State 222 25 character_sequence: character_sequence STRING_CHARACTER . $default reduce using rule 25 (character_sequence) -State 221 +State 223 26 character_sequence: character_sequence STRING_CHARACTER_ESC . $default reduce using rule 26 (character_sequence) -State 222 +State 224 27 string_constant: "start of the string" character_sequence "end of the string" . $default reduce using rule 27 (string_constant) -State 223 +State 225 89 annotation_argument_value_list: annotation_argument_value_list ',' . annotation_argument_value - "true" shift, and go to state 163 - "false" shift, and go to state 164 - "integer constant" shift, and go to state 165 - "floating point constant" shift, and go to state 166 - "name" shift, and go to state 167 - "start of the string" shift, and go to state 125 + "true" shift, and go to state 165 + "false" shift, and go to state 166 + "integer constant" shift, and go to state 167 + "floating point constant" shift, and go to state 168 + "name" shift, and go to state 169 + "start of the string" shift, and go to state 127 - string_constant go to state 168 - annotation_argument_value go to state 307 + string_constant go to state 170 + annotation_argument_value go to state 309 -State 224 +State 226 100 annotation_argument: annotation_argument_name '=' '(' annotation_argument_value_list ')' . $default reduce using rule 100 (annotation_argument) -State 225 +State 227 - 595 single_alias: optional_public_or_private_alias "name" $@39 '=' . type_declaration - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 354 - type_declaration go to state 355 + 596 single_alias: optional_public_or_private_alias "name" $@39 '=' . type_declaration + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 356 + type_declaration go to state 357 -State 226 +State 228 - 764 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" $@85 "begin of code block" . $@86 bitfield_alias_bits $@87 "end of code block" + 765 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" $@85 "begin of code block" . $@86 bitfield_alias_bits $@87 "end of code block" - $default reduce using rule 762 ($@86) + $default reduce using rule 763 ($@86) - $@86 go to state 356 + $@86 go to state 358 -State 227 +State 229 - 754 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" $@77 "begin of code block" . $@78 tuple_alias_type_list $@79 "end of code block" + 755 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" $@77 "begin of code block" . $@78 tuple_alias_type_list $@79 "end of code block" - $default reduce using rule 752 ($@78) + $default reduce using rule 753 ($@78) - $@78 go to state 357 + $@78 go to state 359 -State 228 +State 230 - 759 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" $@81 "begin of code block" . $@82 variant_alias_type_list $@83 "end of code block" + 760 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" $@81 "begin of code block" . $@82 variant_alias_type_list $@83 "end of code block" - $default reduce using rule 757 ($@82) + $default reduce using rule 758 ($@82) - $@82 go to state 358 + $@82 go to state 360 -State 229 +State 231 180 function_name: "operator" "is" . 182 | "operator" "is" . "name" - "name" shift, and go to state 359 + "name" shift, and go to state 361 $default reduce using rule 180 (function_name) -State 230 +State 232 181 function_name: "operator" "as" . 183 | "operator" "as" . "name" - "name" shift, and go to state 360 + "name" shift, and go to state 362 $default reduce using rule 181 (function_name) -State 231 +State 233 178 function_name: "operator" "delete" . $default reduce using rule 178 (function_name) -State 232 +State 234 129 function_name: "operator" "+=" . $default reduce using rule 129 (function_name) -State 233 +State 235 130 function_name: "operator" "-=" . $default reduce using rule 130 (function_name) -State 234 +State 236 132 function_name: "operator" "/=" . $default reduce using rule 132 (function_name) -State 235 +State 237 131 function_name: "operator" "*=" . $default reduce using rule 131 (function_name) -State 236 +State 238 133 function_name: "operator" "%=" . $default reduce using rule 133 (function_name) -State 237 +State 239 134 function_name: "operator" "&=" . $default reduce using rule 134 (function_name) -State 238 +State 240 135 function_name: "operator" "|=" . $default reduce using rule 135 (function_name) -State 239 +State 241 136 function_name: "operator" "^=" . $default reduce using rule 136 (function_name) -State 240 +State 242 162 function_name: "operator" "<<" . $default reduce using rule 162 (function_name) -State 241 +State 243 163 function_name: "operator" ">>" . $default reduce using rule 163 (function_name) -State 242 +State 244 160 function_name: "operator" "++" . $default reduce using rule 160 (function_name) -State 243 +State 245 161 function_name: "operator" "--" . $default reduce using rule 161 (function_name) -State 244 +State 246 153 function_name: "operator" "<=" . $default reduce using rule 153 (function_name) -State 245 +State 247 164 function_name: "operator" "<<=" . $default reduce using rule 164 (function_name) -State 246 +State 248 165 function_name: "operator" ">>=" . $default reduce using rule 165 (function_name) -State 247 +State 249 154 function_name: "operator" ">=" . $default reduce using rule 154 (function_name) -State 248 +State 250 151 function_name: "operator" "==" . $default reduce using rule 151 (function_name) -State 249 +State 251 152 function_name: "operator" "!=" . $default reduce using rule 152 (function_name) -State 250 +State 252 179 function_name: "operator" "??" . $default reduce using rule 179 (function_name) -State 251 +State 253 173 function_name: "operator" "?." . 176 | "operator" "?." . "name" - "name" shift, and go to state 361 + "name" shift, and go to state 363 $default reduce using rule 173 (function_name) -State 252 +State 254 171 function_name: "operator" "?[" . ']' - ']' shift, and go to state 362 + ']' shift, and go to state 364 -State 253 +State 255 177 function_name: "operator" ":=" . $default reduce using rule 177 (function_name) -State 254 +State 256 166 function_name: "operator" "<<<" . $default reduce using rule 166 (function_name) -State 255 +State 257 167 function_name: "operator" ">>>" . $default reduce using rule 167 (function_name) -State 256 +State 258 168 function_name: "operator" "<<<=" . $default reduce using rule 168 (function_name) -State 257 +State 259 169 function_name: "operator" ">>>=" . $default reduce using rule 169 (function_name) -State 258 +State 260 140 function_name: "operator" "&&" . $default reduce using rule 140 (function_name) -State 259 +State 261 141 function_name: "operator" "||" . $default reduce using rule 141 (function_name) -State 260 +State 262 142 function_name: "operator" "^^" . $default reduce using rule 142 (function_name) -State 261 +State 263 137 function_name: "operator" "&&=" . $default reduce using rule 137 (function_name) -State 262 +State 264 138 function_name: "operator" "||=" . $default reduce using rule 138 (function_name) -State 263 +State 265 139 function_name: "operator" "^^=" . $default reduce using rule 139 (function_name) -State 264 +State 266 150 function_name: "operator" ".." . $default reduce using rule 150 (function_name) -State 265 +State 267 184 function_name: "operator" '?' . "as" 185 | "operator" '?' . "as" "name" - "as" shift, and go to state 363 + "as" shift, and go to state 365 -State 266 +State 268 156 function_name: "operator" '|' . $default reduce using rule 156 (function_name) -State 267 +State 269 157 function_name: "operator" '^' . $default reduce using rule 157 (function_name) -State 268 +State 270 155 function_name: "operator" '&' . $default reduce using rule 155 (function_name) -State 269 +State 271 148 function_name: "operator" '<' . $default reduce using rule 148 (function_name) -State 270 +State 272 149 function_name: "operator" '>' . $default reduce using rule 149 (function_name) -State 271 +State 273 144 function_name: "operator" '-' . $default reduce using rule 144 (function_name) -State 272 +State 274 143 function_name: "operator" '+' . $default reduce using rule 143 (function_name) -State 273 +State 275 145 function_name: "operator" '*' . $default reduce using rule 145 (function_name) -State 274 +State 276 146 function_name: "operator" '/' . $default reduce using rule 146 (function_name) -State 275 +State 277 147 function_name: "operator" '%' . $default reduce using rule 147 (function_name) -State 276 +State 278 128 function_name: "operator" '~' . $default reduce using rule 128 (function_name) -State 277 +State 279 127 function_name: "operator" '!' . $default reduce using rule 127 (function_name) -State 278 +State 280 172 function_name: "operator" '.' . 174 | "operator" '.' . "name" 175 | "operator" '.' . "name" ":=" - "name" shift, and go to state 364 + "name" shift, and go to state 366 $default reduce using rule 172 (function_name) -State 279 +State 281 170 function_name: "operator" '[' . ']' - ']' shift, and go to state 365 + ']' shift, and go to state 367 -State 280 +State 282 158 function_name: "++" "operator" . $default reduce using rule 158 (function_name) -State 281 +State 283 159 function_name: "--" "operator" . $default reduce using rule 159 (function_name) -State 282 +State 284 122 optional_function_argument_list: '(' . ')' 123 | '(' . function_argument_list ')' - "$a" shift, and go to state 366 - "[[" shift, and go to state 216 - ')' shift, and go to state 367 - '@' shift, and go to state 217 + "$a" shift, and go to state 368 + "[[" shift, and go to state 218 + ')' shift, and go to state 369 + '@' shift, and go to state 219 - $default reduce using rule 514 (optional_field_annotation) + $default reduce using rule 515 (optional_field_annotation) - metadata_argument_list go to state 218 - optional_field_annotation go to state 368 - function_argument_declaration go to state 369 - function_argument_list go to state 370 + metadata_argument_list go to state 220 + optional_field_annotation go to state 370 + function_argument_declaration go to state 371 + function_argument_list go to state 372 -State 283 +State 285 215 function_declaration_header: function_name optional_function_argument_list . optional_function_type - ':' shift, and go to state 371 + ':' shift, and go to state 373 $default reduce using rule 124 (optional_function_type) - optional_function_type go to state 372 + optional_function_type go to state 374 -State 284 +State 286 218 expression_block: "begin of code block" . expressions "end of code block" 219 | "begin of code block" . expressions "end of code block" "finally" "begin of code block" expressions "end of code block" $default reduce using rule 243 (expressions) - expressions go to state 373 + expressions go to state 375 -State 285 +State 287 217 function_declaration: optional_public_or_private_function $@6 function_declaration_header expression_block . $default reduce using rule 217 (function_declaration) -State 286 - - 607 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name "begin of code block" $@41 . enum_list $@42 "end of code block" - - $default reduce using rule 587 (enum_list) - - enum_list go to state 374 - - -State 287 - - 658 enum_basic_type_declaration: "int" . - - $default reduce using rule 658 (enum_basic_type_declaration) - - State 288 - 661 enum_basic_type_declaration: "uint" . + 608 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name "begin of code block" $@41 . enum_list $@42 "end of code block" - $default reduce using rule 661 (enum_basic_type_declaration) + $default reduce using rule 588 (enum_list) + + enum_list go to state 376 State 289 - 664 enum_basic_type_declaration: "int64" . + 659 enum_basic_type_declaration: "int" . - $default reduce using rule 664 (enum_basic_type_declaration) + $default reduce using rule 659 (enum_basic_type_declaration) State 290 - 665 enum_basic_type_declaration: "uint64" . + 662 enum_basic_type_declaration: "uint" . - $default reduce using rule 665 (enum_basic_type_declaration) + $default reduce using rule 662 (enum_basic_type_declaration) State 291 - 659 enum_basic_type_declaration: "int8" . + 665 enum_basic_type_declaration: "int64" . - $default reduce using rule 659 (enum_basic_type_declaration) + $default reduce using rule 665 (enum_basic_type_declaration) State 292 - 662 enum_basic_type_declaration: "uint8" . + 666 enum_basic_type_declaration: "uint64" . - $default reduce using rule 662 (enum_basic_type_declaration) + $default reduce using rule 666 (enum_basic_type_declaration) State 293 - 660 enum_basic_type_declaration: "int16" . + 660 enum_basic_type_declaration: "int8" . $default reduce using rule 660 (enum_basic_type_declaration) State 294 - 663 enum_basic_type_declaration: "uint16" . + 663 enum_basic_type_declaration: "uint8" . $default reduce using rule 663 (enum_basic_type_declaration) State 295 - 610 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration . "begin of code block" $@43 enum_list $@44 "end of code block" + 661 enum_basic_type_declaration: "int16" . - "begin of code block" shift, and go to state 375 + $default reduce using rule 661 (enum_basic_type_declaration) State 296 - 615 structure_name: optional_sealed "name" . optional_structure_parent - - ':' shift, and go to state 376 - - $default reduce using rule 611 (optional_structure_parent) + 664 enum_basic_type_declaration: "uint16" . - optional_structure_parent go to state 377 + $default reduce using rule 664 (enum_basic_type_declaration) State 297 - 625 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@45 structure_name $@46 . optional_struct_variable_declaration_list + 611 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration . "begin of code block" $@43 enum_list $@44 "end of code block" - "begin of code block" shift, and go to state 378 + "begin of code block" shift, and go to state 377 - $default reduce using rule 621 (optional_struct_variable_declaration_list) - optional_struct_variable_declaration_list go to state 379 +State 298 + 616 structure_name: optional_sealed "name" . optional_structure_parent -State 298 + ':' shift, and go to state 378 - 584 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" . + $default reduce using rule 612 (optional_structure_parent) - $default reduce using rule 584 (global_let) + optional_structure_parent go to state 379 State 299 - 578 global_variable_declaration_list: global_variable_declaration_list $@37 . optional_field_annotation let_variable_declaration + 626 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@45 structure_name $@46 . optional_struct_variable_declaration_list - "[[" shift, and go to state 216 - '@' shift, and go to state 217 + "begin of code block" shift, and go to state 380 - $default reduce using rule 514 (optional_field_annotation) + $default reduce using rule 622 (optional_struct_variable_declaration_list) - metadata_argument_list go to state 218 - optional_field_annotation go to state 380 + optional_struct_variable_declaration_list go to state 381 State 300 - 102 annotation_argument_list: annotation_argument_list . ',' annotation_argument - 515 optional_field_annotation: "[[" annotation_argument_list . ']' ']' + 585 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" . - ',' shift, and go to state 79 - ']' shift, and go to state 381 + $default reduce using rule 585 (global_let) State 301 - 103 metadata_argument_list: '@' annotation_argument . + 579 global_variable_declaration_list: global_variable_declaration_list $@37 . optional_field_annotation let_variable_declaration - $default reduce using rule 103 (metadata_argument_list) + "[[" shift, and go to state 218 + '@' shift, and go to state 219 + $default reduce using rule 515 (optional_field_annotation) -State 302 + metadata_argument_list go to state 220 + optional_field_annotation go to state 382 - 104 metadata_argument_list: metadata_argument_list '@' . annotation_argument - "type" shift, and go to state 32 - "in" shift, and go to state 33 - "name" shift, and go to state 34 +State 302 - annotation_argument_name go to state 35 - annotation_argument go to state 382 + 102 annotation_argument_list: annotation_argument_list . ',' annotation_argument + 516 optional_field_annotation: "[[" annotation_argument_list . ']' ']' + + ',' shift, and go to state 80 + ']' shift, and go to state 383 State 303 - 567 let_variable_name_with_pos_list: "$i" . '(' expr ')' + 103 metadata_argument_list: '@' annotation_argument . - '(' shift, and go to state 383 + $default reduce using rule 103 (metadata_argument_list) State 304 - 566 let_variable_name_with_pos_list: "name" . - 568 | "name" . "aka" "name" + 104 metadata_argument_list: metadata_argument_list '@' . annotation_argument - "aka" shift, and go to state 384 + "type" shift, and go to state 32 + "in" shift, and go to state 33 + "name" shift, and go to state 34 - $default reduce using rule 566 (let_variable_name_with_pos_list) + annotation_argument_name go to state 35 + annotation_argument go to state 384 State 305 - 569 let_variable_name_with_pos_list: let_variable_name_with_pos_list . ',' "name" - 570 | let_variable_name_with_pos_list . ',' "name" "aka" "name" - 571 let_variable_declaration: let_variable_name_with_pos_list . ':' type_declaration_no_options "end of expression" - 572 | let_variable_name_with_pos_list . ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 573 | let_variable_name_with_pos_list . ':' type_declaration_no_options copy_or_move_or_clone expr_pipe - 574 | let_variable_name_with_pos_list . optional_ref copy_or_move_or_clone expr "end of expression" - 575 | let_variable_name_with_pos_list . optional_ref copy_or_move_or_clone expr_pipe - - ',' shift, and go to state 385 - ':' shift, and go to state 386 - '&' shift, and go to state 387 + 568 let_variable_name_with_pos_list: "$i" . '(' expr ')' - $default reduce using rule 564 (optional_ref) - - optional_ref go to state 388 + '(' shift, and go to state 385 State 306 - 586 global_let: kwd_let optional_shared optional_public_or_private_variable $@38 optional_field_annotation let_variable_declaration . + 567 let_variable_name_with_pos_list: "name" . + 569 | "name" . "aka" "name" + + "aka" shift, and go to state 386 - $default reduce using rule 586 (global_let) + $default reduce using rule 567 (let_variable_name_with_pos_list) State 307 - 89 annotation_argument_value_list: annotation_argument_value_list ',' annotation_argument_value . + 570 let_variable_name_with_pos_list: let_variable_name_with_pos_list . ',' "name" + 571 | let_variable_name_with_pos_list . ',' "name" "aka" "name" + 572 let_variable_declaration: let_variable_name_with_pos_list . ':' type_declaration_no_options "end of expression" + 573 | let_variable_name_with_pos_list . ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 574 | let_variable_name_with_pos_list . ':' type_declaration_no_options copy_or_move_or_clone expr_pipe + 575 | let_variable_name_with_pos_list . optional_ref copy_or_move_or_clone expr "end of expression" + 576 | let_variable_name_with_pos_list . optional_ref copy_or_move_or_clone expr_pipe - $default reduce using rule 89 (annotation_argument_value_list) + ',' shift, and go to state 387 + ':' shift, and go to state 388 + '&' shift, and go to state 389 + + $default reduce using rule 565 (optional_ref) + + optional_ref go to state 390 State 308 - 690 type_declaration_no_options: "type" . '<' $@49 type_declaration '>' $@50 + 587 global_let: kwd_let optional_shared optional_public_or_private_variable $@38 optional_field_annotation let_variable_declaration . - '<' shift, and go to state 389 + $default reduce using rule 587 (global_let) State 309 - 713 type_declaration_no_options: "array" . '<' $@54 type_declaration '>' $@55 + 89 annotation_argument_value_list: annotation_argument_value_list ',' annotation_argument_value . - '<' shift, and go to state 390 + $default reduce using rule 89 (annotation_argument_value_list) State 310 - 716 type_declaration_no_options: "table" . '<' $@56 table_type_pair '>' $@57 + 691 type_declaration_no_options: "type" . '<' $@49 type_declaration '>' $@50 '<' shift, and go to state 391 State 311 - 691 type_declaration_no_options: "typedecl" . '(' expr ')' + 714 type_declaration_no_options: "array" . '<' $@54 type_declaration '>' $@55 - '(' shift, and go to state 392 + '<' shift, and go to state 392 State 312 - 719 type_declaration_no_options: "iterator" . '<' $@58 type_declaration '>' $@59 + 717 type_declaration_no_options: "table" . '<' $@56 table_type_pair '>' $@57 '<' shift, and go to state 393 State 313 - 709 type_declaration_no_options: "smart_ptr" . '<' $@52 type_declaration '>' $@53 + 692 type_declaration_no_options: "typedecl" . '(' expr ')' - '<' shift, and go to state 394 + '(' shift, and go to state 394 State 314 - 631 basic_type_declaration: "bool" . + 720 type_declaration_no_options: "iterator" . '<' $@58 type_declaration '>' $@59 - $default reduce using rule 631 (basic_type_declaration) + '<' shift, and go to state 395 State 315 - 651 basic_type_declaration: "void" . + 710 type_declaration_no_options: "smart_ptr" . '<' $@52 type_declaration '>' $@53 - $default reduce using rule 651 (basic_type_declaration) + '<' shift, and go to state 396 State 316 - 632 basic_type_declaration: "string" . + 632 basic_type_declaration: "bool" . $default reduce using rule 632 (basic_type_declaration) State 317 - 667 auto_type_declaration: "auto" . - 668 | "auto" . '(' "name" ')' + 652 basic_type_declaration: "void" . - '(' shift, and go to state 395 - - '(' [reduce using rule 667 (auto_type_declaration)] - $default reduce using rule 667 (auto_type_declaration) + $default reduce using rule 652 (basic_type_declaration) State 318 - 633 basic_type_declaration: "int" . + 633 basic_type_declaration: "string" . $default reduce using rule 633 (basic_type_declaration) State 319 - 637 basic_type_declaration: "int2" . + 668 auto_type_declaration: "auto" . + 669 | "auto" . '(' "name" ')' - $default reduce using rule 637 (basic_type_declaration) + '(' shift, and go to state 397 + + '(' [reduce using rule 668 (auto_type_declaration)] + $default reduce using rule 668 (auto_type_declaration) State 320 - 638 basic_type_declaration: "int3" . + 634 basic_type_declaration: "int" . - $default reduce using rule 638 (basic_type_declaration) + $default reduce using rule 634 (basic_type_declaration) State 321 - 639 basic_type_declaration: "int4" . + 638 basic_type_declaration: "int2" . - $default reduce using rule 639 (basic_type_declaration) + $default reduce using rule 638 (basic_type_declaration) State 322 - 640 basic_type_declaration: "uint" . + 639 basic_type_declaration: "int3" . - $default reduce using rule 640 (basic_type_declaration) + $default reduce using rule 639 (basic_type_declaration) State 323 - 657 basic_type_declaration: "bitfield" . - 677 bitfield_type_declaration: "bitfield" . '<' $@47 bitfield_bits '>' $@48 - - '<' shift, and go to state 396 + 640 basic_type_declaration: "int4" . - $default reduce using rule 657 (basic_type_declaration) + $default reduce using rule 640 (basic_type_declaration) State 324 - 644 basic_type_declaration: "uint2" . + 641 basic_type_declaration: "uint" . - $default reduce using rule 644 (basic_type_declaration) + $default reduce using rule 641 (basic_type_declaration) State 325 - 645 basic_type_declaration: "uint3" . + 658 basic_type_declaration: "bitfield" . + 678 bitfield_type_declaration: "bitfield" . '<' $@47 bitfield_bits '>' $@48 - $default reduce using rule 645 (basic_type_declaration) + '<' shift, and go to state 398 + + $default reduce using rule 658 (basic_type_declaration) State 326 - 646 basic_type_declaration: "uint4" . + 645 basic_type_declaration: "uint2" . - $default reduce using rule 646 (basic_type_declaration) + $default reduce using rule 645 (basic_type_declaration) State 327 - 647 basic_type_declaration: "float" . + 646 basic_type_declaration: "uint3" . - $default reduce using rule 647 (basic_type_declaration) + $default reduce using rule 646 (basic_type_declaration) State 328 - 648 basic_type_declaration: "float2" . + 647 basic_type_declaration: "uint4" . - $default reduce using rule 648 (basic_type_declaration) + $default reduce using rule 647 (basic_type_declaration) State 329 - 649 basic_type_declaration: "float3" . + 648 basic_type_declaration: "float" . - $default reduce using rule 649 (basic_type_declaration) + $default reduce using rule 648 (basic_type_declaration) State 330 - 650 basic_type_declaration: "float4" . + 649 basic_type_declaration: "float2" . - $default reduce using rule 650 (basic_type_declaration) + $default reduce using rule 649 (basic_type_declaration) State 331 - 652 basic_type_declaration: "range" . + 650 basic_type_declaration: "float3" . - $default reduce using rule 652 (basic_type_declaration) + $default reduce using rule 650 (basic_type_declaration) State 332 - 653 basic_type_declaration: "urange" . + 651 basic_type_declaration: "float4" . - $default reduce using rule 653 (basic_type_declaration) + $default reduce using rule 651 (basic_type_declaration) State 333 - 654 basic_type_declaration: "range64" . + 653 basic_type_declaration: "range" . - $default reduce using rule 654 (basic_type_declaration) + $default reduce using rule 653 (basic_type_declaration) State 334 - 655 basic_type_declaration: "urange64" . + 654 basic_type_declaration: "urange" . - $default reduce using rule 655 (basic_type_declaration) + $default reduce using rule 654 (basic_type_declaration) State 335 - 720 type_declaration_no_options: "block" . - 723 | "block" . '<' $@60 type_declaration '>' $@61 - 726 | "block" . '<' $@62 optional_function_argument_list optional_function_type '>' $@63 + 655 basic_type_declaration: "range64" . - '<' shift, and go to state 397 - - $default reduce using rule 720 (type_declaration_no_options) + $default reduce using rule 655 (basic_type_declaration) State 336 - 636 basic_type_declaration: "int64" . + 656 basic_type_declaration: "urange64" . - $default reduce using rule 636 (basic_type_declaration) + $default reduce using rule 656 (basic_type_declaration) State 337 - 643 basic_type_declaration: "uint64" . + 721 type_declaration_no_options: "block" . + 724 | "block" . '<' $@60 type_declaration '>' $@61 + 727 | "block" . '<' $@62 optional_function_argument_list optional_function_type '>' $@63 - $default reduce using rule 643 (basic_type_declaration) + '<' shift, and go to state 399 + + $default reduce using rule 721 (type_declaration_no_options) State 338 - 656 basic_type_declaration: "double" . + 637 basic_type_declaration: "int64" . - $default reduce using rule 656 (basic_type_declaration) + $default reduce using rule 637 (basic_type_declaration) State 339 - 727 type_declaration_no_options: "function" . - 730 | "function" . '<' $@64 type_declaration '>' $@65 - 733 | "function" . '<' $@66 optional_function_argument_list optional_function_type '>' $@67 - - '<' shift, and go to state 398 + 644 basic_type_declaration: "uint64" . - $default reduce using rule 727 (type_declaration_no_options) + $default reduce using rule 644 (basic_type_declaration) State 340 - 734 type_declaration_no_options: "lambda" . - 737 | "lambda" . '<' $@68 type_declaration '>' $@69 - 740 | "lambda" . '<' $@70 optional_function_argument_list optional_function_type '>' $@71 - - '<' shift, and go to state 399 + 657 basic_type_declaration: "double" . - $default reduce using rule 734 (type_declaration_no_options) + $default reduce using rule 657 (basic_type_declaration) State 341 - 634 basic_type_declaration: "int8" . + 728 type_declaration_no_options: "function" . + 731 | "function" . '<' $@64 type_declaration '>' $@65 + 734 | "function" . '<' $@66 optional_function_argument_list optional_function_type '>' $@67 - $default reduce using rule 634 (basic_type_declaration) + '<' shift, and go to state 400 + + $default reduce using rule 728 (type_declaration_no_options) State 342 - 641 basic_type_declaration: "uint8" . + 735 type_declaration_no_options: "lambda" . + 738 | "lambda" . '<' $@68 type_declaration '>' $@69 + 741 | "lambda" . '<' $@70 optional_function_argument_list optional_function_type '>' $@71 - $default reduce using rule 641 (basic_type_declaration) + '<' shift, and go to state 401 + + $default reduce using rule 735 (type_declaration_no_options) State 343 - 635 basic_type_declaration: "int16" . + 635 basic_type_declaration: "int8" . $default reduce using rule 635 (basic_type_declaration) State 344 - 642 basic_type_declaration: "uint16" . + 642 basic_type_declaration: "uint8" . $default reduce using rule 642 (basic_type_declaration) State 345 - 743 type_declaration_no_options: "tuple" . '<' $@72 tuple_type_list '>' $@73 + 636 basic_type_declaration: "int16" . - '<' shift, and go to state 400 + $default reduce using rule 636 (basic_type_declaration) State 346 - 746 type_declaration_no_options: "variant" . '<' $@74 variant_type_list '>' $@75 + 643 basic_type_declaration: "uint16" . - '<' shift, and go to state 401 + $default reduce using rule 643 (basic_type_declaration) State 347 - 669 auto_type_declaration: "$t" . '(' expr ')' + 744 type_declaration_no_options: "tuple" . '<' $@72 tuple_type_list '>' $@73 - '(' shift, and go to state 402 + '<' shift, and go to state 402 State 348 - 692 type_declaration_no_options: '$' . name_in_namespace '(' optional_expr_list ')' - 694 | '$' . name_in_namespace '<' $@51 type_declaration_no_options_list '>' '(' optional_expr_list ')' + 747 type_declaration_no_options: "variant" . '<' $@74 variant_type_list '>' $@75 - "name" shift, and go to state 58 - - name_in_namespace go to state 403 + '<' shift, and go to state 403 State 349 - 666 structure_type_declaration: name_in_namespace . + 670 auto_type_declaration: "$t" . '(' expr ')' - $default reduce using rule 666 (structure_type_declaration) + '(' shift, and go to state 404 State 350 - 682 type_declaration_no_options: basic_type_declaration . + 693 type_declaration_no_options: '$' . name_in_namespace '(' optional_expr_list ')' + 695 | '$' . name_in_namespace '<' $@51 type_declaration_no_options_list '>' '(' optional_expr_list ')' + + "::" shift, and go to state 58 + "name" shift, and go to state 59 - $default reduce using rule 682 (type_declaration_no_options) + name_in_namespace go to state 405 State 351 - 685 type_declaration_no_options: structure_type_declaration . + 667 structure_type_declaration: name_in_namespace . - $default reduce using rule 685 (type_declaration_no_options) + $default reduce using rule 667 (structure_type_declaration) State 352 - 683 type_declaration_no_options: auto_type_declaration . + 683 type_declaration_no_options: basic_type_declaration . $default reduce using rule 683 (type_declaration_no_options) State 353 - 684 type_declaration_no_options: bitfield_type_declaration . + 686 type_declaration_no_options: structure_type_declaration . - $default reduce using rule 684 (type_declaration_no_options) + $default reduce using rule 686 (type_declaration_no_options) State 354 - 686 type_declaration_no_options: type_declaration_no_options . dim_list - 687 | type_declaration_no_options . '[' ']' - 695 | type_declaration_no_options . '-' '[' ']' - 696 | type_declaration_no_options . "explicit" - 697 | type_declaration_no_options . "const" - 698 | type_declaration_no_options . '-' "const" - 699 | type_declaration_no_options . '&' - 700 | type_declaration_no_options . '-' '&' - 701 | type_declaration_no_options . '#' - 702 | type_declaration_no_options . "implicit" - 703 | type_declaration_no_options . '-' '#' - 704 | type_declaration_no_options . "==" "const" - 705 | type_declaration_no_options . "==" '&' - 706 | type_declaration_no_options . '?' - 710 | type_declaration_no_options . "??" - 747 type_declaration: type_declaration_no_options . - - "const" shift, and go to state 404 - "implicit" shift, and go to state 405 - "explicit" shift, and go to state 406 - "==" shift, and go to state 407 - "??" shift, and go to state 408 - '?' shift, and go to state 409 - '&' shift, and go to state 410 - '-' shift, and go to state 411 - '[' shift, and go to state 412 - '#' shift, and go to state 413 - - $default reduce using rule 747 (type_declaration) - - dim_list go to state 414 + 684 type_declaration_no_options: auto_type_declaration . + + $default reduce using rule 684 (type_declaration_no_options) State 355 - 595 single_alias: optional_public_or_private_alias "name" $@39 '=' type_declaration . - 748 type_declaration: type_declaration . '|' type_declaration_no_options - 749 | type_declaration . '|' '#' - - '|' shift, and go to state 415 + 685 type_declaration_no_options: bitfield_type_declaration . - $default reduce using rule 595 (single_alias) + $default reduce using rule 685 (type_declaration_no_options) State 356 - 764 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" $@85 "begin of code block" $@86 . bitfield_alias_bits $@87 "end of code block" + 687 type_declaration_no_options: type_declaration_no_options . dim_list + 688 | type_declaration_no_options . '[' ']' + 696 | type_declaration_no_options . '-' '[' ']' + 697 | type_declaration_no_options . "explicit" + 698 | type_declaration_no_options . "const" + 699 | type_declaration_no_options . '-' "const" + 700 | type_declaration_no_options . '&' + 701 | type_declaration_no_options . '-' '&' + 702 | type_declaration_no_options . '#' + 703 | type_declaration_no_options . "implicit" + 704 | type_declaration_no_options . '-' '#' + 705 | type_declaration_no_options . "==" "const" + 706 | type_declaration_no_options . "==" '&' + 707 | type_declaration_no_options . '?' + 711 | type_declaration_no_options . "??" + 748 type_declaration: type_declaration_no_options . + + "const" shift, and go to state 406 + "implicit" shift, and go to state 407 + "explicit" shift, and go to state 408 + "==" shift, and go to state 409 + "??" shift, and go to state 410 + '?' shift, and go to state 411 + '&' shift, and go to state 412 + '-' shift, and go to state 413 + '[' shift, and go to state 414 + '#' shift, and go to state 415 - $default reduce using rule 672 (bitfield_alias_bits) + $default reduce using rule 748 (type_declaration) - bitfield_alias_bits go to state 416 + dim_list go to state 416 State 357 - 754 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" $@77 "begin of code block" $@78 . tuple_alias_type_list $@79 "end of code block" + 596 single_alias: optional_public_or_private_alias "name" $@39 '=' type_declaration . + 749 type_declaration: type_declaration . '|' type_declaration_no_options + 750 | type_declaration . '|' '#' - $default reduce using rule 544 (tuple_alias_type_list) + '|' shift, and go to state 417 - tuple_alias_type_list go to state 417 + $default reduce using rule 596 (single_alias) State 358 - 759 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" $@81 "begin of code block" $@82 . variant_alias_type_list $@83 "end of code block" + 765 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" $@85 "begin of code block" $@86 . bitfield_alias_bits $@87 "end of code block" - $default reduce using rule 550 (variant_alias_type_list) + $default reduce using rule 673 (bitfield_alias_bits) - variant_alias_type_list go to state 418 + bitfield_alias_bits go to state 418 State 359 + 755 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" $@77 "begin of code block" $@78 . tuple_alias_type_list $@79 "end of code block" + + $default reduce using rule 545 (tuple_alias_type_list) + + tuple_alias_type_list go to state 419 + + +State 360 + + 760 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" $@81 "begin of code block" $@82 . variant_alias_type_list $@83 "end of code block" + + $default reduce using rule 551 (variant_alias_type_list) + + variant_alias_type_list go to state 420 + + +State 361 + 182 function_name: "operator" "is" "name" . $default reduce using rule 182 (function_name) -State 360 +State 362 183 function_name: "operator" "as" "name" . $default reduce using rule 183 (function_name) -State 361 +State 363 176 function_name: "operator" "?." "name" . $default reduce using rule 176 (function_name) -State 362 +State 364 171 function_name: "operator" "?[" ']' . $default reduce using rule 171 (function_name) -State 363 +State 365 184 function_name: "operator" '?' "as" . 185 | "operator" '?' "as" . "name" - "name" shift, and go to state 419 + "name" shift, and go to state 421 $default reduce using rule 184 (function_name) -State 364 +State 366 174 function_name: "operator" '.' "name" . 175 | "operator" '.' "name" . ":=" - ":=" shift, and go to state 420 + ":=" shift, and go to state 422 $default reduce using rule 174 (function_name) -State 365 +State 367 170 function_name: "operator" '[' ']' . $default reduce using rule 170 (function_name) -State 366 +State 368 - 537 function_argument_declaration: "$a" . '(' expr ')' + 538 function_argument_declaration: "$a" . '(' expr ')' - '(' shift, and go to state 421 + '(' shift, and go to state 423 -State 367 +State 369 122 optional_function_argument_list: '(' ')' . $default reduce using rule 122 (optional_function_argument_list) -State 368 +State 370 - 536 function_argument_declaration: optional_field_annotation . kwd_let_var_or_nothing variable_declaration + 537 function_argument_declaration: optional_field_annotation . kwd_let_var_or_nothing variable_declaration - "let" shift, and go to state 422 - "var" shift, and go to state 423 + "let" shift, and go to state 424 + "var" shift, and go to state 425 - $default reduce using rule 293 (kwd_let_var_or_nothing) + $default reduce using rule 294 (kwd_let_var_or_nothing) - kwd_let_var_or_nothing go to state 424 + kwd_let_var_or_nothing go to state 426 -State 369 +State 371 - 538 function_argument_list: function_argument_declaration . + 539 function_argument_list: function_argument_declaration . - $default reduce using rule 538 (function_argument_list) + $default reduce using rule 539 (function_argument_list) -State 370 +State 372 123 optional_function_argument_list: '(' function_argument_list . ')' - 539 function_argument_list: function_argument_list . "end of expression" function_argument_declaration + 540 function_argument_list: function_argument_list . "end of expression" function_argument_declaration - "end of expression" shift, and go to state 425 - ')' shift, and go to state 426 + "end of expression" shift, and go to state 427 + ')' shift, and go to state 428 -State 371 +State 373 125 optional_function_type: ':' . type_declaration - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 354 - type_declaration go to state 427 + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 356 + type_declaration go to state 429 -State 372 +State 374 215 function_declaration_header: function_name optional_function_argument_list optional_function_type . $default reduce using rule 215 (function_declaration_header) -State 373 +State 375 218 expression_block: "begin of code block" expressions . "end of code block" 219 | "begin of code block" expressions . "end of code block" "finally" "begin of code block" expressions "end of code block" 244 expressions: expressions . expression_any 245 | expressions . error - error shift, and go to state 428 - "struct" shift, and go to state 429 - "class" shift, and go to state 430 + error shift, and go to state 430 + "struct" shift, and go to state 431 + "class" shift, and go to state 432 "let" shift, and go to state 3 - "while" shift, and go to state 431 - "if" shift, and go to state 432 - "static_if" shift, and go to state 433 - "for" shift, and go to state 434 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "return" shift, and go to state 441 - "null" shift, and go to state 442 - "break" shift, and go to state 443 - "try" shift, and go to state 444 - "table" shift, and go to state 445 - "delete" shift, and go to state 446 - "deref" shift, and go to state 447 - "with" shift, and go to state 448 - "assume" shift, and go to state 449 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 + "while" shift, and go to state 433 + "if" shift, and go to state 434 + "static_if" shift, and go to state 435 + "for" shift, and go to state 436 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "return" shift, and go to state 443 + "null" shift, and go to state 444 + "break" shift, and go to state 445 + "try" shift, and go to state 446 + "table" shift, and go to state 447 + "delete" shift, and go to state 448 + "deref" shift, and go to state 449 + "with" shift, and go to state 450 + "assume" shift, and go to state 451 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 "var" shift, and go to state 8 - "addr" shift, and go to state 452 - "continue" shift, and go to state 453 - "pass" shift, and go to state 454 - "reinterpret" shift, and go to state 455 - "label" shift, and go to state 456 - "goto" shift, and go to state 457 - "unsafe" shift, and go to state 458 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "yield" shift, and go to state 465 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$ <|" shift, and go to state 468 - "@ <|" shift, and go to state 469 - "@@ <|" shift, and go to state 470 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 488 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - "end of code block" shift, and go to state 492 - "end of expression" shift, and go to state 493 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + "addr" shift, and go to state 454 + "continue" shift, and go to state 455 + "pass" shift, and go to state 456 + "reinterpret" shift, and go to state 457 + "label" shift, and go to state 458 + "goto" shift, and go to state 459 + "unsafe" shift, and go to state 460 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "yield" shift, and go to state 467 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "$ <|" shift, and go to state 470 + "@ <|" shift, and go to state 471 + "@@ <|" shift, and go to state 472 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 490 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + "end of code block" shift, and go to state 494 + "end of expression" shift, and go to state 495 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_label go to state 505 - expression_goto go to state 506 - if_or_static_if go to state 507 - expression_if_one_liner go to state 508 - expression_if_then_else go to state 509 - expression_for_loop go to state 510 - expression_unsafe go to state 511 - expression_while_loop go to state 512 - expression_with go to state 513 - expression_with_alias go to state 514 - expr_call_pipe go to state 515 - expression_any go to state 516 - expr_keyword go to state 517 - expression_keyword go to state 518 - expr_pipe go to state 519 - name_in_namespace go to state 520 - expression_delete go to state 521 - expr_new go to state 522 - expression_break go to state 523 - expression_continue go to state 524 - expression_return_no_pipe go to state 525 - expression_return go to state 526 - expression_yield_no_pipe go to state 527 - expression_yield go to state 528 - expression_try_catch go to state 529 - kwd_let go to state 530 - expression_let go to state 531 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_assign go to state 538 - expr_assign_pipe go to state 539 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 545 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 - - -State 374 - - 588 enum_list: enum_list . "end of expression" - 589 | enum_list . "name" "end of expression" - 590 | enum_list . "name" '=' expr "end of expression" - 607 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name "begin of code block" $@41 enum_list . $@42 "end of code block" - - "name" shift, and go to state 554 - "end of expression" shift, and go to state 555 - - $default reduce using rule 606 ($@42) - - $@42 go to state 556 - - -State 375 - - 610 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" . $@43 enum_list $@44 "end of code block" - - $default reduce using rule 608 ($@43) - - $@43 go to state 557 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_label go to state 507 + expression_goto go to state 508 + if_or_static_if go to state 509 + expression_if_one_liner go to state 510 + expression_if_then_else go to state 511 + expression_for_loop go to state 512 + expression_unsafe go to state 513 + expression_while_loop go to state 514 + expression_with go to state 515 + expression_with_alias go to state 516 + expr_call_pipe go to state 517 + expression_any go to state 518 + expr_keyword go to state 519 + expression_keyword go to state 520 + expr_pipe go to state 521 + name_in_namespace go to state 522 + expression_delete go to state 523 + expr_new go to state 524 + expression_break go to state 525 + expression_continue go to state 526 + expression_return_no_pipe go to state 527 + expression_return go to state 528 + expression_yield_no_pipe go to state 529 + expression_yield go to state 530 + expression_try_catch go to state 531 + kwd_let go to state 532 + expression_let go to state 533 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_assign go to state 540 + expr_assign_pipe go to state 541 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 547 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 376 - 612 optional_structure_parent: ':' . name_in_namespace + 589 enum_list: enum_list . "end of expression" + 590 | enum_list . "name" "end of expression" + 591 | enum_list . "name" '=' expr "end of expression" + 608 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name "begin of code block" $@41 enum_list . $@42 "end of code block" - "name" shift, and go to state 58 + "name" shift, and go to state 556 + "end of expression" shift, and go to state 557 - name_in_namespace go to state 558 + $default reduce using rule 607 ($@42) + + $@42 go to state 558 State 377 - 615 structure_name: optional_sealed "name" optional_structure_parent . + 611 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" . $@43 enum_list $@44 "end of code block" + + $default reduce using rule 609 ($@43) - $default reduce using rule 615 (structure_name) + $@43 go to state 559 State 378 - 622 optional_struct_variable_declaration_list: "begin of code block" . struct_variable_declaration_list "end of code block" + 613 optional_structure_parent: ':' . name_in_namespace - $default reduce using rule 528 (struct_variable_declaration_list) + "::" shift, and go to state 58 + "name" shift, and go to state 59 - struct_variable_declaration_list go to state 559 + name_in_namespace go to state 560 State 379 - 625 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@45 structure_name $@46 optional_struct_variable_declaration_list . + 616 structure_name: optional_sealed "name" optional_structure_parent . - $default reduce using rule 625 (structure_declaration) + $default reduce using rule 616 (structure_name) State 380 - 578 global_variable_declaration_list: global_variable_declaration_list $@37 optional_field_annotation . let_variable_declaration + 623 optional_struct_variable_declaration_list: "begin of code block" . struct_variable_declaration_list "end of code block" - "$i" shift, and go to state 303 - "name" shift, and go to state 304 + $default reduce using rule 529 (struct_variable_declaration_list) - let_variable_name_with_pos_list go to state 305 - let_variable_declaration go to state 560 + struct_variable_declaration_list go to state 561 State 381 - 515 optional_field_annotation: "[[" annotation_argument_list ']' . ']' + 626 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@45 structure_name $@46 optional_struct_variable_declaration_list . - ']' shift, and go to state 561 + $default reduce using rule 626 (structure_declaration) State 382 - 104 metadata_argument_list: metadata_argument_list '@' annotation_argument . + 579 global_variable_declaration_list: global_variable_declaration_list $@37 optional_field_annotation . let_variable_declaration - $default reduce using rule 104 (metadata_argument_list) + "$i" shift, and go to state 305 + "name" shift, and go to state 306 + + let_variable_name_with_pos_list go to state 307 + let_variable_declaration go to state 562 State 383 - 567 let_variable_name_with_pos_list: "$i" '(' . expr ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 565 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 516 optional_field_annotation: "[[" annotation_argument_list ']' . ']' + + ']' shift, and go to state 563 State 384 - 568 let_variable_name_with_pos_list: "name" "aka" . "name" + 104 metadata_argument_list: metadata_argument_list '@' annotation_argument . - "name" shift, and go to state 566 + $default reduce using rule 104 (metadata_argument_list) State 385 - 569 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' . "name" - 570 | let_variable_name_with_pos_list ',' . "name" "aka" "name" - - "name" shift, and go to state 567 + 568 let_variable_name_with_pos_list: "$i" '(' . expr ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 567 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 386 - 571 let_variable_declaration: let_variable_name_with_pos_list ':' . type_declaration_no_options "end of expression" - 572 | let_variable_name_with_pos_list ':' . type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 573 | let_variable_name_with_pos_list ':' . type_declaration_no_options copy_or_move_or_clone expr_pipe - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 568 + 569 let_variable_name_with_pos_list: "name" "aka" . "name" + + "name" shift, and go to state 568 State 387 - 565 optional_ref: '&' . + 570 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' . "name" + 571 | let_variable_name_with_pos_list ',' . "name" "aka" "name" - $default reduce using rule 565 (optional_ref) + "name" shift, and go to state 569 State 388 - 574 let_variable_declaration: let_variable_name_with_pos_list optional_ref . copy_or_move_or_clone expr "end of expression" - 575 | let_variable_name_with_pos_list optional_ref . copy_or_move_or_clone expr_pipe - - "<-" shift, and go to state 569 - ":=" shift, and go to state 570 - '=' shift, and go to state 571 - - copy_or_move_or_clone go to state 572 + 572 let_variable_declaration: let_variable_name_with_pos_list ':' . type_declaration_no_options "end of expression" + 573 | let_variable_name_with_pos_list ':' . type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 574 | let_variable_name_with_pos_list ':' . type_declaration_no_options copy_or_move_or_clone expr_pipe + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 570 State 389 - 690 type_declaration_no_options: "type" '<' . $@49 type_declaration '>' $@50 - - $default reduce using rule 688 ($@49) + 566 optional_ref: '&' . - $@49 go to state 573 + $default reduce using rule 566 (optional_ref) State 390 - 713 type_declaration_no_options: "array" '<' . $@54 type_declaration '>' $@55 + 575 let_variable_declaration: let_variable_name_with_pos_list optional_ref . copy_or_move_or_clone expr "end of expression" + 576 | let_variable_name_with_pos_list optional_ref . copy_or_move_or_clone expr_pipe - $default reduce using rule 711 ($@54) + "<-" shift, and go to state 571 + ":=" shift, and go to state 572 + '=' shift, and go to state 573 - $@54 go to state 574 + copy_or_move_or_clone go to state 574 State 391 - 716 type_declaration_no_options: "table" '<' . $@56 table_type_pair '>' $@57 + 691 type_declaration_no_options: "type" '<' . $@49 type_declaration '>' $@50 - $default reduce using rule 714 ($@56) + $default reduce using rule 689 ($@49) - $@56 go to state 575 + $@49 go to state 575 State 392 - 691 type_declaration_no_options: "typedecl" '(' . expr ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 576 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 714 type_declaration_no_options: "array" '<' . $@54 type_declaration '>' $@55 + $default reduce using rule 712 ($@54) -State 393 + $@54 go to state 576 - 719 type_declaration_no_options: "iterator" '<' . $@58 type_declaration '>' $@59 - $default reduce using rule 717 ($@58) +State 393 - $@58 go to state 577 + 717 type_declaration_no_options: "table" '<' . $@56 table_type_pair '>' $@57 + $default reduce using rule 715 ($@56) -State 394 + $@56 go to state 577 - 709 type_declaration_no_options: "smart_ptr" '<' . $@52 type_declaration '>' $@53 - $default reduce using rule 707 ($@52) +State 394 - $@52 go to state 578 + 692 type_declaration_no_options: "typedecl" '(' . expr ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 578 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 395 - 668 auto_type_declaration: "auto" '(' . "name" ')' + 720 type_declaration_no_options: "iterator" '<' . $@58 type_declaration '>' $@59 - "name" shift, and go to state 579 + $default reduce using rule 718 ($@58) + + $@58 go to state 579 State 396 - 677 bitfield_type_declaration: "bitfield" '<' . $@47 bitfield_bits '>' $@48 + 710 type_declaration_no_options: "smart_ptr" '<' . $@52 type_declaration '>' $@53 - $default reduce using rule 675 ($@47) + $default reduce using rule 708 ($@52) - $@47 go to state 580 + $@52 go to state 580 State 397 - 723 type_declaration_no_options: "block" '<' . $@60 type_declaration '>' $@61 - 726 | "block" '<' . $@62 optional_function_argument_list optional_function_type '>' $@63 - - ':' reduce using rule 724 ($@62) - '>' reduce using rule 724 ($@62) - '(' reduce using rule 724 ($@62) - $default reduce using rule 721 ($@60) + 669 auto_type_declaration: "auto" '(' . "name" ')' - $@60 go to state 581 - $@62 go to state 582 + "name" shift, and go to state 581 State 398 - 730 type_declaration_no_options: "function" '<' . $@64 type_declaration '>' $@65 - 733 | "function" '<' . $@66 optional_function_argument_list optional_function_type '>' $@67 + 678 bitfield_type_declaration: "bitfield" '<' . $@47 bitfield_bits '>' $@48 - ':' reduce using rule 731 ($@66) - '>' reduce using rule 731 ($@66) - '(' reduce using rule 731 ($@66) - $default reduce using rule 728 ($@64) + $default reduce using rule 676 ($@47) - $@64 go to state 583 - $@66 go to state 584 + $@47 go to state 582 State 399 - 737 type_declaration_no_options: "lambda" '<' . $@68 type_declaration '>' $@69 - 740 | "lambda" '<' . $@70 optional_function_argument_list optional_function_type '>' $@71 + 724 type_declaration_no_options: "block" '<' . $@60 type_declaration '>' $@61 + 727 | "block" '<' . $@62 optional_function_argument_list optional_function_type '>' $@63 - ':' reduce using rule 738 ($@70) - '>' reduce using rule 738 ($@70) - '(' reduce using rule 738 ($@70) - $default reduce using rule 735 ($@68) + ':' reduce using rule 725 ($@62) + '>' reduce using rule 725 ($@62) + '(' reduce using rule 725 ($@62) + $default reduce using rule 722 ($@60) - $@68 go to state 585 - $@70 go to state 586 + $@60 go to state 583 + $@62 go to state 584 State 400 - 743 type_declaration_no_options: "tuple" '<' . $@72 tuple_type_list '>' $@73 + 731 type_declaration_no_options: "function" '<' . $@64 type_declaration '>' $@65 + 734 | "function" '<' . $@66 optional_function_argument_list optional_function_type '>' $@67 - $default reduce using rule 741 ($@72) + ':' reduce using rule 732 ($@66) + '>' reduce using rule 732 ($@66) + '(' reduce using rule 732 ($@66) + $default reduce using rule 729 ($@64) - $@72 go to state 587 + $@64 go to state 585 + $@66 go to state 586 State 401 - 746 type_declaration_no_options: "variant" '<' . $@74 variant_type_list '>' $@75 + 738 type_declaration_no_options: "lambda" '<' . $@68 type_declaration '>' $@69 + 741 | "lambda" '<' . $@70 optional_function_argument_list optional_function_type '>' $@71 - $default reduce using rule 744 ($@74) + ':' reduce using rule 739 ($@70) + '>' reduce using rule 739 ($@70) + '(' reduce using rule 739 ($@70) + $default reduce using rule 736 ($@68) - $@74 go to state 588 + $@68 go to state 587 + $@70 go to state 588 State 402 - 669 auto_type_declaration: "$t" '(' . expr ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 589 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 744 type_declaration_no_options: "tuple" '<' . $@72 tuple_type_list '>' $@73 + + $default reduce using rule 742 ($@72) + + $@72 go to state 589 State 403 - 692 type_declaration_no_options: '$' name_in_namespace . '(' optional_expr_list ')' - 694 | '$' name_in_namespace . '<' $@51 type_declaration_no_options_list '>' '(' optional_expr_list ')' + 747 type_declaration_no_options: "variant" '<' . $@74 variant_type_list '>' $@75 - '<' shift, and go to state 590 - '(' shift, and go to state 591 + $default reduce using rule 745 ($@74) + $@74 go to state 590 -State 404 - 697 type_declaration_no_options: type_declaration_no_options "const" . +State 404 - $default reduce using rule 697 (type_declaration_no_options) + 670 auto_type_declaration: "$t" '(' . expr ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 591 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 405 - 702 type_declaration_no_options: type_declaration_no_options "implicit" . + 693 type_declaration_no_options: '$' name_in_namespace . '(' optional_expr_list ')' + 695 | '$' name_in_namespace . '<' $@51 type_declaration_no_options_list '>' '(' optional_expr_list ')' - $default reduce using rule 702 (type_declaration_no_options) + '<' shift, and go to state 592 + '(' shift, and go to state 593 State 406 - 696 type_declaration_no_options: type_declaration_no_options "explicit" . + 698 type_declaration_no_options: type_declaration_no_options "const" . - $default reduce using rule 696 (type_declaration_no_options) + $default reduce using rule 698 (type_declaration_no_options) State 407 - 704 type_declaration_no_options: type_declaration_no_options "==" . "const" - 705 | type_declaration_no_options "==" . '&' + 703 type_declaration_no_options: type_declaration_no_options "implicit" . - "const" shift, and go to state 592 - '&' shift, and go to state 593 + $default reduce using rule 703 (type_declaration_no_options) State 408 - 710 type_declaration_no_options: type_declaration_no_options "??" . + 697 type_declaration_no_options: type_declaration_no_options "explicit" . - $default reduce using rule 710 (type_declaration_no_options) + $default reduce using rule 697 (type_declaration_no_options) State 409 - 706 type_declaration_no_options: type_declaration_no_options '?' . + 705 type_declaration_no_options: type_declaration_no_options "==" . "const" + 706 | type_declaration_no_options "==" . '&' - $default reduce using rule 706 (type_declaration_no_options) + "const" shift, and go to state 594 + '&' shift, and go to state 595 State 410 - 699 type_declaration_no_options: type_declaration_no_options '&' . + 711 type_declaration_no_options: type_declaration_no_options "??" . - $default reduce using rule 699 (type_declaration_no_options) + $default reduce using rule 711 (type_declaration_no_options) State 411 - 695 type_declaration_no_options: type_declaration_no_options '-' . '[' ']' - 698 | type_declaration_no_options '-' . "const" - 700 | type_declaration_no_options '-' . '&' - 703 | type_declaration_no_options '-' . '#' + 707 type_declaration_no_options: type_declaration_no_options '?' . - "const" shift, and go to state 594 - '&' shift, and go to state 595 - '[' shift, and go to state 596 - '#' shift, and go to state 597 + $default reduce using rule 707 (type_declaration_no_options) State 412 - 680 dim_list: '[' . expr ']' - 687 type_declaration_no_options: type_declaration_no_options '[' . ']' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - ']' shift, and go to state 598 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 599 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 700 type_declaration_no_options: type_declaration_no_options '&' . + + $default reduce using rule 700 (type_declaration_no_options) State 413 - 701 type_declaration_no_options: type_declaration_no_options '#' . + 696 type_declaration_no_options: type_declaration_no_options '-' . '[' ']' + 699 | type_declaration_no_options '-' . "const" + 701 | type_declaration_no_options '-' . '&' + 704 | type_declaration_no_options '-' . '#' - $default reduce using rule 701 (type_declaration_no_options) + "const" shift, and go to state 596 + '&' shift, and go to state 597 + '[' shift, and go to state 598 + '#' shift, and go to state 599 State 414 - 681 dim_list: dim_list . '[' expr ']' - 686 type_declaration_no_options: type_declaration_no_options dim_list . - - '[' shift, and go to state 600 - - '[' [reduce using rule 686 (type_declaration_no_options)] - $default reduce using rule 686 (type_declaration_no_options) + 681 dim_list: '[' . expr ']' + 688 type_declaration_no_options: type_declaration_no_options '[' . ']' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + ']' shift, and go to state 600 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 601 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 415 - 748 type_declaration: type_declaration '|' . type_declaration_no_options - 749 | type_declaration '|' . '#' - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - '#' shift, and go to state 601 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 602 + 702 type_declaration_no_options: type_declaration_no_options '#' . + + $default reduce using rule 702 (type_declaration_no_options) State 416 - 673 bitfield_alias_bits: bitfield_alias_bits . "end of expression" - 674 | bitfield_alias_bits . "name" "end of expression" - 764 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" $@85 "begin of code block" $@86 bitfield_alias_bits . $@87 "end of code block" - - "name" shift, and go to state 603 - "end of expression" shift, and go to state 604 + 682 dim_list: dim_list . '[' expr ']' + 687 type_declaration_no_options: type_declaration_no_options dim_list . - $default reduce using rule 763 ($@87) + '[' shift, and go to state 602 - $@87 go to state 605 + '[' [reduce using rule 687 (type_declaration_no_options)] + $default reduce using rule 687 (type_declaration_no_options) State 417 - 545 tuple_alias_type_list: tuple_alias_type_list . "end of expression" - 546 | tuple_alias_type_list . tuple_type "end of expression" - 754 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" $@77 "begin of code block" $@78 tuple_alias_type_list . $@79 "end of code block" - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 606 - "end of expression" shift, and go to state 607 - '$' shift, and go to state 348 - - $default reduce using rule 753 ($@79) - - name_in_namespace go to state 349 - tuple_type go to state 608 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 354 - type_declaration go to state 609 - $@79 go to state 610 + 749 type_declaration: type_declaration '|' . type_declaration_no_options + 750 | type_declaration '|' . '#' + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + '#' shift, and go to state 603 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 604 State 418 - 551 variant_alias_type_list: variant_alias_type_list . "end of expression" - 552 | variant_alias_type_list . variant_type "end of expression" - 759 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" $@81 "begin of code block" $@82 variant_alias_type_list . $@83 "end of code block" + 674 bitfield_alias_bits: bitfield_alias_bits . "end of expression" + 675 | bitfield_alias_bits . "name" "end of expression" + 765 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" $@85 "begin of code block" $@86 bitfield_alias_bits . $@87 "end of code block" - "name" shift, and go to state 611 - "end of expression" shift, and go to state 612 + "name" shift, and go to state 605 + "end of expression" shift, and go to state 606 - $default reduce using rule 758 ($@83) + $default reduce using rule 764 ($@87) - variant_type go to state 613 - $@83 go to state 614 + $@87 go to state 607 State 419 + 546 tuple_alias_type_list: tuple_alias_type_list . "end of expression" + 547 | tuple_alias_type_list . tuple_type "end of expression" + 755 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" $@77 "begin of code block" $@78 tuple_alias_type_list . $@79 "end of code block" + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 608 + "end of expression" shift, and go to state 609 + '$' shift, and go to state 350 + + $default reduce using rule 754 ($@79) + + name_in_namespace go to state 351 + tuple_type go to state 610 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 356 + type_declaration go to state 611 + $@79 go to state 612 + + +State 420 + + 552 variant_alias_type_list: variant_alias_type_list . "end of expression" + 553 | variant_alias_type_list . variant_type "end of expression" + 760 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" $@81 "begin of code block" $@82 variant_alias_type_list . $@83 "end of code block" + + "name" shift, and go to state 613 + "end of expression" shift, and go to state 614 + + $default reduce using rule 759 ($@83) + + variant_type go to state 615 + $@83 go to state 616 + + +State 421 + 185 function_name: "operator" '?' "as" "name" . $default reduce using rule 185 (function_name) -State 420 +State 422 175 function_name: "operator" '.' "name" ":=" . $default reduce using rule 175 (function_name) -State 421 +State 423 - 537 function_argument_declaration: "$a" '(' . expr ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 538 function_argument_declaration: "$a" '(' . expr ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 615 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 617 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 -State 422 +State 424 - 291 kwd_let_var_or_nothing: "let" . + 292 kwd_let_var_or_nothing: "let" . - $default reduce using rule 291 (kwd_let_var_or_nothing) + $default reduce using rule 292 (kwd_let_var_or_nothing) -State 423 +State 425 - 292 kwd_let_var_or_nothing: "var" . + 293 kwd_let_var_or_nothing: "var" . - $default reduce using rule 292 (kwd_let_var_or_nothing) + $default reduce using rule 293 (kwd_let_var_or_nothing) -State 424 +State 426 - 536 function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing . variable_declaration + 537 function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing . variable_declaration - "$i" shift, and go to state 616 - "name" shift, and go to state 617 + "$i" shift, and go to state 618 + "name" shift, and go to state 619 - variable_declaration go to state 618 - variable_name_with_pos_list go to state 619 + variable_declaration go to state 620 + variable_name_with_pos_list go to state 621 -State 425 +State 427 - 539 function_argument_list: function_argument_list "end of expression" . function_argument_declaration + 540 function_argument_list: function_argument_list "end of expression" . function_argument_declaration - "$a" shift, and go to state 366 - "[[" shift, and go to state 216 - '@' shift, and go to state 217 + "$a" shift, and go to state 368 + "[[" shift, and go to state 218 + '@' shift, and go to state 219 - $default reduce using rule 514 (optional_field_annotation) + $default reduce using rule 515 (optional_field_annotation) - metadata_argument_list go to state 218 - optional_field_annotation go to state 368 - function_argument_declaration go to state 620 + metadata_argument_list go to state 220 + optional_field_annotation go to state 370 + function_argument_declaration go to state 622 -State 426 +State 428 123 optional_function_argument_list: '(' function_argument_list ')' . $default reduce using rule 123 (optional_function_argument_list) -State 427 +State 429 125 optional_function_type: ':' type_declaration . - 748 type_declaration: type_declaration . '|' type_declaration_no_options - 749 | type_declaration . '|' '#' + 749 type_declaration: type_declaration . '|' type_declaration_no_options + 750 | type_declaration . '|' '#' - '|' shift, and go to state 415 + '|' shift, and go to state 417 $default reduce using rule 125 (optional_function_type) -State 428 +State 430 245 expressions: expressions error . $default reduce using rule 245 (expressions) -State 429 +State 431 - 805 make_struct_decl: "struct" . '<' $@88 type_declaration_no_options '>' $@89 '(' use_initializer make_struct_dim ')' + 806 make_struct_decl: "struct" . '<' $@88 type_declaration_no_options '>' $@89 '(' use_initializer make_struct_dim ')' - '<' shift, and go to state 621 + '<' shift, and go to state 623 -State 430 +State 432 - 808 make_struct_decl: "class" . '<' $@90 type_declaration_no_options '>' $@91 '(' use_initializer make_struct_dim ')' + 809 make_struct_decl: "class" . '<' $@90 type_declaration_no_options '>' $@91 '(' use_initializer make_struct_dim ')' - '<' shift, and go to state 622 + '<' shift, and go to state 624 -State 431 +State 433 78 expression_while_loop: "while" . expr expression_block - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 623 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 625 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 -State 432 +State 434 62 if_or_static_if: "if" . $default reduce using rule 62 (if_or_static_if) -State 433 +State 435 63 if_or_static_if: "static_if" . $default reduce using rule 63 (if_or_static_if) -State 434 +State 436 76 expression_for_loop: "for" . $@4 variable_name_with_pos_list "in" expr_list expression_block $default reduce using rule 75 ($@4) - $@4 go to state 624 - - -State 435 - - 420 expr: "true" . - - $default reduce using rule 420 (expr) + $@4 go to state 626 -State 436 +State 437 - 421 expr: "false" . + 421 expr: "true" . $default reduce using rule 421 (expr) -State 437 - - 272 expr_new: "new" . new_type_declaration - 273 | "new" . new_type_declaration '(' use_initializer ')' - 274 | "new" . new_type_declaration '(' expr_list ')' - 275 | "new" . new_type_declaration '(' use_initializer make_struct_single ')' - 276 | "new" . make_decl - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "array" shift, and go to state 440 - "table" shift, and go to state 445 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "name" shift, and go to state 58 - "begin of code block" shift, and go to state 491 - '<' shift, and go to state 625 - '[' shift, and go to state 499 - - name_in_namespace go to state 349 - new_type_declaration go to state 626 - structure_type_declaration go to state 627 - make_decl go to state 628 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 - - State 438 - 318 expr_type_info: "typeinfo" . '(' name_in_namespace expr ')' - 319 | "typeinfo" . '(' name_in_namespace '<' "name" '>' expr ')' - 320 | "typeinfo" . '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' + 422 expr: "false" . - '(' shift, and go to state 629 + $default reduce using rule 422 (expr) State 439 - 317 expr_type_decl: "type" . '<' $@19 type_declaration '>' $@20 - - '<' shift, and go to state 630 + 273 expr_new: "new" . new_type_declaration + 274 | "new" . new_type_declaration '(' use_initializer ')' + 275 | "new" . new_type_declaration '(' expr_list ')' + 276 | "new" . new_type_declaration '(' use_initializer make_struct_single ')' + 277 | "new" . make_decl + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "array" shift, and go to state 442 + "table" shift, and go to state 447 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "::" shift, and go to state 58 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "name" shift, and go to state 59 + "begin of code block" shift, and go to state 493 + '<' shift, and go to state 627 + '[' shift, and go to state 501 + + name_in_namespace go to state 351 + new_type_declaration go to state 628 + structure_type_declaration go to state 629 + make_decl go to state 630 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 440 - 831 make_dim_decl: "array" . "struct" '<' $@98 type_declaration_no_options '>' $@99 '(' use_initializer make_struct_dim ')' - 834 | "array" . "tuple" '<' $@100 type_declaration_no_options '>' $@101 '(' use_initializer make_struct_dim ')' - 837 | "array" . "variant" '<' $@102 type_declaration_no_options '>' $@103 '(' make_struct_dim ')' - 838 | "array" . '(' expr_list optional_comma ')' - 841 | "array" . '<' $@104 type_declaration_no_options '>' $@105 '(' expr_list optional_comma ')' + 319 expr_type_info: "typeinfo" . '(' name_in_namespace expr ')' + 320 | "typeinfo" . '(' name_in_namespace '<' "name" '>' expr ')' + 321 | "typeinfo" . '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' - "struct" shift, and go to state 631 - "tuple" shift, and go to state 632 - "variant" shift, and go to state 633 - '<' shift, and go to state 634 - '(' shift, and go to state 635 + '(' shift, and go to state 631 State 441 - 279 expression_return_no_pipe: "return" . - 280 | "return" . expr_list - 281 | "return" . "<-" expr_list - 283 expression_return: "return" . expr_pipe - 284 | "return" . "<-" expr_pipe - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "<-" shift, and go to state 636 - "$ <|" shift, and go to state 468 - "@ <|" shift, and go to state 469 - "@@ <|" shift, and go to state 470 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - $default reduce using rule 279 (expression_return_no_pipe) - - string_builder go to state 503 - expr_reader go to state 504 - expr_call_pipe go to state 515 - expression_keyword go to state 518 - expr_pipe go to state 637 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - expr_list go to state 638 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_assign go to state 639 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 640 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 318 expr_type_decl: "type" . '<' $@19 type_declaration '>' $@20 + + '<' shift, and go to state 632 State 442 - 414 expr: "null" . + 832 make_dim_decl: "array" . "struct" '<' $@98 type_declaration_no_options '>' $@99 '(' use_initializer make_struct_dim ')' + 835 | "array" . "tuple" '<' $@100 type_declaration_no_options '>' $@101 '(' use_initializer make_struct_dim ')' + 838 | "array" . "variant" '<' $@102 type_declaration_no_options '>' $@103 '(' make_struct_dim ')' + 839 | "array" . '(' expr_list optional_comma ')' + 842 | "array" . '<' $@104 type_declaration_no_options '>' $@105 '(' expr_list optional_comma ')' - $default reduce using rule 414 (expr) + "struct" shift, and go to state 633 + "tuple" shift, and go to state 634 + "variant" shift, and go to state 635 + '<' shift, and go to state 636 + '(' shift, and go to state 637 State 443 - 277 expression_break: "break" . + 280 expression_return_no_pipe: "return" . + 281 | "return" . expr_list + 282 | "return" . "<-" expr_list + 284 expression_return: "return" . expr_pipe + 285 | "return" . "<-" expr_pipe + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "<-" shift, and go to state 638 + "$ <|" shift, and go to state 470 + "@ <|" shift, and go to state 471 + "@@ <|" shift, and go to state 472 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + $default reduce using rule 280 (expression_return_no_pipe) - $default reduce using rule 277 (expression_break) + string_builder go to state 505 + expr_reader go to state 506 + expr_call_pipe go to state 517 + expression_keyword go to state 520 + expr_pipe go to state 639 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + expr_list go to state 640 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_assign go to state 641 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 642 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 444 - 290 expression_try_catch: "try" . expression_block "recover" expression_block - - "begin of code block" shift, and go to state 284 + 415 expr: "null" . - expression_block go to state 641 + $default reduce using rule 415 (expr) State 445 - 852 make_table_decl: "table" . '(' expr_map_tuple_list optional_comma ')' - 853 | "table" . '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - 854 | "table" . '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + 278 expression_break: "break" . - '<' shift, and go to state 642 - '(' shift, and go to state 643 + $default reduce using rule 278 (expression_break) State 446 - 266 expression_delete: "delete" . expr - 267 | "delete" . "explicit" expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "explicit" shift, and go to state 644 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 645 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 291 expression_try_catch: "try" . expression_block "recover" expression_block + + "begin of code block" shift, and go to state 286 + + expression_block go to state 643 State 447 - 464 expr: "deref" . '(' expr ')' + 853 make_table_decl: "table" . '(' expr_map_tuple_list optional_comma ')' + 854 | "table" . '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + 855 | "table" . '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - '(' shift, and go to state 646 + '<' shift, and go to state 644 + '(' shift, and go to state 645 State 448 - 79 expression_with: "with" . expr expression_block - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 267 expression_delete: "delete" . expr + 268 | "delete" . "explicit" expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "explicit" shift, and go to state 646 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 647 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 449 - 81 expression_with_alias: "assume" . "name" '=' $@5 expr + 465 expr: "deref" . '(' expr ')' - "name" shift, and go to state 648 + '(' shift, and go to state 648 State 450 - 308 expr_cast: "cast" . '<' $@13 type_declaration_no_options '>' $@14 expr + 79 expression_with: "with" . expr expression_block - '<' shift, and go to state 649 + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 649 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 451 - 311 expr_cast: "upcast" . '<' $@15 type_declaration_no_options '>' $@16 expr + 81 expression_with_alias: "assume" . "name" '=' $@5 expr - '<' shift, and go to state 650 + "name" shift, and go to state 650 State 452 - 465 expr: "addr" . '(' expr ')' + 309 expr_cast: "cast" . '<' $@13 type_declaration_no_options '>' $@14 expr - '(' shift, and go to state 651 + '<' shift, and go to state 651 State 453 - 278 expression_continue: "continue" . + 312 expr_cast: "upcast" . '<' $@15 type_declaration_no_options '>' $@16 expr - $default reduce using rule 278 (expression_continue) + '<' shift, and go to state 652 State 454 - 242 expression_any: "pass" . "end of expression" + 466 expr: "addr" . '(' expr ')' - "end of expression" shift, and go to state 652 + '(' shift, and go to state 653 State 455 - 314 expr_cast: "reinterpret" . '<' $@17 type_declaration_no_options '>' $@18 expr + 279 expression_continue: "continue" . - '<' shift, and go to state 653 + $default reduce using rule 279 (expression_continue) State 456 - 54 expression_label: "label" . "integer constant" ':' + 242 expression_any: "pass" . "end of expression" - "integer constant" shift, and go to state 654 + "end of expression" shift, and go to state 654 State 457 - 55 expression_goto: "goto" . "label" "integer constant" - 56 | "goto" . expr + 315 expr_cast: "reinterpret" . '<' $@17 type_declaration_no_options '>' $@18 expr - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "label" shift, and go to state 655 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 656 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '<' shift, and go to state 655 State 458 - 77 expression_unsafe: "unsafe" . expression_block - 496 expr: "unsafe" . '(' expr ')' - - "begin of code block" shift, and go to state 284 - '(' shift, and go to state 657 + 54 expression_label: "label" . "integer constant" ':' - expression_block go to state 658 + "integer constant" shift, and go to state 656 State 459 - 842 make_dim_decl: "fixed_array" . '(' expr_list optional_comma ')' - 845 | "fixed_array" . '<' $@106 type_declaration_no_options '>' $@107 '(' expr_list optional_comma ')' + 55 expression_goto: "goto" . "label" "integer constant" + 56 | "goto" . expr - '<' shift, and go to state 659 - '(' shift, and go to state 660 + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "label" shift, and go to state 657 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 658 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 460 - 814 make_struct_decl: "default" . '<' $@94 type_declaration_no_options '>' $@95 use_initializer + 77 expression_unsafe: "unsafe" . expression_block + 497 expr: "unsafe" . '(' expr ')' - '<' shift, and go to state 661 + "begin of code block" shift, and go to state 286 + '(' shift, and go to state 659 + + expression_block go to state 660 State 461 - 657 basic_type_declaration: "bitfield" . + 843 make_dim_decl: "fixed_array" . '(' expr_list optional_comma ')' + 846 | "fixed_array" . '<' $@106 type_declaration_no_options '>' $@107 '(' expr_list optional_comma ')' - $default reduce using rule 657 (basic_type_declaration) + '<' shift, and go to state 661 + '(' shift, and go to state 662 State 462 - 820 make_tuple_call: "tuple" . '(' expr_list optional_comma ')' - 823 | "tuple" . '<' $@96 type_declaration_no_options '>' $@97 '(' use_initializer make_struct_dim ')' + 815 make_struct_decl: "default" . '<' $@94 type_declaration_no_options '>' $@95 use_initializer - '<' shift, and go to state 662 - '(' shift, and go to state 663 + '<' shift, and go to state 663 State 463 - 811 make_struct_decl: "variant" . '<' $@92 type_declaration_no_options '>' $@93 '(' make_struct_dim ')' + 658 basic_type_declaration: "bitfield" . - '<' shift, and go to state 664 + $default reduce using rule 658 (basic_type_declaration) State 464 - 466 expr: "generator" . '<' type_declaration_no_options '>' optional_capture_list '(' ')' - 467 | "generator" . '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' + 821 make_tuple_call: "tuple" . '(' expr_list optional_comma ')' + 824 | "tuple" . '<' $@96 type_declaration_no_options '>' $@97 '(' use_initializer make_struct_dim ')' - '<' shift, and go to state 665 + '<' shift, and go to state 664 + '(' shift, and go to state 665 State 465 - 285 expression_yield_no_pipe: "yield" . expr - 286 | "yield" . "<-" expr - 288 expression_yield: "yield" . expr_pipe - 289 | "yield" . "<-" expr_pipe - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "<-" shift, and go to state 666 - "$ <|" shift, and go to state 468 - "@ <|" shift, and go to state 469 - "@@ <|" shift, and go to state 470 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expr_call_pipe go to state 515 - expression_keyword go to state 518 - expr_pipe go to state 667 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_assign go to state 639 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 668 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 812 make_struct_decl: "variant" . '<' $@92 type_declaration_no_options '>' $@93 '(' make_struct_dim ')' + + '<' shift, and go to state 666 State 466 - 450 expr: "++" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 669 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 467 expr: "generator" . '<' type_declaration_no_options '>' optional_capture_list '(' ')' + 468 | "generator" . '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' + + '<' shift, and go to state 667 State 467 - 451 expr: "--" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 286 expression_yield_no_pipe: "yield" . expr + 287 | "yield" . "<-" expr + 289 expression_yield: "yield" . expr_pipe + 290 | "yield" . "<-" expr_pipe + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "<-" shift, and go to state 668 + "$ <|" shift, and go to state 470 + "@ <|" shift, and go to state 471 + "@@ <|" shift, and go to state 472 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expr_call_pipe go to state 517 + expression_keyword go to state 520 + expr_pipe go to state 669 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_assign go to state 641 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 670 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 468 - 262 expr_pipe: "$ <|" . expr_block - - "begin of code block" shift, and go to state 284 - '$' shift, and go to state 501 - '@' shift, and go to state 671 - - expression_block go to state 672 - block_or_lambda go to state 673 - expr_block go to state 674 + 451 expr: "++" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 671 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 469 - 260 expr_pipe: "@ <|" . expr_block + 452 expr: "--" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 672 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 - "begin of code block" shift, and go to state 284 - '$' shift, and go to state 501 - '@' shift, and go to state 671 - expression_block go to state 672 - block_or_lambda go to state 673 - expr_block go to state 675 +State 470 + 262 expr_pipe: "$ <|" . expr_block -State 470 - - 261 expr_pipe: "@@ <|" . expr_block - - "begin of code block" shift, and go to state 284 - '$' shift, and go to state 501 - '@' shift, and go to state 671 + "begin of code block" shift, and go to state 286 + '$' shift, and go to state 503 + '@' shift, and go to state 673 - expression_block go to state 672 - block_or_lambda go to state 673 + expression_block go to state 674 + block_or_lambda go to state 675 expr_block go to state 676 State 471 - 498 expr_mtag: "$$" . '(' expr ')' + 260 expr_pipe: "@ <|" . expr_block + + "begin of code block" shift, and go to state 286 + '$' shift, and go to state 503 + '@' shift, and go to state 673 - '(' shift, and go to state 677 + expression_block go to state 674 + block_or_lambda go to state 675 + expr_block go to state 677 State 472 - 499 expr_mtag: "$i" . '(' expr ')' + 261 expr_pipe: "@@ <|" . expr_block + + "begin of code block" shift, and go to state 286 + '$' shift, and go to state 503 + '@' shift, and go to state 673 - '(' shift, and go to state 678 + expression_block go to state 674 + block_or_lambda go to state 675 + expr_block go to state 678 State 473 - 500 expr_mtag: "$v" . '(' expr ')' + 499 expr_mtag: "$$" . '(' expr ')' '(' shift, and go to state 679 State 474 - 501 expr_mtag: "$b" . '(' expr ')' + 500 expr_mtag: "$i" . '(' expr ')' '(' shift, and go to state 680 State 475 - 502 expr_mtag: "$a" . '(' expr ')' + 501 expr_mtag: "$v" . '(' expr ')' '(' shift, and go to state 681 State 476 - 504 expr_mtag: "$c" . '(' expr ')' '(' ')' - 505 | "$c" . '(' expr ')' '(' expr_list ')' + 502 expr_mtag: "$b" . '(' expr ')' '(' shift, and go to state 682 State 477 - 503 expr_mtag: "..." . + 503 expr_mtag: "$a" . '(' expr ')' - $default reduce using rule 503 (expr_mtag) + '(' shift, and go to state 683 State 478 - 797 make_struct_decl: "[[" . type_declaration_no_options make_struct_dim optional_block optional_trailing_delim_sqr_sqr - 798 | "[[" . type_declaration_no_options optional_block optional_trailing_delim_sqr_sqr - 799 | "[[" . type_declaration_no_options '(' ')' optional_block optional_trailing_delim_sqr_sqr - 800 | "[[" . type_declaration_no_options '(' ')' make_struct_dim optional_block optional_trailing_delim_sqr_sqr - 827 make_dim_decl: "[[" . type_declaration_no_options make_dim optional_trailing_semicolon_sqr_sqr - 861 array_comprehension: "[[" . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' ']' - - "for" shift, and go to state 683 - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 684 + 505 expr_mtag: "$c" . '(' expr ')' '(' ')' + 506 | "$c" . '(' expr ')' '(' expr_list ')' + + '(' shift, and go to state 684 State 479 - 801 make_struct_decl: "[{" . type_declaration_no_options make_struct_dim optional_block optional_trailing_delim_cur_sqr - 802 | "[{" . type_declaration_no_options '(' ')' make_struct_dim optional_block optional_trailing_delim_cur_sqr - 828 make_dim_decl: "[{" . type_declaration_no_options make_dim optional_trailing_semicolon_cur_sqr - 862 array_comprehension: "[{" . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where "end of code block" ']' + 504 expr_mtag: "..." . - "for" shift, and go to state 685 - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 686 + $default reduce using rule 504 (expr_mtag) State 480 - 851 make_table_decl: "{{" . make_table optional_trailing_semicolon_cur_cur - 864 array_comprehension: "{{" . "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" "end of code block" - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "for" shift, and go to state 687 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 688 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_map_tuple go to state 689 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table go to state 690 - make_table_decl go to state 552 - array_comprehension go to state 553 + 798 make_struct_decl: "[[" . type_declaration_no_options make_struct_dim optional_block optional_trailing_delim_sqr_sqr + 799 | "[[" . type_declaration_no_options optional_block optional_trailing_delim_sqr_sqr + 800 | "[[" . type_declaration_no_options '(' ')' optional_block optional_trailing_delim_sqr_sqr + 801 | "[[" . type_declaration_no_options '(' ')' make_struct_dim optional_block optional_trailing_delim_sqr_sqr + 828 make_dim_decl: "[[" . type_declaration_no_options make_dim optional_trailing_semicolon_sqr_sqr + 862 array_comprehension: "[[" . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' ']' + + "for" shift, and go to state 685 + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 686 State 481 - 342 expr_numeric_const: "integer constant" . - - $default reduce using rule 342 (expr_numeric_const) + 802 make_struct_decl: "[{" . type_declaration_no_options make_struct_dim optional_block optional_trailing_delim_cur_sqr + 803 | "[{" . type_declaration_no_options '(' ')' make_struct_dim optional_block optional_trailing_delim_cur_sqr + 829 make_dim_decl: "[{" . type_declaration_no_options make_dim optional_trailing_semicolon_cur_sqr + 863 array_comprehension: "[{" . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where "end of code block" ']' + + "for" shift, and go to state 687 + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 688 State 482 - 344 expr_numeric_const: "long integer constant" . - - $default reduce using rule 344 (expr_numeric_const) + 852 make_table_decl: "{{" . make_table optional_trailing_semicolon_cur_cur + 865 array_comprehension: "{{" . "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" "end of code block" + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "for" shift, and go to state 689 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 690 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_map_tuple go to state 691 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table go to state 692 + make_table_decl go to state 554 + array_comprehension go to state 555 State 483 - 343 expr_numeric_const: "unsigned integer constant" . + 343 expr_numeric_const: "integer constant" . $default reduce using rule 343 (expr_numeric_const) State 484 - 345 expr_numeric_const: "unsigned long integer constant" . + 345 expr_numeric_const: "long integer constant" . $default reduce using rule 345 (expr_numeric_const) State 485 - 346 expr_numeric_const: "unsigned int8 constant" . + 344 expr_numeric_const: "unsigned integer constant" . - $default reduce using rule 346 (expr_numeric_const) + $default reduce using rule 344 (expr_numeric_const) State 486 - 347 expr_numeric_const: "floating point constant" . + 346 expr_numeric_const: "unsigned long integer constant" . - $default reduce using rule 347 (expr_numeric_const) + $default reduce using rule 346 (expr_numeric_const) State 487 - 348 expr_numeric_const: "double constant" . + 347 expr_numeric_const: "unsigned int8 constant" . - $default reduce using rule 348 (expr_numeric_const) + $default reduce using rule 347 (expr_numeric_const) State 488 + 348 expr_numeric_const: "floating point constant" . + + $default reduce using rule 348 (expr_numeric_const) + + +State 489 + + 349 expr_numeric_const: "double constant" . + + $default reduce using rule 349 (expr_numeric_const) + + +State 490 + 246 expr_keyword: "keyword" . expr expression_block 255 expression_keyword: "keyword" . '<' $@7 type_declaration_no_options_list '>' $@8 expr - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '<' shift, and go to state 691 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '<' shift, and go to state 693 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 692 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 694 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 -State 489 +State 491 258 expression_keyword: "type function" . '<' $@9 type_declaration_no_options_list '>' $@10 optional_expr_list_in_braces - '<' shift, and go to state 693 + '<' shift, and go to state 695 -State 490 +State 492 31 string_builder: "start of the string" . string_builder_body "end of the string" $default reduce using rule 28 (string_builder_body) - string_builder_body go to state 694 + string_builder_body go to state 696 -State 491 +State 493 - 850 make_table_decl: "begin of code block" . expr_map_tuple_list optional_comma "end of code block" - 863 array_comprehension: "begin of code block" . "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "for" shift, and go to state 695 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 851 make_table_decl: "begin of code block" . expr_map_tuple_list optional_comma "end of code block" + 864 array_comprehension: "begin of code block" . "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "for" shift, and go to state 697 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 688 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_map_tuple go to state 696 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - expr_map_tuple_list go to state 697 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 690 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_map_tuple go to state 698 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + expr_map_tuple_list go to state 699 + make_table_decl go to state 554 + array_comprehension go to state 555 -State 492 +State 494 218 expression_block: "begin of code block" expressions "end of code block" . 219 | "begin of code block" expressions "end of code block" . "finally" "begin of code block" expressions "end of code block" - "finally" shift, and go to state 698 + "finally" shift, and go to state 700 $default reduce using rule 218 (expression_block) -State 493 +State 495 222 expression_any: "end of expression" . $default reduce using rule 222 (expression_any) -State 494 - - 427 expr: '-' . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 699 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 - - -State 495 - - 426 expr: '+' . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 700 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 - - State 496 - 463 expr: '*' . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 428 expr: '-' . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 701 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 497 - 425 expr: '~' . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 427 expr: '+' . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 702 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 498 - 424 expr: '!' . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 464 expr: '*' . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 703 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 499 - 826 make_dim_decl: '[' . expr_list optional_comma ']' - 859 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - 860 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "for" shift, and go to state 704 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "iterator" shift, and go to state 705 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 426 expr: '~' . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - expr_list go to state 706 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 707 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 704 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 500 - 454 expr: '(' . expr_list optional_comma ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 425 expr: '!' . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - expr_list go to state 708 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 707 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 705 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 501 - 326 block_or_lambda: '$' . - - $default reduce using rule 326 (block_or_lambda) + 827 make_dim_decl: '[' . expr_list optional_comma ']' + 860 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 861 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "for" shift, and go to state 706 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "iterator" shift, and go to state 707 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + expr_list go to state 708 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 709 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 502 - 327 block_or_lambda: '@' . - 328 | '@' . '@' - 395 func_addr_expr: '@' . '@' func_addr_name - 398 | '@' . '@' '<' $@22 type_declaration_no_options '>' $@23 func_addr_name - 401 | '@' . '@' '<' $@24 optional_function_argument_list optional_function_type '>' $@25 func_addr_name - 513 expr_mtag: '@' . '@' "$c" '(' expr ')' - - '@' shift, and go to state 709 - - $default reduce using rule 327 (block_or_lambda) + 455 expr: '(' . expr_list optional_comma ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + expr_list go to state 710 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 709 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 503 - 418 expr: string_builder . + 327 block_or_lambda: '$' . - $default reduce using rule 418 (expr) + $default reduce using rule 327 (block_or_lambda) State 504 - 417 expr: expr_reader . + 328 block_or_lambda: '@' . + 329 | '@' . '@' + 396 func_addr_expr: '@' . '@' func_addr_name + 399 | '@' . '@' '<' $@22 type_declaration_no_options '>' $@23 func_addr_name + 402 | '@' . '@' '<' $@24 optional_function_argument_list optional_function_type '>' $@25 func_addr_name + 514 expr_mtag: '@' . '@' "$c" '(' expr ')' - $default reduce using rule 417 (expr) + '@' shift, and go to state 711 + + $default reduce using rule 328 (block_or_lambda) State 505 - 240 expression_any: expression_label . "end of expression" + 419 expr: string_builder . - "end of expression" shift, and go to state 710 + $default reduce using rule 419 (expr) State 506 - 241 expression_any: expression_goto . "end of expression" + 418 expr: expr_reader . - "end of expression" shift, and go to state 711 + $default reduce using rule 418 (expr) State 507 + 240 expression_any: expression_label . "end of expression" + + "end of expression" shift, and go to state 712 + + +State 508 + + 241 expression_any: expression_goto . "end of expression" + + "end of expression" shift, and go to state 713 + + +State 509 + 72 expression_if_then_else: if_or_static_if . expr expression_block expression_else - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 712 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 714 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 -State 508 +State 510 74 expression_if_then_else: expression_if_one_liner . "if" $@3 expr expression_else_one_liner "end of expression" - "if" shift, and go to state 713 + "if" shift, and go to state 715 -State 509 +State 511 238 expression_any: expression_if_then_else . $default reduce using rule 238 (expression_any) -State 510 +State 512 233 expression_any: expression_for_loop . $default reduce using rule 233 (expression_any) -State 511 +State 513 230 expression_any: expression_unsafe . $default reduce using rule 230 (expression_any) -State 512 +State 514 229 expression_any: expression_while_loop . $default reduce using rule 229 (expression_any) -State 513 +State 515 231 expression_any: expression_with . $default reduce using rule 231 (expression_any) -State 514 +State 516 232 expression_any: expression_with_alias . $default reduce using rule 232 (expression_any) -State 515 +State 517 263 expr_pipe: expr_call_pipe . $default reduce using rule 263 (expr_pipe) -State 516 +State 518 244 expressions: expressions expression_any . $default reduce using rule 244 (expressions) -State 517 +State 519 224 expression_any: expr_keyword . $default reduce using rule 224 (expression_any) -State 518 +State 520 221 expr_call_pipe: expression_keyword . expr_full_block_assumed_piped - 497 expr: expression_keyword . + 498 expr: expression_keyword . - '$' shift, and go to state 501 - '@' shift, and go to state 671 + '$' shift, and go to state 503 + '@' shift, and go to state 673 - '$' [reduce using rule 497 (expr)] - '@' [reduce using rule 497 (expr)] - $default reduce using rule 497 (expr) + '$' [reduce using rule 498 (expr)] + '@' [reduce using rule 498 (expr)] + $default reduce using rule 498 (expr) - block_or_lambda go to state 714 - expr_full_block_assumed_piped go to state 715 + block_or_lambda go to state 716 + expr_full_block_assumed_piped go to state 717 -State 519 +State 521 223 expression_any: expr_pipe . $default reduce using rule 223 (expression_any) -State 520 +State 522 - 389 expr_named_call: name_in_namespace . '(' '[' make_struct_fields ']' ')' - 390 | name_in_namespace . '(' expr_list ',' '[' make_struct_fields ']' ')' - 409 expr_call: name_in_namespace . '(' ')' - 410 | name_in_namespace . '(' make_struct_single ')' - 411 | name_in_namespace . '(' expr_list ')' - 415 expr: name_in_namespace . - 495 | name_in_namespace . "name" + 390 expr_named_call: name_in_namespace . '(' '[' make_struct_fields ']' ')' + 391 | name_in_namespace . '(' expr_list ',' '[' make_struct_fields ']' ')' + 410 expr_call: name_in_namespace . '(' ')' + 411 | name_in_namespace . '(' make_struct_single ')' + 412 | name_in_namespace . '(' expr_list ')' + 416 expr: name_in_namespace . + 496 | name_in_namespace . "name" - "name" shift, and go to state 716 - '(' shift, and go to state 717 + "name" shift, and go to state 718 + '(' shift, and go to state 719 - "name" [reduce using rule 415 (expr)] - '(' [reduce using rule 415 (expr)] - $default reduce using rule 415 (expr) + "name" [reduce using rule 416 (expr)] + '(' [reduce using rule 416 (expr)] + $default reduce using rule 416 (expr) -State 521 +State 523 227 expression_any: expression_delete . "end of expression" - "end of expression" shift, and go to state 718 + "end of expression" shift, and go to state 720 -State 522 +State 524 - 488 expr: expr_new . + 489 expr: expr_new . - $default reduce using rule 488 (expr) + $default reduce using rule 489 (expr) -State 523 +State 525 70 expression_if_one_liner: expression_break . 234 expression_any: expression_break . "end of expression" - "end of expression" shift, and go to state 719 + "end of expression" shift, and go to state 721 $default reduce using rule 70 (expression_if_one_liner) -State 524 +State 526 71 expression_if_one_liner: expression_continue . 235 expression_any: expression_continue . "end of expression" - "end of expression" shift, and go to state 720 + "end of expression" shift, and go to state 722 $default reduce using rule 71 (expression_if_one_liner) -State 525 +State 527 68 expression_if_one_liner: expression_return_no_pipe . - 282 expression_return: expression_return_no_pipe . "end of expression" + 283 expression_return: expression_return_no_pipe . "end of expression" - "end of expression" shift, and go to state 721 + "end of expression" shift, and go to state 723 $default reduce using rule 68 (expression_if_one_liner) -State 526 +State 528 236 expression_any: expression_return . $default reduce using rule 236 (expression_any) -State 527 +State 529 69 expression_if_one_liner: expression_yield_no_pipe . - 287 expression_yield: expression_yield_no_pipe . "end of expression" + 288 expression_yield: expression_yield_no_pipe . "end of expression" - "end of expression" shift, and go to state 722 + "end of expression" shift, and go to state 724 $default reduce using rule 69 (expression_if_one_liner) -State 528 +State 530 237 expression_any: expression_yield . $default reduce using rule 237 (expression_any) -State 529 +State 531 239 expression_any: expression_try_catch . $default reduce using rule 239 (expression_any) -State 530 +State 532 - 304 expression_let: kwd_let . optional_in_scope let_variable_declaration - 305 | kwd_let . optional_in_scope tuple_expansion_variable_declaration + 305 expression_let: kwd_let . optional_in_scope let_variable_declaration + 306 | kwd_let . optional_in_scope tuple_expansion_variable_declaration - "inscope" shift, and go to state 723 + "inscope" shift, and go to state 725 - $default reduce using rule 297 (optional_in_scope) + $default reduce using rule 298 (optional_in_scope) - optional_in_scope go to state 724 + optional_in_scope go to state 726 -State 531 +State 533 228 expression_any: expression_let . $default reduce using rule 228 (expression_any) -State 532 - - 487 expr: expr_cast . - - $default reduce using rule 487 (expr) - - -State 533 - - 486 expr: expr_type_decl . - - $default reduce using rule 486 (expr) - - State 534 - 485 expr: expr_type_info . + 488 expr: expr_cast . - $default reduce using rule 485 (expr) + $default reduce using rule 488 (expr) State 535 - 339 expr_full_block: block_or_lambda . optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block - - '[' shift, and go to state 15 - - $default reduce using rule 119 (optional_annotation_list) + 487 expr: expr_type_decl . - optional_annotation_list go to state 725 + $default reduce using rule 487 (expr) State 536 - 491 expr: expr_full_block . + 486 expr: expr_type_info . - $default reduce using rule 491 (expr) + $default reduce using rule 486 (expr) State 537 - 416 expr: expr_numeric_const . + 340 expr_full_block: block_or_lambda . optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block - $default reduce using rule 416 (expr) + '[' shift, and go to state 15 + + $default reduce using rule 119 (optional_annotation_list) + + optional_annotation_list go to state 727 State 538 - 226 expression_any: expr_assign . "end of expression" - 259 expr_pipe: expr_assign . " <|" expr_block + 492 expr: expr_full_block . - " <|" shift, and go to state 726 - "end of expression" shift, and go to state 727 + $default reduce using rule 492 (expr) State 539 - 225 expression_any: expr_assign_pipe . + 417 expr: expr_numeric_const . - $default reduce using rule 225 (expression_any) + $default reduce using rule 417 (expr) State 540 - 490 expr: expr_named_call . + 226 expression_any: expr_assign . "end of expression" + 259 expr_pipe: expr_assign . " <|" expr_block - $default reduce using rule 490 (expr) + " <|" shift, and go to state 728 + "end of expression" shift, and go to state 729 State 541 - 489 expr: expr_method_call . + 225 expression_any: expr_assign_pipe . - $default reduce using rule 489 (expr) + $default reduce using rule 225 (expression_any) State 542 - 461 expr: func_addr_expr . + 491 expr: expr_named_call . - $default reduce using rule 461 (expr) + $default reduce using rule 491 (expr) State 543 - 422 expr: expr_field . + 490 expr: expr_method_call . - $default reduce using rule 422 (expr) + $default reduce using rule 490 (expr) State 544 - 462 expr: expr_call . + 462 expr: func_addr_expr . $default reduce using rule 462 (expr) State 545 - 67 expression_if_one_liner: expr . - 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 349 expr_assign: expr . - 350 | expr . '=' expr - 351 | expr . "<-" expr - 352 | expr . ":=" expr - 353 | expr . "&=" expr - 354 | expr . "|=" expr - 355 | expr . "^=" expr - 356 | expr . "&&=" expr - 357 | expr . "||=" expr - 358 | expr . "^^=" expr - 359 | expr . "+=" expr - 360 | expr . "-=" expr - 361 | expr . "*=" expr - 362 | expr . "/=" expr - 363 | expr . "%=" expr - 364 | expr . "<<=" expr - 365 | expr . ">>=" expr - 366 | expr . "<<<=" expr - 367 | expr . ">>>=" expr - 372 expr_assign_pipe: expr . '=' expr_assign_pipe_right - 373 | expr . "<-" expr_assign_pipe_right - 374 | expr . "&=" expr_assign_pipe_right - 375 | expr . "|=" expr_assign_pipe_right - 376 | expr . "^=" expr_assign_pipe_right - 377 | expr . "&&=" expr_assign_pipe_right - 378 | expr . "||=" expr_assign_pipe_right - 379 | expr . "^^=" expr_assign_pipe_right - 380 | expr . "+=" expr_assign_pipe_right - 381 | expr . "-=" expr_assign_pipe_right - 382 | expr . "*=" expr_assign_pipe_right - 383 | expr . "/=" expr_assign_pipe_right - 384 | expr . "%=" expr_assign_pipe_right - 385 | expr . "<<=" expr_assign_pipe_right - 386 | expr . ">>=" expr_assign_pipe_right - 387 | expr . "<<<=" expr_assign_pipe_right - 388 | expr . ">>>=" expr_assign_pipe_right - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "+=" shift, and go to state 730 - "-=" shift, and go to state 731 - "/=" shift, and go to state 732 - "*=" shift, and go to state 733 - "%=" shift, and go to state 734 - "&=" shift, and go to state 735 - "|=" shift, and go to state 736 - "^=" shift, and go to state 737 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - "<<=" shift, and go to state 743 - ">>=" shift, and go to state 744 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "<-" shift, and go to state 749 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - ":=" shift, and go to state 755 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "<<<=" shift, and go to state 758 - ">>>=" shift, and go to state 759 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - "&&=" shift, and go to state 763 - "||=" shift, and go to state 764 - "^^=" shift, and go to state 765 - ".." shift, and go to state 766 - '=' shift, and go to state 767 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - '$' shift, and go to state 501 - '@' shift, and go to state 671 - - "if" reduce using rule 67 (expression_if_one_liner) - $default reduce using rule 349 (expr_assign) + 423 expr: expr_field . - block_or_lambda go to state 714 - expr_full_block_assumed_piped go to state 781 + $default reduce using rule 423 (expr) State 546 - 423 expr: expr_mtag . + 463 expr: expr_call . - $default reduce using rule 423 (expr) + $default reduce using rule 463 (expr) State 547 - 412 expr_call: basic_type_declaration . '(' ')' - 413 | basic_type_declaration . '(' expr_list ')' + 67 expression_if_one_liner: expr . + 220 expr_call_pipe: expr . expr_full_block_assumed_piped + 350 expr_assign: expr . + 351 | expr . '=' expr + 352 | expr . "<-" expr + 353 | expr . ":=" expr + 354 | expr . "&=" expr + 355 | expr . "|=" expr + 356 | expr . "^=" expr + 357 | expr . "&&=" expr + 358 | expr . "||=" expr + 359 | expr . "^^=" expr + 360 | expr . "+=" expr + 361 | expr . "-=" expr + 362 | expr . "*=" expr + 363 | expr . "/=" expr + 364 | expr . "%=" expr + 365 | expr . "<<=" expr + 366 | expr . ">>=" expr + 367 | expr . "<<<=" expr + 368 | expr . ">>>=" expr + 373 expr_assign_pipe: expr . '=' expr_assign_pipe_right + 374 | expr . "<-" expr_assign_pipe_right + 375 | expr . "&=" expr_assign_pipe_right + 376 | expr . "|=" expr_assign_pipe_right + 377 | expr . "^=" expr_assign_pipe_right + 378 | expr . "&&=" expr_assign_pipe_right + 379 | expr . "||=" expr_assign_pipe_right + 380 | expr . "^^=" expr_assign_pipe_right + 381 | expr . "+=" expr_assign_pipe_right + 382 | expr . "-=" expr_assign_pipe_right + 383 | expr . "*=" expr_assign_pipe_right + 384 | expr . "/=" expr_assign_pipe_right + 385 | expr . "%=" expr_assign_pipe_right + 386 | expr . "<<=" expr_assign_pipe_right + 387 | expr . ">>=" expr_assign_pipe_right + 388 | expr . "<<<=" expr_assign_pipe_right + 389 | expr . ">>>=" expr_assign_pipe_right + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "+=" shift, and go to state 732 + "-=" shift, and go to state 733 + "/=" shift, and go to state 734 + "*=" shift, and go to state 735 + "%=" shift, and go to state 736 + "&=" shift, and go to state 737 + "|=" shift, and go to state 738 + "^=" shift, and go to state 739 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + "<<=" shift, and go to state 745 + ">>=" shift, and go to state 746 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "<-" shift, and go to state 751 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + ":=" shift, and go to state 757 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "<<<=" shift, and go to state 760 + ">>>=" shift, and go to state 761 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + "&&=" shift, and go to state 765 + "||=" shift, and go to state 766 + "^^=" shift, and go to state 767 + ".." shift, and go to state 768 + '=' shift, and go to state 769 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + '$' shift, and go to state 503 + '@' shift, and go to state 673 + + "if" reduce using rule 67 (expression_if_one_liner) + $default reduce using rule 350 (expr_assign) - '(' shift, and go to state 782 + block_or_lambda go to state 716 + expr_full_block_assumed_piped go to state 783 State 548 - 419 expr: make_decl . + 424 expr: expr_mtag . - $default reduce using rule 419 (expr) + $default reduce using rule 424 (expr) State 549 - 765 make_decl: make_struct_decl . + 413 expr_call: basic_type_declaration . '(' ')' + 414 | basic_type_declaration . '(' expr_list ')' - $default reduce using rule 765 (make_decl) + '(' shift, and go to state 784 State 550 - 769 make_decl: make_tuple_call . + 420 expr: make_decl . - $default reduce using rule 769 (make_decl) + $default reduce using rule 420 (expr) State 551 - 766 make_decl: make_dim_decl . + 766 make_decl: make_struct_decl . $default reduce using rule 766 (make_decl) State 552 - 767 make_decl: make_table_decl . + 770 make_decl: make_tuple_call . - $default reduce using rule 767 (make_decl) + $default reduce using rule 770 (make_decl) State 553 - 768 make_decl: array_comprehension . + 767 make_decl: make_dim_decl . - $default reduce using rule 768 (make_decl) + $default reduce using rule 767 (make_decl) State 554 - 589 enum_list: enum_list "name" . "end of expression" - 590 | enum_list "name" . '=' expr "end of expression" + 768 make_decl: make_table_decl . - "end of expression" shift, and go to state 783 - '=' shift, and go to state 784 + $default reduce using rule 768 (make_decl) State 555 - 588 enum_list: enum_list "end of expression" . + 769 make_decl: array_comprehension . - $default reduce using rule 588 (enum_list) + $default reduce using rule 769 (make_decl) State 556 - 607 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name "begin of code block" $@41 enum_list $@42 . "end of code block" + 590 enum_list: enum_list "name" . "end of expression" + 591 | enum_list "name" . '=' expr "end of expression" - "end of code block" shift, and go to state 785 + "end of expression" shift, and go to state 785 + '=' shift, and go to state 786 State 557 - 610 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" $@43 . enum_list $@44 "end of code block" - - $default reduce using rule 587 (enum_list) + 589 enum_list: enum_list "end of expression" . - enum_list go to state 786 + $default reduce using rule 589 (enum_list) State 558 - 612 optional_structure_parent: ':' name_in_namespace . + 608 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name "begin of code block" $@41 enum_list $@42 . "end of code block" - $default reduce using rule 612 (optional_structure_parent) + "end of code block" shift, and go to state 787 State 559 - 530 struct_variable_declaration_list: struct_variable_declaration_list . $@34 structure_variable_declaration "end of expression" - 532 | struct_variable_declaration_list . optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@35 function_declaration_header "end of expression" - 534 | struct_variable_declaration_list . optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@36 function_declaration_header expression_block - 535 | struct_variable_declaration_list . '[' annotation_list ']' "end of expression" - 622 optional_struct_variable_declaration_list: "begin of code block" struct_variable_declaration_list . "end of code block" - - "end of code block" shift, and go to state 787 - '[' shift, and go to state 788 + 611 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" $@43 . enum_list $@44 "end of code block" - "def" reduce using rule 119 (optional_annotation_list) - $default reduce using rule 529 ($@34) + $default reduce using rule 588 (enum_list) - optional_annotation_list go to state 789 - $@34 go to state 790 + enum_list go to state 788 State 560 - 578 global_variable_declaration_list: global_variable_declaration_list $@37 optional_field_annotation let_variable_declaration . + 613 optional_structure_parent: ':' name_in_namespace . - $default reduce using rule 578 (global_variable_declaration_list) + $default reduce using rule 613 (optional_structure_parent) State 561 - 515 optional_field_annotation: "[[" annotation_argument_list ']' ']' . + 531 struct_variable_declaration_list: struct_variable_declaration_list . $@34 structure_variable_declaration "end of expression" + 533 | struct_variable_declaration_list . optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@35 function_declaration_header "end of expression" + 535 | struct_variable_declaration_list . optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@36 function_declaration_header expression_block + 536 | struct_variable_declaration_list . '[' annotation_list ']' "end of expression" + 623 optional_struct_variable_declaration_list: "begin of code block" struct_variable_declaration_list . "end of code block" - $default reduce using rule 515 (optional_field_annotation) + "end of code block" shift, and go to state 789 + '[' shift, and go to state 790 + + "def" reduce using rule 119 (optional_annotation_list) + $default reduce using rule 530 ($@34) + + optional_annotation_list go to state 791 + $@34 go to state 792 State 562 - 496 expr: "unsafe" . '(' expr ')' + 579 global_variable_declaration_list: global_variable_declaration_list $@37 optional_field_annotation let_variable_declaration . - '(' shift, and go to state 657 + $default reduce using rule 579 (global_variable_declaration_list) State 563 - 255 expression_keyword: "keyword" . '<' $@7 type_declaration_no_options_list '>' $@8 expr + 516 optional_field_annotation: "[[" annotation_argument_list ']' ']' . - '<' shift, and go to state 691 + $default reduce using rule 516 (optional_field_annotation) State 564 - 497 expr: expression_keyword . + 497 expr: "unsafe" . '(' expr ')' - $default reduce using rule 497 (expr) + '(' shift, and go to state 659 State 565 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 567 let_variable_name_with_pos_list: "$i" '(' expr . ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - ')' shift, and go to state 791 + 255 expression_keyword: "keyword" . '<' $@7 type_declaration_no_options_list '>' $@8 expr + + '<' shift, and go to state 693 State 566 - 568 let_variable_name_with_pos_list: "name" "aka" "name" . + 498 expr: expression_keyword . - $default reduce using rule 568 (let_variable_name_with_pos_list) + $default reduce using rule 498 (expr) State 567 - 569 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" . - 570 | let_variable_name_with_pos_list ',' "name" . "aka" "name" - - "aka" shift, and go to state 792 - - $default reduce using rule 569 (let_variable_name_with_pos_list) + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 568 let_variable_name_with_pos_list: "$i" '(' expr . ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + ')' shift, and go to state 793 State 568 - 571 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options . "end of expression" - 572 | let_variable_name_with_pos_list ':' type_declaration_no_options . copy_or_move_or_clone expr "end of expression" - 573 | let_variable_name_with_pos_list ':' type_declaration_no_options . copy_or_move_or_clone expr_pipe - 686 type_declaration_no_options: type_declaration_no_options . dim_list - 687 | type_declaration_no_options . '[' ']' - 695 | type_declaration_no_options . '-' '[' ']' - 696 | type_declaration_no_options . "explicit" - 697 | type_declaration_no_options . "const" - 698 | type_declaration_no_options . '-' "const" - 699 | type_declaration_no_options . '&' - 700 | type_declaration_no_options . '-' '&' - 701 | type_declaration_no_options . '#' - 702 | type_declaration_no_options . "implicit" - 703 | type_declaration_no_options . '-' '#' - 704 | type_declaration_no_options . "==" "const" - 705 | type_declaration_no_options . "==" '&' - 706 | type_declaration_no_options . '?' - 710 | type_declaration_no_options . "??" - - "const" shift, and go to state 404 - "implicit" shift, and go to state 405 - "explicit" shift, and go to state 406 - "==" shift, and go to state 407 - "<-" shift, and go to state 569 - "??" shift, and go to state 408 - ":=" shift, and go to state 570 - "end of expression" shift, and go to state 793 - '=' shift, and go to state 571 - '?' shift, and go to state 409 - '&' shift, and go to state 410 - '-' shift, and go to state 411 - '[' shift, and go to state 412 - '#' shift, and go to state 413 - - copy_or_move_or_clone go to state 794 - dim_list go to state 414 + 569 let_variable_name_with_pos_list: "name" "aka" "name" . + + $default reduce using rule 569 (let_variable_name_with_pos_list) State 569 - 562 copy_or_move_or_clone: "<-" . + 570 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" . + 571 | let_variable_name_with_pos_list ',' "name" . "aka" "name" - $default reduce using rule 562 (copy_or_move_or_clone) + "aka" shift, and go to state 794 + $default reduce using rule 570 (let_variable_name_with_pos_list) -State 570 - 563 copy_or_move_or_clone: ":=" . +State 570 - $default reduce using rule 563 (copy_or_move_or_clone) + 572 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options . "end of expression" + 573 | let_variable_name_with_pos_list ':' type_declaration_no_options . copy_or_move_or_clone expr "end of expression" + 574 | let_variable_name_with_pos_list ':' type_declaration_no_options . copy_or_move_or_clone expr_pipe + 687 type_declaration_no_options: type_declaration_no_options . dim_list + 688 | type_declaration_no_options . '[' ']' + 696 | type_declaration_no_options . '-' '[' ']' + 697 | type_declaration_no_options . "explicit" + 698 | type_declaration_no_options . "const" + 699 | type_declaration_no_options . '-' "const" + 700 | type_declaration_no_options . '&' + 701 | type_declaration_no_options . '-' '&' + 702 | type_declaration_no_options . '#' + 703 | type_declaration_no_options . "implicit" + 704 | type_declaration_no_options . '-' '#' + 705 | type_declaration_no_options . "==" "const" + 706 | type_declaration_no_options . "==" '&' + 707 | type_declaration_no_options . '?' + 711 | type_declaration_no_options . "??" + + "const" shift, and go to state 406 + "implicit" shift, and go to state 407 + "explicit" shift, and go to state 408 + "==" shift, and go to state 409 + "<-" shift, and go to state 571 + "??" shift, and go to state 410 + ":=" shift, and go to state 572 + "end of expression" shift, and go to state 795 + '=' shift, and go to state 573 + '?' shift, and go to state 411 + '&' shift, and go to state 412 + '-' shift, and go to state 413 + '[' shift, and go to state 414 + '#' shift, and go to state 415 + + copy_or_move_or_clone go to state 796 + dim_list go to state 416 State 571 - 561 copy_or_move_or_clone: '=' . + 563 copy_or_move_or_clone: "<-" . - $default reduce using rule 561 (copy_or_move_or_clone) + $default reduce using rule 563 (copy_or_move_or_clone) State 572 - 574 let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone . expr "end of expression" - 575 | let_variable_name_with_pos_list optional_ref copy_or_move_or_clone . expr_pipe - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$ <|" shift, and go to state 468 - "@ <|" shift, and go to state 469 - "@@ <|" shift, and go to state 470 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expr_call_pipe go to state 515 - expression_keyword go to state 518 - expr_pipe go to state 795 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_assign go to state 639 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 796 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 564 copy_or_move_or_clone: ":=" . + + $default reduce using rule 564 (copy_or_move_or_clone) State 573 - 690 type_declaration_no_options: "type" '<' $@49 . type_declaration '>' $@50 - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 354 - type_declaration go to state 797 + 562 copy_or_move_or_clone: '=' . + + $default reduce using rule 562 (copy_or_move_or_clone) State 574 - 713 type_declaration_no_options: "array" '<' $@54 . type_declaration '>' $@55 - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 354 - type_declaration go to state 798 + 575 let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone . expr "end of expression" + 576 | let_variable_name_with_pos_list optional_ref copy_or_move_or_clone . expr_pipe + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "$ <|" shift, and go to state 470 + "@ <|" shift, and go to state 471 + "@@ <|" shift, and go to state 472 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expr_call_pipe go to state 517 + expression_keyword go to state 520 + expr_pipe go to state 797 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_assign go to state 641 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 798 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 575 - 716 type_declaration_no_options: "table" '<' $@56 . table_type_pair '>' $@57 - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - table_type_pair go to state 799 - type_declaration_no_options go to state 354 - type_declaration go to state 800 + 691 type_declaration_no_options: "type" '<' $@49 . type_declaration '>' $@50 + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 356 + type_declaration go to state 799 State 576 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 691 type_declaration_no_options: "typedecl" '(' expr . ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - ')' shift, and go to state 801 + 714 type_declaration_no_options: "array" '<' $@54 . type_declaration '>' $@55 + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 356 + type_declaration go to state 800 State 577 - 719 type_declaration_no_options: "iterator" '<' $@58 . type_declaration '>' $@59 - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 354 + 717 type_declaration_no_options: "table" '<' $@56 . table_type_pair '>' $@57 + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + table_type_pair go to state 801 + type_declaration_no_options go to state 356 type_declaration go to state 802 State 578 - 709 type_declaration_no_options: "smart_ptr" '<' $@52 . type_declaration '>' $@53 - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 354 - type_declaration go to state 803 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 692 type_declaration_no_options: "typedecl" '(' expr . ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + ')' shift, and go to state 803 State 579 - 668 auto_type_declaration: "auto" '(' "name" . ')' - - ')' shift, and go to state 804 + 720 type_declaration_no_options: "iterator" '<' $@58 . type_declaration '>' $@59 + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 356 + type_declaration go to state 804 State 580 - 677 bitfield_type_declaration: "bitfield" '<' $@47 . bitfield_bits '>' $@48 - - "name" shift, and go to state 805 - - bitfield_bits go to state 806 + 710 type_declaration_no_options: "smart_ptr" '<' $@52 . type_declaration '>' $@53 + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 356 + type_declaration go to state 805 State 581 - 723 type_declaration_no_options: "block" '<' $@60 . type_declaration '>' $@61 - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 354 - type_declaration go to state 807 + 669 auto_type_declaration: "auto" '(' "name" . ')' + ')' shift, and go to state 806 -State 582 - 726 type_declaration_no_options: "block" '<' $@62 . optional_function_argument_list optional_function_type '>' $@63 +State 582 - '(' shift, and go to state 282 + 678 bitfield_type_declaration: "bitfield" '<' $@47 . bitfield_bits '>' $@48 - $default reduce using rule 121 (optional_function_argument_list) + "name" shift, and go to state 807 - optional_function_argument_list go to state 808 + bitfield_bits go to state 808 State 583 - 730 type_declaration_no_options: "function" '<' $@64 . type_declaration '>' $@65 - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 354 + 724 type_declaration_no_options: "block" '<' $@60 . type_declaration '>' $@61 + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 356 type_declaration go to state 809 State 584 - 733 type_declaration_no_options: "function" '<' $@66 . optional_function_argument_list optional_function_type '>' $@67 + 727 type_declaration_no_options: "block" '<' $@62 . optional_function_argument_list optional_function_type '>' $@63 - '(' shift, and go to state 282 + '(' shift, and go to state 284 $default reduce using rule 121 (optional_function_argument_list) @@ -11391,65 +11392,66 @@ State 584 State 585 - 737 type_declaration_no_options: "lambda" '<' $@68 . type_declaration '>' $@69 - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 354 + 731 type_declaration_no_options: "function" '<' $@64 . type_declaration '>' $@65 + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 356 type_declaration go to state 811 State 586 - 740 type_declaration_no_options: "lambda" '<' $@70 . optional_function_argument_list optional_function_type '>' $@71 + 734 type_declaration_no_options: "function" '<' $@66 . optional_function_argument_list optional_function_type '>' $@67 - '(' shift, and go to state 282 + '(' shift, and go to state 284 $default reduce using rule 121 (optional_function_argument_list) @@ -11458,11698 +11460,11821 @@ State 586 State 587 - 743 type_declaration_no_options: "tuple" '<' $@72 . tuple_type_list '>' $@73 - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 606 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - tuple_type go to state 813 - tuple_type_list go to state 814 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 354 - type_declaration go to state 609 + 738 type_declaration_no_options: "lambda" '<' $@68 . type_declaration '>' $@69 + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 356 + type_declaration go to state 813 State 588 - 746 type_declaration_no_options: "variant" '<' $@74 . variant_type_list '>' $@75 + 741 type_declaration_no_options: "lambda" '<' $@70 . optional_function_argument_list optional_function_type '>' $@71 - "name" shift, and go to state 611 + '(' shift, and go to state 284 - variant_type go to state 815 - variant_type_list go to state 816 + $default reduce using rule 121 (optional_function_argument_list) + + optional_function_argument_list go to state 814 State 589 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 669 auto_type_declaration: "$t" '(' expr . ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - ')' shift, and go to state 817 + 744 type_declaration_no_options: "tuple" '<' $@72 . tuple_type_list '>' $@73 + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 608 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + tuple_type go to state 815 + tuple_type_list go to state 816 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 356 + type_declaration go to state 611 State 590 - 694 type_declaration_no_options: '$' name_in_namespace '<' . $@51 type_declaration_no_options_list '>' '(' optional_expr_list ')' + 747 type_declaration_no_options: "variant" '<' $@74 . variant_type_list '>' $@75 - $default reduce using rule 693 ($@51) + "name" shift, and go to state 613 - $@51 go to state 818 + variant_type go to state 817 + variant_type_list go to state 818 State 591 - 692 type_declaration_no_options: '$' name_in_namespace '(' . optional_expr_list ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - $default reduce using rule 247 (optional_expr_list) - - string_builder go to state 503 - expr_reader go to state 504 - optional_expr_list go to state 819 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - expr_list go to state 820 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 707 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 670 auto_type_declaration: "$t" '(' expr . ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + ')' shift, and go to state 819 State 592 - 704 type_declaration_no_options: type_declaration_no_options "==" "const" . + 695 type_declaration_no_options: '$' name_in_namespace '<' . $@51 type_declaration_no_options_list '>' '(' optional_expr_list ')' - $default reduce using rule 704 (type_declaration_no_options) + $default reduce using rule 694 ($@51) + + $@51 go to state 820 State 593 - 705 type_declaration_no_options: type_declaration_no_options "==" '&' . + 693 type_declaration_no_options: '$' name_in_namespace '(' . optional_expr_list ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 - $default reduce using rule 705 (type_declaration_no_options) + $default reduce using rule 247 (optional_expr_list) + + string_builder go to state 505 + expr_reader go to state 506 + optional_expr_list go to state 821 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + expr_list go to state 822 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 709 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 594 - 698 type_declaration_no_options: type_declaration_no_options '-' "const" . + 705 type_declaration_no_options: type_declaration_no_options "==" "const" . - $default reduce using rule 698 (type_declaration_no_options) + $default reduce using rule 705 (type_declaration_no_options) State 595 - 700 type_declaration_no_options: type_declaration_no_options '-' '&' . + 706 type_declaration_no_options: type_declaration_no_options "==" '&' . - $default reduce using rule 700 (type_declaration_no_options) + $default reduce using rule 706 (type_declaration_no_options) State 596 - 695 type_declaration_no_options: type_declaration_no_options '-' '[' . ']' + 699 type_declaration_no_options: type_declaration_no_options '-' "const" . - ']' shift, and go to state 821 + $default reduce using rule 699 (type_declaration_no_options) State 597 - 703 type_declaration_no_options: type_declaration_no_options '-' '#' . + 701 type_declaration_no_options: type_declaration_no_options '-' '&' . - $default reduce using rule 703 (type_declaration_no_options) + $default reduce using rule 701 (type_declaration_no_options) State 598 - 687 type_declaration_no_options: type_declaration_no_options '[' ']' . + 696 type_declaration_no_options: type_declaration_no_options '-' '[' . ']' - $default reduce using rule 687 (type_declaration_no_options) + ']' shift, and go to state 823 State 599 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 680 dim_list: '[' expr . ']' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - ']' shift, and go to state 822 + 704 type_declaration_no_options: type_declaration_no_options '-' '#' . + + $default reduce using rule 704 (type_declaration_no_options) State 600 - 681 dim_list: dim_list '[' . expr ']' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 823 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 688 type_declaration_no_options: type_declaration_no_options '[' ']' . + $default reduce using rule 688 (type_declaration_no_options) -State 601 - 749 type_declaration: type_declaration '|' '#' . +State 601 - $default reduce using rule 749 (type_declaration) + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 681 dim_list: '[' expr . ']' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + ']' shift, and go to state 824 State 602 - 686 type_declaration_no_options: type_declaration_no_options . dim_list - 687 | type_declaration_no_options . '[' ']' - 695 | type_declaration_no_options . '-' '[' ']' - 696 | type_declaration_no_options . "explicit" - 697 | type_declaration_no_options . "const" - 698 | type_declaration_no_options . '-' "const" - 699 | type_declaration_no_options . '&' - 700 | type_declaration_no_options . '-' '&' - 701 | type_declaration_no_options . '#' - 702 | type_declaration_no_options . "implicit" - 703 | type_declaration_no_options . '-' '#' - 704 | type_declaration_no_options . "==" "const" - 705 | type_declaration_no_options . "==" '&' - 706 | type_declaration_no_options . '?' - 710 | type_declaration_no_options . "??" - 748 type_declaration: type_declaration '|' type_declaration_no_options . - - "const" shift, and go to state 404 - "implicit" shift, and go to state 405 - "explicit" shift, and go to state 406 - "==" shift, and go to state 407 - "??" shift, and go to state 408 - '?' shift, and go to state 409 - '&' shift, and go to state 410 - '-' shift, and go to state 411 - '[' shift, and go to state 412 - '#' shift, and go to state 413 - - $default reduce using rule 748 (type_declaration) - - dim_list go to state 414 + 682 dim_list: dim_list '[' . expr ']' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 825 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 603 - 674 bitfield_alias_bits: bitfield_alias_bits "name" . "end of expression" + 750 type_declaration: type_declaration '|' '#' . - "end of expression" shift, and go to state 824 + $default reduce using rule 750 (type_declaration) State 604 - 673 bitfield_alias_bits: bitfield_alias_bits "end of expression" . + 687 type_declaration_no_options: type_declaration_no_options . dim_list + 688 | type_declaration_no_options . '[' ']' + 696 | type_declaration_no_options . '-' '[' ']' + 697 | type_declaration_no_options . "explicit" + 698 | type_declaration_no_options . "const" + 699 | type_declaration_no_options . '-' "const" + 700 | type_declaration_no_options . '&' + 701 | type_declaration_no_options . '-' '&' + 702 | type_declaration_no_options . '#' + 703 | type_declaration_no_options . "implicit" + 704 | type_declaration_no_options . '-' '#' + 705 | type_declaration_no_options . "==" "const" + 706 | type_declaration_no_options . "==" '&' + 707 | type_declaration_no_options . '?' + 711 | type_declaration_no_options . "??" + 749 type_declaration: type_declaration '|' type_declaration_no_options . + + "const" shift, and go to state 406 + "implicit" shift, and go to state 407 + "explicit" shift, and go to state 408 + "==" shift, and go to state 409 + "??" shift, and go to state 410 + '?' shift, and go to state 411 + '&' shift, and go to state 412 + '-' shift, and go to state 413 + '[' shift, and go to state 414 + '#' shift, and go to state 415 - $default reduce using rule 673 (bitfield_alias_bits) + $default reduce using rule 749 (type_declaration) + + dim_list go to state 416 State 605 - 764 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" $@85 "begin of code block" $@86 bitfield_alias_bits $@87 . "end of code block" + 675 bitfield_alias_bits: bitfield_alias_bits "name" . "end of expression" - "end of code block" shift, and go to state 825 + "end of expression" shift, and go to state 826 State 606 - 264 name_in_namespace: "name" . - 265 | "name" . "::" "name" - 541 tuple_type: "name" . ':' type_declaration + 674 bitfield_alias_bits: bitfield_alias_bits "end of expression" . - "::" shift, and go to state 96 - ':' shift, and go to state 826 - - $default reduce using rule 264 (name_in_namespace) + $default reduce using rule 674 (bitfield_alias_bits) State 607 - 545 tuple_alias_type_list: tuple_alias_type_list "end of expression" . + 765 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" $@85 "begin of code block" $@86 bitfield_alias_bits $@87 . "end of code block" - $default reduce using rule 545 (tuple_alias_type_list) + "end of code block" shift, and go to state 827 State 608 - 546 tuple_alias_type_list: tuple_alias_type_list tuple_type . "end of expression" + 264 name_in_namespace: "name" . + 265 | "name" . "::" "name" + 542 tuple_type: "name" . ':' type_declaration + + "::" shift, and go to state 98 + ':' shift, and go to state 828 - "end of expression" shift, and go to state 827 + $default reduce using rule 264 (name_in_namespace) State 609 - 540 tuple_type: type_declaration . - 748 type_declaration: type_declaration . '|' type_declaration_no_options - 749 | type_declaration . '|' '#' - - '|' shift, and go to state 415 + 546 tuple_alias_type_list: tuple_alias_type_list "end of expression" . - $default reduce using rule 540 (tuple_type) + $default reduce using rule 546 (tuple_alias_type_list) State 610 - 754 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" $@77 "begin of code block" $@78 tuple_alias_type_list $@79 . "end of code block" + 547 tuple_alias_type_list: tuple_alias_type_list tuple_type . "end of expression" - "end of code block" shift, and go to state 828 + "end of expression" shift, and go to state 829 State 611 - 547 variant_type: "name" . ':' type_declaration + 541 tuple_type: type_declaration . + 749 type_declaration: type_declaration . '|' type_declaration_no_options + 750 | type_declaration . '|' '#' - ':' shift, and go to state 829 + '|' shift, and go to state 417 + + $default reduce using rule 541 (tuple_type) State 612 - 551 variant_alias_type_list: variant_alias_type_list "end of expression" . + 755 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" $@77 "begin of code block" $@78 tuple_alias_type_list $@79 . "end of code block" - $default reduce using rule 551 (variant_alias_type_list) + "end of code block" shift, and go to state 830 State 613 - 552 variant_alias_type_list: variant_alias_type_list variant_type . "end of expression" + 548 variant_type: "name" . ':' type_declaration - "end of expression" shift, and go to state 830 + ':' shift, and go to state 831 State 614 - 759 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" $@81 "begin of code block" $@82 variant_alias_type_list $@83 . "end of code block" + 552 variant_alias_type_list: variant_alias_type_list "end of expression" . - "end of code block" shift, and go to state 831 + $default reduce using rule 552 (variant_alias_type_list) State 615 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 537 function_argument_declaration: "$a" '(' expr . ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - ')' shift, and go to state 832 + 553 variant_alias_type_list: variant_alias_type_list variant_type . "end of expression" + + "end of expression" shift, and go to state 832 State 616 - 627 variable_name_with_pos_list: "$i" . '(' expr ')' + 760 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" $@81 "begin of code block" $@82 variant_alias_type_list $@83 . "end of code block" - '(' shift, and go to state 833 + "end of code block" shift, and go to state 833 State 617 - 626 variable_name_with_pos_list: "name" . - 628 | "name" . "aka" "name" - - "aka" shift, and go to state 834 - - $default reduce using rule 626 (variable_name_with_pos_list) + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 538 function_argument_declaration: "$a" '(' expr . ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + ')' shift, and go to state 834 State 618 - 536 function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing variable_declaration . + 628 variable_name_with_pos_list: "$i" . '(' expr ')' - $default reduce using rule 536 (function_argument_declaration) + '(' shift, and go to state 835 State 619 - 555 variable_declaration: variable_name_with_pos_list . - 556 | variable_name_with_pos_list . '&' - 557 | variable_name_with_pos_list . ':' type_declaration - 558 | variable_name_with_pos_list . ':' type_declaration copy_or_move expr - 559 | variable_name_with_pos_list . copy_or_move expr - 560 | variable_name_with_pos_list . copy_or_move expr_pipe - 629 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" - 630 | variable_name_with_pos_list . ',' "name" "aka" "name" - - "<-" shift, and go to state 835 - ',' shift, and go to state 836 - '=' shift, and go to state 837 - ':' shift, and go to state 838 - '&' shift, and go to state 839 + 627 variable_name_with_pos_list: "name" . + 629 | "name" . "aka" "name" - $default reduce using rule 555 (variable_declaration) + "aka" shift, and go to state 836 - copy_or_move go to state 840 + $default reduce using rule 627 (variable_name_with_pos_list) State 620 - 539 function_argument_list: function_argument_list "end of expression" function_argument_declaration . + 537 function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing variable_declaration . - $default reduce using rule 539 (function_argument_list) + $default reduce using rule 537 (function_argument_declaration) State 621 - 805 make_struct_decl: "struct" '<' . $@88 type_declaration_no_options '>' $@89 '(' use_initializer make_struct_dim ')' + 556 variable_declaration: variable_name_with_pos_list . + 557 | variable_name_with_pos_list . '&' + 558 | variable_name_with_pos_list . ':' type_declaration + 559 | variable_name_with_pos_list . ':' type_declaration copy_or_move expr + 560 | variable_name_with_pos_list . copy_or_move expr + 561 | variable_name_with_pos_list . copy_or_move expr_pipe + 630 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" + 631 | variable_name_with_pos_list . ',' "name" "aka" "name" + + "<-" shift, and go to state 837 + ',' shift, and go to state 838 + '=' shift, and go to state 839 + ':' shift, and go to state 840 + '&' shift, and go to state 841 - $default reduce using rule 803 ($@88) + $default reduce using rule 556 (variable_declaration) - $@88 go to state 841 + copy_or_move go to state 842 State 622 - 808 make_struct_decl: "class" '<' . $@90 type_declaration_no_options '>' $@91 '(' use_initializer make_struct_dim ')' - - $default reduce using rule 806 ($@90) + 540 function_argument_list: function_argument_list "end of expression" function_argument_declaration . - $@90 go to state 842 + $default reduce using rule 540 (function_argument_list) State 623 - 78 expression_while_loop: "while" expr . expression_block - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - "begin of code block" shift, and go to state 284 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - - expression_block go to state 843 + 806 make_struct_decl: "struct" '<' . $@88 type_declaration_no_options '>' $@89 '(' use_initializer make_struct_dim ')' + $default reduce using rule 804 ($@88) -State 624 + $@88 go to state 843 - 76 expression_for_loop: "for" $@4 . variable_name_with_pos_list "in" expr_list expression_block - "$i" shift, and go to state 616 - "name" shift, and go to state 617 +State 624 - variable_name_with_pos_list go to state 844 + 809 make_struct_decl: "class" '<' . $@90 type_declaration_no_options '>' $@91 '(' use_initializer make_struct_dim ')' + $default reduce using rule 807 ($@90) -State 625 + $@90 go to state 844 - 270 new_type_declaration: '<' . $@11 type_declaration '>' $@12 - $default reduce using rule 268 ($@11) +State 625 - $@11 go to state 845 + 78 expression_while_loop: "while" expr . expression_block + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + "begin of code block" shift, and go to state 286 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + + expression_block go to state 845 State 626 - 272 expr_new: "new" new_type_declaration . - 273 | "new" new_type_declaration . '(' use_initializer ')' - 274 | "new" new_type_declaration . '(' expr_list ')' - 275 | "new" new_type_declaration . '(' use_initializer make_struct_single ')' + 76 expression_for_loop: "for" $@4 . variable_name_with_pos_list "in" expr_list expression_block - '(' shift, and go to state 846 + "$i" shift, and go to state 618 + "name" shift, and go to state 619 - '(' [reduce using rule 272 (expr_new)] - $default reduce using rule 272 (expr_new) + variable_name_with_pos_list go to state 846 State 627 - 271 new_type_declaration: structure_type_declaration . + 271 new_type_declaration: '<' . $@11 type_declaration '>' $@12 - $default reduce using rule 271 (new_type_declaration) + $default reduce using rule 269 ($@11) + + $@11 go to state 847 State 628 - 276 expr_new: "new" make_decl . + 273 expr_new: "new" new_type_declaration . + 274 | "new" new_type_declaration . '(' use_initializer ')' + 275 | "new" new_type_declaration . '(' expr_list ')' + 276 | "new" new_type_declaration . '(' use_initializer make_struct_single ')' - $default reduce using rule 276 (expr_new) + '(' shift, and go to state 848 + '(' [reduce using rule 273 (expr_new)] + $default reduce using rule 273 (expr_new) -State 629 - 318 expr_type_info: "typeinfo" '(' . name_in_namespace expr ')' - 319 | "typeinfo" '(' . name_in_namespace '<' "name" '>' expr ')' - 320 | "typeinfo" '(' . name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' +State 629 - "name" shift, and go to state 58 + 272 new_type_declaration: structure_type_declaration . - name_in_namespace go to state 847 + $default reduce using rule 272 (new_type_declaration) State 630 - 317 expr_type_decl: "type" '<' . $@19 type_declaration '>' $@20 + 277 expr_new: "new" make_decl . - $default reduce using rule 315 ($@19) - - $@19 go to state 848 + $default reduce using rule 277 (expr_new) State 631 - 831 make_dim_decl: "array" "struct" . '<' $@98 type_declaration_no_options '>' $@99 '(' use_initializer make_struct_dim ')' + 319 expr_type_info: "typeinfo" '(' . name_in_namespace expr ')' + 320 | "typeinfo" '(' . name_in_namespace '<' "name" '>' expr ')' + 321 | "typeinfo" '(' . name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' + + "::" shift, and go to state 58 + "name" shift, and go to state 59 - '<' shift, and go to state 849 + name_in_namespace go to state 849 State 632 - 834 make_dim_decl: "array" "tuple" . '<' $@100 type_declaration_no_options '>' $@101 '(' use_initializer make_struct_dim ')' + 318 expr_type_decl: "type" '<' . $@19 type_declaration '>' $@20 - '<' shift, and go to state 850 + $default reduce using rule 316 ($@19) + + $@19 go to state 850 State 633 - 837 make_dim_decl: "array" "variant" . '<' $@102 type_declaration_no_options '>' $@103 '(' make_struct_dim ')' + 832 make_dim_decl: "array" "struct" . '<' $@98 type_declaration_no_options '>' $@99 '(' use_initializer make_struct_dim ')' '<' shift, and go to state 851 State 634 - 841 make_dim_decl: "array" '<' . $@104 type_declaration_no_options '>' $@105 '(' expr_list optional_comma ')' - - $default reduce using rule 839 ($@104) + 835 make_dim_decl: "array" "tuple" . '<' $@100 type_declaration_no_options '>' $@101 '(' use_initializer make_struct_dim ')' - $@104 go to state 852 + '<' shift, and go to state 852 State 635 - 838 make_dim_decl: "array" '(' . expr_list optional_comma ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - expr_list go to state 853 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 707 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 838 make_dim_decl: "array" "variant" . '<' $@102 type_declaration_no_options '>' $@103 '(' make_struct_dim ')' + '<' shift, and go to state 853 -State 636 - 281 expression_return_no_pipe: "return" "<-" . expr_list - 284 expression_return: "return" "<-" . expr_pipe - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$ <|" shift, and go to state 468 - "@ <|" shift, and go to state 469 - "@@ <|" shift, and go to state 470 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expr_call_pipe go to state 515 - expression_keyword go to state 518 - expr_pipe go to state 854 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - expr_list go to state 855 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_assign go to state 639 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 640 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 +State 636 + 842 make_dim_decl: "array" '<' . $@104 type_declaration_no_options '>' $@105 '(' expr_list optional_comma ')' -State 637 + $default reduce using rule 840 ($@104) - 283 expression_return: "return" expr_pipe . + $@104 go to state 854 - $default reduce using rule 283 (expression_return) +State 637 -State 638 + 839 make_dim_decl: "array" '(' . expr_list optional_comma ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + expr_list go to state 855 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 709 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 - 280 expression_return_no_pipe: "return" expr_list . - 322 expr_list: expr_list . ',' expr - ',' shift, and go to state 856 +State 638 - $default reduce using rule 280 (expression_return_no_pipe) + 282 expression_return_no_pipe: "return" "<-" . expr_list + 285 expression_return: "return" "<-" . expr_pipe + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "$ <|" shift, and go to state 470 + "@ <|" shift, and go to state 471 + "@@ <|" shift, and go to state 472 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expr_call_pipe go to state 517 + expression_keyword go to state 520 + expr_pipe go to state 856 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + expr_list go to state 857 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_assign go to state 641 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 642 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 639 - 259 expr_pipe: expr_assign . " <|" expr_block + 284 expression_return: "return" expr_pipe . - " <|" shift, and go to state 726 + $default reduce using rule 284 (expression_return) State 640 - 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 321 expr_list: expr . - 349 expr_assign: expr . - 350 | expr . '=' expr - 351 | expr . "<-" expr - 352 | expr . ":=" expr - 353 | expr . "&=" expr - 354 | expr . "|=" expr - 355 | expr . "^=" expr - 356 | expr . "&&=" expr - 357 | expr . "||=" expr - 358 | expr . "^^=" expr - 359 | expr . "+=" expr - 360 | expr . "-=" expr - 361 | expr . "*=" expr - 362 | expr . "/=" expr - 363 | expr . "%=" expr - 364 | expr . "<<=" expr - 365 | expr . ">>=" expr - 366 | expr . "<<<=" expr - 367 | expr . ">>>=" expr - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "+=" shift, and go to state 857 - "-=" shift, and go to state 858 - "/=" shift, and go to state 859 - "*=" shift, and go to state 860 - "%=" shift, and go to state 861 - "&=" shift, and go to state 862 - "|=" shift, and go to state 863 - "^=" shift, and go to state 864 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - "<<=" shift, and go to state 865 - ">>=" shift, and go to state 866 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "<-" shift, and go to state 867 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - ":=" shift, and go to state 755 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "<<<=" shift, and go to state 868 - ">>>=" shift, and go to state 869 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - "&&=" shift, and go to state 870 - "||=" shift, and go to state 871 - "^^=" shift, and go to state 872 - ".." shift, and go to state 766 - '=' shift, and go to state 873 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - '$' shift, and go to state 501 - '@' shift, and go to state 671 - - " <|" reduce using rule 349 (expr_assign) - $default reduce using rule 321 (expr_list) - - block_or_lambda go to state 714 - expr_full_block_assumed_piped go to state 781 + 281 expression_return_no_pipe: "return" expr_list . + 323 expr_list: expr_list . ',' expr + + ',' shift, and go to state 858 + + $default reduce using rule 281 (expression_return_no_pipe) State 641 - 290 expression_try_catch: "try" expression_block . "recover" expression_block + 259 expr_pipe: expr_assign . " <|" expr_block - "recover" shift, and go to state 874 + " <|" shift, and go to state 728 State 642 - 853 make_table_decl: "table" '<' . type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - 854 | "table" '<' . type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 875 + 220 expr_call_pipe: expr . expr_full_block_assumed_piped + 322 expr_list: expr . + 350 expr_assign: expr . + 351 | expr . '=' expr + 352 | expr . "<-" expr + 353 | expr . ":=" expr + 354 | expr . "&=" expr + 355 | expr . "|=" expr + 356 | expr . "^=" expr + 357 | expr . "&&=" expr + 358 | expr . "||=" expr + 359 | expr . "^^=" expr + 360 | expr . "+=" expr + 361 | expr . "-=" expr + 362 | expr . "*=" expr + 363 | expr . "/=" expr + 364 | expr . "%=" expr + 365 | expr . "<<=" expr + 366 | expr . ">>=" expr + 367 | expr . "<<<=" expr + 368 | expr . ">>>=" expr + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "+=" shift, and go to state 859 + "-=" shift, and go to state 860 + "/=" shift, and go to state 861 + "*=" shift, and go to state 862 + "%=" shift, and go to state 863 + "&=" shift, and go to state 864 + "|=" shift, and go to state 865 + "^=" shift, and go to state 866 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + "<<=" shift, and go to state 867 + ">>=" shift, and go to state 868 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "<-" shift, and go to state 869 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + ":=" shift, and go to state 757 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "<<<=" shift, and go to state 870 + ">>>=" shift, and go to state 871 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + "&&=" shift, and go to state 872 + "||=" shift, and go to state 873 + "^^=" shift, and go to state 874 + ".." shift, and go to state 768 + '=' shift, and go to state 875 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + '$' shift, and go to state 503 + '@' shift, and go to state 673 + + " <|" reduce using rule 350 (expr_assign) + $default reduce using rule 322 (expr_list) + + block_or_lambda go to state 716 + expr_full_block_assumed_piped go to state 783 State 643 - 852 make_table_decl: "table" '(' . expr_map_tuple_list optional_comma ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 688 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_map_tuple go to state 696 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - expr_map_tuple_list go to state 876 - make_table_decl go to state 552 - array_comprehension go to state 553 + 291 expression_try_catch: "try" expression_block . "recover" expression_block + + "recover" shift, and go to state 876 State 644 - 267 expression_delete: "delete" "explicit" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 877 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 854 make_table_decl: "table" '<' . type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + 855 | "table" '<' . type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 877 State 645 - 266 expression_delete: "delete" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - - $default reduce using rule 266 (expression_delete) + 853 make_table_decl: "table" '(' . expr_map_tuple_list optional_comma ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 690 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_map_tuple go to state 698 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + expr_map_tuple_list go to state 878 + make_table_decl go to state 554 + array_comprehension go to state 555 State 646 - 464 expr: "deref" '(' . expr ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 268 expression_delete: "delete" "explicit" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 878 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 879 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 647 - 79 expression_with: "with" expr . expression_block - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - "begin of code block" shift, and go to state 284 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - - expression_block go to state 879 + 267 expression_delete: "delete" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + $default reduce using rule 267 (expression_delete) -State 648 - 81 expression_with_alias: "assume" "name" . '=' $@5 expr +State 648 - '=' shift, and go to state 880 + 465 expr: "deref" '(' . expr ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 880 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 649 - 308 expr_cast: "cast" '<' . $@13 type_declaration_no_options '>' $@14 expr - - $default reduce using rule 306 ($@13) - - $@13 go to state 881 + 79 expression_with: "with" expr . expression_block + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + "begin of code block" shift, and go to state 286 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + + expression_block go to state 881 State 650 - 311 expr_cast: "upcast" '<' . $@15 type_declaration_no_options '>' $@16 expr - - $default reduce using rule 309 ($@15) + 81 expression_with_alias: "assume" "name" . '=' $@5 expr - $@15 go to state 882 + '=' shift, and go to state 882 State 651 - 465 expr: "addr" '(' . expr ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 883 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 309 expr_cast: "cast" '<' . $@13 type_declaration_no_options '>' $@14 expr + $default reduce using rule 307 ($@13) -State 652 + $@13 go to state 883 - 242 expression_any: "pass" "end of expression" . - $default reduce using rule 242 (expression_any) +State 652 + 312 expr_cast: "upcast" '<' . $@15 type_declaration_no_options '>' $@16 expr -State 653 + $default reduce using rule 310 ($@15) - 314 expr_cast: "reinterpret" '<' . $@17 type_declaration_no_options '>' $@18 expr + $@15 go to state 884 - $default reduce using rule 312 ($@17) - $@17 go to state 884 +State 653 + + 466 expr: "addr" '(' . expr ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 885 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 654 - 54 expression_label: "label" "integer constant" . ':' + 242 expression_any: "pass" "end of expression" . - ':' shift, and go to state 885 + $default reduce using rule 242 (expression_any) State 655 - 55 expression_goto: "goto" "label" . "integer constant" + 315 expr_cast: "reinterpret" '<' . $@17 type_declaration_no_options '>' $@18 expr + + $default reduce using rule 313 ($@17) - "integer constant" shift, and go to state 886 + $@17 go to state 886 State 656 - 56 expression_goto: "goto" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 54 expression_label: "label" "integer constant" . ':' - $default reduce using rule 56 (expression_goto) + ':' shift, and go to state 887 State 657 - 496 expr: "unsafe" '(' . expr ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 887 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 55 expression_goto: "goto" "label" . "integer constant" + + "integer constant" shift, and go to state 888 State 658 - 77 expression_unsafe: "unsafe" expression_block . + 56 expression_goto: "goto" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 77 (expression_unsafe) + $default reduce using rule 56 (expression_goto) State 659 - 845 make_dim_decl: "fixed_array" '<' . $@106 type_declaration_no_options '>' $@107 '(' expr_list optional_comma ')' - - $default reduce using rule 843 ($@106) - - $@106 go to state 888 + 497 expr: "unsafe" '(' . expr ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 889 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 660 - 842 make_dim_decl: "fixed_array" '(' . expr_list optional_comma ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - expr_list go to state 889 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 707 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 77 expression_unsafe: "unsafe" expression_block . + + $default reduce using rule 77 (expression_unsafe) State 661 - 814 make_struct_decl: "default" '<' . $@94 type_declaration_no_options '>' $@95 use_initializer + 846 make_dim_decl: "fixed_array" '<' . $@106 type_declaration_no_options '>' $@107 '(' expr_list optional_comma ')' - $default reduce using rule 812 ($@94) + $default reduce using rule 844 ($@106) - $@94 go to state 890 + $@106 go to state 890 State 662 - 823 make_tuple_call: "tuple" '<' . $@96 type_declaration_no_options '>' $@97 '(' use_initializer make_struct_dim ')' + 843 make_dim_decl: "fixed_array" '(' . expr_list optional_comma ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + expr_list go to state 891 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 709 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 - $default reduce using rule 821 ($@96) - $@96 go to state 891 +State 663 + 815 make_struct_decl: "default" '<' . $@94 type_declaration_no_options '>' $@95 use_initializer -State 663 + $default reduce using rule 813 ($@94) - 820 make_tuple_call: "tuple" '(' . expr_list optional_comma ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - expr_list go to state 892 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 707 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + $@94 go to state 892 State 664 - 811 make_struct_decl: "variant" '<' . $@92 type_declaration_no_options '>' $@93 '(' make_struct_dim ')' + 824 make_tuple_call: "tuple" '<' . $@96 type_declaration_no_options '>' $@97 '(' use_initializer make_struct_dim ')' - $default reduce using rule 809 ($@92) + $default reduce using rule 822 ($@96) - $@92 go to state 893 + $@96 go to state 893 State 665 - 466 expr: "generator" '<' . type_declaration_no_options '>' optional_capture_list '(' ')' - 467 | "generator" '<' . type_declaration_no_options '>' optional_capture_list '(' expr ')' - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 894 + 821 make_tuple_call: "tuple" '(' . expr_list optional_comma ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + expr_list go to state 894 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 709 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 666 - 286 expression_yield_no_pipe: "yield" "<-" . expr - 289 expression_yield: "yield" "<-" . expr_pipe - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$ <|" shift, and go to state 468 - "@ <|" shift, and go to state 469 - "@@ <|" shift, and go to state 470 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expr_call_pipe go to state 515 - expression_keyword go to state 518 - expr_pipe go to state 895 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_assign go to state 639 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 896 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 812 make_struct_decl: "variant" '<' . $@92 type_declaration_no_options '>' $@93 '(' make_struct_dim ')' + $default reduce using rule 810 ($@92) -State 667 + $@92 go to state 895 - 288 expression_yield: "yield" expr_pipe . - $default reduce using rule 288 (expression_yield) +State 667 + + 467 expr: "generator" '<' . type_declaration_no_options '>' optional_capture_list '(' ')' + 468 | "generator" '<' . type_declaration_no_options '>' optional_capture_list '(' expr ')' + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 896 State 668 - 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 285 expression_yield_no_pipe: "yield" expr . - 349 expr_assign: expr . - 350 | expr . '=' expr - 351 | expr . "<-" expr - 352 | expr . ":=" expr - 353 | expr . "&=" expr - 354 | expr . "|=" expr - 355 | expr . "^=" expr - 356 | expr . "&&=" expr - 357 | expr . "||=" expr - 358 | expr . "^^=" expr - 359 | expr . "+=" expr - 360 | expr . "-=" expr - 361 | expr . "*=" expr - 362 | expr . "/=" expr - 363 | expr . "%=" expr - 364 | expr . "<<=" expr - 365 | expr . ">>=" expr - 366 | expr . "<<<=" expr - 367 | expr . ">>>=" expr - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "+=" shift, and go to state 857 - "-=" shift, and go to state 858 - "/=" shift, and go to state 859 - "*=" shift, and go to state 860 - "%=" shift, and go to state 861 - "&=" shift, and go to state 862 - "|=" shift, and go to state 863 - "^=" shift, and go to state 864 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - "<<=" shift, and go to state 865 - ">>=" shift, and go to state 866 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "<-" shift, and go to state 867 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - ":=" shift, and go to state 755 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "<<<=" shift, and go to state 868 - ">>>=" shift, and go to state 869 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - "&&=" shift, and go to state 870 - "||=" shift, and go to state 871 - "^^=" shift, and go to state 872 - ".." shift, and go to state 766 - '=' shift, and go to state 873 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - '$' shift, and go to state 501 - '@' shift, and go to state 671 - - " <|" reduce using rule 349 (expr_assign) - $default reduce using rule 285 (expression_yield_no_pipe) - - block_or_lambda go to state 714 - expr_full_block_assumed_piped go to state 781 + 287 expression_yield_no_pipe: "yield" "<-" . expr + 290 expression_yield: "yield" "<-" . expr_pipe + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "$ <|" shift, and go to state 470 + "@ <|" shift, and go to state 471 + "@@ <|" shift, and go to state 472 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expr_call_pipe go to state 517 + expression_keyword go to state 520 + expr_pipe go to state 897 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_assign go to state 641 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 898 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 669 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 450 | "++" expr . - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "->" shift, and go to state 748 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 289 expression_yield: "yield" expr_pipe . - $default reduce using rule 450 (expr) + $default reduce using rule 289 (expression_yield) State 670 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 451 | "--" expr . - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "->" shift, and go to state 748 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 220 expr_call_pipe: expr . expr_full_block_assumed_piped + 286 expression_yield_no_pipe: "yield" expr . + 350 expr_assign: expr . + 351 | expr . '=' expr + 352 | expr . "<-" expr + 353 | expr . ":=" expr + 354 | expr . "&=" expr + 355 | expr . "|=" expr + 356 | expr . "^=" expr + 357 | expr . "&&=" expr + 358 | expr . "||=" expr + 359 | expr . "^^=" expr + 360 | expr . "+=" expr + 361 | expr . "-=" expr + 362 | expr . "*=" expr + 363 | expr . "/=" expr + 364 | expr . "%=" expr + 365 | expr . "<<=" expr + 366 | expr . ">>=" expr + 367 | expr . "<<<=" expr + 368 | expr . ">>>=" expr + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "+=" shift, and go to state 859 + "-=" shift, and go to state 860 + "/=" shift, and go to state 861 + "*=" shift, and go to state 862 + "%=" shift, and go to state 863 + "&=" shift, and go to state 864 + "|=" shift, and go to state 865 + "^=" shift, and go to state 866 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + "<<=" shift, and go to state 867 + ">>=" shift, and go to state 868 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "<-" shift, and go to state 869 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + ":=" shift, and go to state 757 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "<<<=" shift, and go to state 870 + ">>>=" shift, and go to state 871 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + "&&=" shift, and go to state 872 + "||=" shift, and go to state 873 + "^^=" shift, and go to state 874 + ".." shift, and go to state 768 + '=' shift, and go to state 875 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + '$' shift, and go to state 503 + '@' shift, and go to state 673 + + " <|" reduce using rule 350 (expr_assign) + $default reduce using rule 286 (expression_yield_no_pipe) - $default reduce using rule 451 (expr) + block_or_lambda go to state 716 + expr_full_block_assumed_piped go to state 783 State 671 - 327 block_or_lambda: '@' . - 328 | '@' . '@' + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 451 | "++" expr . + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "->" shift, and go to state 750 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - '@' shift, and go to state 897 - - $default reduce using rule 327 (block_or_lambda) + $default reduce using rule 451 (expr) State 672 - 337 expr_block: expression_block . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 452 | "--" expr . + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "->" shift, and go to state 750 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 337 (expr_block) + $default reduce using rule 452 (expr) State 673 - 338 expr_block: block_or_lambda . optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block - - '[' shift, and go to state 15 + 328 block_or_lambda: '@' . + 329 | '@' . '@' - $default reduce using rule 119 (optional_annotation_list) + '@' shift, and go to state 899 - optional_annotation_list go to state 898 + $default reduce using rule 328 (block_or_lambda) State 674 - 262 expr_pipe: "$ <|" expr_block . + 338 expr_block: expression_block . - $default reduce using rule 262 (expr_pipe) + $default reduce using rule 338 (expr_block) State 675 - 260 expr_pipe: "@ <|" expr_block . + 339 expr_block: block_or_lambda . optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block - $default reduce using rule 260 (expr_pipe) + '[' shift, and go to state 15 + + $default reduce using rule 119 (optional_annotation_list) + + optional_annotation_list go to state 900 State 676 - 261 expr_pipe: "@@ <|" expr_block . + 262 expr_pipe: "$ <|" expr_block . - $default reduce using rule 261 (expr_pipe) + $default reduce using rule 262 (expr_pipe) State 677 - 498 expr_mtag: "$$" '(' . expr ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 899 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 260 expr_pipe: "@ <|" expr_block . + + $default reduce using rule 260 (expr_pipe) State 678 - 499 expr_mtag: "$i" '(' . expr ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 900 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 261 expr_pipe: "@@ <|" expr_block . + + $default reduce using rule 261 (expr_pipe) State 679 - 500 expr_mtag: "$v" '(' . expr ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 499 expr_mtag: "$$" '(' . expr ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 901 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 680 - 501 expr_mtag: "$b" '(' . expr ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 500 expr_mtag: "$i" '(' . expr ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 902 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 681 - 502 expr_mtag: "$a" '(' . expr ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 501 expr_mtag: "$v" '(' . expr ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 903 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 682 - 504 expr_mtag: "$c" '(' . expr ')' '(' ')' - 505 | "$c" '(' . expr ')' '(' expr_list ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 502 expr_mtag: "$b" '(' . expr ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 904 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 683 - 861 array_comprehension: "[[" "for" . variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' ']' - - "$i" shift, and go to state 616 - "name" shift, and go to state 617 - - variable_name_with_pos_list go to state 905 + 503 expr_mtag: "$a" '(' . expr ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 905 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 684 - 686 type_declaration_no_options: type_declaration_no_options . dim_list - 687 | type_declaration_no_options . '[' ']' - 695 | type_declaration_no_options . '-' '[' ']' - 696 | type_declaration_no_options . "explicit" - 697 | type_declaration_no_options . "const" - 698 | type_declaration_no_options . '-' "const" - 699 | type_declaration_no_options . '&' - 700 | type_declaration_no_options . '-' '&' - 701 | type_declaration_no_options . '#' - 702 | type_declaration_no_options . "implicit" - 703 | type_declaration_no_options . '-' '#' - 704 | type_declaration_no_options . "==" "const" - 705 | type_declaration_no_options . "==" '&' - 706 | type_declaration_no_options . '?' - 710 | type_declaration_no_options . "??" - 797 make_struct_decl: "[[" type_declaration_no_options . make_struct_dim optional_block optional_trailing_delim_sqr_sqr - 798 | "[[" type_declaration_no_options . optional_block optional_trailing_delim_sqr_sqr - 799 | "[[" type_declaration_no_options . '(' ')' optional_block optional_trailing_delim_sqr_sqr - 800 | "[[" type_declaration_no_options . '(' ')' make_struct_dim optional_block optional_trailing_delim_sqr_sqr - 827 make_dim_decl: "[[" type_declaration_no_options . make_dim optional_trailing_semicolon_sqr_sqr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "const" shift, and go to state 404 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "where" shift, and go to state 906 - "reinterpret" shift, and go to state 455 - "implicit" shift, and go to state 405 - "explicit" shift, and go to state 406 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "==" shift, and go to state 407 - "??" shift, and go to state 408 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "$f" shift, and go to state 907 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 908 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '?' shift, and go to state 409 - '&' shift, and go to state 410 - '-' shift, and go to state 909 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 505 expr_mtag: "$c" '(' . expr ')' '(' ')' + 506 | "$c" '(' . expr ')' '(' expr_list ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 910 - '(' shift, and go to state 911 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - '#' shift, and go to state 413 - - $default reduce using rule 781 (optional_block) - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 912 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - dim_list go to state 414 - make_decl go to state 548 - make_struct_fields go to state 913 - make_struct_dim go to state 914 - optional_block go to state 915 - make_struct_decl go to state 549 - make_tuple go to state 916 - make_tuple_call go to state 550 - make_dim go to state 917 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 906 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 685 - 862 array_comprehension: "[{" "for" . variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where "end of code block" ']' + 862 array_comprehension: "[[" "for" . variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' ']' - "$i" shift, and go to state 616 - "name" shift, and go to state 617 + "$i" shift, and go to state 618 + "name" shift, and go to state 619 - variable_name_with_pos_list go to state 918 + variable_name_with_pos_list go to state 907 State 686 - 686 type_declaration_no_options: type_declaration_no_options . dim_list - 687 | type_declaration_no_options . '[' ']' - 695 | type_declaration_no_options . '-' '[' ']' - 696 | type_declaration_no_options . "explicit" - 697 | type_declaration_no_options . "const" - 698 | type_declaration_no_options . '-' "const" - 699 | type_declaration_no_options . '&' - 700 | type_declaration_no_options . '-' '&' - 701 | type_declaration_no_options . '#' - 702 | type_declaration_no_options . "implicit" - 703 | type_declaration_no_options . '-' '#' - 704 | type_declaration_no_options . "==" "const" - 705 | type_declaration_no_options . "==" '&' - 706 | type_declaration_no_options . '?' - 710 | type_declaration_no_options . "??" - 801 make_struct_decl: "[{" type_declaration_no_options . make_struct_dim optional_block optional_trailing_delim_cur_sqr - 802 | "[{" type_declaration_no_options . '(' ')' make_struct_dim optional_block optional_trailing_delim_cur_sqr - 828 make_dim_decl: "[{" type_declaration_no_options . make_dim optional_trailing_semicolon_cur_sqr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "const" shift, and go to state 404 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "implicit" shift, and go to state 405 - "explicit" shift, and go to state 406 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "==" shift, and go to state 407 - "??" shift, and go to state 408 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "$f" shift, and go to state 907 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 908 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '?' shift, and go to state 409 - '&' shift, and go to state 410 - '-' shift, and go to state 909 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 687 type_declaration_no_options: type_declaration_no_options . dim_list + 688 | type_declaration_no_options . '[' ']' + 696 | type_declaration_no_options . '-' '[' ']' + 697 | type_declaration_no_options . "explicit" + 698 | type_declaration_no_options . "const" + 699 | type_declaration_no_options . '-' "const" + 700 | type_declaration_no_options . '&' + 701 | type_declaration_no_options . '-' '&' + 702 | type_declaration_no_options . '#' + 703 | type_declaration_no_options . "implicit" + 704 | type_declaration_no_options . '-' '#' + 705 | type_declaration_no_options . "==" "const" + 706 | type_declaration_no_options . "==" '&' + 707 | type_declaration_no_options . '?' + 711 | type_declaration_no_options . "??" + 798 make_struct_decl: "[[" type_declaration_no_options . make_struct_dim optional_block optional_trailing_delim_sqr_sqr + 799 | "[[" type_declaration_no_options . optional_block optional_trailing_delim_sqr_sqr + 800 | "[[" type_declaration_no_options . '(' ')' optional_block optional_trailing_delim_sqr_sqr + 801 | "[[" type_declaration_no_options . '(' ')' make_struct_dim optional_block optional_trailing_delim_sqr_sqr + 828 make_dim_decl: "[[" type_declaration_no_options . make_dim optional_trailing_semicolon_sqr_sqr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "const" shift, and go to state 406 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "where" shift, and go to state 908 + "reinterpret" shift, and go to state 457 + "implicit" shift, and go to state 407 + "explicit" shift, and go to state 408 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "==" shift, and go to state 409 + "??" shift, and go to state 410 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "$f" shift, and go to state 909 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 910 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '?' shift, and go to state 411 + '&' shift, and go to state 412 + '-' shift, and go to state 911 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 910 - '(' shift, and go to state 919 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - '#' shift, and go to state 413 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 912 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - dim_list go to state 414 - make_decl go to state 548 - make_struct_fields go to state 913 - make_struct_dim go to state 920 - make_struct_decl go to state 549 - make_tuple go to state 916 - make_tuple_call go to state 550 - make_dim go to state 921 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 912 + '(' shift, and go to state 913 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + '#' shift, and go to state 415 + + $default reduce using rule 782 (optional_block) + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 914 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + dim_list go to state 416 + make_decl go to state 550 + make_struct_fields go to state 915 + make_struct_dim go to state 916 + optional_block go to state 917 + make_struct_decl go to state 551 + make_tuple go to state 918 + make_tuple_call go to state 552 + make_dim go to state 919 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 687 - 864 array_comprehension: "{{" "for" . variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" "end of code block" + 863 array_comprehension: "[{" "for" . variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where "end of code block" ']' - "$i" shift, and go to state 616 - "name" shift, and go to state 617 + "$i" shift, and go to state 618 + "name" shift, and go to state 619 - variable_name_with_pos_list go to state 922 + variable_name_with_pos_list go to state 920 State 688 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 818 make_map_tuple: expr . "=>" expr - 819 | expr . - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "=>" shift, and go to state 923 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - - $default reduce using rule 819 (make_map_tuple) + 687 type_declaration_no_options: type_declaration_no_options . dim_list + 688 | type_declaration_no_options . '[' ']' + 696 | type_declaration_no_options . '-' '[' ']' + 697 | type_declaration_no_options . "explicit" + 698 | type_declaration_no_options . "const" + 699 | type_declaration_no_options . '-' "const" + 700 | type_declaration_no_options . '&' + 701 | type_declaration_no_options . '-' '&' + 702 | type_declaration_no_options . '#' + 703 | type_declaration_no_options . "implicit" + 704 | type_declaration_no_options . '-' '#' + 705 | type_declaration_no_options . "==" "const" + 706 | type_declaration_no_options . "==" '&' + 707 | type_declaration_no_options . '?' + 711 | type_declaration_no_options . "??" + 802 make_struct_decl: "[{" type_declaration_no_options . make_struct_dim optional_block optional_trailing_delim_cur_sqr + 803 | "[{" type_declaration_no_options . '(' ')' make_struct_dim optional_block optional_trailing_delim_cur_sqr + 829 make_dim_decl: "[{" type_declaration_no_options . make_dim optional_trailing_semicolon_cur_sqr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "const" shift, and go to state 406 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "implicit" shift, and go to state 407 + "explicit" shift, and go to state 408 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "==" shift, and go to state 409 + "??" shift, and go to state 410 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "$f" shift, and go to state 909 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 910 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '?' shift, and go to state 411 + '&' shift, and go to state 412 + '-' shift, and go to state 911 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 912 + '(' shift, and go to state 921 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + '#' shift, and go to state 415 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 914 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + dim_list go to state 416 + make_decl go to state 550 + make_struct_fields go to state 915 + make_struct_dim go to state 922 + make_struct_decl go to state 551 + make_tuple go to state 918 + make_tuple_call go to state 552 + make_dim go to state 923 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 689 - 846 make_table: make_map_tuple . - - $default reduce using rule 846 (make_table) + 865 array_comprehension: "{{" "for" . variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" "end of code block" + "$i" shift, and go to state 618 + "name" shift, and go to state 619 -State 690 + variable_name_with_pos_list go to state 924 - 847 make_table: make_table . "end of expression" make_map_tuple - 851 make_table_decl: "{{" make_table . optional_trailing_semicolon_cur_cur - "end of code block" shift, and go to state 924 - "end of expression" shift, and go to state 925 - ";}}" shift, and go to state 926 +State 690 - optional_trailing_semicolon_cur_cur go to state 927 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 819 make_map_tuple: expr . "=>" expr + 820 | expr . + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "=>" shift, and go to state 925 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + + $default reduce using rule 820 (make_map_tuple) State 691 - 255 expression_keyword: "keyword" '<' . $@7 type_declaration_no_options_list '>' $@8 expr - - $default reduce using rule 253 ($@7) + 847 make_table: make_map_tuple . - $@7 go to state 928 + $default reduce using rule 847 (make_table) State 692 - 246 expr_keyword: "keyword" expr . expression_block - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - "begin of code block" shift, and go to state 284 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - - expression_block go to state 929 + 848 make_table: make_table . "end of expression" make_map_tuple + 852 make_table_decl: "{{" make_table . optional_trailing_semicolon_cur_cur + "end of code block" shift, and go to state 926 + "end of expression" shift, and go to state 927 + ";}}" shift, and go to state 928 -State 693 + optional_trailing_semicolon_cur_cur go to state 929 - 258 expression_keyword: "type function" '<' . $@9 type_declaration_no_options_list '>' $@10 optional_expr_list_in_braces - $default reduce using rule 256 ($@9) +State 693 - $@9 go to state 930 + 255 expression_keyword: "keyword" '<' . $@7 type_declaration_no_options_list '>' $@8 expr + $default reduce using rule 253 ($@7) -State 694 + $@7 go to state 930 - 29 string_builder_body: string_builder_body . character_sequence - 30 | string_builder_body . "{" expr "}" - 31 string_builder: "start of the string" string_builder_body . "end of the string" - STRING_CHARACTER shift, and go to state 160 - STRING_CHARACTER_ESC shift, and go to state 161 - "end of the string" shift, and go to state 931 - "{" shift, and go to state 932 +State 694 - character_sequence go to state 933 + 246 expr_keyword: "keyword" expr . expression_block + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + "begin of code block" shift, and go to state 286 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + + expression_block go to state 931 State 695 - 863 array_comprehension: "begin of code block" "for" . variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" + 258 expression_keyword: "type function" '<' . $@9 type_declaration_no_options_list '>' $@10 optional_expr_list_in_braces - "$i" shift, and go to state 616 - "name" shift, and go to state 617 + $default reduce using rule 256 ($@9) - variable_name_with_pos_list go to state 934 + $@9 go to state 932 State 696 - 848 expr_map_tuple_list: make_map_tuple . + 29 string_builder_body: string_builder_body . character_sequence + 30 | string_builder_body . "{" expr "}" + 31 string_builder: "start of the string" string_builder_body . "end of the string" + + STRING_CHARACTER shift, and go to state 162 + STRING_CHARACTER_ESC shift, and go to state 163 + "end of the string" shift, and go to state 933 + "{" shift, and go to state 934 - $default reduce using rule 848 (expr_map_tuple_list) + character_sequence go to state 935 State 697 - 849 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple - 850 make_table_decl: "begin of code block" expr_map_tuple_list . optional_comma "end of code block" - - ',' shift, and go to state 935 + 864 array_comprehension: "begin of code block" "for" . variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" - $default reduce using rule 857 (optional_comma) + "$i" shift, and go to state 618 + "name" shift, and go to state 619 - optional_comma go to state 936 + variable_name_with_pos_list go to state 936 State 698 - 219 expression_block: "begin of code block" expressions "end of code block" "finally" . "begin of code block" expressions "end of code block" + 849 expr_map_tuple_list: make_map_tuple . - "begin of code block" shift, and go to state 937 + $default reduce using rule 849 (expr_map_tuple_list) State 699 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 427 expr: '-' expr . - 428 | expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "->" shift, and go to state 748 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 850 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple + 851 make_table_decl: "begin of code block" expr_map_tuple_list . optional_comma "end of code block" - $default reduce using rule 427 (expr) + ',' shift, and go to state 937 + + $default reduce using rule 858 (optional_comma) + + optional_comma go to state 938 State 700 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 426 expr: '+' expr . - 428 | expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "->" shift, and go to state 748 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 219 expression_block: "begin of code block" expressions "end of code block" "finally" . "begin of code block" expressions "end of code block" - $default reduce using rule 426 (expr) + "begin of code block" shift, and go to state 939 State 701 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 463 | '*' expr . - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 428 expr: '-' expr . + 429 | expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "->" shift, and go to state 750 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 463 (expr) + $default reduce using rule 428 (expr) State 702 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 425 expr: '~' expr . - 428 | expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "->" shift, and go to state 748 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 427 expr: '+' expr . + 429 | expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "->" shift, and go to state 750 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 425 (expr) + $default reduce using rule 427 (expr) State 703 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 424 expr: '!' expr . - 428 | expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "->" shift, and go to state 748 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 464 | '*' expr . + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 424 (expr) + $default reduce using rule 464 (expr) State 704 - 859 array_comprehension: '[' "for" . variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 426 expr: '~' expr . + 429 | expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "->" shift, and go to state 750 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - "$i" shift, and go to state 616 - "name" shift, and go to state 617 - - variable_name_with_pos_list go to state 938 + $default reduce using rule 426 (expr) State 705 - 860 array_comprehension: '[' "iterator" . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 425 expr: '!' expr . + 429 | expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "->" shift, and go to state 750 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - "for" shift, and go to state 939 + $default reduce using rule 425 (expr) State 706 - 322 expr_list: expr_list . ',' expr - 826 make_dim_decl: '[' expr_list . optional_comma ']' + 860 array_comprehension: '[' "for" . variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - ',' shift, and go to state 940 + "$i" shift, and go to state 618 + "name" shift, and go to state 619 - $default reduce using rule 857 (optional_comma) - - optional_comma go to state 941 + variable_name_with_pos_list go to state 940 State 707 - 321 expr_list: expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - - $default reduce using rule 321 (expr_list) + 861 array_comprehension: '[' "iterator" . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + + "for" shift, and go to state 941 State 708 - 322 expr_list: expr_list . ',' expr - 454 expr: '(' expr_list . optional_comma ')' + 323 expr_list: expr_list . ',' expr + 827 make_dim_decl: '[' expr_list . optional_comma ']' - ',' shift, and go to state 940 + ',' shift, and go to state 942 - $default reduce using rule 857 (optional_comma) + $default reduce using rule 858 (optional_comma) - optional_comma go to state 942 + optional_comma go to state 943 State 709 - 328 block_or_lambda: '@' '@' . - 395 func_addr_expr: '@' '@' . func_addr_name - 398 | '@' '@' . '<' $@22 type_declaration_no_options '>' $@23 func_addr_name - 401 | '@' '@' . '<' $@24 optional_function_argument_list optional_function_type '>' $@25 func_addr_name - 513 expr_mtag: '@' '@' . "$c" '(' expr ')' + 322 expr_list: expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - "$i" shift, and go to state 943 - "$c" shift, and go to state 944 - "name" shift, and go to state 58 - '<' shift, and go to state 945 + $default reduce using rule 322 (expr_list) - $default reduce using rule 328 (block_or_lambda) - name_in_namespace go to state 946 - func_addr_name go to state 947 +State 710 + 323 expr_list: expr_list . ',' expr + 455 expr: '(' expr_list . optional_comma ')' -State 710 + ',' shift, and go to state 942 + + $default reduce using rule 858 (optional_comma) + + optional_comma go to state 944 + + +State 711 + + 329 block_or_lambda: '@' '@' . + 396 func_addr_expr: '@' '@' . func_addr_name + 399 | '@' '@' . '<' $@22 type_declaration_no_options '>' $@23 func_addr_name + 402 | '@' '@' . '<' $@24 optional_function_argument_list optional_function_type '>' $@25 func_addr_name + 514 expr_mtag: '@' '@' . "$c" '(' expr ')' + + "::" shift, and go to state 58 + "$i" shift, and go to state 945 + "$c" shift, and go to state 946 + "name" shift, and go to state 59 + '<' shift, and go to state 947 + + $default reduce using rule 329 (block_or_lambda) + + name_in_namespace go to state 948 + func_addr_name go to state 949 + + +State 712 240 expression_any: expression_label "end of expression" . $default reduce using rule 240 (expression_any) -State 711 +State 713 241 expression_any: expression_goto "end of expression" . $default reduce using rule 241 (expression_any) -State 712 +State 714 72 expression_if_then_else: if_or_static_if expr . expression_block expression_else - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - "begin of code block" shift, and go to state 284 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - - expression_block go to state 948 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + "begin of code block" shift, and go to state 286 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + + expression_block go to state 950 -State 713 +State 715 74 expression_if_then_else: expression_if_one_liner "if" . $@3 expr expression_else_one_liner "end of expression" $default reduce using rule 73 ($@3) - $@3 go to state 949 + $@3 go to state 951 -State 714 +State 716 - 341 expr_full_block_assumed_piped: block_or_lambda . $@21 optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block + 342 expr_full_block_assumed_piped: block_or_lambda . $@21 optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block - $default reduce using rule 340 ($@21) + $default reduce using rule 341 ($@21) - $@21 go to state 950 + $@21 go to state 952 -State 715 +State 717 221 expr_call_pipe: expression_keyword expr_full_block_assumed_piped . $default reduce using rule 221 (expr_call_pipe) -State 716 +State 718 - 495 expr: name_in_namespace "name" . + 496 expr: name_in_namespace "name" . - $default reduce using rule 495 (expr) + $default reduce using rule 496 (expr) -State 717 +State 719 - 389 expr_named_call: name_in_namespace '(' . '[' make_struct_fields ']' ')' - 390 | name_in_namespace '(' . expr_list ',' '[' make_struct_fields ']' ')' - 409 expr_call: name_in_namespace '(' . ')' - 410 | name_in_namespace '(' . make_struct_single ')' - 411 | name_in_namespace '(' . expr_list ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "$f" shift, and go to state 907 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 908 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 390 expr_named_call: name_in_namespace '(' . '[' make_struct_fields ']' ')' + 391 | name_in_namespace '(' . expr_list ',' '[' make_struct_fields ']' ')' + 410 expr_call: name_in_namespace '(' . ')' + 411 | name_in_namespace '(' . make_struct_single ')' + 412 | name_in_namespace '(' . expr_list ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "$f" shift, and go to state 909 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 910 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 951 - '(' shift, and go to state 500 - ')' shift, and go to state 952 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - expr_list go to state 953 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 707 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_fields go to state 954 - make_struct_single go to state 955 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 953 + '(' shift, and go to state 502 + ')' shift, and go to state 954 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + expr_list go to state 955 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 709 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_fields go to state 956 + make_struct_single go to state 957 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 -State 718 +State 720 227 expression_any: expression_delete "end of expression" . $default reduce using rule 227 (expression_any) -State 719 +State 721 234 expression_any: expression_break "end of expression" . $default reduce using rule 234 (expression_any) -State 720 +State 722 235 expression_any: expression_continue "end of expression" . $default reduce using rule 235 (expression_any) -State 721 +State 723 - 282 expression_return: expression_return_no_pipe "end of expression" . + 283 expression_return: expression_return_no_pipe "end of expression" . - $default reduce using rule 282 (expression_return) + $default reduce using rule 283 (expression_return) -State 722 +State 724 - 287 expression_yield: expression_yield_no_pipe "end of expression" . + 288 expression_yield: expression_yield_no_pipe "end of expression" . - $default reduce using rule 287 (expression_yield) + $default reduce using rule 288 (expression_yield) -State 723 +State 725 - 296 optional_in_scope: "inscope" . + 297 optional_in_scope: "inscope" . - $default reduce using rule 296 (optional_in_scope) + $default reduce using rule 297 (optional_in_scope) -State 724 +State 726 - 304 expression_let: kwd_let optional_in_scope . let_variable_declaration - 305 | kwd_let optional_in_scope . tuple_expansion_variable_declaration + 305 expression_let: kwd_let optional_in_scope . let_variable_declaration + 306 | kwd_let optional_in_scope . tuple_expansion_variable_declaration - "$i" shift, and go to state 303 - "[[" shift, and go to state 956 - "name" shift, and go to state 304 - '(' shift, and go to state 957 + "$i" shift, and go to state 305 + "[[" shift, and go to state 958 + "name" shift, and go to state 306 + '(' shift, and go to state 959 - tuple_expansion_variable_declaration go to state 958 - let_variable_name_with_pos_list go to state 305 - let_variable_declaration go to state 959 + tuple_expansion_variable_declaration go to state 960 + let_variable_name_with_pos_list go to state 307 + let_variable_declaration go to state 961 -State 725 +State 727 - 339 expr_full_block: block_or_lambda optional_annotation_list . optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block + 340 expr_full_block: block_or_lambda optional_annotation_list . optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block - "[[" shift, and go to state 960 + "[[" shift, and go to state 962 - $default reduce using rule 335 (optional_capture_list) + $default reduce using rule 336 (optional_capture_list) - optional_capture_list go to state 961 + optional_capture_list go to state 963 -State 726 +State 728 259 expr_pipe: expr_assign " <|" . expr_block - "begin of code block" shift, and go to state 284 - '$' shift, and go to state 501 - '@' shift, and go to state 671 + "begin of code block" shift, and go to state 286 + '$' shift, and go to state 503 + '@' shift, and go to state 673 - expression_block go to state 672 - block_or_lambda go to state 673 - expr_block go to state 962 + expression_block go to state 674 + block_or_lambda go to state 675 + expr_block go to state 964 -State 727 +State 729 226 expression_any: expr_assign "end of expression" . $default reduce using rule 226 (expression_any) -State 728 - - 472 expr: expr "is" . "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr "is" . basic_type_declaration - 474 | expr "is" . "name" - 512 expr_mtag: expr "is" . "$f" '(' expr ')' - - "type" shift, and go to state 963 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "$f" shift, and go to state 964 - "name" shift, and go to state 965 - - basic_type_declaration go to state 966 - - -State 729 +State 730 - 475 expr: expr "as" . "name" - 478 | expr "as" . "type" '<' $@30 type_declaration '>' $@31 - 479 | expr "as" . basic_type_declaration - 510 expr_mtag: expr "as" . "$f" '(' expr ')' - - "type" shift, and go to state 967 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "$f" shift, and go to state 968 - "name" shift, and go to state 969 - - basic_type_declaration go to state 970 + 473 expr: expr "is" . "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr "is" . basic_type_declaration + 475 | expr "is" . "name" + 513 expr_mtag: expr "is" . "$f" '(' expr ')' + + "type" shift, and go to state 965 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "$f" shift, and go to state 966 + "name" shift, and go to state 967 + + basic_type_declaration go to state 968 -State 730 +State 731 - 359 expr_assign: expr "+=" . expr - 380 expr_assign_pipe: expr "+=" . expr_assign_pipe_right - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$ <|" shift, and go to state 971 - "@ <|" shift, and go to state 972 - "@@ <|" shift, and go to state 973 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expr_call_pipe go to state 974 - expression_keyword go to state 518 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_assign_pipe_right go to state 975 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 976 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 476 expr: expr "as" . "name" + 479 | expr "as" . "type" '<' $@30 type_declaration '>' $@31 + 480 | expr "as" . basic_type_declaration + 511 expr_mtag: expr "as" . "$f" '(' expr ')' + + "type" shift, and go to state 969 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "$f" shift, and go to state 970 + "name" shift, and go to state 971 + + basic_type_declaration go to state 972 -State 731 +State 732 - 360 expr_assign: expr "-=" . expr - 381 expr_assign_pipe: expr "-=" . expr_assign_pipe_right - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$ <|" shift, and go to state 971 - "@ <|" shift, and go to state 972 - "@@ <|" shift, and go to state 973 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 360 expr_assign: expr "+=" . expr + 381 expr_assign_pipe: expr "+=" . expr_assign_pipe_right + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "$ <|" shift, and go to state 973 + "@ <|" shift, and go to state 974 + "@@ <|" shift, and go to state 975 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expr_call_pipe go to state 974 - expression_keyword go to state 518 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expr_call_pipe go to state 976 + expression_keyword go to state 520 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 expr_assign_pipe_right go to state 977 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 978 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 -State 732 +State 733 - 362 expr_assign: expr "/=" . expr - 383 expr_assign_pipe: expr "/=" . expr_assign_pipe_right - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$ <|" shift, and go to state 971 - "@ <|" shift, and go to state 972 - "@@ <|" shift, and go to state 973 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 361 expr_assign: expr "-=" . expr + 382 expr_assign_pipe: expr "-=" . expr_assign_pipe_right + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "$ <|" shift, and go to state 973 + "@ <|" shift, and go to state 974 + "@@ <|" shift, and go to state 975 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expr_call_pipe go to state 974 - expression_keyword go to state 518 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expr_call_pipe go to state 976 + expression_keyword go to state 520 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 expr_assign_pipe_right go to state 979 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 980 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 -State 733 +State 734 - 361 expr_assign: expr "*=" . expr - 382 expr_assign_pipe: expr "*=" . expr_assign_pipe_right - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$ <|" shift, and go to state 971 - "@ <|" shift, and go to state 972 - "@@ <|" shift, and go to state 973 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 363 expr_assign: expr "/=" . expr + 384 expr_assign_pipe: expr "/=" . expr_assign_pipe_right + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "$ <|" shift, and go to state 973 + "@ <|" shift, and go to state 974 + "@@ <|" shift, and go to state 975 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expr_call_pipe go to state 974 - expression_keyword go to state 518 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expr_call_pipe go to state 976 + expression_keyword go to state 520 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 expr_assign_pipe_right go to state 981 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 982 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 -State 734 +State 735 - 363 expr_assign: expr "%=" . expr - 384 expr_assign_pipe: expr "%=" . expr_assign_pipe_right - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$ <|" shift, and go to state 971 - "@ <|" shift, and go to state 972 - "@@ <|" shift, and go to state 973 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 362 expr_assign: expr "*=" . expr + 383 expr_assign_pipe: expr "*=" . expr_assign_pipe_right + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "$ <|" shift, and go to state 973 + "@ <|" shift, and go to state 974 + "@@ <|" shift, and go to state 975 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expr_call_pipe go to state 974 - expression_keyword go to state 518 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expr_call_pipe go to state 976 + expression_keyword go to state 520 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 expr_assign_pipe_right go to state 983 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 984 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 -State 735 +State 736 - 353 expr_assign: expr "&=" . expr - 374 expr_assign_pipe: expr "&=" . expr_assign_pipe_right - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$ <|" shift, and go to state 971 - "@ <|" shift, and go to state 972 - "@@ <|" shift, and go to state 973 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 364 expr_assign: expr "%=" . expr + 385 expr_assign_pipe: expr "%=" . expr_assign_pipe_right + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "$ <|" shift, and go to state 973 + "@ <|" shift, and go to state 974 + "@@ <|" shift, and go to state 975 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expr_call_pipe go to state 974 - expression_keyword go to state 518 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expr_call_pipe go to state 976 + expression_keyword go to state 520 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 expr_assign_pipe_right go to state 985 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 986 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 -State 736 +State 737 - 354 expr_assign: expr "|=" . expr - 375 expr_assign_pipe: expr "|=" . expr_assign_pipe_right - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$ <|" shift, and go to state 971 - "@ <|" shift, and go to state 972 - "@@ <|" shift, and go to state 973 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 354 expr_assign: expr "&=" . expr + 375 expr_assign_pipe: expr "&=" . expr_assign_pipe_right + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "$ <|" shift, and go to state 973 + "@ <|" shift, and go to state 974 + "@@ <|" shift, and go to state 975 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expr_call_pipe go to state 974 - expression_keyword go to state 518 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expr_call_pipe go to state 976 + expression_keyword go to state 520 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 expr_assign_pipe_right go to state 987 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 988 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 -State 737 +State 738 - 355 expr_assign: expr "^=" . expr - 376 expr_assign_pipe: expr "^=" . expr_assign_pipe_right - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$ <|" shift, and go to state 971 - "@ <|" shift, and go to state 972 - "@@ <|" shift, and go to state 973 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 355 expr_assign: expr "|=" . expr + 376 expr_assign_pipe: expr "|=" . expr_assign_pipe_right + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "$ <|" shift, and go to state 973 + "@ <|" shift, and go to state 974 + "@@ <|" shift, and go to state 975 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expr_call_pipe go to state 974 - expression_keyword go to state 518 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expr_call_pipe go to state 976 + expression_keyword go to state 520 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 expr_assign_pipe_right go to state 989 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 990 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 - - -State 738 - - 428 expr: expr "<<" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 991 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 739 - 429 expr: expr ">>" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 356 expr_assign: expr "^=" . expr + 377 expr_assign_pipe: expr "^=" . expr_assign_pipe_right + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "$ <|" shift, and go to state 973 + "@ <|" shift, and go to state 974 + "@@ <|" shift, and go to state 975 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expr_call_pipe go to state 976 + expression_keyword go to state 520 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_assign_pipe_right go to state 991 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 992 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 740 - 452 expr: expr "++" . - - $default reduce using rule 452 (expr) + 429 expr: expr "<<" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 993 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 741 - 453 expr: expr "--" . - - $default reduce using rule 453 (expr) + 430 expr: expr ">>" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 994 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 742 - 441 expr: expr "<=" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 993 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 453 expr: expr "++" . + + $default reduce using rule 453 (expr) State 743 - 364 expr_assign: expr "<<=" . expr - 385 expr_assign_pipe: expr "<<=" . expr_assign_pipe_right - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$ <|" shift, and go to state 971 - "@ <|" shift, and go to state 972 - "@@ <|" shift, and go to state 973 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expr_call_pipe go to state 974 - expression_keyword go to state 518 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_assign_pipe_right go to state 994 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 995 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 454 expr: expr "--" . + + $default reduce using rule 454 (expr) State 744 - 365 expr_assign: expr ">>=" . expr - 386 expr_assign_pipe: expr ">>=" . expr_assign_pipe_right - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$ <|" shift, and go to state 971 - "@ <|" shift, and go to state 972 - "@@ <|" shift, and go to state 973 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 442 expr: expr "<=" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expr_call_pipe go to state 974 - expression_keyword go to state 518 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_assign_pipe_right go to state 996 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 997 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 995 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 745 - 442 expr: expr ">=" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 365 expr_assign: expr "<<=" . expr + 386 expr_assign_pipe: expr "<<=" . expr_assign_pipe_right + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "$ <|" shift, and go to state 973 + "@ <|" shift, and go to state 974 + "@@ <|" shift, and go to state 975 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 998 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expr_call_pipe go to state 976 + expression_keyword go to state 520 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_assign_pipe_right go to state 996 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 997 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 746 - 439 expr: expr "==" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 366 expr_assign: expr ">>=" . expr + 387 expr_assign_pipe: expr ">>=" . expr_assign_pipe_right + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "$ <|" shift, and go to state 973 + "@ <|" shift, and go to state 974 + "@@ <|" shift, and go to state 975 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expr_call_pipe go to state 976 + expression_keyword go to state 520 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_assign_pipe_right go to state 998 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 999 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 747 - 440 expr: expr "!=" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 443 expr: expr ">=" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1000 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 748 - 391 expr_method_call: expr "->" . "name" '(' ')' - 392 | expr "->" . "name" '(' expr_list ')' - - "name" shift, and go to state 1001 + 440 expr: expr "==" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1001 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 749 - 351 expr_assign: expr "<-" . expr - 373 expr_assign_pipe: expr "<-" . expr_assign_pipe_right - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$ <|" shift, and go to state 971 - "@ <|" shift, and go to state 972 - "@@ <|" shift, and go to state 973 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 441 expr: expr "!=" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expr_call_pipe go to state 974 - expression_keyword go to state 518 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_assign_pipe_right go to state 1002 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1003 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1002 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 750 - 468 expr: expr "??" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1004 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 392 expr_method_call: expr "->" . "name" '(' ')' + 393 | expr "->" . "name" '(' expr_list ')' + "name" shift, and go to state 1003 -State 751 - 459 expr: expr "?." . "name" - 507 expr_mtag: expr "?." . "$f" '(' expr ')' +State 751 - "$f" shift, and go to state 1005 - "name" shift, and go to state 1006 + 352 expr_assign: expr "<-" . expr + 374 expr_assign_pipe: expr "<-" . expr_assign_pipe_right + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "$ <|" shift, and go to state 973 + "@ <|" shift, and go to state 974 + "@@ <|" shift, and go to state 975 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expr_call_pipe go to state 976 + expression_keyword go to state 520 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_assign_pipe_right go to state 1004 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1005 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 752 - 457 expr: expr "?[" . expr ']' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 469 expr: expr "??" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1007 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1006 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 753 - 492 expr: expr "<|" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1008 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 460 expr: expr "?." . "name" + 508 expr_mtag: expr "?." . "$f" '(' expr ')' + + "$f" shift, and go to state 1007 + "name" shift, and go to state 1008 State 754 - 493 expr: expr "|>" . expr - 494 | expr "|>" . basic_type_declaration - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 458 expr: expr "?[" . expr ']' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1009 - expr_mtag go to state 546 - basic_type_declaration go to state 1010 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 755 - 352 expr_assign: expr ":=" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 493 expr: expr "<|" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1011 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1010 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 756 - 430 expr: expr "<<<" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 494 expr: expr "|>" . expr + 495 | expr "|>" . basic_type_declaration + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1012 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1011 + expr_mtag go to state 548 + basic_type_declaration go to state 1012 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 757 - 431 expr: expr ">>>" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 353 expr_assign: expr ":=" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1013 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 758 - 366 expr_assign: expr "<<<=" . expr - 387 expr_assign_pipe: expr "<<<=" . expr_assign_pipe_right - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$ <|" shift, and go to state 971 - "@ <|" shift, and go to state 972 - "@@ <|" shift, and go to state 973 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 431 expr: expr "<<<" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expr_call_pipe go to state 974 - expression_keyword go to state 518 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_assign_pipe_right go to state 1014 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1015 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1014 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 759 - 367 expr_assign: expr ">>>=" . expr - 388 expr_assign_pipe: expr ">>>=" . expr_assign_pipe_right - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$ <|" shift, and go to state 971 - "@ <|" shift, and go to state 972 - "@@ <|" shift, and go to state 973 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 432 expr: expr ">>>" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expr_call_pipe go to state 974 - expression_keyword go to state 518 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_assign_pipe_right go to state 1016 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1017 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1015 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 760 - 446 expr: expr "&&" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 367 expr_assign: expr "<<<=" . expr + 388 expr_assign_pipe: expr "<<<=" . expr_assign_pipe_right + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "$ <|" shift, and go to state 973 + "@ <|" shift, and go to state 974 + "@@ <|" shift, and go to state 975 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1018 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expr_call_pipe go to state 976 + expression_keyword go to state 520 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_assign_pipe_right go to state 1016 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1017 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 761 - 447 expr: expr "||" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 368 expr_assign: expr ">>>=" . expr + 389 expr_assign_pipe: expr ">>>=" . expr_assign_pipe_right + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "$ <|" shift, and go to state 973 + "@ <|" shift, and go to state 974 + "@@ <|" shift, and go to state 975 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expr_call_pipe go to state 976 + expression_keyword go to state 520 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_assign_pipe_right go to state 1018 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1019 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 762 - 448 expr: expr "^^" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 447 expr: expr "&&" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1020 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 763 - 356 expr_assign: expr "&&=" . expr - 377 expr_assign_pipe: expr "&&=" . expr_assign_pipe_right - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$ <|" shift, and go to state 971 - "@ <|" shift, and go to state 972 - "@@ <|" shift, and go to state 973 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 448 expr: expr "||" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expr_call_pipe go to state 974 - expression_keyword go to state 518 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_assign_pipe_right go to state 1021 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1022 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1021 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 764 - 357 expr_assign: expr "||=" . expr - 378 expr_assign_pipe: expr "||=" . expr_assign_pipe_right - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$ <|" shift, and go to state 971 - "@ <|" shift, and go to state 972 - "@@ <|" shift, and go to state 973 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 449 expr: expr "^^" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expr_call_pipe go to state 974 - expression_keyword go to state 518 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_assign_pipe_right go to state 1023 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1024 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1022 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 765 - 358 expr_assign: expr "^^=" . expr - 379 expr_assign_pipe: expr "^^=" . expr_assign_pipe_right - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$ <|" shift, and go to state 971 - "@ <|" shift, and go to state 972 - "@@ <|" shift, and go to state 973 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 357 expr_assign: expr "&&=" . expr + 378 expr_assign_pipe: expr "&&=" . expr_assign_pipe_right + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "$ <|" shift, and go to state 973 + "@ <|" shift, and go to state 974 + "@@ <|" shift, and go to state 975 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expr_call_pipe go to state 974 - expression_keyword go to state 518 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_assign_pipe_right go to state 1025 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1026 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expr_call_pipe go to state 976 + expression_keyword go to state 520 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_assign_pipe_right go to state 1023 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1024 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 766 - 449 expr: expr ".." . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 358 expr_assign: expr "||=" . expr + 379 expr_assign_pipe: expr "||=" . expr_assign_pipe_right + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "$ <|" shift, and go to state 973 + "@ <|" shift, and go to state 974 + "@@ <|" shift, and go to state 975 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1027 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expr_call_pipe go to state 976 + expression_keyword go to state 520 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_assign_pipe_right go to state 1025 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1026 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 767 - 350 expr_assign: expr '=' . expr - 372 expr_assign_pipe: expr '=' . expr_assign_pipe_right - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$ <|" shift, and go to state 971 - "@ <|" shift, and go to state 972 - "@@ <|" shift, and go to state 973 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 359 expr_assign: expr "^^=" . expr + 380 expr_assign_pipe: expr "^^=" . expr_assign_pipe_right + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "$ <|" shift, and go to state 973 + "@ <|" shift, and go to state 974 + "@@ <|" shift, and go to state 975 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expr_call_pipe go to state 974 - expression_keyword go to state 518 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_assign_pipe_right go to state 1028 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1029 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expr_call_pipe go to state 976 + expression_keyword go to state 520 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_assign_pipe_right go to state 1027 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1028 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 768 - 469 expr: expr '?' . expr ':' expr - 480 | expr '?' . "as" "name" - 483 | expr '?' . "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr '?' . "as" basic_type_declaration - 511 expr_mtag: expr '?' . "as" "$f" '(' expr ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "as" shift, and go to state 1030 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 450 expr: expr ".." . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1031 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1029 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 769 - 444 expr: expr '|' . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 351 expr_assign: expr '=' . expr + 373 expr_assign_pipe: expr '=' . expr_assign_pipe_right + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "$ <|" shift, and go to state 973 + "@ <|" shift, and go to state 974 + "@@ <|" shift, and go to state 975 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1032 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expr_call_pipe go to state 976 + expression_keyword go to state 520 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_assign_pipe_right go to state 1030 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1031 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 770 - 445 expr: expr '^' . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 470 expr: expr '?' . expr ':' expr + 481 | expr '?' . "as" "name" + 484 | expr '?' . "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr '?' . "as" basic_type_declaration + 512 expr_mtag: expr '?' . "as" "$f" '(' expr ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "as" shift, and go to state 1032 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1033 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 771 - 443 expr: expr '&' . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 445 expr: expr '|' . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1034 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 772 - 437 expr: expr '<' . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 446 expr: expr '^' . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1035 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 773 - 438 expr: expr '>' . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 444 expr: expr '&' . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1036 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 774 - 433 expr: expr '-' . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 438 expr: expr '<' . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1037 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 775 - 432 expr: expr '+' . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 439 expr: expr '>' . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1038 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 776 - 434 expr: expr '*' . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 434 expr: expr '-' . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1039 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 777 - 435 expr: expr '/' . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 433 expr: expr '+' . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1040 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 778 - 436 expr: expr '%' . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 435 expr: expr '*' . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1041 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 779 - 402 expr_field: expr '.' . "name" - 403 | expr '.' . '.' "name" - 404 | expr '.' . "name" '(' ')' - 405 | expr '.' . "name" '(' expr_list ')' - 408 | expr '.' . $@26 error $@27 - 456 expr: expr '.' . '[' expr ']' - 458 | expr '.' . "?[" expr ']' - 460 | expr '.' . "?." "name" - 506 expr_mtag: expr '.' . "$f" '(' expr ')' - 508 | expr '.' . '.' "$f" '(' expr ')' - 509 | expr '.' . "?." "$f" '(' expr ')' - - "?." shift, and go to state 1042 - "?[" shift, and go to state 1043 - "$f" shift, and go to state 1044 - "name" shift, and go to state 1045 - '.' shift, and go to state 1046 - '[' shift, and go to state 1047 - - $default reduce using rule 406 ($@26) - - $@26 go to state 1048 + 436 expr: expr '/' . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1042 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 780 - 455 expr: expr '[' . expr ']' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 437 expr: expr '%' . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1049 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1043 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 781 - 220 expr_call_pipe: expr expr_full_block_assumed_piped . + 403 expr_field: expr '.' . "name" + 404 | expr '.' . '.' "name" + 405 | expr '.' . "name" '(' ')' + 406 | expr '.' . "name" '(' expr_list ')' + 409 | expr '.' . $@26 error $@27 + 457 expr: expr '.' . '[' expr ']' + 459 | expr '.' . "?[" expr ']' + 461 | expr '.' . "?." "name" + 507 expr_mtag: expr '.' . "$f" '(' expr ')' + 509 | expr '.' . '.' "$f" '(' expr ')' + 510 | expr '.' . "?." "$f" '(' expr ')' - $default reduce using rule 220 (expr_call_pipe) + "?." shift, and go to state 1044 + "?[" shift, and go to state 1045 + "$f" shift, and go to state 1046 + "name" shift, and go to state 1047 + '.' shift, and go to state 1048 + '[' shift, and go to state 1049 + + $default reduce using rule 407 ($@26) + + $@26 go to state 1050 State 782 - 412 expr_call: basic_type_declaration '(' . ')' - 413 | basic_type_declaration '(' . expr_list ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 456 expr: expr '[' . expr ']' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - ')' shift, and go to state 1050 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - expr_list go to state 1051 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 707 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1051 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 783 - 589 enum_list: enum_list "name" "end of expression" . + 220 expr_call_pipe: expr expr_full_block_assumed_piped . - $default reduce using rule 589 (enum_list) + $default reduce using rule 220 (expr_call_pipe) State 784 - 590 enum_list: enum_list "name" '=' . expr "end of expression" - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 413 expr_call: basic_type_declaration '(' . ')' + 414 | basic_type_declaration '(' . expr_list ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1052 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + ')' shift, and go to state 1052 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + expr_list go to state 1053 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 709 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 785 - 607 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name "begin of code block" $@41 enum_list $@42 "end of code block" . + 590 enum_list: enum_list "name" "end of expression" . - $default reduce using rule 607 (enum_declaration) + $default reduce using rule 590 (enum_list) State 786 - 588 enum_list: enum_list . "end of expression" - 589 | enum_list . "name" "end of expression" - 590 | enum_list . "name" '=' expr "end of expression" - 610 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" $@43 enum_list . $@44 "end of code block" - - "name" shift, and go to state 554 - "end of expression" shift, and go to state 555 - - $default reduce using rule 609 ($@44) - - $@44 go to state 1053 + 591 enum_list: enum_list "name" '=' . expr "end of expression" + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1054 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 787 - 622 optional_struct_variable_declaration_list: "begin of code block" struct_variable_declaration_list "end of code block" . + 608 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name "begin of code block" $@41 enum_list $@42 "end of code block" . - $default reduce using rule 622 (optional_struct_variable_declaration_list) + $default reduce using rule 608 (enum_declaration) State 788 - 120 optional_annotation_list: '[' . annotation_list ']' - 535 struct_variable_declaration_list: struct_variable_declaration_list '[' . annotation_list ']' "end of expression" + 589 enum_list: enum_list . "end of expression" + 590 | enum_list . "name" "end of expression" + 591 | enum_list . "name" '=' expr "end of expression" + 611 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" $@43 enum_list . $@44 "end of code block" + + "name" shift, and go to state 556 + "end of expression" shift, and go to state 557 - "require" shift, and go to state 60 - "private" shift, and go to state 61 - "|>" shift, and go to state 62 - "name" shift, and go to state 58 - '!' shift, and go to state 63 - '(' shift, and go to state 64 + $default reduce using rule 610 ($@44) - annotation_declaration_name go to state 65 - annotation_declaration_basic go to state 66 - annotation_declaration go to state 67 - annotation_list go to state 1054 - name_in_namespace go to state 69 + $@44 go to state 1055 State 789 - 532 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list . "def" optional_public_or_private_member_variable "abstract" optional_constant $@35 function_declaration_header "end of expression" - 534 | struct_variable_declaration_list optional_annotation_list . "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@36 function_declaration_header expression_block + 623 optional_struct_variable_declaration_list: "begin of code block" struct_variable_declaration_list "end of code block" . - "def" shift, and go to state 1055 + $default reduce using rule 623 (optional_struct_variable_declaration_list) State 790 - 530 struct_variable_declaration_list: struct_variable_declaration_list $@34 . structure_variable_declaration "end of expression" - - "[[" shift, and go to state 216 - '@' shift, and go to state 217 + 120 optional_annotation_list: '[' . annotation_list ']' + 536 struct_variable_declaration_list: struct_variable_declaration_list '[' . annotation_list ']' "end of expression" - $default reduce using rule 514 (optional_field_annotation) + "require" shift, and go to state 61 + "private" shift, and go to state 62 + "|>" shift, and go to state 63 + "::" shift, and go to state 58 + "name" shift, and go to state 59 + '!' shift, and go to state 64 + '(' shift, and go to state 65 - metadata_argument_list go to state 218 - optional_field_annotation go to state 1056 - structure_variable_declaration go to state 1057 + annotation_declaration_name go to state 66 + annotation_declaration_basic go to state 67 + annotation_declaration go to state 68 + annotation_list go to state 1056 + name_in_namespace go to state 70 State 791 - 567 let_variable_name_with_pos_list: "$i" '(' expr ')' . + 533 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list . "def" optional_public_or_private_member_variable "abstract" optional_constant $@35 function_declaration_header "end of expression" + 535 | struct_variable_declaration_list optional_annotation_list . "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@36 function_declaration_header expression_block - $default reduce using rule 567 (let_variable_name_with_pos_list) + "def" shift, and go to state 1057 State 792 - 570 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" "aka" . "name" + 531 struct_variable_declaration_list: struct_variable_declaration_list $@34 . structure_variable_declaration "end of expression" + + "[[" shift, and go to state 218 + '@' shift, and go to state 219 + + $default reduce using rule 515 (optional_field_annotation) - "name" shift, and go to state 1058 + metadata_argument_list go to state 220 + optional_field_annotation go to state 1058 + structure_variable_declaration go to state 1059 State 793 - 571 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" . + 568 let_variable_name_with_pos_list: "$i" '(' expr ')' . - $default reduce using rule 571 (let_variable_declaration) + $default reduce using rule 568 (let_variable_name_with_pos_list) State 794 - 572 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone . expr "end of expression" - 573 | let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone . expr_pipe - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$ <|" shift, and go to state 468 - "@ <|" shift, and go to state 469 - "@@ <|" shift, and go to state 470 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expr_call_pipe go to state 515 - expression_keyword go to state 518 - expr_pipe go to state 1059 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_assign go to state 639 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1060 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 571 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" "aka" . "name" + + "name" shift, and go to state 1060 State 795 - 575 let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr_pipe . + 572 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" . - $default reduce using rule 575 (let_variable_declaration) + $default reduce using rule 572 (let_variable_declaration) State 796 - 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 349 expr_assign: expr . - 350 | expr . '=' expr - 351 | expr . "<-" expr - 352 | expr . ":=" expr - 353 | expr . "&=" expr - 354 | expr . "|=" expr - 355 | expr . "^=" expr - 356 | expr . "&&=" expr - 357 | expr . "||=" expr - 358 | expr . "^^=" expr - 359 | expr . "+=" expr - 360 | expr . "-=" expr - 361 | expr . "*=" expr - 362 | expr . "/=" expr - 363 | expr . "%=" expr - 364 | expr . "<<=" expr - 365 | expr . ">>=" expr - 366 | expr . "<<<=" expr - 367 | expr . ">>>=" expr - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 574 let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr . "end of expression" - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "+=" shift, and go to state 857 - "-=" shift, and go to state 858 - "/=" shift, and go to state 859 - "*=" shift, and go to state 860 - "%=" shift, and go to state 861 - "&=" shift, and go to state 862 - "|=" shift, and go to state 863 - "^=" shift, and go to state 864 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - "<<=" shift, and go to state 865 - ">>=" shift, and go to state 866 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "<-" shift, and go to state 867 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - ":=" shift, and go to state 755 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "<<<=" shift, and go to state 868 - ">>>=" shift, and go to state 869 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - "&&=" shift, and go to state 870 - "||=" shift, and go to state 871 - "^^=" shift, and go to state 872 - ".." shift, and go to state 766 - "end of expression" shift, and go to state 1061 - '=' shift, and go to state 873 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - '$' shift, and go to state 501 - '@' shift, and go to state 671 - - $default reduce using rule 349 (expr_assign) - - block_or_lambda go to state 714 - expr_full_block_assumed_piped go to state 781 + 573 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone . expr "end of expression" + 574 | let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone . expr_pipe + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "$ <|" shift, and go to state 470 + "@ <|" shift, and go to state 471 + "@@ <|" shift, and go to state 472 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expr_call_pipe go to state 517 + expression_keyword go to state 520 + expr_pipe go to state 1061 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_assign go to state 641 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1062 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 797 - 690 type_declaration_no_options: "type" '<' $@49 type_declaration . '>' $@50 - 748 type_declaration: type_declaration . '|' type_declaration_no_options - 749 | type_declaration . '|' '#' + 576 let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr_pipe . - '|' shift, and go to state 415 - '>' shift, and go to state 1062 + $default reduce using rule 576 (let_variable_declaration) State 798 - 713 type_declaration_no_options: "array" '<' $@54 type_declaration . '>' $@55 - 748 type_declaration: type_declaration . '|' type_declaration_no_options - 749 | type_declaration . '|' '#' + 220 expr_call_pipe: expr . expr_full_block_assumed_piped + 350 expr_assign: expr . + 351 | expr . '=' expr + 352 | expr . "<-" expr + 353 | expr . ":=" expr + 354 | expr . "&=" expr + 355 | expr . "|=" expr + 356 | expr . "^=" expr + 357 | expr . "&&=" expr + 358 | expr . "||=" expr + 359 | expr . "^^=" expr + 360 | expr . "+=" expr + 361 | expr . "-=" expr + 362 | expr . "*=" expr + 363 | expr . "/=" expr + 364 | expr . "%=" expr + 365 | expr . "<<=" expr + 366 | expr . ">>=" expr + 367 | expr . "<<<=" expr + 368 | expr . ">>>=" expr + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 575 let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr . "end of expression" + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "+=" shift, and go to state 859 + "-=" shift, and go to state 860 + "/=" shift, and go to state 861 + "*=" shift, and go to state 862 + "%=" shift, and go to state 863 + "&=" shift, and go to state 864 + "|=" shift, and go to state 865 + "^=" shift, and go to state 866 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + "<<=" shift, and go to state 867 + ">>=" shift, and go to state 868 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "<-" shift, and go to state 869 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + ":=" shift, and go to state 757 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "<<<=" shift, and go to state 870 + ">>>=" shift, and go to state 871 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + "&&=" shift, and go to state 872 + "||=" shift, and go to state 873 + "^^=" shift, and go to state 874 + ".." shift, and go to state 768 + "end of expression" shift, and go to state 1063 + '=' shift, and go to state 875 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + '$' shift, and go to state 503 + '@' shift, and go to state 673 + + $default reduce using rule 350 (expr_assign) - '|' shift, and go to state 415 - '>' shift, and go to state 1063 + block_or_lambda go to state 716 + expr_full_block_assumed_piped go to state 783 State 799 - 716 type_declaration_no_options: "table" '<' $@56 table_type_pair . '>' $@57 + 691 type_declaration_no_options: "type" '<' $@49 type_declaration . '>' $@50 + 749 type_declaration: type_declaration . '|' type_declaration_no_options + 750 | type_declaration . '|' '#' + '|' shift, and go to state 417 '>' shift, and go to state 1064 State 800 - 678 table_type_pair: type_declaration . - 679 | type_declaration . "end of expression" type_declaration - 748 type_declaration: type_declaration . '|' type_declaration_no_options - 749 | type_declaration . '|' '#' + 714 type_declaration_no_options: "array" '<' $@54 type_declaration . '>' $@55 + 749 type_declaration: type_declaration . '|' type_declaration_no_options + 750 | type_declaration . '|' '#' - "end of expression" shift, and go to state 1065 - '|' shift, and go to state 415 - - $default reduce using rule 678 (table_type_pair) + '|' shift, and go to state 417 + '>' shift, and go to state 1065 State 801 - 691 type_declaration_no_options: "typedecl" '(' expr ')' . + 717 type_declaration_no_options: "table" '<' $@56 table_type_pair . '>' $@57 - $default reduce using rule 691 (type_declaration_no_options) + '>' shift, and go to state 1066 State 802 - 719 type_declaration_no_options: "iterator" '<' $@58 type_declaration . '>' $@59 - 748 type_declaration: type_declaration . '|' type_declaration_no_options - 749 | type_declaration . '|' '#' + 679 table_type_pair: type_declaration . + 680 | type_declaration . "end of expression" type_declaration + 749 type_declaration: type_declaration . '|' type_declaration_no_options + 750 | type_declaration . '|' '#' - '|' shift, and go to state 415 - '>' shift, and go to state 1066 + "end of expression" shift, and go to state 1067 + '|' shift, and go to state 417 + + $default reduce using rule 679 (table_type_pair) State 803 - 709 type_declaration_no_options: "smart_ptr" '<' $@52 type_declaration . '>' $@53 - 748 type_declaration: type_declaration . '|' type_declaration_no_options - 749 | type_declaration . '|' '#' + 692 type_declaration_no_options: "typedecl" '(' expr ')' . - '|' shift, and go to state 415 - '>' shift, and go to state 1067 + $default reduce using rule 692 (type_declaration_no_options) State 804 - 668 auto_type_declaration: "auto" '(' "name" ')' . + 720 type_declaration_no_options: "iterator" '<' $@58 type_declaration . '>' $@59 + 749 type_declaration: type_declaration . '|' type_declaration_no_options + 750 | type_declaration . '|' '#' - $default reduce using rule 668 (auto_type_declaration) + '|' shift, and go to state 417 + '>' shift, and go to state 1068 State 805 - 670 bitfield_bits: "name" . + 710 type_declaration_no_options: "smart_ptr" '<' $@52 type_declaration . '>' $@53 + 749 type_declaration: type_declaration . '|' type_declaration_no_options + 750 | type_declaration . '|' '#' - $default reduce using rule 670 (bitfield_bits) + '|' shift, and go to state 417 + '>' shift, and go to state 1069 State 806 - 671 bitfield_bits: bitfield_bits . "end of expression" "name" - 677 bitfield_type_declaration: "bitfield" '<' $@47 bitfield_bits . '>' $@48 + 669 auto_type_declaration: "auto" '(' "name" ')' . - "end of expression" shift, and go to state 1068 - '>' shift, and go to state 1069 + $default reduce using rule 669 (auto_type_declaration) State 807 - 723 type_declaration_no_options: "block" '<' $@60 type_declaration . '>' $@61 - 748 type_declaration: type_declaration . '|' type_declaration_no_options - 749 | type_declaration . '|' '#' + 671 bitfield_bits: "name" . - '|' shift, and go to state 415 - '>' shift, and go to state 1070 + $default reduce using rule 671 (bitfield_bits) State 808 - 726 type_declaration_no_options: "block" '<' $@62 optional_function_argument_list . optional_function_type '>' $@63 + 672 bitfield_bits: bitfield_bits . "end of expression" "name" + 678 bitfield_type_declaration: "bitfield" '<' $@47 bitfield_bits . '>' $@48 - ':' shift, and go to state 371 - - $default reduce using rule 124 (optional_function_type) - - optional_function_type go to state 1071 + "end of expression" shift, and go to state 1070 + '>' shift, and go to state 1071 State 809 - 730 type_declaration_no_options: "function" '<' $@64 type_declaration . '>' $@65 - 748 type_declaration: type_declaration . '|' type_declaration_no_options - 749 | type_declaration . '|' '#' + 724 type_declaration_no_options: "block" '<' $@60 type_declaration . '>' $@61 + 749 type_declaration: type_declaration . '|' type_declaration_no_options + 750 | type_declaration . '|' '#' - '|' shift, and go to state 415 + '|' shift, and go to state 417 '>' shift, and go to state 1072 State 810 - 733 type_declaration_no_options: "function" '<' $@66 optional_function_argument_list . optional_function_type '>' $@67 + 727 type_declaration_no_options: "block" '<' $@62 optional_function_argument_list . optional_function_type '>' $@63 - ':' shift, and go to state 371 + ':' shift, and go to state 373 $default reduce using rule 124 (optional_function_type) @@ -23158,19 +23283,19 @@ State 810 State 811 - 737 type_declaration_no_options: "lambda" '<' $@68 type_declaration . '>' $@69 - 748 type_declaration: type_declaration . '|' type_declaration_no_options - 749 | type_declaration . '|' '#' + 731 type_declaration_no_options: "function" '<' $@64 type_declaration . '>' $@65 + 749 type_declaration: type_declaration . '|' type_declaration_no_options + 750 | type_declaration . '|' '#' - '|' shift, and go to state 415 + '|' shift, and go to state 417 '>' shift, and go to state 1074 State 812 - 740 type_declaration_no_options: "lambda" '<' $@70 optional_function_argument_list . optional_function_type '>' $@71 + 734 type_declaration_no_options: "function" '<' $@66 optional_function_argument_list . optional_function_type '>' $@67 - ':' shift, and go to state 371 + ':' shift, and go to state 373 $default reduce using rule 124 (optional_function_type) @@ -23179,31 +23304,36 @@ State 812 State 813 - 542 tuple_type_list: tuple_type . + 738 type_declaration_no_options: "lambda" '<' $@68 type_declaration . '>' $@69 + 749 type_declaration: type_declaration . '|' type_declaration_no_options + 750 | type_declaration . '|' '#' - $default reduce using rule 542 (tuple_type_list) + '|' shift, and go to state 417 + '>' shift, and go to state 1076 State 814 - 543 tuple_type_list: tuple_type_list . "end of expression" tuple_type - 743 type_declaration_no_options: "tuple" '<' $@72 tuple_type_list . '>' $@73 + 741 type_declaration_no_options: "lambda" '<' $@70 optional_function_argument_list . optional_function_type '>' $@71 + + ':' shift, and go to state 373 - "end of expression" shift, and go to state 1076 - '>' shift, and go to state 1077 + $default reduce using rule 124 (optional_function_type) + + optional_function_type go to state 1077 State 815 - 548 variant_type_list: variant_type . + 543 tuple_type_list: tuple_type . - $default reduce using rule 548 (variant_type_list) + $default reduce using rule 543 (tuple_type_list) State 816 - 549 variant_type_list: variant_type_list . "end of expression" variant_type - 746 type_declaration_no_options: "variant" '<' $@74 variant_type_list . '>' $@75 + 544 tuple_type_list: tuple_type_list . "end of expression" tuple_type + 744 type_declaration_no_options: "tuple" '<' $@72 tuple_type_list . '>' $@73 "end of expression" shift, and go to state 1078 '>' shift, and go to state 1079 @@ -23211,7190 +23341,7143 @@ State 816 State 817 - 669 auto_type_declaration: "$t" '(' expr ')' . + 549 variant_type_list: variant_type . - $default reduce using rule 669 (auto_type_declaration) + $default reduce using rule 549 (variant_type_list) State 818 - 694 type_declaration_no_options: '$' name_in_namespace '<' $@51 . type_declaration_no_options_list '>' '(' optional_expr_list ')' - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - type_declaration_no_options_list go to state 1080 - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 354 - type_declaration go to state 1081 + 550 variant_type_list: variant_type_list . "end of expression" variant_type + 747 type_declaration_no_options: "variant" '<' $@74 variant_type_list . '>' $@75 + + "end of expression" shift, and go to state 1080 + '>' shift, and go to state 1081 State 819 - 692 type_declaration_no_options: '$' name_in_namespace '(' optional_expr_list . ')' + 670 auto_type_declaration: "$t" '(' expr ')' . - ')' shift, and go to state 1082 + $default reduce using rule 670 (auto_type_declaration) State 820 - 248 optional_expr_list: expr_list . - 322 expr_list: expr_list . ',' expr - - ',' shift, and go to state 856 - - $default reduce using rule 248 (optional_expr_list) + 695 type_declaration_no_options: '$' name_in_namespace '<' $@51 . type_declaration_no_options_list '>' '(' optional_expr_list ')' + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + type_declaration_no_options_list go to state 1082 + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 356 + type_declaration go to state 1083 State 821 - 695 type_declaration_no_options: type_declaration_no_options '-' '[' ']' . + 693 type_declaration_no_options: '$' name_in_namespace '(' optional_expr_list . ')' - $default reduce using rule 695 (type_declaration_no_options) + ')' shift, and go to state 1084 State 822 - 680 dim_list: '[' expr ']' . + 248 optional_expr_list: expr_list . + 323 expr_list: expr_list . ',' expr + + ',' shift, and go to state 858 - $default reduce using rule 680 (dim_list) + $default reduce using rule 248 (optional_expr_list) State 823 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 681 dim_list: dim_list '[' expr . ']' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - ']' shift, and go to state 1083 + 696 type_declaration_no_options: type_declaration_no_options '-' '[' ']' . + + $default reduce using rule 696 (type_declaration_no_options) State 824 - 674 bitfield_alias_bits: bitfield_alias_bits "name" "end of expression" . + 681 dim_list: '[' expr ']' . - $default reduce using rule 674 (bitfield_alias_bits) + $default reduce using rule 681 (dim_list) State 825 - 764 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" $@85 "begin of code block" $@86 bitfield_alias_bits $@87 "end of code block" . - - $default reduce using rule 764 (bitfield_alias_declaration) + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 682 dim_list: dim_list '[' expr . ']' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + ']' shift, and go to state 1085 State 826 - 541 tuple_type: "name" ':' . type_declaration - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 354 - type_declaration go to state 1084 + 675 bitfield_alias_bits: bitfield_alias_bits "name" "end of expression" . + + $default reduce using rule 675 (bitfield_alias_bits) State 827 - 546 tuple_alias_type_list: tuple_alias_type_list tuple_type "end of expression" . + 765 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias $@84 "name" $@85 "begin of code block" $@86 bitfield_alias_bits $@87 "end of code block" . - $default reduce using rule 546 (tuple_alias_type_list) + $default reduce using rule 765 (bitfield_alias_declaration) State 828 - 754 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" $@77 "begin of code block" $@78 tuple_alias_type_list $@79 "end of code block" . - - $default reduce using rule 754 (tuple_alias_declaration) + 542 tuple_type: "name" ':' . type_declaration + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 356 + type_declaration go to state 1086 State 829 - 547 variant_type: "name" ':' . type_declaration - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 354 - type_declaration go to state 1085 + 547 tuple_alias_type_list: tuple_alias_type_list tuple_type "end of expression" . + + $default reduce using rule 547 (tuple_alias_type_list) State 830 - 552 variant_alias_type_list: variant_alias_type_list variant_type "end of expression" . + 755 tuple_alias_declaration: "tuple" optional_public_or_private_alias $@76 "name" $@77 "begin of code block" $@78 tuple_alias_type_list $@79 "end of code block" . - $default reduce using rule 552 (variant_alias_type_list) + $default reduce using rule 755 (tuple_alias_declaration) State 831 - 759 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" $@81 "begin of code block" $@82 variant_alias_type_list $@83 "end of code block" . - - $default reduce using rule 759 (variant_alias_declaration) + 548 variant_type: "name" ':' . type_declaration + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 356 + type_declaration go to state 1087 State 832 - 537 function_argument_declaration: "$a" '(' expr ')' . + 553 variant_alias_type_list: variant_alias_type_list variant_type "end of expression" . - $default reduce using rule 537 (function_argument_declaration) + $default reduce using rule 553 (variant_alias_type_list) State 833 - 627 variable_name_with_pos_list: "$i" '(' . expr ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1086 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 760 variant_alias_declaration: "variant" optional_public_or_private_alias $@80 "name" $@81 "begin of code block" $@82 variant_alias_type_list $@83 "end of code block" . + + $default reduce using rule 760 (variant_alias_declaration) State 834 - 628 variable_name_with_pos_list: "name" "aka" . "name" + 538 function_argument_declaration: "$a" '(' expr ')' . - "name" shift, and go to state 1087 + $default reduce using rule 538 (function_argument_declaration) State 835 - 554 copy_or_move: "<-" . - - $default reduce using rule 554 (copy_or_move) + 628 variable_name_with_pos_list: "$i" '(' . expr ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1088 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 836 - 629 variable_name_with_pos_list: variable_name_with_pos_list ',' . "name" - 630 | variable_name_with_pos_list ',' . "name" "aka" "name" + 629 variable_name_with_pos_list: "name" "aka" . "name" - "name" shift, and go to state 1088 + "name" shift, and go to state 1089 State 837 - 553 copy_or_move: '=' . + 555 copy_or_move: "<-" . - $default reduce using rule 553 (copy_or_move) + $default reduce using rule 555 (copy_or_move) State 838 - 557 variable_declaration: variable_name_with_pos_list ':' . type_declaration - 558 | variable_name_with_pos_list ':' . type_declaration copy_or_move expr - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 354 - type_declaration go to state 1089 + 630 variable_name_with_pos_list: variable_name_with_pos_list ',' . "name" + 631 | variable_name_with_pos_list ',' . "name" "aka" "name" + + "name" shift, and go to state 1090 State 839 - 556 variable_declaration: variable_name_with_pos_list '&' . + 554 copy_or_move: '=' . - $default reduce using rule 556 (variable_declaration) + $default reduce using rule 554 (copy_or_move) State 840 - 559 variable_declaration: variable_name_with_pos_list copy_or_move . expr - 560 | variable_name_with_pos_list copy_or_move . expr_pipe - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$ <|" shift, and go to state 468 - "@ <|" shift, and go to state 469 - "@@ <|" shift, and go to state 470 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expr_call_pipe go to state 515 - expression_keyword go to state 518 - expr_pipe go to state 1090 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_assign go to state 639 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1091 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 558 variable_declaration: variable_name_with_pos_list ':' . type_declaration + 559 | variable_name_with_pos_list ':' . type_declaration copy_or_move expr + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 356 + type_declaration go to state 1091 State 841 - 805 make_struct_decl: "struct" '<' $@88 . type_declaration_no_options '>' $@89 '(' use_initializer make_struct_dim ')' - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 1092 + 557 variable_declaration: variable_name_with_pos_list '&' . + + $default reduce using rule 557 (variable_declaration) State 842 - 808 make_struct_decl: "class" '<' $@90 . type_declaration_no_options '>' $@91 '(' use_initializer make_struct_dim ')' - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 1093 + 560 variable_declaration: variable_name_with_pos_list copy_or_move . expr + 561 | variable_name_with_pos_list copy_or_move . expr_pipe + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "$ <|" shift, and go to state 470 + "@ <|" shift, and go to state 471 + "@@ <|" shift, and go to state 472 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expr_call_pipe go to state 517 + expression_keyword go to state 520 + expr_pipe go to state 1092 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_assign go to state 641 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1093 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 843 - 78 expression_while_loop: "while" expr expression_block . - - $default reduce using rule 78 (expression_while_loop) + 806 make_struct_decl: "struct" '<' $@88 . type_declaration_no_options '>' $@89 '(' use_initializer make_struct_dim ')' + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 1094 State 844 - 76 expression_for_loop: "for" $@4 variable_name_with_pos_list . "in" expr_list expression_block - 629 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" - 630 | variable_name_with_pos_list . ',' "name" "aka" "name" - - "in" shift, and go to state 1094 - ',' shift, and go to state 836 + 809 make_struct_decl: "class" '<' $@90 . type_declaration_no_options '>' $@91 '(' use_initializer make_struct_dim ')' + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 1095 State 845 - 270 new_type_declaration: '<' $@11 . type_declaration '>' $@12 - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 354 - type_declaration go to state 1095 + 78 expression_while_loop: "while" expr expression_block . + + $default reduce using rule 78 (expression_while_loop) State 846 - 273 expr_new: "new" new_type_declaration '(' . use_initializer ')' - 274 | "new" new_type_declaration '(' . expr_list ')' - 275 | "new" new_type_declaration '(' . use_initializer make_struct_single ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "uninitialized" shift, and go to state 1096 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - "name" [reduce using rule 795 (use_initializer)] - $default reduce using rule 795 (use_initializer) - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - expr_list go to state 1097 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 707 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - use_initializer go to state 1098 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 76 expression_for_loop: "for" $@4 variable_name_with_pos_list . "in" expr_list expression_block + 630 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" + 631 | variable_name_with_pos_list . ',' "name" "aka" "name" + + "in" shift, and go to state 1096 + ',' shift, and go to state 838 State 847 - 318 expr_type_info: "typeinfo" '(' name_in_namespace . expr ')' - 319 | "typeinfo" '(' name_in_namespace . '<' "name" '>' expr ')' - 320 | "typeinfo" '(' name_in_namespace . '<' "name" "end of expression" "name" '>' expr ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '<' shift, and go to state 1099 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1100 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 271 new_type_declaration: '<' $@11 . type_declaration '>' $@12 + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 356 + type_declaration go to state 1097 State 848 - 317 expr_type_decl: "type" '<' $@19 . type_declaration '>' $@20 - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 354 - type_declaration go to state 1101 - + 274 expr_new: "new" new_type_declaration '(' . use_initializer ')' + 275 | "new" new_type_declaration '(' . expr_list ')' + 276 | "new" new_type_declaration '(' . use_initializer make_struct_single ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "uninitialized" shift, and go to state 1098 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + "name" [reduce using rule 796 (use_initializer)] + $default reduce using rule 796 (use_initializer) -State 849 + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + expr_list go to state 1099 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 709 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + use_initializer go to state 1100 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 - 831 make_dim_decl: "array" "struct" '<' . $@98 type_declaration_no_options '>' $@99 '(' use_initializer make_struct_dim ')' - $default reduce using rule 829 ($@98) +State 849 - $@98 go to state 1102 + 319 expr_type_info: "typeinfo" '(' name_in_namespace . expr ')' + 320 | "typeinfo" '(' name_in_namespace . '<' "name" '>' expr ')' + 321 | "typeinfo" '(' name_in_namespace . '<' "name" "end of expression" "name" '>' expr ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '<' shift, and go to state 1101 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1102 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 850 - 834 make_dim_decl: "array" "tuple" '<' . $@100 type_declaration_no_options '>' $@101 '(' use_initializer make_struct_dim ')' - - $default reduce using rule 832 ($@100) - - $@100 go to state 1103 + 318 expr_type_decl: "type" '<' $@19 . type_declaration '>' $@20 + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 356 + type_declaration go to state 1103 State 851 - 837 make_dim_decl: "array" "variant" '<' . $@102 type_declaration_no_options '>' $@103 '(' make_struct_dim ')' + 832 make_dim_decl: "array" "struct" '<' . $@98 type_declaration_no_options '>' $@99 '(' use_initializer make_struct_dim ')' - $default reduce using rule 835 ($@102) + $default reduce using rule 830 ($@98) - $@102 go to state 1104 + $@98 go to state 1104 State 852 - 841 make_dim_decl: "array" '<' $@104 . type_declaration_no_options '>' $@105 '(' expr_list optional_comma ')' - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 1105 + 835 make_dim_decl: "array" "tuple" '<' . $@100 type_declaration_no_options '>' $@101 '(' use_initializer make_struct_dim ')' + $default reduce using rule 833 ($@100) + + $@100 go to state 1105 -State 853 - 322 expr_list: expr_list . ',' expr - 838 make_dim_decl: "array" '(' expr_list . optional_comma ')' +State 853 - ',' shift, and go to state 940 + 838 make_dim_decl: "array" "variant" '<' . $@102 type_declaration_no_options '>' $@103 '(' make_struct_dim ')' - $default reduce using rule 857 (optional_comma) + $default reduce using rule 836 ($@102) - optional_comma go to state 1106 + $@102 go to state 1106 State 854 - 284 expression_return: "return" "<-" expr_pipe . - - $default reduce using rule 284 (expression_return) + 842 make_dim_decl: "array" '<' $@104 . type_declaration_no_options '>' $@105 '(' expr_list optional_comma ')' + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 1107 State 855 - 281 expression_return_no_pipe: "return" "<-" expr_list . - 322 expr_list: expr_list . ',' expr + 323 expr_list: expr_list . ',' expr + 839 make_dim_decl: "array" '(' expr_list . optional_comma ')' - ',' shift, and go to state 856 + ',' shift, and go to state 942 - $default reduce using rule 281 (expression_return_no_pipe) + $default reduce using rule 858 (optional_comma) + + optional_comma go to state 1108 State 856 - 322 expr_list: expr_list ',' . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1107 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 285 expression_return: "return" "<-" expr_pipe . + + $default reduce using rule 285 (expression_return) State 857 - 359 expr_assign: expr "+=" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1108 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 282 expression_return_no_pipe: "return" "<-" expr_list . + 323 expr_list: expr_list . ',' expr + + ',' shift, and go to state 858 + + $default reduce using rule 282 (expression_return_no_pipe) State 858 - 360 expr_assign: expr "-=" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 323 expr_list: expr_list ',' . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1109 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 859 - 362 expr_assign: expr "/=" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 360 expr_assign: expr "+=" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1110 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 860 - 361 expr_assign: expr "*=" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 361 expr_assign: expr "-=" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1111 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 861 - 363 expr_assign: expr "%=" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 363 expr_assign: expr "/=" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1112 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 862 - 353 expr_assign: expr "&=" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 362 expr_assign: expr "*=" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1113 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 863 - 354 expr_assign: expr "|=" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 364 expr_assign: expr "%=" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1114 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 864 - 355 expr_assign: expr "^=" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 354 expr_assign: expr "&=" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1115 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 865 - 364 expr_assign: expr "<<=" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 355 expr_assign: expr "|=" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1116 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 866 - 365 expr_assign: expr ">>=" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 356 expr_assign: expr "^=" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1117 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 867 - 351 expr_assign: expr "<-" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 365 expr_assign: expr "<<=" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1118 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 868 - 366 expr_assign: expr "<<<=" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 366 expr_assign: expr ">>=" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1119 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 869 - 367 expr_assign: expr ">>>=" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 352 expr_assign: expr "<-" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1120 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 870 - 356 expr_assign: expr "&&=" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 367 expr_assign: expr "<<<=" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1121 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 871 - 357 expr_assign: expr "||=" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 368 expr_assign: expr ">>>=" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1122 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 872 - 358 expr_assign: expr "^^=" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 357 expr_assign: expr "&&=" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1123 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 873 - 350 expr_assign: expr '=' . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 358 expr_assign: expr "||=" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1124 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 874 - 290 expression_try_catch: "try" expression_block "recover" . expression_block - - "begin of code block" shift, and go to state 284 - - expression_block go to state 1125 + 359 expr_assign: expr "^^=" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1125 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 875 - 686 type_declaration_no_options: type_declaration_no_options . dim_list - 687 | type_declaration_no_options . '[' ']' - 695 | type_declaration_no_options . '-' '[' ']' - 696 | type_declaration_no_options . "explicit" - 697 | type_declaration_no_options . "const" - 698 | type_declaration_no_options . '-' "const" - 699 | type_declaration_no_options . '&' - 700 | type_declaration_no_options . '-' '&' - 701 | type_declaration_no_options . '#' - 702 | type_declaration_no_options . "implicit" - 703 | type_declaration_no_options . '-' '#' - 704 | type_declaration_no_options . "==" "const" - 705 | type_declaration_no_options . "==" '&' - 706 | type_declaration_no_options . '?' - 710 | type_declaration_no_options . "??" - 853 make_table_decl: "table" '<' type_declaration_no_options . '>' '(' expr_map_tuple_list optional_comma ')' - 854 | "table" '<' type_declaration_no_options . "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - - "const" shift, and go to state 404 - "implicit" shift, and go to state 405 - "explicit" shift, and go to state 406 - "==" shift, and go to state 407 - "??" shift, and go to state 408 - "end of expression" shift, and go to state 1126 - '?' shift, and go to state 409 - '&' shift, and go to state 410 - '>' shift, and go to state 1127 - '-' shift, and go to state 411 - '[' shift, and go to state 412 - '#' shift, and go to state 413 - - dim_list go to state 414 + 351 expr_assign: expr '=' . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1126 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 876 - 849 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple - 852 make_table_decl: "table" '(' expr_map_tuple_list . optional_comma ')' - - ',' shift, and go to state 935 + 291 expression_try_catch: "try" expression_block "recover" . expression_block - $default reduce using rule 857 (optional_comma) + "begin of code block" shift, and go to state 286 - optional_comma go to state 1128 + expression_block go to state 1127 State 877 - 267 expression_delete: "delete" "explicit" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - - $default reduce using rule 267 (expression_delete) + 687 type_declaration_no_options: type_declaration_no_options . dim_list + 688 | type_declaration_no_options . '[' ']' + 696 | type_declaration_no_options . '-' '[' ']' + 697 | type_declaration_no_options . "explicit" + 698 | type_declaration_no_options . "const" + 699 | type_declaration_no_options . '-' "const" + 700 | type_declaration_no_options . '&' + 701 | type_declaration_no_options . '-' '&' + 702 | type_declaration_no_options . '#' + 703 | type_declaration_no_options . "implicit" + 704 | type_declaration_no_options . '-' '#' + 705 | type_declaration_no_options . "==" "const" + 706 | type_declaration_no_options . "==" '&' + 707 | type_declaration_no_options . '?' + 711 | type_declaration_no_options . "??" + 854 make_table_decl: "table" '<' type_declaration_no_options . '>' '(' expr_map_tuple_list optional_comma ')' + 855 | "table" '<' type_declaration_no_options . "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + + "const" shift, and go to state 406 + "implicit" shift, and go to state 407 + "explicit" shift, and go to state 408 + "==" shift, and go to state 409 + "??" shift, and go to state 410 + "end of expression" shift, and go to state 1128 + '?' shift, and go to state 411 + '&' shift, and go to state 412 + '>' shift, and go to state 1129 + '-' shift, and go to state 413 + '[' shift, and go to state 414 + '#' shift, and go to state 415 + + dim_list go to state 416 State 878 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 464 | "deref" '(' expr . ')' - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - ')' shift, and go to state 1129 + 850 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple + 853 make_table_decl: "table" '(' expr_map_tuple_list . optional_comma ')' + ',' shift, and go to state 937 -State 879 + $default reduce using rule 858 (optional_comma) - 79 expression_with: "with" expr expression_block . + optional_comma go to state 1130 - $default reduce using rule 79 (expression_with) +State 879 -State 880 + 268 expression_delete: "delete" "explicit" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + + $default reduce using rule 268 (expression_delete) - 81 expression_with_alias: "assume" "name" '=' . $@5 expr - $default reduce using rule 80 ($@5) +State 880 - $@5 go to state 1130 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 465 | "deref" '(' expr . ')' + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + ')' shift, and go to state 1131 State 881 - 308 expr_cast: "cast" '<' $@13 . type_declaration_no_options '>' $@14 expr - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 1131 + 79 expression_with: "with" expr expression_block . + + $default reduce using rule 79 (expression_with) State 882 - 311 expr_cast: "upcast" '<' $@15 . type_declaration_no_options '>' $@16 expr - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 1132 + 81 expression_with_alias: "assume" "name" '=' . $@5 expr + + $default reduce using rule 80 ($@5) + + $@5 go to state 1132 State 883 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 465 | "addr" '(' expr . ')' - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - ')' shift, and go to state 1133 + 309 expr_cast: "cast" '<' $@13 . type_declaration_no_options '>' $@14 expr + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 1133 State 884 - 314 expr_cast: "reinterpret" '<' $@17 . type_declaration_no_options '>' $@18 expr - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 + 312 expr_cast: "upcast" '<' $@15 . type_declaration_no_options '>' $@16 expr + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 type_declaration_no_options go to state 1134 State 885 - 54 expression_label: "label" "integer constant" ':' . - - $default reduce using rule 54 (expression_label) + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 466 | "addr" '(' expr . ')' + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + ')' shift, and go to state 1135 State 886 - 55 expression_goto: "goto" "label" "integer constant" . - - $default reduce using rule 55 (expression_goto) + 315 expr_cast: "reinterpret" '<' $@17 . type_declaration_no_options '>' $@18 expr + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 1136 State 887 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 496 | "unsafe" '(' expr . ')' - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - ')' shift, and go to state 1135 - + 54 expression_label: "label" "integer constant" ':' . -State 888 + $default reduce using rule 54 (expression_label) - 845 make_dim_decl: "fixed_array" '<' $@106 . type_declaration_no_options '>' $@107 '(' expr_list optional_comma ')' - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 1136 +State 888 -State 889 + 55 expression_goto: "goto" "label" "integer constant" . - 322 expr_list: expr_list . ',' expr - 842 make_dim_decl: "fixed_array" '(' expr_list . optional_comma ')' + $default reduce using rule 55 (expression_goto) - ',' shift, and go to state 940 - $default reduce using rule 857 (optional_comma) +State 889 - optional_comma go to state 1137 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 497 | "unsafe" '(' expr . ')' + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + ')' shift, and go to state 1137 State 890 - 814 make_struct_decl: "default" '<' $@94 . type_declaration_no_options '>' $@95 use_initializer - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 + 846 make_dim_decl: "fixed_array" '<' $@106 . type_declaration_no_options '>' $@107 '(' expr_list optional_comma ')' + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 type_declaration_no_options go to state 1138 State 891 - 823 make_tuple_call: "tuple" '<' $@96 . type_declaration_no_options '>' $@97 '(' use_initializer make_struct_dim ')' - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 1139 + 323 expr_list: expr_list . ',' expr + 843 make_dim_decl: "fixed_array" '(' expr_list . optional_comma ')' + ',' shift, and go to state 942 -State 892 + $default reduce using rule 858 (optional_comma) - 322 expr_list: expr_list . ',' expr - 820 make_tuple_call: "tuple" '(' expr_list . optional_comma ')' + optional_comma go to state 1139 - ',' shift, and go to state 940 - $default reduce using rule 857 (optional_comma) +State 892 - optional_comma go to state 1140 + 815 make_struct_decl: "default" '<' $@94 . type_declaration_no_options '>' $@95 use_initializer + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 1140 State 893 - 811 make_struct_decl: "variant" '<' $@92 . type_declaration_no_options '>' $@93 '(' make_struct_dim ')' - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 + 824 make_tuple_call: "tuple" '<' $@96 . type_declaration_no_options '>' $@97 '(' use_initializer make_struct_dim ')' + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 type_declaration_no_options go to state 1141 State 894 - 466 expr: "generator" '<' type_declaration_no_options . '>' optional_capture_list '(' ')' - 467 | "generator" '<' type_declaration_no_options . '>' optional_capture_list '(' expr ')' - 686 type_declaration_no_options: type_declaration_no_options . dim_list - 687 | type_declaration_no_options . '[' ']' - 695 | type_declaration_no_options . '-' '[' ']' - 696 | type_declaration_no_options . "explicit" - 697 | type_declaration_no_options . "const" - 698 | type_declaration_no_options . '-' "const" - 699 | type_declaration_no_options . '&' - 700 | type_declaration_no_options . '-' '&' - 701 | type_declaration_no_options . '#' - 702 | type_declaration_no_options . "implicit" - 703 | type_declaration_no_options . '-' '#' - 704 | type_declaration_no_options . "==" "const" - 705 | type_declaration_no_options . "==" '&' - 706 | type_declaration_no_options . '?' - 710 | type_declaration_no_options . "??" - - "const" shift, and go to state 404 - "implicit" shift, and go to state 405 - "explicit" shift, and go to state 406 - "==" shift, and go to state 407 - "??" shift, and go to state 408 - '?' shift, and go to state 409 - '&' shift, and go to state 410 - '>' shift, and go to state 1142 - '-' shift, and go to state 411 - '[' shift, and go to state 412 - '#' shift, and go to state 413 - - dim_list go to state 414 + 323 expr_list: expr_list . ',' expr + 821 make_tuple_call: "tuple" '(' expr_list . optional_comma ')' + ',' shift, and go to state 942 -State 895 + $default reduce using rule 858 (optional_comma) - 289 expression_yield: "yield" "<-" expr_pipe . + optional_comma go to state 1142 - $default reduce using rule 289 (expression_yield) +State 895 + + 812 make_struct_decl: "variant" '<' $@92 . type_declaration_no_options '>' $@93 '(' make_struct_dim ')' + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 1143 -State 896 - 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 286 expression_yield_no_pipe: "yield" "<-" expr . - 349 expr_assign: expr . - 350 | expr . '=' expr - 351 | expr . "<-" expr - 352 | expr . ":=" expr - 353 | expr . "&=" expr - 354 | expr . "|=" expr - 355 | expr . "^=" expr - 356 | expr . "&&=" expr - 357 | expr . "||=" expr - 358 | expr . "^^=" expr - 359 | expr . "+=" expr - 360 | expr . "-=" expr - 361 | expr . "*=" expr - 362 | expr . "/=" expr - 363 | expr . "%=" expr - 364 | expr . "<<=" expr - 365 | expr . ">>=" expr - 366 | expr . "<<<=" expr - 367 | expr . ">>>=" expr - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "+=" shift, and go to state 857 - "-=" shift, and go to state 858 - "/=" shift, and go to state 859 - "*=" shift, and go to state 860 - "%=" shift, and go to state 861 - "&=" shift, and go to state 862 - "|=" shift, and go to state 863 - "^=" shift, and go to state 864 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - "<<=" shift, and go to state 865 - ">>=" shift, and go to state 866 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "<-" shift, and go to state 867 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - ":=" shift, and go to state 755 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "<<<=" shift, and go to state 868 - ">>>=" shift, and go to state 869 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - "&&=" shift, and go to state 870 - "||=" shift, and go to state 871 - "^^=" shift, and go to state 872 - ".." shift, and go to state 766 - '=' shift, and go to state 873 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - '$' shift, and go to state 501 - '@' shift, and go to state 671 - - " <|" reduce using rule 349 (expr_assign) - $default reduce using rule 286 (expression_yield_no_pipe) +State 896 - block_or_lambda go to state 714 - expr_full_block_assumed_piped go to state 781 + 467 expr: "generator" '<' type_declaration_no_options . '>' optional_capture_list '(' ')' + 468 | "generator" '<' type_declaration_no_options . '>' optional_capture_list '(' expr ')' + 687 type_declaration_no_options: type_declaration_no_options . dim_list + 688 | type_declaration_no_options . '[' ']' + 696 | type_declaration_no_options . '-' '[' ']' + 697 | type_declaration_no_options . "explicit" + 698 | type_declaration_no_options . "const" + 699 | type_declaration_no_options . '-' "const" + 700 | type_declaration_no_options . '&' + 701 | type_declaration_no_options . '-' '&' + 702 | type_declaration_no_options . '#' + 703 | type_declaration_no_options . "implicit" + 704 | type_declaration_no_options . '-' '#' + 705 | type_declaration_no_options . "==" "const" + 706 | type_declaration_no_options . "==" '&' + 707 | type_declaration_no_options . '?' + 711 | type_declaration_no_options . "??" + + "const" shift, and go to state 406 + "implicit" shift, and go to state 407 + "explicit" shift, and go to state 408 + "==" shift, and go to state 409 + "??" shift, and go to state 410 + '?' shift, and go to state 411 + '&' shift, and go to state 412 + '>' shift, and go to state 1144 + '-' shift, and go to state 413 + '[' shift, and go to state 414 + '#' shift, and go to state 415 + + dim_list go to state 416 State 897 - 328 block_or_lambda: '@' '@' . + 290 expression_yield: "yield" "<-" expr_pipe . - $default reduce using rule 328 (block_or_lambda) + $default reduce using rule 290 (expression_yield) State 898 - 338 expr_block: block_or_lambda optional_annotation_list . optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block + 220 expr_call_pipe: expr . expr_full_block_assumed_piped + 287 expression_yield_no_pipe: "yield" "<-" expr . + 350 expr_assign: expr . + 351 | expr . '=' expr + 352 | expr . "<-" expr + 353 | expr . ":=" expr + 354 | expr . "&=" expr + 355 | expr . "|=" expr + 356 | expr . "^=" expr + 357 | expr . "&&=" expr + 358 | expr . "||=" expr + 359 | expr . "^^=" expr + 360 | expr . "+=" expr + 361 | expr . "-=" expr + 362 | expr . "*=" expr + 363 | expr . "/=" expr + 364 | expr . "%=" expr + 365 | expr . "<<=" expr + 366 | expr . ">>=" expr + 367 | expr . "<<<=" expr + 368 | expr . ">>>=" expr + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "+=" shift, and go to state 859 + "-=" shift, and go to state 860 + "/=" shift, and go to state 861 + "*=" shift, and go to state 862 + "%=" shift, and go to state 863 + "&=" shift, and go to state 864 + "|=" shift, and go to state 865 + "^=" shift, and go to state 866 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + "<<=" shift, and go to state 867 + ">>=" shift, and go to state 868 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "<-" shift, and go to state 869 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + ":=" shift, and go to state 757 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "<<<=" shift, and go to state 870 + ">>>=" shift, and go to state 871 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + "&&=" shift, and go to state 872 + "||=" shift, and go to state 873 + "^^=" shift, and go to state 874 + ".." shift, and go to state 768 + '=' shift, and go to state 875 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + '$' shift, and go to state 503 + '@' shift, and go to state 673 + + " <|" reduce using rule 350 (expr_assign) + $default reduce using rule 287 (expression_yield_no_pipe) + + block_or_lambda go to state 716 + expr_full_block_assumed_piped go to state 783 + - "[[" shift, and go to state 960 +State 899 - $default reduce using rule 335 (optional_capture_list) + 329 block_or_lambda: '@' '@' . - optional_capture_list go to state 1143 + $default reduce using rule 329 (block_or_lambda) -State 899 +State 900 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 498 expr_mtag: "$$" '(' expr . ')' - 506 | expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - ')' shift, and go to state 1144 + 339 expr_block: block_or_lambda optional_annotation_list . optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block + "[[" shift, and go to state 962 -State 900 + $default reduce using rule 336 (optional_capture_list) - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 499 expr_mtag: "$i" '(' expr . ')' - 506 | expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - ')' shift, and go to state 1145 + optional_capture_list go to state 1145 State 901 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 500 expr_mtag: "$v" '(' expr . ')' - 506 | expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 499 expr_mtag: "$$" '(' expr . ')' + 507 | expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 ')' shift, and go to state 1146 State 902 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 501 expr_mtag: "$b" '(' expr . ')' - 506 | expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 500 expr_mtag: "$i" '(' expr . ')' + 507 | expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 ')' shift, and go to state 1147 State 903 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 502 expr_mtag: "$a" '(' expr . ')' - 506 | expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 501 expr_mtag: "$v" '(' expr . ')' + 507 | expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 ')' shift, and go to state 1148 State 904 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 504 expr_mtag: "$c" '(' expr . ')' '(' ')' - 505 | "$c" '(' expr . ')' '(' expr_list ')' - 506 | expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 502 expr_mtag: "$b" '(' expr . ')' + 507 | expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 ')' shift, and go to state 1149 State 905 - 629 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" - 630 | variable_name_with_pos_list . ',' "name" "aka" "name" - 861 array_comprehension: "[[" "for" variable_name_with_pos_list . "in" expr_list "end of expression" expr array_comprehension_where ']' ']' - - "in" shift, and go to state 1150 - ',' shift, and go to state 836 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 503 expr_mtag: "$a" '(' expr . ')' + 507 | expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + ')' shift, and go to state 1150 State 906 - 782 optional_block: "where" . expr_block - - "begin of code block" shift, and go to state 284 - '$' shift, and go to state 501 - '@' shift, and go to state 671 - - expression_block go to state 672 - block_or_lambda go to state 673 - expr_block go to state 1151 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 505 expr_mtag: "$c" '(' expr . ')' '(' ')' + 506 | "$c" '(' expr . ')' '(' expr_list ')' + 507 | expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + ')' shift, and go to state 1151 State 907 - 774 make_struct_fields: "$f" . '(' expr ')' copy_or_move expr - 775 | "$f" . '(' expr ')' ":=" expr + 630 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" + 631 | variable_name_with_pos_list . ',' "name" "aka" "name" + 862 array_comprehension: "[[" "for" variable_name_with_pos_list . "in" expr_list "end of expression" expr array_comprehension_where ']' ']' - '(' shift, and go to state 1152 + "in" shift, and go to state 1152 + ',' shift, and go to state 838 State 908 - 264 name_in_namespace: "name" . - 265 | "name" . "::" "name" - 770 make_struct_fields: "name" . copy_or_move expr - 771 | "name" . ":=" expr + 783 optional_block: "where" . expr_block - "<-" shift, and go to state 835 - ":=" shift, and go to state 1153 - "::" shift, and go to state 96 - '=' shift, and go to state 837 - - $default reduce using rule 264 (name_in_namespace) + "begin of code block" shift, and go to state 286 + '$' shift, and go to state 503 + '@' shift, and go to state 673 - copy_or_move go to state 1154 + expression_block go to state 674 + block_or_lambda go to state 675 + expr_block go to state 1153 State 909 - 427 expr: '-' . expr - 695 type_declaration_no_options: type_declaration_no_options '-' . '[' ']' - 698 | type_declaration_no_options '-' . "const" - 700 | type_declaration_no_options '-' . '&' - 703 | type_declaration_no_options '-' . '#' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "const" shift, and go to state 594 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '&' shift, and go to state 595 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 1155 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - '#' shift, and go to state 597 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 699 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 775 make_struct_fields: "$f" . '(' expr ')' copy_or_move expr + 776 | "$f" . '(' expr ')' ":=" expr + + '(' shift, and go to state 1154 State 910 - 680 dim_list: '[' . expr ']' - 687 type_declaration_no_options: type_declaration_no_options '[' . ']' - 826 make_dim_decl: '[' . expr_list optional_comma ']' - 859 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - 860 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "for" shift, and go to state 704 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "iterator" shift, and go to state 705 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - ']' shift, and go to state 598 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - expr_list go to state 706 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1156 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 264 name_in_namespace: "name" . + 265 | "name" . "::" "name" + 771 make_struct_fields: "name" . copy_or_move expr + 772 | "name" . ":=" expr + + "<-" shift, and go to state 837 + ":=" shift, and go to state 1155 + "::" shift, and go to state 98 + '=' shift, and go to state 839 + + $default reduce using rule 264 (name_in_namespace) + + copy_or_move go to state 1156 State 911 - 454 expr: '(' . expr_list optional_comma ')' - 799 make_struct_decl: "[[" type_declaration_no_options '(' . ')' optional_block optional_trailing_delim_sqr_sqr - 800 | "[[" type_declaration_no_options '(' . ')' make_struct_dim optional_block optional_trailing_delim_sqr_sqr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 428 expr: '-' . expr + 696 type_declaration_no_options: type_declaration_no_options '-' . '[' ']' + 699 | type_declaration_no_options '-' . "const" + 701 | type_declaration_no_options '-' . '&' + 704 | type_declaration_no_options '-' . '#' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "const" shift, and go to state 596 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '&' shift, and go to state 597 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - ')' shift, and go to state 1157 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - expr_list go to state 708 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 707 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 1157 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + '#' shift, and go to state 599 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 701 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 912 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 815 make_tuple: expr . - 816 | expr . "=>" expr - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "=>" shift, and go to state 1158 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - - $default reduce using rule 815 (make_tuple) + 681 dim_list: '[' . expr ']' + 688 type_declaration_no_options: type_declaration_no_options '[' . ']' + 827 make_dim_decl: '[' . expr_list optional_comma ']' + 860 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 861 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "for" shift, and go to state 706 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "iterator" shift, and go to state 707 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + ']' shift, and go to state 600 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + expr_list go to state 708 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1158 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 913 - 772 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr - 773 | make_struct_fields . ',' "name" ":=" expr - 776 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr - 777 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr - 779 make_struct_dim: make_struct_fields . - - ',' shift, and go to state 1159 - - $default reduce using rule 779 (make_struct_dim) + 455 expr: '(' . expr_list optional_comma ')' + 800 make_struct_decl: "[[" type_declaration_no_options '(' . ')' optional_block optional_trailing_delim_sqr_sqr + 801 | "[[" type_declaration_no_options '(' . ')' make_struct_dim optional_block optional_trailing_delim_sqr_sqr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + ')' shift, and go to state 1159 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + expr_list go to state 710 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 709 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 914 - 780 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 797 make_struct_decl: "[[" type_declaration_no_options make_struct_dim . optional_block optional_trailing_delim_sqr_sqr + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 816 make_tuple: expr . + 817 | expr . "=>" expr + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "=>" shift, and go to state 1160 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - "where" shift, and go to state 906 - "end of expression" shift, and go to state 1160 - - $default reduce using rule 781 (optional_block) - - optional_block go to state 1161 + $default reduce using rule 816 (make_tuple) State 915 - 798 make_struct_decl: "[[" type_declaration_no_options optional_block . optional_trailing_delim_sqr_sqr + 773 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr + 774 | make_struct_fields . ',' "name" ":=" expr + 777 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr + 778 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr + 780 make_struct_dim: make_struct_fields . - ";]]" shift, and go to state 1162 - ",]]" shift, and go to state 1163 - ']' shift, and go to state 1164 + ',' shift, and go to state 1161 - optional_trailing_delim_sqr_sqr go to state 1165 + $default reduce using rule 780 (make_struct_dim) State 916 - 817 make_tuple: make_tuple . ',' expr - 824 make_dim: make_tuple . + 781 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 798 make_struct_decl: "[[" type_declaration_no_options make_struct_dim . optional_block optional_trailing_delim_sqr_sqr - ',' shift, and go to state 1166 + "where" shift, and go to state 908 + "end of expression" shift, and go to state 1162 - $default reduce using rule 824 (make_dim) + $default reduce using rule 782 (optional_block) + + optional_block go to state 1163 State 917 - 825 make_dim: make_dim . "end of expression" make_tuple - 827 make_dim_decl: "[[" type_declaration_no_options make_dim . optional_trailing_semicolon_sqr_sqr + 799 make_struct_decl: "[[" type_declaration_no_options optional_block . optional_trailing_delim_sqr_sqr - "end of expression" shift, and go to state 1167 - ";]]" shift, and go to state 1168 - ']' shift, and go to state 1169 + ";]]" shift, and go to state 1164 + ",]]" shift, and go to state 1165 + ']' shift, and go to state 1166 - optional_trailing_semicolon_sqr_sqr go to state 1170 + optional_trailing_delim_sqr_sqr go to state 1167 State 918 - 629 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" - 630 | variable_name_with_pos_list . ',' "name" "aka" "name" - 862 array_comprehension: "[{" "for" variable_name_with_pos_list . "in" expr_list "end of expression" expr array_comprehension_where "end of code block" ']' + 818 make_tuple: make_tuple . ',' expr + 825 make_dim: make_tuple . - "in" shift, and go to state 1171 - ',' shift, and go to state 836 + ',' shift, and go to state 1168 + + $default reduce using rule 825 (make_dim) State 919 - 454 expr: '(' . expr_list optional_comma ')' - 802 make_struct_decl: "[{" type_declaration_no_options '(' . ')' make_struct_dim optional_block optional_trailing_delim_cur_sqr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - ')' shift, and go to state 1172 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - expr_list go to state 708 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 707 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 826 make_dim: make_dim . "end of expression" make_tuple + 828 make_dim_decl: "[[" type_declaration_no_options make_dim . optional_trailing_semicolon_sqr_sqr + "end of expression" shift, and go to state 1169 + ";]]" shift, and go to state 1170 + ']' shift, and go to state 1171 -State 920 + optional_trailing_semicolon_sqr_sqr go to state 1172 - 780 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 801 make_struct_decl: "[{" type_declaration_no_options make_struct_dim . optional_block optional_trailing_delim_cur_sqr - "where" shift, and go to state 906 - "end of expression" shift, and go to state 1160 +State 920 - $default reduce using rule 781 (optional_block) + 630 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" + 631 | variable_name_with_pos_list . ',' "name" "aka" "name" + 863 array_comprehension: "[{" "for" variable_name_with_pos_list . "in" expr_list "end of expression" expr array_comprehension_where "end of code block" ']' - optional_block go to state 1173 + "in" shift, and go to state 1173 + ',' shift, and go to state 838 State 921 - 825 make_dim: make_dim . "end of expression" make_tuple - 828 make_dim_decl: "[{" type_declaration_no_options make_dim . optional_trailing_semicolon_cur_sqr + 455 expr: '(' . expr_list optional_comma ')' + 803 make_struct_decl: "[{" type_declaration_no_options '(' . ')' make_struct_dim optional_block optional_trailing_delim_cur_sqr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + ')' shift, and go to state 1174 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + expr_list go to state 710 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 709 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 - "end of code block" shift, and go to state 1174 - "end of expression" shift, and go to state 1167 - ";}]" shift, and go to state 1175 - optional_trailing_semicolon_cur_sqr go to state 1176 +State 922 + 781 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 802 make_struct_decl: "[{" type_declaration_no_options make_struct_dim . optional_block optional_trailing_delim_cur_sqr -State 922 + "where" shift, and go to state 908 + "end of expression" shift, and go to state 1162 - 629 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" - 630 | variable_name_with_pos_list . ',' "name" "aka" "name" - 864 array_comprehension: "{{" "for" variable_name_with_pos_list . "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" "end of code block" + $default reduce using rule 782 (optional_block) - "in" shift, and go to state 1177 - ',' shift, and go to state 836 + optional_block go to state 1175 State 923 - 818 make_map_tuple: expr "=>" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1178 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 826 make_dim: make_dim . "end of expression" make_tuple + 829 make_dim_decl: "[{" type_declaration_no_options make_dim . optional_trailing_semicolon_cur_sqr + + "end of code block" shift, and go to state 1176 + "end of expression" shift, and go to state 1169 + ";}]" shift, and go to state 1177 + + optional_trailing_semicolon_cur_sqr go to state 1178 State 924 - 783 optional_trailing_semicolon_cur_cur: "end of code block" . "end of code block" + 630 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" + 631 | variable_name_with_pos_list . ',' "name" "aka" "name" + 865 array_comprehension: "{{" "for" variable_name_with_pos_list . "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" "end of code block" - "end of code block" shift, and go to state 1179 + "in" shift, and go to state 1179 + ',' shift, and go to state 838 State 925 - 847 make_table: make_table "end of expression" . make_map_tuple - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 819 make_map_tuple: expr "=>" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 688 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_map_tuple go to state 1180 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1180 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 926 - 784 optional_trailing_semicolon_cur_cur: ";}}" . + 784 optional_trailing_semicolon_cur_cur: "end of code block" . "end of code block" - $default reduce using rule 784 (optional_trailing_semicolon_cur_cur) + "end of code block" shift, and go to state 1181 State 927 - 851 make_table_decl: "{{" make_table optional_trailing_semicolon_cur_cur . - - $default reduce using rule 851 (make_table_decl) + 848 make_table: make_table "end of expression" . make_map_tuple + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 690 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_map_tuple go to state 1182 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 928 - 255 expression_keyword: "keyword" '<' $@7 . type_declaration_no_options_list '>' $@8 expr + 785 optional_trailing_semicolon_cur_cur: ";}}" . - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - type_declaration_no_options_list go to state 1181 - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 354 - type_declaration go to state 1081 + $default reduce using rule 785 (optional_trailing_semicolon_cur_cur) State 929 - 246 expr_keyword: "keyword" expr expression_block . + 852 make_table_decl: "{{" make_table optional_trailing_semicolon_cur_cur . - $default reduce using rule 246 (expr_keyword) + $default reduce using rule 852 (make_table_decl) State 930 - 258 expression_keyword: "type function" '<' $@9 . type_declaration_no_options_list '>' $@10 optional_expr_list_in_braces + 255 expression_keyword: "keyword" '<' $@7 . type_declaration_no_options_list '>' $@8 expr - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - type_declaration_no_options_list go to state 1182 - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 354 - type_declaration go to state 1081 + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + type_declaration_no_options_list go to state 1183 + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 356 + type_declaration go to state 1083 State 931 - 31 string_builder: "start of the string" string_builder_body "end of the string" . + 246 expr_keyword: "keyword" expr expression_block . - $default reduce using rule 31 (string_builder) + $default reduce using rule 246 (expr_keyword) State 932 - 30 string_builder_body: string_builder_body "{" . expr "}" + 258 expression_keyword: "type function" '<' $@9 . type_declaration_no_options_list '>' $@10 optional_expr_list_in_braces - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1183 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + type_declaration_no_options_list go to state 1184 + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 356 + type_declaration go to state 1083 State 933 - 25 character_sequence: character_sequence . STRING_CHARACTER - 26 | character_sequence . STRING_CHARACTER_ESC - 29 string_builder_body: string_builder_body character_sequence . - - STRING_CHARACTER shift, and go to state 220 - STRING_CHARACTER_ESC shift, and go to state 221 + 31 string_builder: "start of the string" string_builder_body "end of the string" . - STRING_CHARACTER [reduce using rule 29 (string_builder_body)] - STRING_CHARACTER_ESC [reduce using rule 29 (string_builder_body)] - $default reduce using rule 29 (string_builder_body) + $default reduce using rule 31 (string_builder) State 934 - 629 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" - 630 | variable_name_with_pos_list . ',' "name" "aka" "name" - 863 array_comprehension: "begin of code block" "for" variable_name_with_pos_list . "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" + 30 string_builder_body: string_builder_body "{" . expr "}" - "in" shift, and go to state 1184 - ',' shift, and go to state 836 + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1185 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 935 - 849 expr_map_tuple_list: expr_map_tuple_list ',' . make_map_tuple - 858 optional_comma: ',' . - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 + 25 character_sequence: character_sequence . STRING_CHARACTER + 26 | character_sequence . STRING_CHARACTER_ESC + 29 string_builder_body: string_builder_body character_sequence . - $default reduce using rule 858 (optional_comma) + STRING_CHARACTER shift, and go to state 222 + STRING_CHARACTER_ESC shift, and go to state 223 - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 688 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_map_tuple go to state 1185 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + STRING_CHARACTER [reduce using rule 29 (string_builder_body)] + STRING_CHARACTER_ESC [reduce using rule 29 (string_builder_body)] + $default reduce using rule 29 (string_builder_body) State 936 - 850 make_table_decl: "begin of code block" expr_map_tuple_list optional_comma . "end of code block" + 630 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" + 631 | variable_name_with_pos_list . ',' "name" "aka" "name" + 864 array_comprehension: "begin of code block" "for" variable_name_with_pos_list . "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" - "end of code block" shift, and go to state 1186 + "in" shift, and go to state 1186 + ',' shift, and go to state 838 State 937 - 219 expression_block: "begin of code block" expressions "end of code block" "finally" "begin of code block" . expressions "end of code block" - - $default reduce using rule 243 (expressions) - - expressions go to state 1187 + 850 expr_map_tuple_list: expr_map_tuple_list ',' . make_map_tuple + 859 optional_comma: ',' . + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + $default reduce using rule 859 (optional_comma) + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 690 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_map_tuple go to state 1187 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 938 - 629 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" - 630 | variable_name_with_pos_list . ',' "name" "aka" "name" - 859 array_comprehension: '[' "for" variable_name_with_pos_list . "in" expr_list "end of expression" expr array_comprehension_where ']' + 851 make_table_decl: "begin of code block" expr_map_tuple_list optional_comma . "end of code block" - "in" shift, and go to state 1188 - ',' shift, and go to state 836 + "end of code block" shift, and go to state 1188 State 939 - 860 array_comprehension: '[' "iterator" "for" . variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 219 expression_block: "begin of code block" expressions "end of code block" "finally" "begin of code block" . expressions "end of code block" - "$i" shift, and go to state 616 - "name" shift, and go to state 617 + $default reduce using rule 243 (expressions) - variable_name_with_pos_list go to state 1189 + expressions go to state 1189 State 940 - 322 expr_list: expr_list ',' . expr - 858 optional_comma: ',' . - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - $default reduce using rule 858 (optional_comma) + 630 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" + 631 | variable_name_with_pos_list . ',' "name" "aka" "name" + 860 array_comprehension: '[' "for" variable_name_with_pos_list . "in" expr_list "end of expression" expr array_comprehension_where ']' - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1107 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + "in" shift, and go to state 1190 + ',' shift, and go to state 838 State 941 - 826 make_dim_decl: '[' expr_list optional_comma . ']' + 861 array_comprehension: '[' "iterator" "for" . variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - ']' shift, and go to state 1190 + "$i" shift, and go to state 618 + "name" shift, and go to state 619 + variable_name_with_pos_list go to state 1191 -State 942 - 454 expr: '(' expr_list optional_comma . ')' +State 942 - ')' shift, and go to state 1191 + 323 expr_list: expr_list ',' . expr + 859 optional_comma: ',' . + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + $default reduce using rule 859 (optional_comma) + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1109 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 943 - 394 func_addr_name: "$i" . '(' expr ')' + 827 make_dim_decl: '[' expr_list optional_comma . ']' - '(' shift, and go to state 1192 + ']' shift, and go to state 1192 State 944 - 513 expr_mtag: '@' '@' "$c" . '(' expr ')' + 455 expr: '(' expr_list optional_comma . ')' - '(' shift, and go to state 1193 + ')' shift, and go to state 1193 State 945 - 398 func_addr_expr: '@' '@' '<' . $@22 type_declaration_no_options '>' $@23 func_addr_name - 401 | '@' '@' '<' . $@24 optional_function_argument_list optional_function_type '>' $@25 func_addr_name - - ':' reduce using rule 399 ($@24) - '>' reduce using rule 399 ($@24) - '(' reduce using rule 399 ($@24) - $default reduce using rule 396 ($@22) + 395 func_addr_name: "$i" . '(' expr ')' - $@22 go to state 1194 - $@24 go to state 1195 + '(' shift, and go to state 1194 State 946 - 393 func_addr_name: name_in_namespace . + 514 expr_mtag: '@' '@' "$c" . '(' expr ')' - $default reduce using rule 393 (func_addr_name) + '(' shift, and go to state 1195 State 947 - 395 func_addr_expr: '@' '@' func_addr_name . + 399 func_addr_expr: '@' '@' '<' . $@22 type_declaration_no_options '>' $@23 func_addr_name + 402 | '@' '@' '<' . $@24 optional_function_argument_list optional_function_type '>' $@25 func_addr_name - $default reduce using rule 395 (func_addr_expr) + ':' reduce using rule 400 ($@24) + '>' reduce using rule 400 ($@24) + '(' reduce using rule 400 ($@24) + $default reduce using rule 397 ($@22) + $@22 go to state 1196 + $@24 go to state 1197 -State 948 - - 72 expression_if_then_else: if_or_static_if expr expression_block . expression_else - "else" shift, and go to state 1196 - "elif" shift, and go to state 1197 - "static_elif" shift, and go to state 1198 +State 948 - $default reduce using rule 59 (expression_else) + 394 func_addr_name: name_in_namespace . - elif_or_static_elif go to state 1199 - expression_else go to state 1200 + $default reduce using rule 394 (func_addr_name) State 949 - 74 expression_if_then_else: expression_if_one_liner "if" $@3 . expr expression_else_one_liner "end of expression" + 396 func_addr_expr: '@' '@' func_addr_name . - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1201 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + $default reduce using rule 396 (func_addr_expr) State 950 - 341 expr_full_block_assumed_piped: block_or_lambda $@21 . optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block + 72 expression_if_then_else: if_or_static_if expr expression_block . expression_else - '[' shift, and go to state 15 + "else" shift, and go to state 1198 + "elif" shift, and go to state 1199 + "static_elif" shift, and go to state 1200 - $default reduce using rule 119 (optional_annotation_list) + $default reduce using rule 59 (expression_else) - optional_annotation_list go to state 1202 + elif_or_static_elif go to state 1201 + expression_else go to state 1202 State 951 - 389 expr_named_call: name_in_namespace '(' '[' . make_struct_fields ']' ')' - 826 make_dim_decl: '[' . expr_list optional_comma ']' - 859 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - 860 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "for" shift, and go to state 704 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "iterator" shift, and go to state 705 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "$f" shift, and go to state 907 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 908 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 74 expression_if_then_else: expression_if_one_liner "if" $@3 . expr expression_else_one_liner "end of expression" + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - expr_list go to state 706 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 707 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_fields go to state 1203 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1203 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 952 - 409 expr_call: name_in_namespace '(' ')' . + 342 expr_full_block_assumed_piped: block_or_lambda $@21 . optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block - $default reduce using rule 409 (expr_call) + '[' shift, and go to state 15 + + $default reduce using rule 119 (optional_annotation_list) + optional_annotation_list go to state 1204 -State 953 - 322 expr_list: expr_list . ',' expr - 390 expr_named_call: name_in_namespace '(' expr_list . ',' '[' make_struct_fields ']' ')' - 411 expr_call: name_in_namespace '(' expr_list . ')' +State 953 - ',' shift, and go to state 1204 - ')' shift, and go to state 1205 + 390 expr_named_call: name_in_namespace '(' '[' . make_struct_fields ']' ')' + 827 make_dim_decl: '[' . expr_list optional_comma ']' + 860 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 861 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "for" shift, and go to state 706 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "iterator" shift, and go to state 707 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "$f" shift, and go to state 909 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 910 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + expr_list go to state 708 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 709 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_fields go to state 1205 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 954 - 772 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr - 773 | make_struct_fields . ',' "name" ":=" expr - 776 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr - 777 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr - 778 make_struct_single: make_struct_fields . - - ',' shift, and go to state 1159 + 410 expr_call: name_in_namespace '(' ')' . - $default reduce using rule 778 (make_struct_single) + $default reduce using rule 410 (expr_call) State 955 - 410 expr_call: name_in_namespace '(' make_struct_single . ')' + 323 expr_list: expr_list . ',' expr + 391 expr_named_call: name_in_namespace '(' expr_list . ',' '[' make_struct_fields ']' ')' + 412 expr_call: name_in_namespace '(' expr_list . ')' - ')' shift, and go to state 1206 + ',' shift, and go to state 1206 + ')' shift, and go to state 1207 State 956 - 300 tuple_expansion_variable_declaration: "[[" . tuple_expansion ']' ']' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 302 | "[[" . tuple_expansion ']' ']' optional_ref copy_or_move_or_clone expr "end of expression" + 773 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr + 774 | make_struct_fields . ',' "name" ":=" expr + 777 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr + 778 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr + 779 make_struct_single: make_struct_fields . - "name" shift, and go to state 1207 + ',' shift, and go to state 1161 - tuple_expansion go to state 1208 + $default reduce using rule 779 (make_struct_single) State 957 - 301 tuple_expansion_variable_declaration: '(' . tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 303 | '(' . tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" - - "name" shift, and go to state 1207 + 411 expr_call: name_in_namespace '(' make_struct_single . ')' - tuple_expansion go to state 1209 + ')' shift, and go to state 1208 State 958 - 305 expression_let: kwd_let optional_in_scope tuple_expansion_variable_declaration . + 301 tuple_expansion_variable_declaration: "[[" . tuple_expansion ']' ']' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 303 | "[[" . tuple_expansion ']' ']' optional_ref copy_or_move_or_clone expr "end of expression" - $default reduce using rule 305 (expression_let) + "name" shift, and go to state 1209 + + tuple_expansion go to state 1210 State 959 - 304 expression_let: kwd_let optional_in_scope let_variable_declaration . + 302 tuple_expansion_variable_declaration: '(' . tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 304 | '(' . tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" - $default reduce using rule 304 (expression_let) + "name" shift, and go to state 1209 + tuple_expansion go to state 1211 -State 960 - 336 optional_capture_list: "[[" . capture_list ']' ']' +State 960 - "<-" shift, and go to state 1210 - ":=" shift, and go to state 1211 - '=' shift, and go to state 1212 - '&' shift, and go to state 1213 + 306 expression_let: kwd_let optional_in_scope tuple_expansion_variable_declaration . - capture_entry go to state 1214 - capture_list go to state 1215 + $default reduce using rule 306 (expression_let) State 961 - 339 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list . optional_function_argument_list optional_function_type block_or_simple_block - - '(' shift, and go to state 282 - - $default reduce using rule 121 (optional_function_argument_list) + 305 expression_let: kwd_let optional_in_scope let_variable_declaration . - optional_function_argument_list go to state 1216 + $default reduce using rule 305 (expression_let) State 962 - 259 expr_pipe: expr_assign " <|" expr_block . + 337 optional_capture_list: "[[" . capture_list ']' ']' - $default reduce using rule 259 (expr_pipe) + "<-" shift, and go to state 1212 + ":=" shift, and go to state 1213 + '=' shift, and go to state 1214 + '&' shift, and go to state 1215 + + capture_entry go to state 1216 + capture_list go to state 1217 State 963 - 472 expr: expr "is" "type" . '<' $@28 type_declaration_no_options '>' $@29 + 340 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list . optional_function_argument_list optional_function_type block_or_simple_block + + '(' shift, and go to state 284 + + $default reduce using rule 121 (optional_function_argument_list) - '<' shift, and go to state 1217 + optional_function_argument_list go to state 1218 State 964 - 512 expr_mtag: expr "is" "$f" . '(' expr ')' + 259 expr_pipe: expr_assign " <|" expr_block . - '(' shift, and go to state 1218 + $default reduce using rule 259 (expr_pipe) State 965 - 474 expr: expr "is" "name" . + 473 expr: expr "is" "type" . '<' $@28 type_declaration_no_options '>' $@29 - $default reduce using rule 474 (expr) + '<' shift, and go to state 1219 State 966 - 473 expr: expr "is" basic_type_declaration . + 513 expr_mtag: expr "is" "$f" . '(' expr ')' - $default reduce using rule 473 (expr) + '(' shift, and go to state 1220 State 967 - 478 expr: expr "as" "type" . '<' $@30 type_declaration '>' $@31 + 475 expr: expr "is" "name" . - '<' shift, and go to state 1219 + $default reduce using rule 475 (expr) State 968 - 510 expr_mtag: expr "as" "$f" . '(' expr ')' + 474 expr: expr "is" basic_type_declaration . - '(' shift, and go to state 1220 + $default reduce using rule 474 (expr) State 969 - 475 expr: expr "as" "name" . + 479 expr: expr "as" "type" . '<' $@30 type_declaration '>' $@31 - $default reduce using rule 475 (expr) + '<' shift, and go to state 1221 State 970 - 479 expr: expr "as" basic_type_declaration . + 511 expr_mtag: expr "as" "$f" . '(' expr ')' - $default reduce using rule 479 (expr) + '(' shift, and go to state 1222 State 971 - 370 expr_assign_pipe_right: "$ <|" . expr_block + 476 expr: expr "as" "name" . - "begin of code block" shift, and go to state 284 - '$' shift, and go to state 501 - '@' shift, and go to state 671 - - expression_block go to state 672 - block_or_lambda go to state 673 - expr_block go to state 1221 + $default reduce using rule 476 (expr) State 972 - 368 expr_assign_pipe_right: "@ <|" . expr_block - - "begin of code block" shift, and go to state 284 - '$' shift, and go to state 501 - '@' shift, and go to state 671 + 480 expr: expr "as" basic_type_declaration . - expression_block go to state 672 - block_or_lambda go to state 673 - expr_block go to state 1222 + $default reduce using rule 480 (expr) State 973 - 369 expr_assign_pipe_right: "@@ <|" . expr_block + 371 expr_assign_pipe_right: "$ <|" . expr_block - "begin of code block" shift, and go to state 284 - '$' shift, and go to state 501 - '@' shift, and go to state 671 + "begin of code block" shift, and go to state 286 + '$' shift, and go to state 503 + '@' shift, and go to state 673 - expression_block go to state 672 - block_or_lambda go to state 673 + expression_block go to state 674 + block_or_lambda go to state 675 expr_block go to state 1223 State 974 - 371 expr_assign_pipe_right: expr_call_pipe . + 369 expr_assign_pipe_right: "@ <|" . expr_block - $default reduce using rule 371 (expr_assign_pipe_right) + "begin of code block" shift, and go to state 286 + '$' shift, and go to state 503 + '@' shift, and go to state 673 + + expression_block go to state 674 + block_or_lambda go to state 675 + expr_block go to state 1224 State 975 - 380 expr_assign_pipe: expr "+=" expr_assign_pipe_right . + 370 expr_assign_pipe_right: "@@ <|" . expr_block - $default reduce using rule 380 (expr_assign_pipe) + "begin of code block" shift, and go to state 286 + '$' shift, and go to state 503 + '@' shift, and go to state 673 + expression_block go to state 674 + block_or_lambda go to state 675 + expr_block go to state 1225 -State 976 - 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 359 expr_assign: expr "+=" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - '$' shift, and go to state 501 - '@' shift, and go to state 671 +State 976 - $default reduce using rule 359 (expr_assign) + 372 expr_assign_pipe_right: expr_call_pipe . - block_or_lambda go to state 714 - expr_full_block_assumed_piped go to state 781 + $default reduce using rule 372 (expr_assign_pipe_right) State 977 - 381 expr_assign_pipe: expr "-=" expr_assign_pipe_right . + 381 expr_assign_pipe: expr "+=" expr_assign_pipe_right . $default reduce using rule 381 (expr_assign_pipe) @@ -30402,569 +30485,569 @@ State 977 State 978 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 360 expr_assign: expr "-=" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - '$' shift, and go to state 501 - '@' shift, and go to state 671 + 360 expr_assign: expr "+=" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + '$' shift, and go to state 503 + '@' shift, and go to state 673 $default reduce using rule 360 (expr_assign) - block_or_lambda go to state 714 - expr_full_block_assumed_piped go to state 781 + block_or_lambda go to state 716 + expr_full_block_assumed_piped go to state 783 State 979 - 383 expr_assign_pipe: expr "/=" expr_assign_pipe_right . + 382 expr_assign_pipe: expr "-=" expr_assign_pipe_right . - $default reduce using rule 383 (expr_assign_pipe) + $default reduce using rule 382 (expr_assign_pipe) State 980 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 362 expr_assign: expr "/=" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - '$' shift, and go to state 501 - '@' shift, and go to state 671 + 361 expr_assign: expr "-=" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + '$' shift, and go to state 503 + '@' shift, and go to state 673 - $default reduce using rule 362 (expr_assign) + $default reduce using rule 361 (expr_assign) - block_or_lambda go to state 714 - expr_full_block_assumed_piped go to state 781 + block_or_lambda go to state 716 + expr_full_block_assumed_piped go to state 783 State 981 - 382 expr_assign_pipe: expr "*=" expr_assign_pipe_right . + 384 expr_assign_pipe: expr "/=" expr_assign_pipe_right . - $default reduce using rule 382 (expr_assign_pipe) + $default reduce using rule 384 (expr_assign_pipe) State 982 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 361 expr_assign: expr "*=" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - '$' shift, and go to state 501 - '@' shift, and go to state 671 + 363 expr_assign: expr "/=" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + '$' shift, and go to state 503 + '@' shift, and go to state 673 - $default reduce using rule 361 (expr_assign) + $default reduce using rule 363 (expr_assign) - block_or_lambda go to state 714 - expr_full_block_assumed_piped go to state 781 + block_or_lambda go to state 716 + expr_full_block_assumed_piped go to state 783 State 983 - 384 expr_assign_pipe: expr "%=" expr_assign_pipe_right . + 383 expr_assign_pipe: expr "*=" expr_assign_pipe_right . - $default reduce using rule 384 (expr_assign_pipe) + $default reduce using rule 383 (expr_assign_pipe) State 984 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 363 expr_assign: expr "%=" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - '$' shift, and go to state 501 - '@' shift, and go to state 671 + 362 expr_assign: expr "*=" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + '$' shift, and go to state 503 + '@' shift, and go to state 673 - $default reduce using rule 363 (expr_assign) + $default reduce using rule 362 (expr_assign) - block_or_lambda go to state 714 - expr_full_block_assumed_piped go to state 781 + block_or_lambda go to state 716 + expr_full_block_assumed_piped go to state 783 State 985 - 374 expr_assign_pipe: expr "&=" expr_assign_pipe_right . + 385 expr_assign_pipe: expr "%=" expr_assign_pipe_right . - $default reduce using rule 374 (expr_assign_pipe) + $default reduce using rule 385 (expr_assign_pipe) State 986 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 353 expr_assign: expr "&=" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - '$' shift, and go to state 501 - '@' shift, and go to state 671 + 364 expr_assign: expr "%=" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + '$' shift, and go to state 503 + '@' shift, and go to state 673 - $default reduce using rule 353 (expr_assign) + $default reduce using rule 364 (expr_assign) - block_or_lambda go to state 714 - expr_full_block_assumed_piped go to state 781 + block_or_lambda go to state 716 + expr_full_block_assumed_piped go to state 783 State 987 - 375 expr_assign_pipe: expr "|=" expr_assign_pipe_right . + 375 expr_assign_pipe: expr "&=" expr_assign_pipe_right . $default reduce using rule 375 (expr_assign_pipe) @@ -30972,113 +31055,113 @@ State 987 State 988 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 354 expr_assign: expr "|=" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - '$' shift, and go to state 501 - '@' shift, and go to state 671 + 354 expr_assign: expr "&=" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + '$' shift, and go to state 503 + '@' shift, and go to state 673 $default reduce using rule 354 (expr_assign) - block_or_lambda go to state 714 - expr_full_block_assumed_piped go to state 781 + block_or_lambda go to state 716 + expr_full_block_assumed_piped go to state 783 State 989 - 376 expr_assign_pipe: expr "^=" expr_assign_pipe_right . + 376 expr_assign_pipe: expr "|=" expr_assign_pipe_right . $default reduce using rule 376 (expr_assign_pipe) @@ -31086,480 +31169,480 @@ State 989 State 990 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 355 expr_assign: expr "^=" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - '$' shift, and go to state 501 - '@' shift, and go to state 671 + 355 expr_assign: expr "|=" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + '$' shift, and go to state 503 + '@' shift, and go to state 673 $default reduce using rule 355 (expr_assign) - block_or_lambda go to state 714 - expr_full_block_assumed_piped go to state 781 + block_or_lambda go to state 716 + expr_full_block_assumed_piped go to state 783 State 991 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 428 | expr "<<" expr . - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 377 expr_assign_pipe: expr "^=" expr_assign_pipe_right . - $default reduce using rule 428 (expr) + $default reduce using rule 377 (expr_assign_pipe) State 992 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 429 | expr ">>" expr . - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 220 expr_call_pipe: expr . expr_full_block_assumed_piped + 356 expr_assign: expr "^=" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + '$' shift, and go to state 503 + '@' shift, and go to state 673 - $default reduce using rule 429 (expr) + $default reduce using rule 356 (expr_assign) + + block_or_lambda go to state 716 + expr_full_block_assumed_piped go to state 783 State 993 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 441 | expr "<=" expr . - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 429 | expr "<<" expr . + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 441 (expr) + $default reduce using rule 429 (expr) State 994 - 385 expr_assign_pipe: expr "<<=" expr_assign_pipe_right . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 430 | expr ">>" expr . + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 385 (expr_assign_pipe) + $default reduce using rule 430 (expr) State 995 - 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 364 expr_assign: expr "<<=" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - '$' shift, and go to state 501 - '@' shift, and go to state 671 - - $default reduce using rule 364 (expr_assign) + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 442 | expr "<=" expr . + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - block_or_lambda go to state 714 - expr_full_block_assumed_piped go to state 781 + $default reduce using rule 442 (expr) State 996 - 386 expr_assign_pipe: expr ">>=" expr_assign_pipe_right . + 386 expr_assign_pipe: expr "<<=" expr_assign_pipe_right . $default reduce using rule 386 (expr_assign_pipe) @@ -31567,1230 +31650,1230 @@ State 996 State 997 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 365 expr_assign: expr ">>=" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - '$' shift, and go to state 501 - '@' shift, and go to state 671 + 365 expr_assign: expr "<<=" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + '$' shift, and go to state 503 + '@' shift, and go to state 673 $default reduce using rule 365 (expr_assign) - block_or_lambda go to state 714 - expr_full_block_assumed_piped go to state 781 + block_or_lambda go to state 716 + expr_full_block_assumed_piped go to state 783 State 998 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 442 | expr ">=" expr . - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 387 expr_assign_pipe: expr ">>=" expr_assign_pipe_right . - $default reduce using rule 442 (expr) + $default reduce using rule 387 (expr_assign_pipe) State 999 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 439 | expr "==" expr . - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 220 expr_call_pipe: expr . expr_full_block_assumed_piped + 366 expr_assign: expr ">>=" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + '$' shift, and go to state 503 + '@' shift, and go to state 673 - $default reduce using rule 439 (expr) + $default reduce using rule 366 (expr_assign) + + block_or_lambda go to state 716 + expr_full_block_assumed_piped go to state 783 State 1000 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 440 | expr "!=" expr . - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 443 | expr ">=" expr . + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 440 (expr) + $default reduce using rule 443 (expr) State 1001 - 391 expr_method_call: expr "->" "name" . '(' ')' - 392 | expr "->" "name" . '(' expr_list ')' + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 440 | expr "==" expr . + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - '(' shift, and go to state 1224 + $default reduce using rule 440 (expr) State 1002 - 373 expr_assign_pipe: expr "<-" expr_assign_pipe_right . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 441 | expr "!=" expr . + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 373 (expr_assign_pipe) + $default reduce using rule 441 (expr) State 1003 - 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 351 expr_assign: expr "<-" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - '$' shift, and go to state 501 - '@' shift, and go to state 671 - - $default reduce using rule 351 (expr_assign) + 392 expr_method_call: expr "->" "name" . '(' ')' + 393 | expr "->" "name" . '(' expr_list ')' - block_or_lambda go to state 714 - expr_full_block_assumed_piped go to state 781 + '(' shift, and go to state 1226 State 1004 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 468 | expr "??" expr . - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 374 expr_assign_pipe: expr "<-" expr_assign_pipe_right . - $default reduce using rule 468 (expr) + $default reduce using rule 374 (expr_assign_pipe) State 1005 - 507 expr_mtag: expr "?." "$f" . '(' expr ')' + 220 expr_call_pipe: expr . expr_full_block_assumed_piped + 352 expr_assign: expr "<-" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + '$' shift, and go to state 503 + '@' shift, and go to state 673 + + $default reduce using rule 352 (expr_assign) - '(' shift, and go to state 1225 + block_or_lambda go to state 716 + expr_full_block_assumed_piped go to state 783 State 1006 - 459 expr: expr "?." "name" . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 469 | expr "??" expr . + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 459 (expr) + $default reduce using rule 469 (expr) State 1007 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 457 | expr "?[" expr . ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - ']' shift, and go to state 1226 + 508 expr_mtag: expr "?." "$f" . '(' expr ')' + + '(' shift, and go to state 1227 State 1008 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 492 | expr "<|" expr . - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "->" shift, and go to state 748 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 460 expr: expr "?." "name" . - $default reduce using rule 492 (expr) + $default reduce using rule 460 (expr) State 1009 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 493 | expr "|>" expr . - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "->" shift, and go to state 748 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - - $default reduce using rule 493 (expr) + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 458 | expr "?[" expr . ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + ']' shift, and go to state 1228 State 1010 - 412 expr_call: basic_type_declaration . '(' ')' - 413 | basic_type_declaration . '(' expr_list ')' - 494 expr: expr "|>" basic_type_declaration . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 493 | expr "<|" expr . + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "->" shift, and go to state 750 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - '(' shift, and go to state 782 - - $default reduce using rule 494 (expr) + $default reduce using rule 493 (expr) State 1011 - 352 expr_assign: expr ":=" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 494 | expr "|>" expr . + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "->" shift, and go to state 750 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 352 (expr_assign) + $default reduce using rule 494 (expr) State 1012 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 430 | expr "<<<" expr . - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 413 expr_call: basic_type_declaration . '(' ')' + 414 | basic_type_declaration . '(' expr_list ')' + 495 expr: expr "|>" basic_type_declaration . - $default reduce using rule 430 (expr) + '(' shift, and go to state 784 + + $default reduce using rule 495 (expr) State 1013 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 431 | expr ">>>" expr . - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 353 expr_assign: expr ":=" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 431 (expr) + $default reduce using rule 353 (expr_assign) State 1014 - 387 expr_assign_pipe: expr "<<<=" expr_assign_pipe_right . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 431 | expr "<<<" expr . + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 387 (expr_assign_pipe) + $default reduce using rule 431 (expr) State 1015 - 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 366 expr_assign: expr "<<<=" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - '$' shift, and go to state 501 - '@' shift, and go to state 671 - - $default reduce using rule 366 (expr_assign) + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 432 | expr ">>>" expr . + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - block_or_lambda go to state 714 - expr_full_block_assumed_piped go to state 781 + $default reduce using rule 432 (expr) State 1016 - 388 expr_assign_pipe: expr ">>>=" expr_assign_pipe_right . + 388 expr_assign_pipe: expr "<<<=" expr_assign_pipe_right . $default reduce using rule 388 (expr_assign_pipe) @@ -32798,518 +32881,518 @@ State 1016 State 1017 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 367 expr_assign: expr ">>>=" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - '$' shift, and go to state 501 - '@' shift, and go to state 671 + 367 expr_assign: expr "<<<=" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + '$' shift, and go to state 503 + '@' shift, and go to state 673 $default reduce using rule 367 (expr_assign) - block_or_lambda go to state 714 - expr_full_block_assumed_piped go to state 781 + block_or_lambda go to state 716 + expr_full_block_assumed_piped go to state 783 State 1018 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 446 | expr "&&" expr . - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 389 expr_assign_pipe: expr ">>>=" expr_assign_pipe_right . - $default reduce using rule 446 (expr) + $default reduce using rule 389 (expr_assign_pipe) State 1019 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 447 | expr "||" expr . - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "^^" shift, and go to state 762 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - - $default reduce using rule 447 (expr) + 220 expr_call_pipe: expr . expr_full_block_assumed_piped + 368 expr_assign: expr ">>>=" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + '$' shift, and go to state 503 + '@' shift, and go to state 673 + + $default reduce using rule 368 (expr_assign) + + block_or_lambda go to state 716 + expr_full_block_assumed_piped go to state 783 State 1020 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 448 | expr "^^" expr . - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 447 | expr "&&" expr . + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 448 (expr) + $default reduce using rule 447 (expr) State 1021 - 377 expr_assign_pipe: expr "&&=" expr_assign_pipe_right . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 448 | expr "||" expr . + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "^^" shift, and go to state 764 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 377 (expr_assign_pipe) + $default reduce using rule 448 (expr) State 1022 - 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 356 expr_assign: expr "&&=" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - '$' shift, and go to state 501 - '@' shift, and go to state 671 - - $default reduce using rule 356 (expr_assign) + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 449 | expr "^^" expr . + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - block_or_lambda go to state 714 - expr_full_block_assumed_piped go to state 781 + $default reduce using rule 449 (expr) State 1023 - 378 expr_assign_pipe: expr "||=" expr_assign_pipe_right . + 378 expr_assign_pipe: expr "&&=" expr_assign_pipe_right . $default reduce using rule 378 (expr_assign_pipe) @@ -33317,113 +33400,113 @@ State 1023 State 1024 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 357 expr_assign: expr "||=" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - '$' shift, and go to state 501 - '@' shift, and go to state 671 + 357 expr_assign: expr "&&=" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + '$' shift, and go to state 503 + '@' shift, and go to state 673 $default reduce using rule 357 (expr_assign) - block_or_lambda go to state 714 - expr_full_block_assumed_piped go to state 781 + block_or_lambda go to state 716 + expr_full_block_assumed_piped go to state 783 State 1025 - 379 expr_assign_pipe: expr "^^=" expr_assign_pipe_right . + 379 expr_assign_pipe: expr "||=" expr_assign_pipe_right . $default reduce using rule 379 (expr_assign_pipe) @@ -33431,22240 +33514,22442 @@ State 1025 State 1026 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 358 expr_assign: expr "^^=" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - '$' shift, and go to state 501 - '@' shift, and go to state 671 + 358 expr_assign: expr "||=" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + '$' shift, and go to state 503 + '@' shift, and go to state 673 $default reduce using rule 358 (expr_assign) - block_or_lambda go to state 714 - expr_full_block_assumed_piped go to state 781 + block_or_lambda go to state 716 + expr_full_block_assumed_piped go to state 783 State 1027 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 449 | expr ".." expr . - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - - ".." error (nonassociative) + 380 expr_assign_pipe: expr "^^=" expr_assign_pipe_right . - $default reduce using rule 449 (expr) + $default reduce using rule 380 (expr_assign_pipe) State 1028 - 372 expr_assign_pipe: expr '=' expr_assign_pipe_right . + 220 expr_call_pipe: expr . expr_full_block_assumed_piped + 359 expr_assign: expr "^^=" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + '$' shift, and go to state 503 + '@' shift, and go to state 673 + + $default reduce using rule 359 (expr_assign) - $default reduce using rule 372 (expr_assign_pipe) + block_or_lambda go to state 716 + expr_full_block_assumed_piped go to state 783 State 1029 - 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 350 expr_assign: expr '=' expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - '$' shift, and go to state 501 - '@' shift, and go to state 671 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 450 | expr ".." expr . + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 350 (expr_assign) + ".." error (nonassociative) - block_or_lambda go to state 714 - expr_full_block_assumed_piped go to state 781 + $default reduce using rule 450 (expr) State 1030 - 480 expr: expr '?' "as" . "name" - 483 | expr '?' "as" . "type" '<' $@32 type_declaration '>' $@33 - 484 | expr '?' "as" . basic_type_declaration - 511 expr_mtag: expr '?' "as" . "$f" '(' expr ')' - - "type" shift, and go to state 1227 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "$f" shift, and go to state 1228 - "name" shift, and go to state 1229 - - basic_type_declaration go to state 1230 + 373 expr_assign_pipe: expr '=' expr_assign_pipe_right . + + $default reduce using rule 373 (expr_assign_pipe) State 1031 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 469 | expr '?' expr . ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - ':' shift, and go to state 1231 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 220 expr_call_pipe: expr . expr_full_block_assumed_piped + 351 expr_assign: expr '=' expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + '$' shift, and go to state 503 + '@' shift, and go to state 673 + + $default reduce using rule 351 (expr_assign) + + block_or_lambda go to state 716 + expr_full_block_assumed_piped go to state 783 State 1032 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 444 | expr '|' expr . - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - - $default reduce using rule 444 (expr) + 481 expr: expr '?' "as" . "name" + 484 | expr '?' "as" . "type" '<' $@32 type_declaration '>' $@33 + 485 | expr '?' "as" . basic_type_declaration + 512 expr_mtag: expr '?' "as" . "$f" '(' expr ')' + + "type" shift, and go to state 1229 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "$f" shift, and go to state 1230 + "name" shift, and go to state 1231 + + basic_type_declaration go to state 1232 State 1033 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 445 | expr '^' expr . - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - - $default reduce using rule 445 (expr) + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 470 | expr '?' expr . ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + ':' shift, and go to state 1233 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 State 1034 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 443 | expr '&' expr . - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 445 | expr '|' expr . + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 443 (expr) + $default reduce using rule 445 (expr) State 1035 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 437 | expr '<' expr . - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 446 | expr '^' expr . + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 437 (expr) + $default reduce using rule 446 (expr) State 1036 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 438 | expr '>' expr . - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 444 | expr '&' expr . + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 438 (expr) + $default reduce using rule 444 (expr) State 1037 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 433 | expr '-' expr . - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 438 | expr '<' expr . + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 433 (expr) + $default reduce using rule 438 (expr) State 1038 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 432 | expr '+' expr . - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 439 | expr '>' expr . + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 432 (expr) + $default reduce using rule 439 (expr) State 1039 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 434 | expr '*' expr . - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 434 | expr '-' expr . + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 $default reduce using rule 434 (expr) State 1040 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 435 | expr '/' expr . - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 433 | expr '+' expr . + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 435 (expr) + $default reduce using rule 433 (expr) State 1041 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 436 | expr '%' expr . - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 435 | expr '*' expr . + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 436 (expr) + $default reduce using rule 435 (expr) State 1042 - 460 expr: expr '.' "?." . "name" - 509 expr_mtag: expr '.' "?." . "$f" '(' expr ')' + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 436 | expr '/' expr . + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - "$f" shift, and go to state 1232 - "name" shift, and go to state 1233 + $default reduce using rule 436 (expr) State 1043 - 458 expr: expr '.' "?[" . expr ']' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1234 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 437 | expr '%' expr . + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + + $default reduce using rule 437 (expr) State 1044 - 506 expr_mtag: expr '.' "$f" . '(' expr ')' + 461 expr: expr '.' "?." . "name" + 510 expr_mtag: expr '.' "?." . "$f" '(' expr ')' - '(' shift, and go to state 1235 + "$f" shift, and go to state 1234 + "name" shift, and go to state 1235 State 1045 - 402 expr_field: expr '.' "name" . - 404 | expr '.' "name" . '(' ')' - 405 | expr '.' "name" . '(' expr_list ')' - - '(' shift, and go to state 1236 - - '(' [reduce using rule 402 (expr_field)] - $default reduce using rule 402 (expr_field) + 459 expr: expr '.' "?[" . expr ']' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1236 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1046 - 403 expr_field: expr '.' '.' . "name" - 508 expr_mtag: expr '.' '.' . "$f" '(' expr ')' + 507 expr_mtag: expr '.' "$f" . '(' expr ')' - "$f" shift, and go to state 1237 - "name" shift, and go to state 1238 + '(' shift, and go to state 1237 State 1047 - 456 expr: expr '.' '[' . expr ']' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1239 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 403 expr_field: expr '.' "name" . + 405 | expr '.' "name" . '(' ')' + 406 | expr '.' "name" . '(' expr_list ')' + + '(' shift, and go to state 1238 + + '(' [reduce using rule 403 (expr_field)] + $default reduce using rule 403 (expr_field) State 1048 - 408 expr_field: expr '.' $@26 . error $@27 + 404 expr_field: expr '.' '.' . "name" + 509 expr_mtag: expr '.' '.' . "$f" '(' expr ')' - error shift, and go to state 1240 + "$f" shift, and go to state 1239 + "name" shift, and go to state 1240 State 1049 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 455 | expr '[' expr . ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - ']' shift, and go to state 1241 + 457 expr: expr '.' '[' . expr ']' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1241 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1050 - 412 expr_call: basic_type_declaration '(' ')' . + 409 expr_field: expr '.' $@26 . error $@27 - $default reduce using rule 412 (expr_call) + error shift, and go to state 1242 State 1051 - 322 expr_list: expr_list . ',' expr - 413 expr_call: basic_type_declaration '(' expr_list . ')' - - ',' shift, and go to state 856 - ')' shift, and go to state 1242 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 456 | expr '[' expr . ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + ']' shift, and go to state 1243 State 1052 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 590 enum_list: enum_list "name" '=' expr . "end of expression" - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - "end of expression" shift, and go to state 1243 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 413 expr_call: basic_type_declaration '(' ')' . + + $default reduce using rule 413 (expr_call) State 1053 - 610 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 . "end of code block" + 323 expr_list: expr_list . ',' expr + 414 expr_call: basic_type_declaration '(' expr_list . ')' - "end of code block" shift, and go to state 1244 + ',' shift, and go to state 858 + ')' shift, and go to state 1244 State 1054 - 118 annotation_list: annotation_list . ',' annotation_declaration - 120 optional_annotation_list: '[' annotation_list . ']' - 535 struct_variable_declaration_list: struct_variable_declaration_list '[' annotation_list . ']' "end of expression" - - ',' shift, and go to state 105 - ']' shift, and go to state 1245 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 591 enum_list: enum_list "name" '=' expr . "end of expression" + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + "end of expression" shift, and go to state 1245 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 State 1055 - 532 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" . optional_public_or_private_member_variable "abstract" optional_constant $@35 function_declaration_header "end of expression" - 534 | struct_variable_declaration_list optional_annotation_list "def" . optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@36 function_declaration_header expression_block + 611 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 . "end of code block" - "public" shift, and go to state 1246 - "private" shift, and go to state 1247 - - $default reduce using rule 522 (optional_public_or_private_member_variable) - - optional_public_or_private_member_variable go to state 1248 + "end of code block" shift, and go to state 1246 State 1056 - 527 structure_variable_declaration: optional_field_annotation . optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration + 118 annotation_list: annotation_list . ',' annotation_declaration + 120 optional_annotation_list: '[' annotation_list . ']' + 536 struct_variable_declaration_list: struct_variable_declaration_list '[' annotation_list . ']' "end of expression" - "static" shift, and go to state 1249 + ',' shift, and go to state 107 + ']' shift, and go to state 1247 - $default reduce using rule 525 (optional_static_member_variable) - optional_static_member_variable go to state 1250 +State 1057 + 533 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" . optional_public_or_private_member_variable "abstract" optional_constant $@35 function_declaration_header "end of expression" + 535 | struct_variable_declaration_list optional_annotation_list "def" . optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@36 function_declaration_header expression_block -State 1057 + "public" shift, and go to state 1248 + "private" shift, and go to state 1249 - 530 struct_variable_declaration_list: struct_variable_declaration_list $@34 structure_variable_declaration . "end of expression" + $default reduce using rule 523 (optional_public_or_private_member_variable) - "end of expression" shift, and go to state 1251 + optional_public_or_private_member_variable go to state 1250 State 1058 - 570 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" "aka" "name" . + 528 structure_variable_declaration: optional_field_annotation . optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration - $default reduce using rule 570 (let_variable_name_with_pos_list) + "static" shift, and go to state 1251 + + $default reduce using rule 526 (optional_static_member_variable) + + optional_static_member_variable go to state 1252 State 1059 - 573 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr_pipe . + 531 struct_variable_declaration_list: struct_variable_declaration_list $@34 structure_variable_declaration . "end of expression" - $default reduce using rule 573 (let_variable_declaration) + "end of expression" shift, and go to state 1253 State 1060 - 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 349 expr_assign: expr . - 350 | expr . '=' expr - 351 | expr . "<-" expr - 352 | expr . ":=" expr - 353 | expr . "&=" expr - 354 | expr . "|=" expr - 355 | expr . "^=" expr - 356 | expr . "&&=" expr - 357 | expr . "||=" expr - 358 | expr . "^^=" expr - 359 | expr . "+=" expr - 360 | expr . "-=" expr - 361 | expr . "*=" expr - 362 | expr . "/=" expr - 363 | expr . "%=" expr - 364 | expr . "<<=" expr - 365 | expr . ">>=" expr - 366 | expr . "<<<=" expr - 367 | expr . ">>>=" expr - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 572 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr . "end of expression" - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "+=" shift, and go to state 857 - "-=" shift, and go to state 858 - "/=" shift, and go to state 859 - "*=" shift, and go to state 860 - "%=" shift, and go to state 861 - "&=" shift, and go to state 862 - "|=" shift, and go to state 863 - "^=" shift, and go to state 864 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - "<<=" shift, and go to state 865 - ">>=" shift, and go to state 866 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "<-" shift, and go to state 867 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - ":=" shift, and go to state 755 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "<<<=" shift, and go to state 868 - ">>>=" shift, and go to state 869 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - "&&=" shift, and go to state 870 - "||=" shift, and go to state 871 - "^^=" shift, and go to state 872 - ".." shift, and go to state 766 - "end of expression" shift, and go to state 1252 - '=' shift, and go to state 873 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - '$' shift, and go to state 501 - '@' shift, and go to state 671 - - $default reduce using rule 349 (expr_assign) - - block_or_lambda go to state 714 - expr_full_block_assumed_piped go to state 781 + 571 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" "aka" "name" . + + $default reduce using rule 571 (let_variable_name_with_pos_list) State 1061 - 574 let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr "end of expression" . + 574 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr_pipe . $default reduce using rule 574 (let_variable_declaration) State 1062 - 690 type_declaration_no_options: "type" '<' $@49 type_declaration '>' . $@50 + 220 expr_call_pipe: expr . expr_full_block_assumed_piped + 350 expr_assign: expr . + 351 | expr . '=' expr + 352 | expr . "<-" expr + 353 | expr . ":=" expr + 354 | expr . "&=" expr + 355 | expr . "|=" expr + 356 | expr . "^=" expr + 357 | expr . "&&=" expr + 358 | expr . "||=" expr + 359 | expr . "^^=" expr + 360 | expr . "+=" expr + 361 | expr . "-=" expr + 362 | expr . "*=" expr + 363 | expr . "/=" expr + 364 | expr . "%=" expr + 365 | expr . "<<=" expr + 366 | expr . ">>=" expr + 367 | expr . "<<<=" expr + 368 | expr . ">>>=" expr + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 573 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr . "end of expression" + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "+=" shift, and go to state 859 + "-=" shift, and go to state 860 + "/=" shift, and go to state 861 + "*=" shift, and go to state 862 + "%=" shift, and go to state 863 + "&=" shift, and go to state 864 + "|=" shift, and go to state 865 + "^=" shift, and go to state 866 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + "<<=" shift, and go to state 867 + ">>=" shift, and go to state 868 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "<-" shift, and go to state 869 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + ":=" shift, and go to state 757 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "<<<=" shift, and go to state 870 + ">>>=" shift, and go to state 871 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + "&&=" shift, and go to state 872 + "||=" shift, and go to state 873 + "^^=" shift, and go to state 874 + ".." shift, and go to state 768 + "end of expression" shift, and go to state 1254 + '=' shift, and go to state 875 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + '$' shift, and go to state 503 + '@' shift, and go to state 673 - $default reduce using rule 689 ($@50) + $default reduce using rule 350 (expr_assign) - $@50 go to state 1253 + block_or_lambda go to state 716 + expr_full_block_assumed_piped go to state 783 State 1063 - 713 type_declaration_no_options: "array" '<' $@54 type_declaration '>' . $@55 + 575 let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr "end of expression" . - $default reduce using rule 712 ($@55) - - $@55 go to state 1254 + $default reduce using rule 575 (let_variable_declaration) State 1064 - 716 type_declaration_no_options: "table" '<' $@56 table_type_pair '>' . $@57 + 691 type_declaration_no_options: "type" '<' $@49 type_declaration '>' . $@50 - $default reduce using rule 715 ($@57) + $default reduce using rule 690 ($@50) - $@57 go to state 1255 + $@50 go to state 1255 State 1065 - 679 table_type_pair: type_declaration "end of expression" . type_declaration - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 354 - type_declaration go to state 1256 + 714 type_declaration_no_options: "array" '<' $@54 type_declaration '>' . $@55 + $default reduce using rule 713 ($@55) -State 1066 + $@55 go to state 1256 - 719 type_declaration_no_options: "iterator" '<' $@58 type_declaration '>' . $@59 - $default reduce using rule 718 ($@59) +State 1066 - $@59 go to state 1257 + 717 type_declaration_no_options: "table" '<' $@56 table_type_pair '>' . $@57 + $default reduce using rule 716 ($@57) -State 1067 + $@57 go to state 1257 - 709 type_declaration_no_options: "smart_ptr" '<' $@52 type_declaration '>' . $@53 - $default reduce using rule 708 ($@53) +State 1067 - $@53 go to state 1258 + 680 table_type_pair: type_declaration "end of expression" . type_declaration + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 356 + type_declaration go to state 1258 State 1068 - 671 bitfield_bits: bitfield_bits "end of expression" . "name" + 720 type_declaration_no_options: "iterator" '<' $@58 type_declaration '>' . $@59 - "name" shift, and go to state 1259 + $default reduce using rule 719 ($@59) + + $@59 go to state 1259 State 1069 - 677 bitfield_type_declaration: "bitfield" '<' $@47 bitfield_bits '>' . $@48 + 710 type_declaration_no_options: "smart_ptr" '<' $@52 type_declaration '>' . $@53 - $default reduce using rule 676 ($@48) + $default reduce using rule 709 ($@53) - $@48 go to state 1260 + $@53 go to state 1260 State 1070 - 723 type_declaration_no_options: "block" '<' $@60 type_declaration '>' . $@61 - - $default reduce using rule 722 ($@61) + 672 bitfield_bits: bitfield_bits "end of expression" . "name" - $@61 go to state 1261 + "name" shift, and go to state 1261 State 1071 - 726 type_declaration_no_options: "block" '<' $@62 optional_function_argument_list optional_function_type . '>' $@63 + 678 bitfield_type_declaration: "bitfield" '<' $@47 bitfield_bits '>' . $@48 - '>' shift, and go to state 1262 + $default reduce using rule 677 ($@48) + + $@48 go to state 1262 State 1072 - 730 type_declaration_no_options: "function" '<' $@64 type_declaration '>' . $@65 + 724 type_declaration_no_options: "block" '<' $@60 type_declaration '>' . $@61 - $default reduce using rule 729 ($@65) + $default reduce using rule 723 ($@61) - $@65 go to state 1263 + $@61 go to state 1263 State 1073 - 733 type_declaration_no_options: "function" '<' $@66 optional_function_argument_list optional_function_type . '>' $@67 + 727 type_declaration_no_options: "block" '<' $@62 optional_function_argument_list optional_function_type . '>' $@63 '>' shift, and go to state 1264 State 1074 - 737 type_declaration_no_options: "lambda" '<' $@68 type_declaration '>' . $@69 + 731 type_declaration_no_options: "function" '<' $@64 type_declaration '>' . $@65 - $default reduce using rule 736 ($@69) + $default reduce using rule 730 ($@65) - $@69 go to state 1265 + $@65 go to state 1265 State 1075 - 740 type_declaration_no_options: "lambda" '<' $@70 optional_function_argument_list optional_function_type . '>' $@71 + 734 type_declaration_no_options: "function" '<' $@66 optional_function_argument_list optional_function_type . '>' $@67 '>' shift, and go to state 1266 State 1076 - 543 tuple_type_list: tuple_type_list "end of expression" . tuple_type - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 606 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - tuple_type go to state 1267 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 354 - type_declaration go to state 609 - + 738 type_declaration_no_options: "lambda" '<' $@68 type_declaration '>' . $@69 -State 1077 + $default reduce using rule 737 ($@69) - 743 type_declaration_no_options: "tuple" '<' $@72 tuple_type_list '>' . $@73 + $@69 go to state 1267 - $default reduce using rule 742 ($@73) - $@73 go to state 1268 +State 1077 + 741 type_declaration_no_options: "lambda" '<' $@70 optional_function_argument_list optional_function_type . '>' $@71 -State 1078 + '>' shift, and go to state 1268 - 549 variant_type_list: variant_type_list "end of expression" . variant_type - "name" shift, and go to state 611 +State 1078 - variant_type go to state 1269 + 544 tuple_type_list: tuple_type_list "end of expression" . tuple_type + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 608 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + tuple_type go to state 1269 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 356 + type_declaration go to state 611 State 1079 - 746 type_declaration_no_options: "variant" '<' $@74 variant_type_list '>' . $@75 + 744 type_declaration_no_options: "tuple" '<' $@72 tuple_type_list '>' . $@73 - $default reduce using rule 745 ($@75) + $default reduce using rule 743 ($@73) - $@75 go to state 1270 + $@73 go to state 1270 State 1080 - 252 type_declaration_no_options_list: type_declaration_no_options_list . "end of expression" type_declaration - 694 type_declaration_no_options: '$' name_in_namespace '<' $@51 type_declaration_no_options_list . '>' '(' optional_expr_list ')' + 550 variant_type_list: variant_type_list "end of expression" . variant_type + + "name" shift, and go to state 613 - "end of expression" shift, and go to state 1271 - '>' shift, and go to state 1272 + variant_type go to state 1271 State 1081 - 251 type_declaration_no_options_list: type_declaration . - 748 type_declaration: type_declaration . '|' type_declaration_no_options - 749 | type_declaration . '|' '#' + 747 type_declaration_no_options: "variant" '<' $@74 variant_type_list '>' . $@75 - '|' shift, and go to state 415 + $default reduce using rule 746 ($@75) - $default reduce using rule 251 (type_declaration_no_options_list) + $@75 go to state 1272 State 1082 - 692 type_declaration_no_options: '$' name_in_namespace '(' optional_expr_list ')' . + 252 type_declaration_no_options_list: type_declaration_no_options_list . "end of expression" type_declaration + 695 type_declaration_no_options: '$' name_in_namespace '<' $@51 type_declaration_no_options_list . '>' '(' optional_expr_list ')' - $default reduce using rule 692 (type_declaration_no_options) + "end of expression" shift, and go to state 1273 + '>' shift, and go to state 1274 State 1083 - 681 dim_list: dim_list '[' expr ']' . + 251 type_declaration_no_options_list: type_declaration . + 749 type_declaration: type_declaration . '|' type_declaration_no_options + 750 | type_declaration . '|' '#' - $default reduce using rule 681 (dim_list) + '|' shift, and go to state 417 + $default reduce using rule 251 (type_declaration_no_options_list) -State 1084 - 541 tuple_type: "name" ':' type_declaration . - 748 type_declaration: type_declaration . '|' type_declaration_no_options - 749 | type_declaration . '|' '#' +State 1084 - '|' shift, and go to state 415 + 693 type_declaration_no_options: '$' name_in_namespace '(' optional_expr_list ')' . - $default reduce using rule 541 (tuple_type) + $default reduce using rule 693 (type_declaration_no_options) State 1085 - 547 variant_type: "name" ':' type_declaration . - 748 type_declaration: type_declaration . '|' type_declaration_no_options - 749 | type_declaration . '|' '#' + 682 dim_list: dim_list '[' expr ']' . - '|' shift, and go to state 415 - - $default reduce using rule 547 (variant_type) + $default reduce using rule 682 (dim_list) State 1086 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 627 variable_name_with_pos_list: "$i" '(' expr . ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - ')' shift, and go to state 1273 - + 542 tuple_type: "name" ':' type_declaration . + 749 type_declaration: type_declaration . '|' type_declaration_no_options + 750 | type_declaration . '|' '#' -State 1087 + '|' shift, and go to state 417 - 628 variable_name_with_pos_list: "name" "aka" "name" . + $default reduce using rule 542 (tuple_type) - $default reduce using rule 628 (variable_name_with_pos_list) +State 1087 -State 1088 + 548 variant_type: "name" ':' type_declaration . + 749 type_declaration: type_declaration . '|' type_declaration_no_options + 750 | type_declaration . '|' '#' - 629 variable_name_with_pos_list: variable_name_with_pos_list ',' "name" . - 630 | variable_name_with_pos_list ',' "name" . "aka" "name" + '|' shift, and go to state 417 - "aka" shift, and go to state 1274 + $default reduce using rule 548 (variant_type) - $default reduce using rule 629 (variable_name_with_pos_list) +State 1088 -State 1089 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 628 variable_name_with_pos_list: "$i" '(' expr . ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + ')' shift, and go to state 1275 - 557 variable_declaration: variable_name_with_pos_list ':' type_declaration . - 558 | variable_name_with_pos_list ':' type_declaration . copy_or_move expr - 748 type_declaration: type_declaration . '|' type_declaration_no_options - 749 | type_declaration . '|' '#' - "<-" shift, and go to state 835 - '=' shift, and go to state 837 - '|' shift, and go to state 415 +State 1089 - $default reduce using rule 557 (variable_declaration) + 629 variable_name_with_pos_list: "name" "aka" "name" . - copy_or_move go to state 1275 + $default reduce using rule 629 (variable_name_with_pos_list) State 1090 - 560 variable_declaration: variable_name_with_pos_list copy_or_move expr_pipe . + 630 variable_name_with_pos_list: variable_name_with_pos_list ',' "name" . + 631 | variable_name_with_pos_list ',' "name" . "aka" "name" - $default reduce using rule 560 (variable_declaration) + "aka" shift, and go to state 1276 + + $default reduce using rule 630 (variable_name_with_pos_list) State 1091 - 220 expr_call_pipe: expr . expr_full_block_assumed_piped - 349 expr_assign: expr . - 350 | expr . '=' expr - 351 | expr . "<-" expr - 352 | expr . ":=" expr - 353 | expr . "&=" expr - 354 | expr . "|=" expr - 355 | expr . "^=" expr - 356 | expr . "&&=" expr - 357 | expr . "||=" expr - 358 | expr . "^^=" expr - 359 | expr . "+=" expr - 360 | expr . "-=" expr - 361 | expr . "*=" expr - 362 | expr . "/=" expr - 363 | expr . "%=" expr - 364 | expr . "<<=" expr - 365 | expr . ">>=" expr - 366 | expr . "<<<=" expr - 367 | expr . ">>>=" expr - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 559 variable_declaration: variable_name_with_pos_list copy_or_move expr . - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "+=" shift, and go to state 857 - "-=" shift, and go to state 858 - "/=" shift, and go to state 859 - "*=" shift, and go to state 860 - "%=" shift, and go to state 861 - "&=" shift, and go to state 862 - "|=" shift, and go to state 863 - "^=" shift, and go to state 864 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - "<<=" shift, and go to state 865 - ">>=" shift, and go to state 866 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "<-" shift, and go to state 867 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - ":=" shift, and go to state 755 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "<<<=" shift, and go to state 868 - ">>>=" shift, and go to state 869 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - "&&=" shift, and go to state 870 - "||=" shift, and go to state 871 - "^^=" shift, and go to state 872 - ".." shift, and go to state 766 - '=' shift, and go to state 873 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - '$' shift, and go to state 501 - '@' shift, and go to state 671 - - " <|" reduce using rule 349 (expr_assign) - $default reduce using rule 559 (variable_declaration) + 558 variable_declaration: variable_name_with_pos_list ':' type_declaration . + 559 | variable_name_with_pos_list ':' type_declaration . copy_or_move expr + 749 type_declaration: type_declaration . '|' type_declaration_no_options + 750 | type_declaration . '|' '#' + + "<-" shift, and go to state 837 + '=' shift, and go to state 839 + '|' shift, and go to state 417 - block_or_lambda go to state 714 - expr_full_block_assumed_piped go to state 781 + $default reduce using rule 558 (variable_declaration) + + copy_or_move go to state 1277 State 1092 - 686 type_declaration_no_options: type_declaration_no_options . dim_list - 687 | type_declaration_no_options . '[' ']' - 695 | type_declaration_no_options . '-' '[' ']' - 696 | type_declaration_no_options . "explicit" - 697 | type_declaration_no_options . "const" - 698 | type_declaration_no_options . '-' "const" - 699 | type_declaration_no_options . '&' - 700 | type_declaration_no_options . '-' '&' - 701 | type_declaration_no_options . '#' - 702 | type_declaration_no_options . "implicit" - 703 | type_declaration_no_options . '-' '#' - 704 | type_declaration_no_options . "==" "const" - 705 | type_declaration_no_options . "==" '&' - 706 | type_declaration_no_options . '?' - 710 | type_declaration_no_options . "??" - 805 make_struct_decl: "struct" '<' $@88 type_declaration_no_options . '>' $@89 '(' use_initializer make_struct_dim ')' - - "const" shift, and go to state 404 - "implicit" shift, and go to state 405 - "explicit" shift, and go to state 406 - "==" shift, and go to state 407 - "??" shift, and go to state 408 - '?' shift, and go to state 409 - '&' shift, and go to state 410 - '>' shift, and go to state 1276 - '-' shift, and go to state 411 - '[' shift, and go to state 412 - '#' shift, and go to state 413 - - dim_list go to state 414 + 561 variable_declaration: variable_name_with_pos_list copy_or_move expr_pipe . + + $default reduce using rule 561 (variable_declaration) State 1093 - 686 type_declaration_no_options: type_declaration_no_options . dim_list - 687 | type_declaration_no_options . '[' ']' - 695 | type_declaration_no_options . '-' '[' ']' - 696 | type_declaration_no_options . "explicit" - 697 | type_declaration_no_options . "const" - 698 | type_declaration_no_options . '-' "const" - 699 | type_declaration_no_options . '&' - 700 | type_declaration_no_options . '-' '&' - 701 | type_declaration_no_options . '#' - 702 | type_declaration_no_options . "implicit" - 703 | type_declaration_no_options . '-' '#' - 704 | type_declaration_no_options . "==" "const" - 705 | type_declaration_no_options . "==" '&' - 706 | type_declaration_no_options . '?' - 710 | type_declaration_no_options . "??" - 808 make_struct_decl: "class" '<' $@90 type_declaration_no_options . '>' $@91 '(' use_initializer make_struct_dim ')' - - "const" shift, and go to state 404 - "implicit" shift, and go to state 405 - "explicit" shift, and go to state 406 - "==" shift, and go to state 407 - "??" shift, and go to state 408 - '?' shift, and go to state 409 - '&' shift, and go to state 410 - '>' shift, and go to state 1277 - '-' shift, and go to state 411 - '[' shift, and go to state 412 - '#' shift, and go to state 413 - - dim_list go to state 414 + 220 expr_call_pipe: expr . expr_full_block_assumed_piped + 350 expr_assign: expr . + 351 | expr . '=' expr + 352 | expr . "<-" expr + 353 | expr . ":=" expr + 354 | expr . "&=" expr + 355 | expr . "|=" expr + 356 | expr . "^=" expr + 357 | expr . "&&=" expr + 358 | expr . "||=" expr + 359 | expr . "^^=" expr + 360 | expr . "+=" expr + 361 | expr . "-=" expr + 362 | expr . "*=" expr + 363 | expr . "/=" expr + 364 | expr . "%=" expr + 365 | expr . "<<=" expr + 366 | expr . ">>=" expr + 367 | expr . "<<<=" expr + 368 | expr . ">>>=" expr + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 560 variable_declaration: variable_name_with_pos_list copy_or_move expr . + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "+=" shift, and go to state 859 + "-=" shift, and go to state 860 + "/=" shift, and go to state 861 + "*=" shift, and go to state 862 + "%=" shift, and go to state 863 + "&=" shift, and go to state 864 + "|=" shift, and go to state 865 + "^=" shift, and go to state 866 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + "<<=" shift, and go to state 867 + ">>=" shift, and go to state 868 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "<-" shift, and go to state 869 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + ":=" shift, and go to state 757 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "<<<=" shift, and go to state 870 + ">>>=" shift, and go to state 871 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + "&&=" shift, and go to state 872 + "||=" shift, and go to state 873 + "^^=" shift, and go to state 874 + ".." shift, and go to state 768 + '=' shift, and go to state 875 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + '$' shift, and go to state 503 + '@' shift, and go to state 673 + + " <|" reduce using rule 350 (expr_assign) + $default reduce using rule 560 (variable_declaration) + + block_or_lambda go to state 716 + expr_full_block_assumed_piped go to state 783 State 1094 - 76 expression_for_loop: "for" $@4 variable_name_with_pos_list "in" . expr_list expression_block - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - expr_list go to state 1278 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 707 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 687 type_declaration_no_options: type_declaration_no_options . dim_list + 688 | type_declaration_no_options . '[' ']' + 696 | type_declaration_no_options . '-' '[' ']' + 697 | type_declaration_no_options . "explicit" + 698 | type_declaration_no_options . "const" + 699 | type_declaration_no_options . '-' "const" + 700 | type_declaration_no_options . '&' + 701 | type_declaration_no_options . '-' '&' + 702 | type_declaration_no_options . '#' + 703 | type_declaration_no_options . "implicit" + 704 | type_declaration_no_options . '-' '#' + 705 | type_declaration_no_options . "==" "const" + 706 | type_declaration_no_options . "==" '&' + 707 | type_declaration_no_options . '?' + 711 | type_declaration_no_options . "??" + 806 make_struct_decl: "struct" '<' $@88 type_declaration_no_options . '>' $@89 '(' use_initializer make_struct_dim ')' + + "const" shift, and go to state 406 + "implicit" shift, and go to state 407 + "explicit" shift, and go to state 408 + "==" shift, and go to state 409 + "??" shift, and go to state 410 + '?' shift, and go to state 411 + '&' shift, and go to state 412 + '>' shift, and go to state 1278 + '-' shift, and go to state 413 + '[' shift, and go to state 414 + '#' shift, and go to state 415 + + dim_list go to state 416 State 1095 - 270 new_type_declaration: '<' $@11 type_declaration . '>' $@12 - 748 type_declaration: type_declaration . '|' type_declaration_no_options - 749 | type_declaration . '|' '#' - - '|' shift, and go to state 415 - '>' shift, and go to state 1279 + 687 type_declaration_no_options: type_declaration_no_options . dim_list + 688 | type_declaration_no_options . '[' ']' + 696 | type_declaration_no_options . '-' '[' ']' + 697 | type_declaration_no_options . "explicit" + 698 | type_declaration_no_options . "const" + 699 | type_declaration_no_options . '-' "const" + 700 | type_declaration_no_options . '&' + 701 | type_declaration_no_options . '-' '&' + 702 | type_declaration_no_options . '#' + 703 | type_declaration_no_options . "implicit" + 704 | type_declaration_no_options . '-' '#' + 705 | type_declaration_no_options . "==" "const" + 706 | type_declaration_no_options . "==" '&' + 707 | type_declaration_no_options . '?' + 711 | type_declaration_no_options . "??" + 809 make_struct_decl: "class" '<' $@90 type_declaration_no_options . '>' $@91 '(' use_initializer make_struct_dim ')' + + "const" shift, and go to state 406 + "implicit" shift, and go to state 407 + "explicit" shift, and go to state 408 + "==" shift, and go to state 409 + "??" shift, and go to state 410 + '?' shift, and go to state 411 + '&' shift, and go to state 412 + '>' shift, and go to state 1279 + '-' shift, and go to state 413 + '[' shift, and go to state 414 + '#' shift, and go to state 415 + + dim_list go to state 416 State 1096 - 796 use_initializer: "uninitialized" . + 76 expression_for_loop: "for" $@4 variable_name_with_pos_list "in" . expr_list expression_block - $default reduce using rule 796 (use_initializer) + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + expr_list go to state 1280 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 709 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1097 - 274 expr_new: "new" new_type_declaration '(' expr_list . ')' - 322 expr_list: expr_list . ',' expr + 271 new_type_declaration: '<' $@11 type_declaration . '>' $@12 + 749 type_declaration: type_declaration . '|' type_declaration_no_options + 750 | type_declaration . '|' '#' - ',' shift, and go to state 856 - ')' shift, and go to state 1280 + '|' shift, and go to state 417 + '>' shift, and go to state 1281 State 1098 - 273 expr_new: "new" new_type_declaration '(' use_initializer . ')' - 275 | "new" new_type_declaration '(' use_initializer . make_struct_single ')' - - "$f" shift, and go to state 907 - "name" shift, and go to state 1281 - ')' shift, and go to state 1282 + 797 use_initializer: "uninitialized" . - make_struct_fields go to state 954 - make_struct_single go to state 1283 + $default reduce using rule 797 (use_initializer) State 1099 - 319 expr_type_info: "typeinfo" '(' name_in_namespace '<' . "name" '>' expr ')' - 320 | "typeinfo" '(' name_in_namespace '<' . "name" "end of expression" "name" '>' expr ')' + 275 expr_new: "new" new_type_declaration '(' expr_list . ')' + 323 expr_list: expr_list . ',' expr - "name" shift, and go to state 1284 + ',' shift, and go to state 858 + ')' shift, and go to state 1282 State 1100 - 318 expr_type_info: "typeinfo" '(' name_in_namespace expr . ')' - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - ')' shift, and go to state 1285 + 274 expr_new: "new" new_type_declaration '(' use_initializer . ')' + 276 | "new" new_type_declaration '(' use_initializer . make_struct_single ')' + + "$f" shift, and go to state 909 + "name" shift, and go to state 1283 + ')' shift, and go to state 1284 + + make_struct_fields go to state 956 + make_struct_single go to state 1285 State 1101 - 317 expr_type_decl: "type" '<' $@19 type_declaration . '>' $@20 - 748 type_declaration: type_declaration . '|' type_declaration_no_options - 749 | type_declaration . '|' '#' + 320 expr_type_info: "typeinfo" '(' name_in_namespace '<' . "name" '>' expr ')' + 321 | "typeinfo" '(' name_in_namespace '<' . "name" "end of expression" "name" '>' expr ')' - '|' shift, and go to state 415 - '>' shift, and go to state 1286 + "name" shift, and go to state 1286 State 1102 - 831 make_dim_decl: "array" "struct" '<' $@98 . type_declaration_no_options '>' $@99 '(' use_initializer make_struct_dim ')' - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 1287 + 319 expr_type_info: "typeinfo" '(' name_in_namespace expr . ')' + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + ')' shift, and go to state 1287 State 1103 - 834 make_dim_decl: "array" "tuple" '<' $@100 . type_declaration_no_options '>' $@101 '(' use_initializer make_struct_dim ')' - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 1288 + 318 expr_type_decl: "type" '<' $@19 type_declaration . '>' $@20 + 749 type_declaration: type_declaration . '|' type_declaration_no_options + 750 | type_declaration . '|' '#' + + '|' shift, and go to state 417 + '>' shift, and go to state 1288 State 1104 - 837 make_dim_decl: "array" "variant" '<' $@102 . type_declaration_no_options '>' $@103 '(' make_struct_dim ')' - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 + 832 make_dim_decl: "array" "struct" '<' $@98 . type_declaration_no_options '>' $@99 '(' use_initializer make_struct_dim ')' + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 type_declaration_no_options go to state 1289 State 1105 - 686 type_declaration_no_options: type_declaration_no_options . dim_list - 687 | type_declaration_no_options . '[' ']' - 695 | type_declaration_no_options . '-' '[' ']' - 696 | type_declaration_no_options . "explicit" - 697 | type_declaration_no_options . "const" - 698 | type_declaration_no_options . '-' "const" - 699 | type_declaration_no_options . '&' - 700 | type_declaration_no_options . '-' '&' - 701 | type_declaration_no_options . '#' - 702 | type_declaration_no_options . "implicit" - 703 | type_declaration_no_options . '-' '#' - 704 | type_declaration_no_options . "==" "const" - 705 | type_declaration_no_options . "==" '&' - 706 | type_declaration_no_options . '?' - 710 | type_declaration_no_options . "??" - 841 make_dim_decl: "array" '<' $@104 type_declaration_no_options . '>' $@105 '(' expr_list optional_comma ')' - - "const" shift, and go to state 404 - "implicit" shift, and go to state 405 - "explicit" shift, and go to state 406 - "==" shift, and go to state 407 - "??" shift, and go to state 408 - '?' shift, and go to state 409 - '&' shift, and go to state 410 - '>' shift, and go to state 1290 - '-' shift, and go to state 411 - '[' shift, and go to state 412 - '#' shift, and go to state 413 - - dim_list go to state 414 + 835 make_dim_decl: "array" "tuple" '<' $@100 . type_declaration_no_options '>' $@101 '(' use_initializer make_struct_dim ')' + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 1290 State 1106 - 838 make_dim_decl: "array" '(' expr_list optional_comma . ')' - - ')' shift, and go to state 1291 + 838 make_dim_decl: "array" "variant" '<' $@102 . type_declaration_no_options '>' $@103 '(' make_struct_dim ')' + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 1291 State 1107 - 322 expr_list: expr_list ',' expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - - $default reduce using rule 322 (expr_list) + 687 type_declaration_no_options: type_declaration_no_options . dim_list + 688 | type_declaration_no_options . '[' ']' + 696 | type_declaration_no_options . '-' '[' ']' + 697 | type_declaration_no_options . "explicit" + 698 | type_declaration_no_options . "const" + 699 | type_declaration_no_options . '-' "const" + 700 | type_declaration_no_options . '&' + 701 | type_declaration_no_options . '-' '&' + 702 | type_declaration_no_options . '#' + 703 | type_declaration_no_options . "implicit" + 704 | type_declaration_no_options . '-' '#' + 705 | type_declaration_no_options . "==" "const" + 706 | type_declaration_no_options . "==" '&' + 707 | type_declaration_no_options . '?' + 711 | type_declaration_no_options . "??" + 842 make_dim_decl: "array" '<' $@104 type_declaration_no_options . '>' $@105 '(' expr_list optional_comma ')' + + "const" shift, and go to state 406 + "implicit" shift, and go to state 407 + "explicit" shift, and go to state 408 + "==" shift, and go to state 409 + "??" shift, and go to state 410 + '?' shift, and go to state 411 + '&' shift, and go to state 412 + '>' shift, and go to state 1292 + '-' shift, and go to state 413 + '[' shift, and go to state 414 + '#' shift, and go to state 415 + + dim_list go to state 416 State 1108 - 359 expr_assign: expr "+=" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 839 make_dim_decl: "array" '(' expr_list optional_comma . ')' - $default reduce using rule 359 (expr_assign) + ')' shift, and go to state 1293 State 1109 - 360 expr_assign: expr "-=" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - - $default reduce using rule 360 (expr_assign) + 323 expr_list: expr_list ',' expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + + $default reduce using rule 323 (expr_list) State 1110 - 362 expr_assign: expr "/=" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 360 expr_assign: expr "+=" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 362 (expr_assign) + $default reduce using rule 360 (expr_assign) State 1111 - 361 expr_assign: expr "*=" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 361 expr_assign: expr "-=" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 $default reduce using rule 361 (expr_assign) State 1112 - 363 expr_assign: expr "%=" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 363 expr_assign: expr "/=" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 $default reduce using rule 363 (expr_assign) State 1113 - 353 expr_assign: expr "&=" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 362 expr_assign: expr "*=" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 353 (expr_assign) + $default reduce using rule 362 (expr_assign) State 1114 - 354 expr_assign: expr "|=" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 364 expr_assign: expr "%=" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 354 (expr_assign) + $default reduce using rule 364 (expr_assign) State 1115 - 355 expr_assign: expr "^=" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 354 expr_assign: expr "&=" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 355 (expr_assign) + $default reduce using rule 354 (expr_assign) State 1116 - 364 expr_assign: expr "<<=" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 355 expr_assign: expr "|=" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 364 (expr_assign) + $default reduce using rule 355 (expr_assign) State 1117 - 365 expr_assign: expr ">>=" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 356 expr_assign: expr "^=" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 365 (expr_assign) + $default reduce using rule 356 (expr_assign) State 1118 - 351 expr_assign: expr "<-" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 365 expr_assign: expr "<<=" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 351 (expr_assign) + $default reduce using rule 365 (expr_assign) State 1119 - 366 expr_assign: expr "<<<=" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 366 expr_assign: expr ">>=" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 $default reduce using rule 366 (expr_assign) State 1120 - 367 expr_assign: expr ">>>=" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 352 expr_assign: expr "<-" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 367 (expr_assign) + $default reduce using rule 352 (expr_assign) State 1121 - 356 expr_assign: expr "&&=" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 367 expr_assign: expr "<<<=" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 356 (expr_assign) + $default reduce using rule 367 (expr_assign) State 1122 - 357 expr_assign: expr "||=" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - - $default reduce using rule 357 (expr_assign) + 368 expr_assign: expr ">>>=" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + + $default reduce using rule 368 (expr_assign) State 1123 - 358 expr_assign: expr "^^=" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 357 expr_assign: expr "&&=" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 358 (expr_assign) + $default reduce using rule 357 (expr_assign) State 1124 - 350 expr_assign: expr '=' expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 358 expr_assign: expr "||=" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 350 (expr_assign) + $default reduce using rule 358 (expr_assign) State 1125 - 290 expression_try_catch: "try" expression_block "recover" expression_block . + 359 expr_assign: expr "^^=" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 290 (expression_try_catch) + $default reduce using rule 359 (expr_assign) State 1126 - 854 make_table_decl: "table" '<' type_declaration_no_options "end of expression" . type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 1292 + 351 expr_assign: expr '=' expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + + $default reduce using rule 351 (expr_assign) State 1127 - 853 make_table_decl: "table" '<' type_declaration_no_options '>' . '(' expr_map_tuple_list optional_comma ')' + 291 expression_try_catch: "try" expression_block "recover" expression_block . - '(' shift, and go to state 1293 + $default reduce using rule 291 (expression_try_catch) State 1128 - 852 make_table_decl: "table" '(' expr_map_tuple_list optional_comma . ')' - - ')' shift, and go to state 1294 + 855 make_table_decl: "table" '<' type_declaration_no_options "end of expression" . type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 1294 State 1129 - 464 expr: "deref" '(' expr ')' . + 854 make_table_decl: "table" '<' type_declaration_no_options '>' . '(' expr_map_tuple_list optional_comma ')' - $default reduce using rule 464 (expr) + '(' shift, and go to state 1295 State 1130 - 81 expression_with_alias: "assume" "name" '=' $@5 . expr + 853 make_table_decl: "table" '(' expr_map_tuple_list optional_comma . ')' - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1295 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + ')' shift, and go to state 1296 State 1131 - 308 expr_cast: "cast" '<' $@13 type_declaration_no_options . '>' $@14 expr - 686 type_declaration_no_options: type_declaration_no_options . dim_list - 687 | type_declaration_no_options . '[' ']' - 695 | type_declaration_no_options . '-' '[' ']' - 696 | type_declaration_no_options . "explicit" - 697 | type_declaration_no_options . "const" - 698 | type_declaration_no_options . '-' "const" - 699 | type_declaration_no_options . '&' - 700 | type_declaration_no_options . '-' '&' - 701 | type_declaration_no_options . '#' - 702 | type_declaration_no_options . "implicit" - 703 | type_declaration_no_options . '-' '#' - 704 | type_declaration_no_options . "==" "const" - 705 | type_declaration_no_options . "==" '&' - 706 | type_declaration_no_options . '?' - 710 | type_declaration_no_options . "??" - - "const" shift, and go to state 404 - "implicit" shift, and go to state 405 - "explicit" shift, and go to state 406 - "==" shift, and go to state 407 - "??" shift, and go to state 408 - '?' shift, and go to state 409 - '&' shift, and go to state 410 - '>' shift, and go to state 1296 - '-' shift, and go to state 411 - '[' shift, and go to state 412 - '#' shift, and go to state 413 - - dim_list go to state 414 + 465 expr: "deref" '(' expr ')' . + + $default reduce using rule 465 (expr) State 1132 - 311 expr_cast: "upcast" '<' $@15 type_declaration_no_options . '>' $@16 expr - 686 type_declaration_no_options: type_declaration_no_options . dim_list - 687 | type_declaration_no_options . '[' ']' - 695 | type_declaration_no_options . '-' '[' ']' - 696 | type_declaration_no_options . "explicit" - 697 | type_declaration_no_options . "const" - 698 | type_declaration_no_options . '-' "const" - 699 | type_declaration_no_options . '&' - 700 | type_declaration_no_options . '-' '&' - 701 | type_declaration_no_options . '#' - 702 | type_declaration_no_options . "implicit" - 703 | type_declaration_no_options . '-' '#' - 704 | type_declaration_no_options . "==" "const" - 705 | type_declaration_no_options . "==" '&' - 706 | type_declaration_no_options . '?' - 710 | type_declaration_no_options . "??" - - "const" shift, and go to state 404 - "implicit" shift, and go to state 405 - "explicit" shift, and go to state 406 - "==" shift, and go to state 407 - "??" shift, and go to state 408 - '?' shift, and go to state 409 - '&' shift, and go to state 410 - '>' shift, and go to state 1297 - '-' shift, and go to state 411 - '[' shift, and go to state 412 - '#' shift, and go to state 413 - - dim_list go to state 414 + 81 expression_with_alias: "assume" "name" '=' $@5 . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1297 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1133 - 465 expr: "addr" '(' expr ')' . + 309 expr_cast: "cast" '<' $@13 type_declaration_no_options . '>' $@14 expr + 687 type_declaration_no_options: type_declaration_no_options . dim_list + 688 | type_declaration_no_options . '[' ']' + 696 | type_declaration_no_options . '-' '[' ']' + 697 | type_declaration_no_options . "explicit" + 698 | type_declaration_no_options . "const" + 699 | type_declaration_no_options . '-' "const" + 700 | type_declaration_no_options . '&' + 701 | type_declaration_no_options . '-' '&' + 702 | type_declaration_no_options . '#' + 703 | type_declaration_no_options . "implicit" + 704 | type_declaration_no_options . '-' '#' + 705 | type_declaration_no_options . "==" "const" + 706 | type_declaration_no_options . "==" '&' + 707 | type_declaration_no_options . '?' + 711 | type_declaration_no_options . "??" + + "const" shift, and go to state 406 + "implicit" shift, and go to state 407 + "explicit" shift, and go to state 408 + "==" shift, and go to state 409 + "??" shift, and go to state 410 + '?' shift, and go to state 411 + '&' shift, and go to state 412 + '>' shift, and go to state 1298 + '-' shift, and go to state 413 + '[' shift, and go to state 414 + '#' shift, and go to state 415 - $default reduce using rule 465 (expr) + dim_list go to state 416 State 1134 - 314 expr_cast: "reinterpret" '<' $@17 type_declaration_no_options . '>' $@18 expr - 686 type_declaration_no_options: type_declaration_no_options . dim_list - 687 | type_declaration_no_options . '[' ']' - 695 | type_declaration_no_options . '-' '[' ']' - 696 | type_declaration_no_options . "explicit" - 697 | type_declaration_no_options . "const" - 698 | type_declaration_no_options . '-' "const" - 699 | type_declaration_no_options . '&' - 700 | type_declaration_no_options . '-' '&' - 701 | type_declaration_no_options . '#' - 702 | type_declaration_no_options . "implicit" - 703 | type_declaration_no_options . '-' '#' - 704 | type_declaration_no_options . "==" "const" - 705 | type_declaration_no_options . "==" '&' - 706 | type_declaration_no_options . '?' - 710 | type_declaration_no_options . "??" - - "const" shift, and go to state 404 - "implicit" shift, and go to state 405 - "explicit" shift, and go to state 406 - "==" shift, and go to state 407 - "??" shift, and go to state 408 - '?' shift, and go to state 409 - '&' shift, and go to state 410 - '>' shift, and go to state 1298 - '-' shift, and go to state 411 - '[' shift, and go to state 412 - '#' shift, and go to state 413 + 312 expr_cast: "upcast" '<' $@15 type_declaration_no_options . '>' $@16 expr + 687 type_declaration_no_options: type_declaration_no_options . dim_list + 688 | type_declaration_no_options . '[' ']' + 696 | type_declaration_no_options . '-' '[' ']' + 697 | type_declaration_no_options . "explicit" + 698 | type_declaration_no_options . "const" + 699 | type_declaration_no_options . '-' "const" + 700 | type_declaration_no_options . '&' + 701 | type_declaration_no_options . '-' '&' + 702 | type_declaration_no_options . '#' + 703 | type_declaration_no_options . "implicit" + 704 | type_declaration_no_options . '-' '#' + 705 | type_declaration_no_options . "==" "const" + 706 | type_declaration_no_options . "==" '&' + 707 | type_declaration_no_options . '?' + 711 | type_declaration_no_options . "??" + + "const" shift, and go to state 406 + "implicit" shift, and go to state 407 + "explicit" shift, and go to state 408 + "==" shift, and go to state 409 + "??" shift, and go to state 410 + '?' shift, and go to state 411 + '&' shift, and go to state 412 + '>' shift, and go to state 1299 + '-' shift, and go to state 413 + '[' shift, and go to state 414 + '#' shift, and go to state 415 - dim_list go to state 414 + dim_list go to state 416 State 1135 - 496 expr: "unsafe" '(' expr ')' . + 466 expr: "addr" '(' expr ')' . - $default reduce using rule 496 (expr) + $default reduce using rule 466 (expr) State 1136 - 686 type_declaration_no_options: type_declaration_no_options . dim_list - 687 | type_declaration_no_options . '[' ']' - 695 | type_declaration_no_options . '-' '[' ']' - 696 | type_declaration_no_options . "explicit" - 697 | type_declaration_no_options . "const" - 698 | type_declaration_no_options . '-' "const" - 699 | type_declaration_no_options . '&' - 700 | type_declaration_no_options . '-' '&' - 701 | type_declaration_no_options . '#' - 702 | type_declaration_no_options . "implicit" - 703 | type_declaration_no_options . '-' '#' - 704 | type_declaration_no_options . "==" "const" - 705 | type_declaration_no_options . "==" '&' - 706 | type_declaration_no_options . '?' - 710 | type_declaration_no_options . "??" - 845 make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options . '>' $@107 '(' expr_list optional_comma ')' - - "const" shift, and go to state 404 - "implicit" shift, and go to state 405 - "explicit" shift, and go to state 406 - "==" shift, and go to state 407 - "??" shift, and go to state 408 - '?' shift, and go to state 409 - '&' shift, and go to state 410 - '>' shift, and go to state 1299 - '-' shift, and go to state 411 - '[' shift, and go to state 412 - '#' shift, and go to state 413 - - dim_list go to state 414 + 315 expr_cast: "reinterpret" '<' $@17 type_declaration_no_options . '>' $@18 expr + 687 type_declaration_no_options: type_declaration_no_options . dim_list + 688 | type_declaration_no_options . '[' ']' + 696 | type_declaration_no_options . '-' '[' ']' + 697 | type_declaration_no_options . "explicit" + 698 | type_declaration_no_options . "const" + 699 | type_declaration_no_options . '-' "const" + 700 | type_declaration_no_options . '&' + 701 | type_declaration_no_options . '-' '&' + 702 | type_declaration_no_options . '#' + 703 | type_declaration_no_options . "implicit" + 704 | type_declaration_no_options . '-' '#' + 705 | type_declaration_no_options . "==" "const" + 706 | type_declaration_no_options . "==" '&' + 707 | type_declaration_no_options . '?' + 711 | type_declaration_no_options . "??" + + "const" shift, and go to state 406 + "implicit" shift, and go to state 407 + "explicit" shift, and go to state 408 + "==" shift, and go to state 409 + "??" shift, and go to state 410 + '?' shift, and go to state 411 + '&' shift, and go to state 412 + '>' shift, and go to state 1300 + '-' shift, and go to state 413 + '[' shift, and go to state 414 + '#' shift, and go to state 415 + + dim_list go to state 416 State 1137 - 842 make_dim_decl: "fixed_array" '(' expr_list optional_comma . ')' + 497 expr: "unsafe" '(' expr ')' . - ')' shift, and go to state 1300 + $default reduce using rule 497 (expr) State 1138 - 686 type_declaration_no_options: type_declaration_no_options . dim_list - 687 | type_declaration_no_options . '[' ']' - 695 | type_declaration_no_options . '-' '[' ']' - 696 | type_declaration_no_options . "explicit" - 697 | type_declaration_no_options . "const" - 698 | type_declaration_no_options . '-' "const" - 699 | type_declaration_no_options . '&' - 700 | type_declaration_no_options . '-' '&' - 701 | type_declaration_no_options . '#' - 702 | type_declaration_no_options . "implicit" - 703 | type_declaration_no_options . '-' '#' - 704 | type_declaration_no_options . "==" "const" - 705 | type_declaration_no_options . "==" '&' - 706 | type_declaration_no_options . '?' - 710 | type_declaration_no_options . "??" - 814 make_struct_decl: "default" '<' $@94 type_declaration_no_options . '>' $@95 use_initializer - - "const" shift, and go to state 404 - "implicit" shift, and go to state 405 - "explicit" shift, and go to state 406 - "==" shift, and go to state 407 - "??" shift, and go to state 408 - '?' shift, and go to state 409 - '&' shift, and go to state 410 + 687 type_declaration_no_options: type_declaration_no_options . dim_list + 688 | type_declaration_no_options . '[' ']' + 696 | type_declaration_no_options . '-' '[' ']' + 697 | type_declaration_no_options . "explicit" + 698 | type_declaration_no_options . "const" + 699 | type_declaration_no_options . '-' "const" + 700 | type_declaration_no_options . '&' + 701 | type_declaration_no_options . '-' '&' + 702 | type_declaration_no_options . '#' + 703 | type_declaration_no_options . "implicit" + 704 | type_declaration_no_options . '-' '#' + 705 | type_declaration_no_options . "==" "const" + 706 | type_declaration_no_options . "==" '&' + 707 | type_declaration_no_options . '?' + 711 | type_declaration_no_options . "??" + 846 make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options . '>' $@107 '(' expr_list optional_comma ')' + + "const" shift, and go to state 406 + "implicit" shift, and go to state 407 + "explicit" shift, and go to state 408 + "==" shift, and go to state 409 + "??" shift, and go to state 410 + '?' shift, and go to state 411 + '&' shift, and go to state 412 '>' shift, and go to state 1301 - '-' shift, and go to state 411 - '[' shift, and go to state 412 - '#' shift, and go to state 413 + '-' shift, and go to state 413 + '[' shift, and go to state 414 + '#' shift, and go to state 415 - dim_list go to state 414 + dim_list go to state 416 State 1139 - 686 type_declaration_no_options: type_declaration_no_options . dim_list - 687 | type_declaration_no_options . '[' ']' - 695 | type_declaration_no_options . '-' '[' ']' - 696 | type_declaration_no_options . "explicit" - 697 | type_declaration_no_options . "const" - 698 | type_declaration_no_options . '-' "const" - 699 | type_declaration_no_options . '&' - 700 | type_declaration_no_options . '-' '&' - 701 | type_declaration_no_options . '#' - 702 | type_declaration_no_options . "implicit" - 703 | type_declaration_no_options . '-' '#' - 704 | type_declaration_no_options . "==" "const" - 705 | type_declaration_no_options . "==" '&' - 706 | type_declaration_no_options . '?' - 710 | type_declaration_no_options . "??" - 823 make_tuple_call: "tuple" '<' $@96 type_declaration_no_options . '>' $@97 '(' use_initializer make_struct_dim ')' - - "const" shift, and go to state 404 - "implicit" shift, and go to state 405 - "explicit" shift, and go to state 406 - "==" shift, and go to state 407 - "??" shift, and go to state 408 - '?' shift, and go to state 409 - '&' shift, and go to state 410 - '>' shift, and go to state 1302 - '-' shift, and go to state 411 - '[' shift, and go to state 412 - '#' shift, and go to state 413 - - dim_list go to state 414 + 843 make_dim_decl: "fixed_array" '(' expr_list optional_comma . ')' + ')' shift, and go to state 1302 -State 1140 - 820 make_tuple_call: "tuple" '(' expr_list optional_comma . ')' +State 1140 - ')' shift, and go to state 1303 + 687 type_declaration_no_options: type_declaration_no_options . dim_list + 688 | type_declaration_no_options . '[' ']' + 696 | type_declaration_no_options . '-' '[' ']' + 697 | type_declaration_no_options . "explicit" + 698 | type_declaration_no_options . "const" + 699 | type_declaration_no_options . '-' "const" + 700 | type_declaration_no_options . '&' + 701 | type_declaration_no_options . '-' '&' + 702 | type_declaration_no_options . '#' + 703 | type_declaration_no_options . "implicit" + 704 | type_declaration_no_options . '-' '#' + 705 | type_declaration_no_options . "==" "const" + 706 | type_declaration_no_options . "==" '&' + 707 | type_declaration_no_options . '?' + 711 | type_declaration_no_options . "??" + 815 make_struct_decl: "default" '<' $@94 type_declaration_no_options . '>' $@95 use_initializer + + "const" shift, and go to state 406 + "implicit" shift, and go to state 407 + "explicit" shift, and go to state 408 + "==" shift, and go to state 409 + "??" shift, and go to state 410 + '?' shift, and go to state 411 + '&' shift, and go to state 412 + '>' shift, and go to state 1303 + '-' shift, and go to state 413 + '[' shift, and go to state 414 + '#' shift, and go to state 415 + + dim_list go to state 416 State 1141 - 686 type_declaration_no_options: type_declaration_no_options . dim_list - 687 | type_declaration_no_options . '[' ']' - 695 | type_declaration_no_options . '-' '[' ']' - 696 | type_declaration_no_options . "explicit" - 697 | type_declaration_no_options . "const" - 698 | type_declaration_no_options . '-' "const" - 699 | type_declaration_no_options . '&' - 700 | type_declaration_no_options . '-' '&' - 701 | type_declaration_no_options . '#' - 702 | type_declaration_no_options . "implicit" - 703 | type_declaration_no_options . '-' '#' - 704 | type_declaration_no_options . "==" "const" - 705 | type_declaration_no_options . "==" '&' - 706 | type_declaration_no_options . '?' - 710 | type_declaration_no_options . "??" - 811 make_struct_decl: "variant" '<' $@92 type_declaration_no_options . '>' $@93 '(' make_struct_dim ')' - - "const" shift, and go to state 404 - "implicit" shift, and go to state 405 - "explicit" shift, and go to state 406 - "==" shift, and go to state 407 - "??" shift, and go to state 408 - '?' shift, and go to state 409 - '&' shift, and go to state 410 + 687 type_declaration_no_options: type_declaration_no_options . dim_list + 688 | type_declaration_no_options . '[' ']' + 696 | type_declaration_no_options . '-' '[' ']' + 697 | type_declaration_no_options . "explicit" + 698 | type_declaration_no_options . "const" + 699 | type_declaration_no_options . '-' "const" + 700 | type_declaration_no_options . '&' + 701 | type_declaration_no_options . '-' '&' + 702 | type_declaration_no_options . '#' + 703 | type_declaration_no_options . "implicit" + 704 | type_declaration_no_options . '-' '#' + 705 | type_declaration_no_options . "==" "const" + 706 | type_declaration_no_options . "==" '&' + 707 | type_declaration_no_options . '?' + 711 | type_declaration_no_options . "??" + 824 make_tuple_call: "tuple" '<' $@96 type_declaration_no_options . '>' $@97 '(' use_initializer make_struct_dim ')' + + "const" shift, and go to state 406 + "implicit" shift, and go to state 407 + "explicit" shift, and go to state 408 + "==" shift, and go to state 409 + "??" shift, and go to state 410 + '?' shift, and go to state 411 + '&' shift, and go to state 412 '>' shift, and go to state 1304 - '-' shift, and go to state 411 - '[' shift, and go to state 412 - '#' shift, and go to state 413 + '-' shift, and go to state 413 + '[' shift, and go to state 414 + '#' shift, and go to state 415 - dim_list go to state 414 + dim_list go to state 416 State 1142 - 466 expr: "generator" '<' type_declaration_no_options '>' . optional_capture_list '(' ')' - 467 | "generator" '<' type_declaration_no_options '>' . optional_capture_list '(' expr ')' - - "[[" shift, and go to state 960 - - $default reduce using rule 335 (optional_capture_list) + 821 make_tuple_call: "tuple" '(' expr_list optional_comma . ')' - optional_capture_list go to state 1305 + ')' shift, and go to state 1305 State 1143 - 338 expr_block: block_or_lambda optional_annotation_list optional_capture_list . optional_function_argument_list optional_function_type block_or_simple_block + 687 type_declaration_no_options: type_declaration_no_options . dim_list + 688 | type_declaration_no_options . '[' ']' + 696 | type_declaration_no_options . '-' '[' ']' + 697 | type_declaration_no_options . "explicit" + 698 | type_declaration_no_options . "const" + 699 | type_declaration_no_options . '-' "const" + 700 | type_declaration_no_options . '&' + 701 | type_declaration_no_options . '-' '&' + 702 | type_declaration_no_options . '#' + 703 | type_declaration_no_options . "implicit" + 704 | type_declaration_no_options . '-' '#' + 705 | type_declaration_no_options . "==" "const" + 706 | type_declaration_no_options . "==" '&' + 707 | type_declaration_no_options . '?' + 711 | type_declaration_no_options . "??" + 812 make_struct_decl: "variant" '<' $@92 type_declaration_no_options . '>' $@93 '(' make_struct_dim ')' + + "const" shift, and go to state 406 + "implicit" shift, and go to state 407 + "explicit" shift, and go to state 408 + "==" shift, and go to state 409 + "??" shift, and go to state 410 + '?' shift, and go to state 411 + '&' shift, and go to state 412 + '>' shift, and go to state 1306 + '-' shift, and go to state 413 + '[' shift, and go to state 414 + '#' shift, and go to state 415 + + dim_list go to state 416 - '(' shift, and go to state 282 - $default reduce using rule 121 (optional_function_argument_list) - - optional_function_argument_list go to state 1306 +State 1144 + 467 expr: "generator" '<' type_declaration_no_options '>' . optional_capture_list '(' ')' + 468 | "generator" '<' type_declaration_no_options '>' . optional_capture_list '(' expr ')' -State 1144 + "[[" shift, and go to state 962 - 498 expr_mtag: "$$" '(' expr ')' . + $default reduce using rule 336 (optional_capture_list) - $default reduce using rule 498 (expr_mtag) + optional_capture_list go to state 1307 State 1145 - 499 expr_mtag: "$i" '(' expr ')' . + 339 expr_block: block_or_lambda optional_annotation_list optional_capture_list . optional_function_argument_list optional_function_type block_or_simple_block - $default reduce using rule 499 (expr_mtag) + '(' shift, and go to state 284 + + $default reduce using rule 121 (optional_function_argument_list) + + optional_function_argument_list go to state 1308 State 1146 - 500 expr_mtag: "$v" '(' expr ')' . + 499 expr_mtag: "$$" '(' expr ')' . - $default reduce using rule 500 (expr_mtag) + $default reduce using rule 499 (expr_mtag) State 1147 - 501 expr_mtag: "$b" '(' expr ')' . + 500 expr_mtag: "$i" '(' expr ')' . - $default reduce using rule 501 (expr_mtag) + $default reduce using rule 500 (expr_mtag) State 1148 - 502 expr_mtag: "$a" '(' expr ')' . + 501 expr_mtag: "$v" '(' expr ')' . - $default reduce using rule 502 (expr_mtag) + $default reduce using rule 501 (expr_mtag) State 1149 - 504 expr_mtag: "$c" '(' expr ')' . '(' ')' - 505 | "$c" '(' expr ')' . '(' expr_list ')' + 502 expr_mtag: "$b" '(' expr ')' . - '(' shift, and go to state 1307 + $default reduce using rule 502 (expr_mtag) State 1150 - 861 array_comprehension: "[[" "for" variable_name_with_pos_list "in" . expr_list "end of expression" expr array_comprehension_where ']' ']' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - expr_list go to state 1308 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 707 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 503 expr_mtag: "$a" '(' expr ')' . + + $default reduce using rule 503 (expr_mtag) State 1151 - 782 optional_block: "where" expr_block . + 505 expr_mtag: "$c" '(' expr ')' . '(' ')' + 506 | "$c" '(' expr ')' . '(' expr_list ')' - $default reduce using rule 782 (optional_block) + '(' shift, and go to state 1309 State 1152 - 774 make_struct_fields: "$f" '(' . expr ')' copy_or_move expr - 775 | "$f" '(' . expr ')' ":=" expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 862 array_comprehension: "[[" "for" variable_name_with_pos_list "in" . expr_list "end of expression" expr array_comprehension_where ']' ']' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1309 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + expr_list go to state 1310 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 709 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1153 - 771 make_struct_fields: "name" ":=" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1310 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 783 optional_block: "where" expr_block . + + $default reduce using rule 783 (optional_block) State 1154 - 770 make_struct_fields: "name" copy_or_move . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 775 make_struct_fields: "$f" '(' . expr ')' copy_or_move expr + 776 | "$f" '(' . expr ')' ":=" expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1311 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1155 - 695 type_declaration_no_options: type_declaration_no_options '-' '[' . ']' - 826 make_dim_decl: '[' . expr_list optional_comma ']' - 859 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - 860 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "for" shift, and go to state 704 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "iterator" shift, and go to state 705 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 772 make_struct_fields: "name" ":=" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - ']' shift, and go to state 821 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - expr_list go to state 706 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 707 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1312 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1156 - 321 expr_list: expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 680 dim_list: '[' expr . ']' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - ']' shift, and go to state 822 - - ']' [reduce using rule 321 (expr_list)] - $default reduce using rule 321 (expr_list) + 771 make_struct_fields: "name" copy_or_move . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1313 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1157 - 799 make_struct_decl: "[[" type_declaration_no_options '(' ')' . optional_block optional_trailing_delim_sqr_sqr - 800 | "[[" type_declaration_no_options '(' ')' . make_struct_dim optional_block optional_trailing_delim_sqr_sqr - - "where" shift, and go to state 906 - "$f" shift, and go to state 907 - "name" shift, and go to state 1281 - - $default reduce using rule 781 (optional_block) - - make_struct_fields go to state 913 - make_struct_dim go to state 1312 - optional_block go to state 1313 + 696 type_declaration_no_options: type_declaration_no_options '-' '[' . ']' + 827 make_dim_decl: '[' . expr_list optional_comma ']' + 860 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 861 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "for" shift, and go to state 706 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "iterator" shift, and go to state 707 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + ']' shift, and go to state 823 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + expr_list go to state 708 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 709 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1158 - 816 make_tuple: expr "=>" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1314 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 322 expr_list: expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 681 dim_list: '[' expr . ']' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + ']' shift, and go to state 824 + + ']' [reduce using rule 322 (expr_list)] + $default reduce using rule 322 (expr_list) State 1159 - 772 make_struct_fields: make_struct_fields ',' . "name" copy_or_move expr - 773 | make_struct_fields ',' . "name" ":=" expr - 776 | make_struct_fields ',' . "$f" '(' expr ')' copy_or_move expr - 777 | make_struct_fields ',' . "$f" '(' expr ')' ":=" expr + 800 make_struct_decl: "[[" type_declaration_no_options '(' ')' . optional_block optional_trailing_delim_sqr_sqr + 801 | "[[" type_declaration_no_options '(' ')' . make_struct_dim optional_block optional_trailing_delim_sqr_sqr - "$f" shift, and go to state 1315 - "name" shift, and go to state 1316 + "where" shift, and go to state 908 + "$f" shift, and go to state 909 + "name" shift, and go to state 1283 + $default reduce using rule 782 (optional_block) -State 1160 + make_struct_fields go to state 915 + make_struct_dim go to state 1314 + optional_block go to state 1315 - 780 make_struct_dim: make_struct_dim "end of expression" . make_struct_fields - "$f" shift, and go to state 907 - "name" shift, and go to state 1281 +State 1160 - make_struct_fields go to state 1317 + 817 make_tuple: expr "=>" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1316 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1161 - 797 make_struct_decl: "[[" type_declaration_no_options make_struct_dim optional_block . optional_trailing_delim_sqr_sqr + 773 make_struct_fields: make_struct_fields ',' . "name" copy_or_move expr + 774 | make_struct_fields ',' . "name" ":=" expr + 777 | make_struct_fields ',' . "$f" '(' expr ')' copy_or_move expr + 778 | make_struct_fields ',' . "$f" '(' expr ')' ":=" expr - ";]]" shift, and go to state 1162 - ",]]" shift, and go to state 1163 - ']' shift, and go to state 1164 - - optional_trailing_delim_sqr_sqr go to state 1318 + "$f" shift, and go to state 1317 + "name" shift, and go to state 1318 State 1162 - 790 optional_trailing_delim_sqr_sqr: ";]]" . + 781 make_struct_dim: make_struct_dim "end of expression" . make_struct_fields - $default reduce using rule 790 (optional_trailing_delim_sqr_sqr) + "$f" shift, and go to state 909 + "name" shift, and go to state 1283 + + make_struct_fields go to state 1319 State 1163 - 791 optional_trailing_delim_sqr_sqr: ",]]" . + 798 make_struct_decl: "[[" type_declaration_no_options make_struct_dim optional_block . optional_trailing_delim_sqr_sqr - $default reduce using rule 791 (optional_trailing_delim_sqr_sqr) + ";]]" shift, and go to state 1164 + ",]]" shift, and go to state 1165 + ']' shift, and go to state 1166 + + optional_trailing_delim_sqr_sqr go to state 1320 State 1164 - 789 optional_trailing_delim_sqr_sqr: ']' . ']' + 791 optional_trailing_delim_sqr_sqr: ";]]" . - ']' shift, and go to state 1319 + $default reduce using rule 791 (optional_trailing_delim_sqr_sqr) State 1165 - 798 make_struct_decl: "[[" type_declaration_no_options optional_block optional_trailing_delim_sqr_sqr . + 792 optional_trailing_delim_sqr_sqr: ",]]" . - $default reduce using rule 798 (make_struct_decl) + $default reduce using rule 792 (optional_trailing_delim_sqr_sqr) State 1166 - 817 make_tuple: make_tuple ',' . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1320 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 790 optional_trailing_delim_sqr_sqr: ']' . ']' + + ']' shift, and go to state 1321 State 1167 - 825 make_dim: make_dim "end of expression" . make_tuple - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 912 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple go to state 1321 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 799 make_struct_decl: "[[" type_declaration_no_options optional_block optional_trailing_delim_sqr_sqr . + $default reduce using rule 799 (make_struct_decl) -State 1168 - 788 optional_trailing_semicolon_sqr_sqr: ";]]" . +State 1168 - $default reduce using rule 788 (optional_trailing_semicolon_sqr_sqr) + 818 make_tuple: make_tuple ',' . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1322 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1169 - 787 optional_trailing_semicolon_sqr_sqr: ']' . ']' - - ']' shift, and go to state 1322 + 826 make_dim: make_dim "end of expression" . make_tuple + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 914 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple go to state 1323 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1170 - 827 make_dim_decl: "[[" type_declaration_no_options make_dim optional_trailing_semicolon_sqr_sqr . + 789 optional_trailing_semicolon_sqr_sqr: ";]]" . - $default reduce using rule 827 (make_dim_decl) + $default reduce using rule 789 (optional_trailing_semicolon_sqr_sqr) State 1171 - 862 array_comprehension: "[{" "for" variable_name_with_pos_list "in" . expr_list "end of expression" expr array_comprehension_where "end of code block" ']' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - expr_list go to state 1323 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 707 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 788 optional_trailing_semicolon_sqr_sqr: ']' . ']' + ']' shift, and go to state 1324 -State 1172 - 802 make_struct_decl: "[{" type_declaration_no_options '(' ')' . make_struct_dim optional_block optional_trailing_delim_cur_sqr +State 1172 - "$f" shift, and go to state 907 - "name" shift, and go to state 1281 + 828 make_dim_decl: "[[" type_declaration_no_options make_dim optional_trailing_semicolon_sqr_sqr . - make_struct_fields go to state 913 - make_struct_dim go to state 1324 + $default reduce using rule 828 (make_dim_decl) State 1173 - 801 make_struct_decl: "[{" type_declaration_no_options make_struct_dim optional_block . optional_trailing_delim_cur_sqr - - "end of code block" shift, and go to state 1325 - ";}]" shift, and go to state 1326 - ",}]" shift, and go to state 1327 - - optional_trailing_delim_cur_sqr go to state 1328 + 863 array_comprehension: "[{" "for" variable_name_with_pos_list "in" . expr_list "end of expression" expr array_comprehension_where "end of code block" ']' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + expr_list go to state 1325 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 709 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1174 - 785 optional_trailing_semicolon_cur_sqr: "end of code block" . ']' + 803 make_struct_decl: "[{" type_declaration_no_options '(' ')' . make_struct_dim optional_block optional_trailing_delim_cur_sqr + + "$f" shift, and go to state 909 + "name" shift, and go to state 1283 - ']' shift, and go to state 1329 + make_struct_fields go to state 915 + make_struct_dim go to state 1326 State 1175 - 786 optional_trailing_semicolon_cur_sqr: ";}]" . + 802 make_struct_decl: "[{" type_declaration_no_options make_struct_dim optional_block . optional_trailing_delim_cur_sqr - $default reduce using rule 786 (optional_trailing_semicolon_cur_sqr) + "end of code block" shift, and go to state 1327 + ";}]" shift, and go to state 1328 + ",}]" shift, and go to state 1329 + + optional_trailing_delim_cur_sqr go to state 1330 State 1176 - 828 make_dim_decl: "[{" type_declaration_no_options make_dim optional_trailing_semicolon_cur_sqr . + 786 optional_trailing_semicolon_cur_sqr: "end of code block" . ']' - $default reduce using rule 828 (make_dim_decl) + ']' shift, and go to state 1331 State 1177 - 864 array_comprehension: "{{" "for" variable_name_with_pos_list "in" . expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" "end of code block" - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - expr_list go to state 1330 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 707 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 787 optional_trailing_semicolon_cur_sqr: ";}]" . + + $default reduce using rule 787 (optional_trailing_semicolon_cur_sqr) State 1178 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 818 make_map_tuple: expr "=>" expr . - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - - $default reduce using rule 818 (make_map_tuple) + 829 make_dim_decl: "[{" type_declaration_no_options make_dim optional_trailing_semicolon_cur_sqr . + $default reduce using rule 829 (make_dim_decl) -State 1179 - 783 optional_trailing_semicolon_cur_cur: "end of code block" "end of code block" . +State 1179 - $default reduce using rule 783 (optional_trailing_semicolon_cur_cur) + 865 array_comprehension: "{{" "for" variable_name_with_pos_list "in" . expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" "end of code block" + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + expr_list go to state 1332 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 709 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1180 - 847 make_table: make_table "end of expression" make_map_tuple . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 819 make_map_tuple: expr "=>" expr . + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 847 (make_table) + $default reduce using rule 819 (make_map_tuple) State 1181 + 784 optional_trailing_semicolon_cur_cur: "end of code block" "end of code block" . + + $default reduce using rule 784 (optional_trailing_semicolon_cur_cur) + + +State 1182 + + 848 make_table: make_table "end of expression" make_map_tuple . + + $default reduce using rule 848 (make_table) + + +State 1183 + 252 type_declaration_no_options_list: type_declaration_no_options_list . "end of expression" type_declaration 255 expression_keyword: "keyword" '<' $@7 type_declaration_no_options_list . '>' $@8 expr - "end of expression" shift, and go to state 1271 - '>' shift, and go to state 1331 + "end of expression" shift, and go to state 1273 + '>' shift, and go to state 1333 -State 1182 +State 1184 252 type_declaration_no_options_list: type_declaration_no_options_list . "end of expression" type_declaration 258 expression_keyword: "type function" '<' $@9 type_declaration_no_options_list . '>' $@10 optional_expr_list_in_braces - "end of expression" shift, and go to state 1271 - '>' shift, and go to state 1332 + "end of expression" shift, and go to state 1273 + '>' shift, and go to state 1334 -State 1183 +State 1185 30 string_builder_body: string_builder_body "{" expr . "}" - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - "}" shift, and go to state 1333 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + "}" shift, and go to state 1335 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 -State 1184 +State 1186 - 863 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" . expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 864 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" . expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - expr_list go to state 1334 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 707 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + expr_list go to state 1336 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 709 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 -State 1185 +State 1187 - 849 expr_map_tuple_list: expr_map_tuple_list ',' make_map_tuple . + 850 expr_map_tuple_list: expr_map_tuple_list ',' make_map_tuple . - $default reduce using rule 849 (expr_map_tuple_list) + $default reduce using rule 850 (expr_map_tuple_list) -State 1186 +State 1188 - 850 make_table_decl: "begin of code block" expr_map_tuple_list optional_comma "end of code block" . + 851 make_table_decl: "begin of code block" expr_map_tuple_list optional_comma "end of code block" . - $default reduce using rule 850 (make_table_decl) + $default reduce using rule 851 (make_table_decl) -State 1187 +State 1189 219 expression_block: "begin of code block" expressions "end of code block" "finally" "begin of code block" expressions . "end of code block" 244 expressions: expressions . expression_any 245 | expressions . error - error shift, and go to state 428 - "struct" shift, and go to state 429 - "class" shift, and go to state 430 + error shift, and go to state 430 + "struct" shift, and go to state 431 + "class" shift, and go to state 432 "let" shift, and go to state 3 - "while" shift, and go to state 431 - "if" shift, and go to state 432 - "static_if" shift, and go to state 433 - "for" shift, and go to state 434 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "return" shift, and go to state 441 - "null" shift, and go to state 442 - "break" shift, and go to state 443 - "try" shift, and go to state 444 - "table" shift, and go to state 445 - "delete" shift, and go to state 446 - "deref" shift, and go to state 447 - "with" shift, and go to state 448 - "assume" shift, and go to state 449 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 + "while" shift, and go to state 433 + "if" shift, and go to state 434 + "static_if" shift, and go to state 435 + "for" shift, and go to state 436 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "return" shift, and go to state 443 + "null" shift, and go to state 444 + "break" shift, and go to state 445 + "try" shift, and go to state 446 + "table" shift, and go to state 447 + "delete" shift, and go to state 448 + "deref" shift, and go to state 449 + "with" shift, and go to state 450 + "assume" shift, and go to state 451 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 "var" shift, and go to state 8 - "addr" shift, and go to state 452 - "continue" shift, and go to state 453 - "pass" shift, and go to state 454 - "reinterpret" shift, and go to state 455 - "label" shift, and go to state 456 - "goto" shift, and go to state 457 - "unsafe" shift, and go to state 458 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "yield" shift, and go to state 465 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$ <|" shift, and go to state 468 - "@ <|" shift, and go to state 469 - "@@ <|" shift, and go to state 470 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 488 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - "end of code block" shift, and go to state 1335 - "end of expression" shift, and go to state 493 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + "addr" shift, and go to state 454 + "continue" shift, and go to state 455 + "pass" shift, and go to state 456 + "reinterpret" shift, and go to state 457 + "label" shift, and go to state 458 + "goto" shift, and go to state 459 + "unsafe" shift, and go to state 460 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "yield" shift, and go to state 467 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "$ <|" shift, and go to state 470 + "@ <|" shift, and go to state 471 + "@@ <|" shift, and go to state 472 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 490 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + "end of code block" shift, and go to state 1337 + "end of expression" shift, and go to state 495 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_label go to state 505 - expression_goto go to state 506 - if_or_static_if go to state 507 - expression_if_one_liner go to state 508 - expression_if_then_else go to state 509 - expression_for_loop go to state 510 - expression_unsafe go to state 511 - expression_while_loop go to state 512 - expression_with go to state 513 - expression_with_alias go to state 514 - expr_call_pipe go to state 515 - expression_any go to state 516 - expr_keyword go to state 517 - expression_keyword go to state 518 - expr_pipe go to state 519 - name_in_namespace go to state 520 - expression_delete go to state 521 - expr_new go to state 522 - expression_break go to state 523 - expression_continue go to state 524 - expression_return_no_pipe go to state 525 - expression_return go to state 526 - expression_yield_no_pipe go to state 527 - expression_yield go to state 528 - expression_try_catch go to state 529 - kwd_let go to state 530 - expression_let go to state 531 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_assign go to state 538 - expr_assign_pipe go to state 539 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 545 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_label go to state 507 + expression_goto go to state 508 + if_or_static_if go to state 509 + expression_if_one_liner go to state 510 + expression_if_then_else go to state 511 + expression_for_loop go to state 512 + expression_unsafe go to state 513 + expression_while_loop go to state 514 + expression_with go to state 515 + expression_with_alias go to state 516 + expr_call_pipe go to state 517 + expression_any go to state 518 + expr_keyword go to state 519 + expression_keyword go to state 520 + expr_pipe go to state 521 + name_in_namespace go to state 522 + expression_delete go to state 523 + expr_new go to state 524 + expression_break go to state 525 + expression_continue go to state 526 + expression_return_no_pipe go to state 527 + expression_return go to state 528 + expression_yield_no_pipe go to state 529 + expression_yield go to state 530 + expression_try_catch go to state 531 + kwd_let go to state 532 + expression_let go to state 533 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_assign go to state 540 + expr_assign_pipe go to state 541 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 547 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 -State 1188 +State 1190 - 859 array_comprehension: '[' "for" variable_name_with_pos_list "in" . expr_list "end of expression" expr array_comprehension_where ']' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 860 array_comprehension: '[' "for" variable_name_with_pos_list "in" . expr_list "end of expression" expr array_comprehension_where ']' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - expr_list go to state 1336 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 707 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + expr_list go to state 1338 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 709 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 -State 1189 +State 1191 - 629 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" - 630 | variable_name_with_pos_list . ',' "name" "aka" "name" - 860 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list . "in" expr_list "end of expression" expr array_comprehension_where ']' + 630 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" + 631 | variable_name_with_pos_list . ',' "name" "aka" "name" + 861 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list . "in" expr_list "end of expression" expr array_comprehension_where ']' - "in" shift, and go to state 1337 - ',' shift, and go to state 836 + "in" shift, and go to state 1339 + ',' shift, and go to state 838 -State 1190 +State 1192 - 826 make_dim_decl: '[' expr_list optional_comma ']' . + 827 make_dim_decl: '[' expr_list optional_comma ']' . - $default reduce using rule 826 (make_dim_decl) + $default reduce using rule 827 (make_dim_decl) -State 1191 +State 1193 - 454 expr: '(' expr_list optional_comma ')' . + 455 expr: '(' expr_list optional_comma ')' . - $default reduce using rule 454 (expr) + $default reduce using rule 455 (expr) -State 1192 +State 1194 - 394 func_addr_name: "$i" '(' . expr ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 395 func_addr_name: "$i" '(' . expr ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1338 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1340 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 -State 1193 +State 1195 - 513 expr_mtag: '@' '@' "$c" '(' . expr ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 514 expr_mtag: '@' '@' "$c" '(' . expr ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1339 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1341 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 -State 1194 +State 1196 - 398 func_addr_expr: '@' '@' '<' $@22 . type_declaration_no_options '>' $@23 func_addr_name - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 1340 + 399 func_addr_expr: '@' '@' '<' $@22 . type_declaration_no_options '>' $@23 func_addr_name + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 1342 -State 1195 +State 1197 - 401 func_addr_expr: '@' '@' '<' $@24 . optional_function_argument_list optional_function_type '>' $@25 func_addr_name + 402 func_addr_expr: '@' '@' '<' $@24 . optional_function_argument_list optional_function_type '>' $@25 func_addr_name - '(' shift, and go to state 282 + '(' shift, and go to state 284 $default reduce using rule 121 (optional_function_argument_list) - optional_function_argument_list go to state 1341 + optional_function_argument_list go to state 1343 -State 1196 +State 1198 60 expression_else: "else" . expression_block - "begin of code block" shift, and go to state 284 + "begin of code block" shift, and go to state 286 - expression_block go to state 1342 + expression_block go to state 1344 -State 1197 +State 1199 57 elif_or_static_elif: "elif" . $default reduce using rule 57 (elif_or_static_elif) -State 1198 +State 1200 58 elif_or_static_elif: "static_elif" . $default reduce using rule 58 (elif_or_static_elif) -State 1199 +State 1201 61 expression_else: elif_or_static_elif . expr expression_block expression_else - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1343 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1345 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 -State 1200 +State 1202 72 expression_if_then_else: if_or_static_if expr expression_block expression_else . $default reduce using rule 72 (expression_if_then_else) -State 1201 +State 1203 74 expression_if_then_else: expression_if_one_liner "if" $@3 expr . expression_else_one_liner "end of expression" - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "else" shift, and go to state 1344 - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "else" shift, and go to state 1346 + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 $default reduce using rule 64 (expression_else_one_liner) - expression_else_one_liner go to state 1345 - - -State 1202 - - 341 expr_full_block_assumed_piped: block_or_lambda $@21 optional_annotation_list . optional_capture_list optional_function_argument_list optional_function_type expression_block + expression_else_one_liner go to state 1347 - "[[" shift, and go to state 960 - $default reduce using rule 335 (optional_capture_list) - - optional_capture_list go to state 1346 - - -State 1203 - - 389 expr_named_call: name_in_namespace '(' '[' make_struct_fields . ']' ')' - 772 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr - 773 | make_struct_fields . ',' "name" ":=" expr - 776 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr - 777 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr +State 1204 - ',' shift, and go to state 1159 - ']' shift, and go to state 1347 + 342 expr_full_block_assumed_piped: block_or_lambda $@21 optional_annotation_list . optional_capture_list optional_function_argument_list optional_function_type expression_block + "[[" shift, and go to state 962 -State 1204 + $default reduce using rule 336 (optional_capture_list) - 322 expr_list: expr_list ',' . expr - 390 expr_named_call: name_in_namespace '(' expr_list ',' . '[' make_struct_fields ']' ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 1348 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1107 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + optional_capture_list go to state 1348 State 1205 - 411 expr_call: name_in_namespace '(' expr_list ')' . + 390 expr_named_call: name_in_namespace '(' '[' make_struct_fields . ']' ')' + 773 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr + 774 | make_struct_fields . ',' "name" ":=" expr + 777 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr + 778 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr - $default reduce using rule 411 (expr_call) + ',' shift, and go to state 1161 + ']' shift, and go to state 1349 State 1206 - 410 expr_call: name_in_namespace '(' make_struct_single ')' . - - $default reduce using rule 410 (expr_call) + 323 expr_list: expr_list ',' . expr + 391 expr_named_call: name_in_namespace '(' expr_list ',' . '[' make_struct_fields ']' ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 1350 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1109 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1207 - 298 tuple_expansion: "name" . + 412 expr_call: name_in_namespace '(' expr_list ')' . - $default reduce using rule 298 (tuple_expansion) + $default reduce using rule 412 (expr_call) State 1208 - 299 tuple_expansion: tuple_expansion . ',' "name" - 300 tuple_expansion_variable_declaration: "[[" tuple_expansion . ']' ']' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 302 | "[[" tuple_expansion . ']' ']' optional_ref copy_or_move_or_clone expr "end of expression" + 411 expr_call: name_in_namespace '(' make_struct_single ')' . - ',' shift, and go to state 1349 - ']' shift, and go to state 1350 + $default reduce using rule 411 (expr_call) State 1209 - 299 tuple_expansion: tuple_expansion . ',' "name" - 301 tuple_expansion_variable_declaration: '(' tuple_expansion . ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 303 | '(' tuple_expansion . ')' optional_ref copy_or_move_or_clone expr "end of expression" + 299 tuple_expansion: "name" . - ',' shift, and go to state 1349 - ')' shift, and go to state 1351 + $default reduce using rule 299 (tuple_expansion) State 1210 - 331 capture_entry: "<-" . "name" + 300 tuple_expansion: tuple_expansion . ',' "name" + 301 tuple_expansion_variable_declaration: "[[" tuple_expansion . ']' ']' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 303 | "[[" tuple_expansion . ']' ']' optional_ref copy_or_move_or_clone expr "end of expression" - "name" shift, and go to state 1352 + ',' shift, and go to state 1351 + ']' shift, and go to state 1352 State 1211 - 332 capture_entry: ":=" . "name" + 300 tuple_expansion: tuple_expansion . ',' "name" + 302 tuple_expansion_variable_declaration: '(' tuple_expansion . ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 304 | '(' tuple_expansion . ')' optional_ref copy_or_move_or_clone expr "end of expression" - "name" shift, and go to state 1353 + ',' shift, and go to state 1351 + ')' shift, and go to state 1353 State 1212 - 330 capture_entry: '=' . "name" + 332 capture_entry: "<-" . "name" "name" shift, and go to state 1354 State 1213 - 329 capture_entry: '&' . "name" + 333 capture_entry: ":=" . "name" "name" shift, and go to state 1355 State 1214 - 333 capture_list: capture_entry . + 331 capture_entry: '=' . "name" - $default reduce using rule 333 (capture_list) + "name" shift, and go to state 1356 State 1215 - 334 capture_list: capture_list . ',' capture_entry - 336 optional_capture_list: "[[" capture_list . ']' ']' + 330 capture_entry: '&' . "name" - ',' shift, and go to state 1356 - ']' shift, and go to state 1357 + "name" shift, and go to state 1357 State 1216 - 339 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list . optional_function_type block_or_simple_block + 334 capture_list: capture_entry . - ':' shift, and go to state 371 + $default reduce using rule 334 (capture_list) - $default reduce using rule 124 (optional_function_type) - optional_function_type go to state 1358 +State 1217 + 335 capture_list: capture_list . ',' capture_entry + 337 optional_capture_list: "[[" capture_list . ']' ']' -State 1217 + ',' shift, and go to state 1358 + ']' shift, and go to state 1359 - 472 expr: expr "is" "type" '<' . $@28 type_declaration_no_options '>' $@29 - $default reduce using rule 470 ($@28) +State 1218 - $@28 go to state 1359 + 340 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list . optional_function_type block_or_simple_block + ':' shift, and go to state 373 -State 1218 + $default reduce using rule 124 (optional_function_type) - 512 expr_mtag: expr "is" "$f" '(' . expr ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1360 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + optional_function_type go to state 1360 State 1219 - 478 expr: expr "as" "type" '<' . $@30 type_declaration '>' $@31 + 473 expr: expr "is" "type" '<' . $@28 type_declaration_no_options '>' $@29 - $default reduce using rule 476 ($@30) + $default reduce using rule 471 ($@28) - $@30 go to state 1361 + $@28 go to state 1361 State 1220 - 510 expr_mtag: expr "as" "$f" '(' . expr ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 513 expr_mtag: expr "is" "$f" '(' . expr ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1362 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1221 - 370 expr_assign_pipe_right: "$ <|" expr_block . + 479 expr: expr "as" "type" '<' . $@30 type_declaration '>' $@31 - $default reduce using rule 370 (expr_assign_pipe_right) + $default reduce using rule 477 ($@30) + $@30 go to state 1363 -State 1222 - 368 expr_assign_pipe_right: "@ <|" expr_block . +State 1222 - $default reduce using rule 368 (expr_assign_pipe_right) + 511 expr_mtag: expr "as" "$f" '(' . expr ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1364 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1223 - 369 expr_assign_pipe_right: "@@ <|" expr_block . + 371 expr_assign_pipe_right: "$ <|" expr_block . - $default reduce using rule 369 (expr_assign_pipe_right) + $default reduce using rule 371 (expr_assign_pipe_right) State 1224 - 391 expr_method_call: expr "->" "name" '(' . ')' - 392 | expr "->" "name" '(' . expr_list ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - ')' shift, and go to state 1363 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - expr_list go to state 1364 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 707 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 369 expr_assign_pipe_right: "@ <|" expr_block . + + $default reduce using rule 369 (expr_assign_pipe_right) State 1225 - 507 expr_mtag: expr "?." "$f" '(' . expr ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1365 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 370 expr_assign_pipe_right: "@@ <|" expr_block . + + $default reduce using rule 370 (expr_assign_pipe_right) State 1226 - 457 expr: expr "?[" expr ']' . - - $default reduce using rule 457 (expr) + 392 expr_method_call: expr "->" "name" '(' . ')' + 393 | expr "->" "name" '(' . expr_list ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + ')' shift, and go to state 1365 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + expr_list go to state 1366 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 709 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1227 - 483 expr: expr '?' "as" "type" . '<' $@32 type_declaration '>' $@33 - - '<' shift, and go to state 1366 + 508 expr_mtag: expr "?." "$f" '(' . expr ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1367 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1228 - 511 expr_mtag: expr '?' "as" "$f" . '(' expr ')' + 458 expr: expr "?[" expr ']' . - '(' shift, and go to state 1367 + $default reduce using rule 458 (expr) State 1229 - 480 expr: expr '?' "as" "name" . + 484 expr: expr '?' "as" "type" . '<' $@32 type_declaration '>' $@33 - $default reduce using rule 480 (expr) + '<' shift, and go to state 1368 State 1230 - 484 expr: expr '?' "as" basic_type_declaration . + 512 expr_mtag: expr '?' "as" "$f" . '(' expr ')' - $default reduce using rule 484 (expr) + '(' shift, and go to state 1369 State 1231 - 469 expr: expr '?' expr ':' . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1368 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 481 expr: expr '?' "as" "name" . + + $default reduce using rule 481 (expr) State 1232 - 509 expr_mtag: expr '.' "?." "$f" . '(' expr ')' + 485 expr: expr '?' "as" basic_type_declaration . - '(' shift, and go to state 1369 + $default reduce using rule 485 (expr) State 1233 - 460 expr: expr '.' "?." "name" . - - $default reduce using rule 460 (expr) + 470 expr: expr '?' expr ':' . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1370 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1234 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 458 | expr '.' "?[" expr . ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - ']' shift, and go to state 1370 + 510 expr_mtag: expr '.' "?." "$f" . '(' expr ')' + + '(' shift, and go to state 1371 State 1235 - 506 expr_mtag: expr '.' "$f" '(' . expr ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1371 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 461 expr: expr '.' "?." "name" . + + $default reduce using rule 461 (expr) State 1236 - 404 expr_field: expr '.' "name" '(' . ')' - 405 | expr '.' "name" '(' . expr_list ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - ')' shift, and go to state 1372 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - expr_list go to state 1373 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 707 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 459 | expr '.' "?[" expr . ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + ']' shift, and go to state 1372 State 1237 - 508 expr_mtag: expr '.' '.' "$f" . '(' expr ')' - - '(' shift, and go to state 1374 + 507 expr_mtag: expr '.' "$f" '(' . expr ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1373 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1238 - 403 expr_field: expr '.' '.' "name" . - - $default reduce using rule 403 (expr_field) + 405 expr_field: expr '.' "name" '(' . ')' + 406 | expr '.' "name" '(' . expr_list ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + ')' shift, and go to state 1374 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + expr_list go to state 1375 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 709 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1239 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 456 | expr '.' '[' expr . ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - ']' shift, and go to state 1375 + 509 expr_mtag: expr '.' '.' "$f" . '(' expr ')' + '(' shift, and go to state 1376 -State 1240 - 408 expr_field: expr '.' $@26 error . $@27 +State 1240 - $default reduce using rule 407 ($@27) + 404 expr_field: expr '.' '.' "name" . - $@27 go to state 1376 + $default reduce using rule 404 (expr_field) State 1241 - 455 expr: expr '[' expr ']' . - - $default reduce using rule 455 (expr) + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 457 | expr '.' '[' expr . ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + ']' shift, and go to state 1377 State 1242 - 413 expr_call: basic_type_declaration '(' expr_list ')' . + 409 expr_field: expr '.' $@26 error . $@27 - $default reduce using rule 413 (expr_call) + $default reduce using rule 408 ($@27) + + $@27 go to state 1378 State 1243 - 590 enum_list: enum_list "name" '=' expr "end of expression" . + 456 expr: expr '[' expr ']' . - $default reduce using rule 590 (enum_list) + $default reduce using rule 456 (expr) State 1244 - 610 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 "end of code block" . + 414 expr_call: basic_type_declaration '(' expr_list ')' . - $default reduce using rule 610 (enum_declaration) + $default reduce using rule 414 (expr_call) State 1245 - 120 optional_annotation_list: '[' annotation_list ']' . - 535 struct_variable_declaration_list: struct_variable_declaration_list '[' annotation_list ']' . "end of expression" - - "end of expression" shift, and go to state 1377 + 591 enum_list: enum_list "name" '=' expr "end of expression" . - $default reduce using rule 120 (optional_annotation_list) + $default reduce using rule 591 (enum_list) State 1246 - 523 optional_public_or_private_member_variable: "public" . + 611 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name ':' enum_basic_type_declaration "begin of code block" $@43 enum_list $@44 "end of code block" . - $default reduce using rule 523 (optional_public_or_private_member_variable) + $default reduce using rule 611 (enum_declaration) State 1247 - 524 optional_public_or_private_member_variable: "private" . - - $default reduce using rule 524 (optional_public_or_private_member_variable) + 120 optional_annotation_list: '[' annotation_list ']' . + 536 struct_variable_declaration_list: struct_variable_declaration_list '[' annotation_list ']' . "end of expression" + "end of expression" shift, and go to state 1379 -State 1248 + $default reduce using rule 120 (optional_annotation_list) - 532 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable . "abstract" optional_constant $@35 function_declaration_header "end of expression" - 534 | struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable . optional_static_member_variable optional_override optional_constant $@36 function_declaration_header expression_block - "abstract" shift, and go to state 1378 - "static" shift, and go to state 1249 +State 1248 - $default reduce using rule 525 (optional_static_member_variable) + 524 optional_public_or_private_member_variable: "public" . - optional_static_member_variable go to state 1379 + $default reduce using rule 524 (optional_public_or_private_member_variable) State 1249 - 526 optional_static_member_variable: "static" . + 525 optional_public_or_private_member_variable: "private" . - $default reduce using rule 526 (optional_static_member_variable) + $default reduce using rule 525 (optional_public_or_private_member_variable) State 1250 - 527 structure_variable_declaration: optional_field_annotation optional_static_member_variable . optional_override optional_public_or_private_member_variable variable_declaration + 533 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable . "abstract" optional_constant $@35 function_declaration_header "end of expression" + 535 | struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable . optional_static_member_variable optional_override optional_constant $@36 function_declaration_header expression_block - "override" shift, and go to state 1380 - "sealed" shift, and go to state 1381 + "abstract" shift, and go to state 1380 + "static" shift, and go to state 1251 - $default reduce using rule 517 (optional_override) + $default reduce using rule 526 (optional_static_member_variable) - optional_override go to state 1382 + optional_static_member_variable go to state 1381 State 1251 - 530 struct_variable_declaration_list: struct_variable_declaration_list $@34 structure_variable_declaration "end of expression" . + 527 optional_static_member_variable: "static" . - $default reduce using rule 530 (struct_variable_declaration_list) + $default reduce using rule 527 (optional_static_member_variable) State 1252 - 572 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" . + 528 structure_variable_declaration: optional_field_annotation optional_static_member_variable . optional_override optional_public_or_private_member_variable variable_declaration - $default reduce using rule 572 (let_variable_declaration) + "override" shift, and go to state 1382 + "sealed" shift, and go to state 1383 + + $default reduce using rule 518 (optional_override) + + optional_override go to state 1384 State 1253 - 690 type_declaration_no_options: "type" '<' $@49 type_declaration '>' $@50 . + 531 struct_variable_declaration_list: struct_variable_declaration_list $@34 structure_variable_declaration "end of expression" . - $default reduce using rule 690 (type_declaration_no_options) + $default reduce using rule 531 (struct_variable_declaration_list) State 1254 - 713 type_declaration_no_options: "array" '<' $@54 type_declaration '>' $@55 . + 573 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" . - $default reduce using rule 713 (type_declaration_no_options) + $default reduce using rule 573 (let_variable_declaration) State 1255 - 716 type_declaration_no_options: "table" '<' $@56 table_type_pair '>' $@57 . + 691 type_declaration_no_options: "type" '<' $@49 type_declaration '>' $@50 . - $default reduce using rule 716 (type_declaration_no_options) + $default reduce using rule 691 (type_declaration_no_options) State 1256 - 679 table_type_pair: type_declaration "end of expression" type_declaration . - 748 type_declaration: type_declaration . '|' type_declaration_no_options - 749 | type_declaration . '|' '#' - - '|' shift, and go to state 415 + 714 type_declaration_no_options: "array" '<' $@54 type_declaration '>' $@55 . - $default reduce using rule 679 (table_type_pair) + $default reduce using rule 714 (type_declaration_no_options) State 1257 - 719 type_declaration_no_options: "iterator" '<' $@58 type_declaration '>' $@59 . + 717 type_declaration_no_options: "table" '<' $@56 table_type_pair '>' $@57 . - $default reduce using rule 719 (type_declaration_no_options) + $default reduce using rule 717 (type_declaration_no_options) State 1258 - 709 type_declaration_no_options: "smart_ptr" '<' $@52 type_declaration '>' $@53 . + 680 table_type_pair: type_declaration "end of expression" type_declaration . + 749 type_declaration: type_declaration . '|' type_declaration_no_options + 750 | type_declaration . '|' '#' + + '|' shift, and go to state 417 - $default reduce using rule 709 (type_declaration_no_options) + $default reduce using rule 680 (table_type_pair) State 1259 - 671 bitfield_bits: bitfield_bits "end of expression" "name" . + 720 type_declaration_no_options: "iterator" '<' $@58 type_declaration '>' $@59 . - $default reduce using rule 671 (bitfield_bits) + $default reduce using rule 720 (type_declaration_no_options) State 1260 - 677 bitfield_type_declaration: "bitfield" '<' $@47 bitfield_bits '>' $@48 . + 710 type_declaration_no_options: "smart_ptr" '<' $@52 type_declaration '>' $@53 . - $default reduce using rule 677 (bitfield_type_declaration) + $default reduce using rule 710 (type_declaration_no_options) State 1261 - 723 type_declaration_no_options: "block" '<' $@60 type_declaration '>' $@61 . + 672 bitfield_bits: bitfield_bits "end of expression" "name" . - $default reduce using rule 723 (type_declaration_no_options) + $default reduce using rule 672 (bitfield_bits) State 1262 - 726 type_declaration_no_options: "block" '<' $@62 optional_function_argument_list optional_function_type '>' . $@63 - - $default reduce using rule 725 ($@63) + 678 bitfield_type_declaration: "bitfield" '<' $@47 bitfield_bits '>' $@48 . - $@63 go to state 1383 + $default reduce using rule 678 (bitfield_type_declaration) State 1263 - 730 type_declaration_no_options: "function" '<' $@64 type_declaration '>' $@65 . + 724 type_declaration_no_options: "block" '<' $@60 type_declaration '>' $@61 . - $default reduce using rule 730 (type_declaration_no_options) + $default reduce using rule 724 (type_declaration_no_options) State 1264 - 733 type_declaration_no_options: "function" '<' $@66 optional_function_argument_list optional_function_type '>' . $@67 + 727 type_declaration_no_options: "block" '<' $@62 optional_function_argument_list optional_function_type '>' . $@63 - $default reduce using rule 732 ($@67) + $default reduce using rule 726 ($@63) - $@67 go to state 1384 + $@63 go to state 1385 State 1265 - 737 type_declaration_no_options: "lambda" '<' $@68 type_declaration '>' $@69 . + 731 type_declaration_no_options: "function" '<' $@64 type_declaration '>' $@65 . - $default reduce using rule 737 (type_declaration_no_options) + $default reduce using rule 731 (type_declaration_no_options) State 1266 - 740 type_declaration_no_options: "lambda" '<' $@70 optional_function_argument_list optional_function_type '>' . $@71 + 734 type_declaration_no_options: "function" '<' $@66 optional_function_argument_list optional_function_type '>' . $@67 - $default reduce using rule 739 ($@71) + $default reduce using rule 733 ($@67) - $@71 go to state 1385 + $@67 go to state 1386 State 1267 - 543 tuple_type_list: tuple_type_list "end of expression" tuple_type . + 738 type_declaration_no_options: "lambda" '<' $@68 type_declaration '>' $@69 . - $default reduce using rule 543 (tuple_type_list) + $default reduce using rule 738 (type_declaration_no_options) State 1268 - 743 type_declaration_no_options: "tuple" '<' $@72 tuple_type_list '>' $@73 . + 741 type_declaration_no_options: "lambda" '<' $@70 optional_function_argument_list optional_function_type '>' . $@71 + + $default reduce using rule 740 ($@71) - $default reduce using rule 743 (type_declaration_no_options) + $@71 go to state 1387 State 1269 - 549 variant_type_list: variant_type_list "end of expression" variant_type . + 544 tuple_type_list: tuple_type_list "end of expression" tuple_type . - $default reduce using rule 549 (variant_type_list) + $default reduce using rule 544 (tuple_type_list) State 1270 - 746 type_declaration_no_options: "variant" '<' $@74 variant_type_list '>' $@75 . + 744 type_declaration_no_options: "tuple" '<' $@72 tuple_type_list '>' $@73 . - $default reduce using rule 746 (type_declaration_no_options) + $default reduce using rule 744 (type_declaration_no_options) State 1271 - 252 type_declaration_no_options_list: type_declaration_no_options_list "end of expression" . type_declaration + 550 variant_type_list: variant_type_list "end of expression" variant_type . - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 354 - type_declaration go to state 1386 + $default reduce using rule 550 (variant_type_list) State 1272 - 694 type_declaration_no_options: '$' name_in_namespace '<' $@51 type_declaration_no_options_list '>' . '(' optional_expr_list ')' + 747 type_declaration_no_options: "variant" '<' $@74 variant_type_list '>' $@75 . - '(' shift, and go to state 1387 + $default reduce using rule 747 (type_declaration_no_options) State 1273 - 627 variable_name_with_pos_list: "$i" '(' expr ')' . + 252 type_declaration_no_options_list: type_declaration_no_options_list "end of expression" . type_declaration - $default reduce using rule 627 (variable_name_with_pos_list) + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 356 + type_declaration go to state 1388 State 1274 - 630 variable_name_with_pos_list: variable_name_with_pos_list ',' "name" "aka" . "name" + 695 type_declaration_no_options: '$' name_in_namespace '<' $@51 type_declaration_no_options_list '>' . '(' optional_expr_list ')' - "name" shift, and go to state 1388 + '(' shift, and go to state 1389 State 1275 - 558 variable_declaration: variable_name_with_pos_list ':' type_declaration copy_or_move . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1389 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 628 variable_name_with_pos_list: "$i" '(' expr ')' . + + $default reduce using rule 628 (variable_name_with_pos_list) State 1276 - 805 make_struct_decl: "struct" '<' $@88 type_declaration_no_options '>' . $@89 '(' use_initializer make_struct_dim ')' - - $default reduce using rule 804 ($@89) + 631 variable_name_with_pos_list: variable_name_with_pos_list ',' "name" "aka" . "name" - $@89 go to state 1390 + "name" shift, and go to state 1390 State 1277 - 808 make_struct_decl: "class" '<' $@90 type_declaration_no_options '>' . $@91 '(' use_initializer make_struct_dim ')' - - $default reduce using rule 807 ($@91) - - $@91 go to state 1391 + 559 variable_declaration: variable_name_with_pos_list ':' type_declaration copy_or_move . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1391 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1278 - 76 expression_for_loop: "for" $@4 variable_name_with_pos_list "in" expr_list . expression_block - 322 expr_list: expr_list . ',' expr + 806 make_struct_decl: "struct" '<' $@88 type_declaration_no_options '>' . $@89 '(' use_initializer make_struct_dim ')' - "begin of code block" shift, and go to state 284 - ',' shift, and go to state 856 + $default reduce using rule 805 ($@89) - expression_block go to state 1392 + $@89 go to state 1392 State 1279 - 270 new_type_declaration: '<' $@11 type_declaration '>' . $@12 + 809 make_struct_decl: "class" '<' $@90 type_declaration_no_options '>' . $@91 '(' use_initializer make_struct_dim ')' - $default reduce using rule 269 ($@12) + $default reduce using rule 808 ($@91) - $@12 go to state 1393 + $@91 go to state 1393 State 1280 - 274 expr_new: "new" new_type_declaration '(' expr_list ')' . + 76 expression_for_loop: "for" $@4 variable_name_with_pos_list "in" expr_list . expression_block + 323 expr_list: expr_list . ',' expr - $default reduce using rule 274 (expr_new) + "begin of code block" shift, and go to state 286 + ',' shift, and go to state 858 + + expression_block go to state 1394 State 1281 - 770 make_struct_fields: "name" . copy_or_move expr - 771 | "name" . ":=" expr + 271 new_type_declaration: '<' $@11 type_declaration '>' . $@12 - "<-" shift, and go to state 835 - ":=" shift, and go to state 1153 - '=' shift, and go to state 837 + $default reduce using rule 270 ($@12) - copy_or_move go to state 1154 + $@12 go to state 1395 State 1282 - 273 expr_new: "new" new_type_declaration '(' use_initializer ')' . + 275 expr_new: "new" new_type_declaration '(' expr_list ')' . - $default reduce using rule 273 (expr_new) + $default reduce using rule 275 (expr_new) State 1283 - 275 expr_new: "new" new_type_declaration '(' use_initializer make_struct_single . ')' + 771 make_struct_fields: "name" . copy_or_move expr + 772 | "name" . ":=" expr + + "<-" shift, and go to state 837 + ":=" shift, and go to state 1155 + '=' shift, and go to state 839 - ')' shift, and go to state 1394 + copy_or_move go to state 1156 State 1284 - 319 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" . '>' expr ')' - 320 | "typeinfo" '(' name_in_namespace '<' "name" . "end of expression" "name" '>' expr ')' + 274 expr_new: "new" new_type_declaration '(' use_initializer ')' . - "end of expression" shift, and go to state 1395 - '>' shift, and go to state 1396 + $default reduce using rule 274 (expr_new) State 1285 - 318 expr_type_info: "typeinfo" '(' name_in_namespace expr ')' . + 276 expr_new: "new" new_type_declaration '(' use_initializer make_struct_single . ')' - $default reduce using rule 318 (expr_type_info) + ')' shift, and go to state 1396 State 1286 - 317 expr_type_decl: "type" '<' $@19 type_declaration '>' . $@20 - - $default reduce using rule 316 ($@20) + 320 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" . '>' expr ')' + 321 | "typeinfo" '(' name_in_namespace '<' "name" . "end of expression" "name" '>' expr ')' - $@20 go to state 1397 + "end of expression" shift, and go to state 1397 + '>' shift, and go to state 1398 State 1287 - 686 type_declaration_no_options: type_declaration_no_options . dim_list - 687 | type_declaration_no_options . '[' ']' - 695 | type_declaration_no_options . '-' '[' ']' - 696 | type_declaration_no_options . "explicit" - 697 | type_declaration_no_options . "const" - 698 | type_declaration_no_options . '-' "const" - 699 | type_declaration_no_options . '&' - 700 | type_declaration_no_options . '-' '&' - 701 | type_declaration_no_options . '#' - 702 | type_declaration_no_options . "implicit" - 703 | type_declaration_no_options . '-' '#' - 704 | type_declaration_no_options . "==" "const" - 705 | type_declaration_no_options . "==" '&' - 706 | type_declaration_no_options . '?' - 710 | type_declaration_no_options . "??" - 831 make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options . '>' $@99 '(' use_initializer make_struct_dim ')' - - "const" shift, and go to state 404 - "implicit" shift, and go to state 405 - "explicit" shift, and go to state 406 - "==" shift, and go to state 407 - "??" shift, and go to state 408 - '?' shift, and go to state 409 - '&' shift, and go to state 410 - '>' shift, and go to state 1398 - '-' shift, and go to state 411 - '[' shift, and go to state 412 - '#' shift, and go to state 413 - - dim_list go to state 414 + 319 expr_type_info: "typeinfo" '(' name_in_namespace expr ')' . + + $default reduce using rule 319 (expr_type_info) State 1288 - 686 type_declaration_no_options: type_declaration_no_options . dim_list - 687 | type_declaration_no_options . '[' ']' - 695 | type_declaration_no_options . '-' '[' ']' - 696 | type_declaration_no_options . "explicit" - 697 | type_declaration_no_options . "const" - 698 | type_declaration_no_options . '-' "const" - 699 | type_declaration_no_options . '&' - 700 | type_declaration_no_options . '-' '&' - 701 | type_declaration_no_options . '#' - 702 | type_declaration_no_options . "implicit" - 703 | type_declaration_no_options . '-' '#' - 704 | type_declaration_no_options . "==" "const" - 705 | type_declaration_no_options . "==" '&' - 706 | type_declaration_no_options . '?' - 710 | type_declaration_no_options . "??" - 834 make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options . '>' $@101 '(' use_initializer make_struct_dim ')' - - "const" shift, and go to state 404 - "implicit" shift, and go to state 405 - "explicit" shift, and go to state 406 - "==" shift, and go to state 407 - "??" shift, and go to state 408 - '?' shift, and go to state 409 - '&' shift, and go to state 410 - '>' shift, and go to state 1399 - '-' shift, and go to state 411 - '[' shift, and go to state 412 - '#' shift, and go to state 413 - - dim_list go to state 414 + 318 expr_type_decl: "type" '<' $@19 type_declaration '>' . $@20 + + $default reduce using rule 317 ($@20) + + $@20 go to state 1399 State 1289 - 686 type_declaration_no_options: type_declaration_no_options . dim_list - 687 | type_declaration_no_options . '[' ']' - 695 | type_declaration_no_options . '-' '[' ']' - 696 | type_declaration_no_options . "explicit" - 697 | type_declaration_no_options . "const" - 698 | type_declaration_no_options . '-' "const" - 699 | type_declaration_no_options . '&' - 700 | type_declaration_no_options . '-' '&' - 701 | type_declaration_no_options . '#' - 702 | type_declaration_no_options . "implicit" - 703 | type_declaration_no_options . '-' '#' - 704 | type_declaration_no_options . "==" "const" - 705 | type_declaration_no_options . "==" '&' - 706 | type_declaration_no_options . '?' - 710 | type_declaration_no_options . "??" - 837 make_dim_decl: "array" "variant" '<' $@102 type_declaration_no_options . '>' $@103 '(' make_struct_dim ')' - - "const" shift, and go to state 404 - "implicit" shift, and go to state 405 - "explicit" shift, and go to state 406 - "==" shift, and go to state 407 - "??" shift, and go to state 408 - '?' shift, and go to state 409 - '&' shift, and go to state 410 + 687 type_declaration_no_options: type_declaration_no_options . dim_list + 688 | type_declaration_no_options . '[' ']' + 696 | type_declaration_no_options . '-' '[' ']' + 697 | type_declaration_no_options . "explicit" + 698 | type_declaration_no_options . "const" + 699 | type_declaration_no_options . '-' "const" + 700 | type_declaration_no_options . '&' + 701 | type_declaration_no_options . '-' '&' + 702 | type_declaration_no_options . '#' + 703 | type_declaration_no_options . "implicit" + 704 | type_declaration_no_options . '-' '#' + 705 | type_declaration_no_options . "==" "const" + 706 | type_declaration_no_options . "==" '&' + 707 | type_declaration_no_options . '?' + 711 | type_declaration_no_options . "??" + 832 make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options . '>' $@99 '(' use_initializer make_struct_dim ')' + + "const" shift, and go to state 406 + "implicit" shift, and go to state 407 + "explicit" shift, and go to state 408 + "==" shift, and go to state 409 + "??" shift, and go to state 410 + '?' shift, and go to state 411 + '&' shift, and go to state 412 '>' shift, and go to state 1400 - '-' shift, and go to state 411 - '[' shift, and go to state 412 - '#' shift, and go to state 413 + '-' shift, and go to state 413 + '[' shift, and go to state 414 + '#' shift, and go to state 415 - dim_list go to state 414 + dim_list go to state 416 State 1290 - 841 make_dim_decl: "array" '<' $@104 type_declaration_no_options '>' . $@105 '(' expr_list optional_comma ')' - - $default reduce using rule 840 ($@105) - - $@105 go to state 1401 + 687 type_declaration_no_options: type_declaration_no_options . dim_list + 688 | type_declaration_no_options . '[' ']' + 696 | type_declaration_no_options . '-' '[' ']' + 697 | type_declaration_no_options . "explicit" + 698 | type_declaration_no_options . "const" + 699 | type_declaration_no_options . '-' "const" + 700 | type_declaration_no_options . '&' + 701 | type_declaration_no_options . '-' '&' + 702 | type_declaration_no_options . '#' + 703 | type_declaration_no_options . "implicit" + 704 | type_declaration_no_options . '-' '#' + 705 | type_declaration_no_options . "==" "const" + 706 | type_declaration_no_options . "==" '&' + 707 | type_declaration_no_options . '?' + 711 | type_declaration_no_options . "??" + 835 make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options . '>' $@101 '(' use_initializer make_struct_dim ')' + + "const" shift, and go to state 406 + "implicit" shift, and go to state 407 + "explicit" shift, and go to state 408 + "==" shift, and go to state 409 + "??" shift, and go to state 410 + '?' shift, and go to state 411 + '&' shift, and go to state 412 + '>' shift, and go to state 1401 + '-' shift, and go to state 413 + '[' shift, and go to state 414 + '#' shift, and go to state 415 + + dim_list go to state 416 State 1291 - 838 make_dim_decl: "array" '(' expr_list optional_comma ')' . + 687 type_declaration_no_options: type_declaration_no_options . dim_list + 688 | type_declaration_no_options . '[' ']' + 696 | type_declaration_no_options . '-' '[' ']' + 697 | type_declaration_no_options . "explicit" + 698 | type_declaration_no_options . "const" + 699 | type_declaration_no_options . '-' "const" + 700 | type_declaration_no_options . '&' + 701 | type_declaration_no_options . '-' '&' + 702 | type_declaration_no_options . '#' + 703 | type_declaration_no_options . "implicit" + 704 | type_declaration_no_options . '-' '#' + 705 | type_declaration_no_options . "==" "const" + 706 | type_declaration_no_options . "==" '&' + 707 | type_declaration_no_options . '?' + 711 | type_declaration_no_options . "??" + 838 make_dim_decl: "array" "variant" '<' $@102 type_declaration_no_options . '>' $@103 '(' make_struct_dim ')' + + "const" shift, and go to state 406 + "implicit" shift, and go to state 407 + "explicit" shift, and go to state 408 + "==" shift, and go to state 409 + "??" shift, and go to state 410 + '?' shift, and go to state 411 + '&' shift, and go to state 412 + '>' shift, and go to state 1402 + '-' shift, and go to state 413 + '[' shift, and go to state 414 + '#' shift, and go to state 415 - $default reduce using rule 838 (make_dim_decl) + dim_list go to state 416 State 1292 - 686 type_declaration_no_options: type_declaration_no_options . dim_list - 687 | type_declaration_no_options . '[' ']' - 695 | type_declaration_no_options . '-' '[' ']' - 696 | type_declaration_no_options . "explicit" - 697 | type_declaration_no_options . "const" - 698 | type_declaration_no_options . '-' "const" - 699 | type_declaration_no_options . '&' - 700 | type_declaration_no_options . '-' '&' - 701 | type_declaration_no_options . '#' - 702 | type_declaration_no_options . "implicit" - 703 | type_declaration_no_options . '-' '#' - 704 | type_declaration_no_options . "==" "const" - 705 | type_declaration_no_options . "==" '&' - 706 | type_declaration_no_options . '?' - 710 | type_declaration_no_options . "??" - 854 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options . '>' '(' expr_map_tuple_list optional_comma ')' - - "const" shift, and go to state 404 - "implicit" shift, and go to state 405 - "explicit" shift, and go to state 406 - "==" shift, and go to state 407 - "??" shift, and go to state 408 - '?' shift, and go to state 409 - '&' shift, and go to state 410 - '>' shift, and go to state 1402 - '-' shift, and go to state 411 - '[' shift, and go to state 412 - '#' shift, and go to state 413 + 842 make_dim_decl: "array" '<' $@104 type_declaration_no_options '>' . $@105 '(' expr_list optional_comma ')' + + $default reduce using rule 841 ($@105) - dim_list go to state 414 + $@105 go to state 1403 State 1293 - 853 make_table_decl: "table" '<' type_declaration_no_options '>' '(' . expr_map_tuple_list optional_comma ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 688 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_map_tuple go to state 696 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - expr_map_tuple_list go to state 1403 - make_table_decl go to state 552 - array_comprehension go to state 553 + 839 make_dim_decl: "array" '(' expr_list optional_comma ')' . + $default reduce using rule 839 (make_dim_decl) -State 1294 - 852 make_table_decl: "table" '(' expr_map_tuple_list optional_comma ')' . +State 1294 - $default reduce using rule 852 (make_table_decl) + 687 type_declaration_no_options: type_declaration_no_options . dim_list + 688 | type_declaration_no_options . '[' ']' + 696 | type_declaration_no_options . '-' '[' ']' + 697 | type_declaration_no_options . "explicit" + 698 | type_declaration_no_options . "const" + 699 | type_declaration_no_options . '-' "const" + 700 | type_declaration_no_options . '&' + 701 | type_declaration_no_options . '-' '&' + 702 | type_declaration_no_options . '#' + 703 | type_declaration_no_options . "implicit" + 704 | type_declaration_no_options . '-' '#' + 705 | type_declaration_no_options . "==" "const" + 706 | type_declaration_no_options . "==" '&' + 707 | type_declaration_no_options . '?' + 711 | type_declaration_no_options . "??" + 855 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options . '>' '(' expr_map_tuple_list optional_comma ')' + + "const" shift, and go to state 406 + "implicit" shift, and go to state 407 + "explicit" shift, and go to state 408 + "==" shift, and go to state 409 + "??" shift, and go to state 410 + '?' shift, and go to state 411 + '&' shift, and go to state 412 + '>' shift, and go to state 1404 + '-' shift, and go to state 413 + '[' shift, and go to state 414 + '#' shift, and go to state 415 + + dim_list go to state 416 State 1295 - 81 expression_with_alias: "assume" "name" '=' $@5 expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - - $default reduce using rule 81 (expression_with_alias) + 854 make_table_decl: "table" '<' type_declaration_no_options '>' '(' . expr_map_tuple_list optional_comma ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 690 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_map_tuple go to state 698 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + expr_map_tuple_list go to state 1405 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1296 - 308 expr_cast: "cast" '<' $@13 type_declaration_no_options '>' . $@14 expr + 853 make_table_decl: "table" '(' expr_map_tuple_list optional_comma ')' . - $default reduce using rule 307 ($@14) - - $@14 go to state 1404 + $default reduce using rule 853 (make_table_decl) State 1297 - 311 expr_cast: "upcast" '<' $@15 type_declaration_no_options '>' . $@16 expr - - $default reduce using rule 310 ($@16) + 81 expression_with_alias: "assume" "name" '=' $@5 expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $@16 go to state 1405 + $default reduce using rule 81 (expression_with_alias) State 1298 - 314 expr_cast: "reinterpret" '<' $@17 type_declaration_no_options '>' . $@18 expr + 309 expr_cast: "cast" '<' $@13 type_declaration_no_options '>' . $@14 expr - $default reduce using rule 313 ($@18) + $default reduce using rule 308 ($@14) - $@18 go to state 1406 + $@14 go to state 1406 State 1299 - 845 make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options '>' . $@107 '(' expr_list optional_comma ')' + 312 expr_cast: "upcast" '<' $@15 type_declaration_no_options '>' . $@16 expr - $default reduce using rule 844 ($@107) + $default reduce using rule 311 ($@16) - $@107 go to state 1407 + $@16 go to state 1407 State 1300 - 842 make_dim_decl: "fixed_array" '(' expr_list optional_comma ')' . + 315 expr_cast: "reinterpret" '<' $@17 type_declaration_no_options '>' . $@18 expr - $default reduce using rule 842 (make_dim_decl) + $default reduce using rule 314 ($@18) + + $@18 go to state 1408 State 1301 - 814 make_struct_decl: "default" '<' $@94 type_declaration_no_options '>' . $@95 use_initializer + 846 make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options '>' . $@107 '(' expr_list optional_comma ')' - $default reduce using rule 813 ($@95) + $default reduce using rule 845 ($@107) - $@95 go to state 1408 + $@107 go to state 1409 State 1302 - 823 make_tuple_call: "tuple" '<' $@96 type_declaration_no_options '>' . $@97 '(' use_initializer make_struct_dim ')' - - $default reduce using rule 822 ($@97) + 843 make_dim_decl: "fixed_array" '(' expr_list optional_comma ')' . - $@97 go to state 1409 + $default reduce using rule 843 (make_dim_decl) State 1303 - 820 make_tuple_call: "tuple" '(' expr_list optional_comma ')' . + 815 make_struct_decl: "default" '<' $@94 type_declaration_no_options '>' . $@95 use_initializer - $default reduce using rule 820 (make_tuple_call) + $default reduce using rule 814 ($@95) + + $@95 go to state 1410 State 1304 - 811 make_struct_decl: "variant" '<' $@92 type_declaration_no_options '>' . $@93 '(' make_struct_dim ')' + 824 make_tuple_call: "tuple" '<' $@96 type_declaration_no_options '>' . $@97 '(' use_initializer make_struct_dim ')' - $default reduce using rule 810 ($@93) + $default reduce using rule 823 ($@97) - $@93 go to state 1410 + $@97 go to state 1411 State 1305 - 466 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list . '(' ')' - 467 | "generator" '<' type_declaration_no_options '>' optional_capture_list . '(' expr ')' + 821 make_tuple_call: "tuple" '(' expr_list optional_comma ')' . - '(' shift, and go to state 1411 + $default reduce using rule 821 (make_tuple_call) State 1306 - 338 expr_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list . optional_function_type block_or_simple_block - - ':' shift, and go to state 371 + 812 make_struct_decl: "variant" '<' $@92 type_declaration_no_options '>' . $@93 '(' make_struct_dim ')' - $default reduce using rule 124 (optional_function_type) + $default reduce using rule 811 ($@93) - optional_function_type go to state 1412 + $@93 go to state 1412 State 1307 - 504 expr_mtag: "$c" '(' expr ')' '(' . ')' - 505 | "$c" '(' expr ')' '(' . expr_list ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - ')' shift, and go to state 1413 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - expr_list go to state 1414 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 707 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 467 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list . '(' ')' + 468 | "generator" '<' type_declaration_no_options '>' optional_capture_list . '(' expr ')' + + '(' shift, and go to state 1413 State 1308 - 322 expr_list: expr_list . ',' expr - 861 array_comprehension: "[[" "for" variable_name_with_pos_list "in" expr_list . "end of expression" expr array_comprehension_where ']' ']' + 339 expr_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list . optional_function_type block_or_simple_block + + ':' shift, and go to state 373 - "end of expression" shift, and go to state 1415 - ',' shift, and go to state 856 + $default reduce using rule 124 (optional_function_type) + + optional_function_type go to state 1414 State 1309 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 774 make_struct_fields: "$f" '(' expr . ')' copy_or_move expr - 775 | "$f" '(' expr . ')' ":=" expr - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - ')' shift, and go to state 1416 + 505 expr_mtag: "$c" '(' expr ')' '(' . ')' + 506 | "$c" '(' expr ')' '(' . expr_list ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + ')' shift, and go to state 1415 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + expr_list go to state 1416 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 709 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1310 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 771 make_struct_fields: "name" ":=" expr . - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 323 expr_list: expr_list . ',' expr + 862 array_comprehension: "[[" "for" variable_name_with_pos_list "in" expr_list . "end of expression" expr array_comprehension_where ']' ']' - $default reduce using rule 771 (make_struct_fields) + "end of expression" shift, and go to state 1417 + ',' shift, and go to state 858 State 1311 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 770 make_struct_fields: "name" copy_or_move expr . - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - - $default reduce using rule 770 (make_struct_fields) + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 775 make_struct_fields: "$f" '(' expr . ')' copy_or_move expr + 776 | "$f" '(' expr . ')' ":=" expr + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + ')' shift, and go to state 1418 State 1312 - 780 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 800 make_struct_decl: "[[" type_declaration_no_options '(' ')' make_struct_dim . optional_block optional_trailing_delim_sqr_sqr + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 772 make_struct_fields: "name" ":=" expr . + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - "where" shift, and go to state 906 - "end of expression" shift, and go to state 1160 - - $default reduce using rule 781 (optional_block) - - optional_block go to state 1417 + $default reduce using rule 772 (make_struct_fields) State 1313 - 799 make_struct_decl: "[[" type_declaration_no_options '(' ')' optional_block . optional_trailing_delim_sqr_sqr - - ";]]" shift, and go to state 1162 - ",]]" shift, and go to state 1163 - ']' shift, and go to state 1164 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 771 make_struct_fields: "name" copy_or_move expr . + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - optional_trailing_delim_sqr_sqr go to state 1418 + $default reduce using rule 771 (make_struct_fields) State 1314 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 816 make_tuple: expr "=>" expr . - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 781 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 801 make_struct_decl: "[[" type_declaration_no_options '(' ')' make_struct_dim . optional_block optional_trailing_delim_sqr_sqr - $default reduce using rule 816 (make_tuple) + "where" shift, and go to state 908 + "end of expression" shift, and go to state 1162 + + $default reduce using rule 782 (optional_block) + + optional_block go to state 1419 State 1315 - 776 make_struct_fields: make_struct_fields ',' "$f" . '(' expr ')' copy_or_move expr - 777 | make_struct_fields ',' "$f" . '(' expr ')' ":=" expr + 800 make_struct_decl: "[[" type_declaration_no_options '(' ')' optional_block . optional_trailing_delim_sqr_sqr - '(' shift, and go to state 1419 + ";]]" shift, and go to state 1164 + ",]]" shift, and go to state 1165 + ']' shift, and go to state 1166 + optional_trailing_delim_sqr_sqr go to state 1420 -State 1316 - 772 make_struct_fields: make_struct_fields ',' "name" . copy_or_move expr - 773 | make_struct_fields ',' "name" . ":=" expr +State 1316 - "<-" shift, and go to state 835 - ":=" shift, and go to state 1420 - '=' shift, and go to state 837 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 817 make_tuple: expr "=>" expr . + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - copy_or_move go to state 1421 + $default reduce using rule 817 (make_tuple) State 1317 - 772 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr - 773 | make_struct_fields . ',' "name" ":=" expr - 776 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr - 777 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr - 780 make_struct_dim: make_struct_dim "end of expression" make_struct_fields . + 777 make_struct_fields: make_struct_fields ',' "$f" . '(' expr ')' copy_or_move expr + 778 | make_struct_fields ',' "$f" . '(' expr ')' ":=" expr - ',' shift, and go to state 1159 - - $default reduce using rule 780 (make_struct_dim) + '(' shift, and go to state 1421 State 1318 - 797 make_struct_decl: "[[" type_declaration_no_options make_struct_dim optional_block optional_trailing_delim_sqr_sqr . + 773 make_struct_fields: make_struct_fields ',' "name" . copy_or_move expr + 774 | make_struct_fields ',' "name" . ":=" expr - $default reduce using rule 797 (make_struct_decl) + "<-" shift, and go to state 837 + ":=" shift, and go to state 1422 + '=' shift, and go to state 839 + + copy_or_move go to state 1423 State 1319 - 789 optional_trailing_delim_sqr_sqr: ']' ']' . + 773 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr + 774 | make_struct_fields . ',' "name" ":=" expr + 777 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr + 778 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr + 781 make_struct_dim: make_struct_dim "end of expression" make_struct_fields . + + ',' shift, and go to state 1161 - $default reduce using rule 789 (optional_trailing_delim_sqr_sqr) + $default reduce using rule 781 (make_struct_dim) State 1320 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 817 make_tuple: make_tuple ',' expr . - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 798 make_struct_decl: "[[" type_declaration_no_options make_struct_dim optional_block optional_trailing_delim_sqr_sqr . - $default reduce using rule 817 (make_tuple) + $default reduce using rule 798 (make_struct_decl) State 1321 - 817 make_tuple: make_tuple . ',' expr - 825 make_dim: make_dim "end of expression" make_tuple . + 790 optional_trailing_delim_sqr_sqr: ']' ']' . - ',' shift, and go to state 1166 - - $default reduce using rule 825 (make_dim) + $default reduce using rule 790 (optional_trailing_delim_sqr_sqr) State 1322 - 787 optional_trailing_semicolon_sqr_sqr: ']' ']' . - - $default reduce using rule 787 (optional_trailing_semicolon_sqr_sqr) + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 818 make_tuple: make_tuple ',' expr . + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + + $default reduce using rule 818 (make_tuple) State 1323 - 322 expr_list: expr_list . ',' expr - 862 array_comprehension: "[{" "for" variable_name_with_pos_list "in" expr_list . "end of expression" expr array_comprehension_where "end of code block" ']' + 818 make_tuple: make_tuple . ',' expr + 826 make_dim: make_dim "end of expression" make_tuple . - "end of expression" shift, and go to state 1422 - ',' shift, and go to state 856 + ',' shift, and go to state 1168 + $default reduce using rule 826 (make_dim) -State 1324 - - 780 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 802 make_struct_decl: "[{" type_declaration_no_options '(' ')' make_struct_dim . optional_block optional_trailing_delim_cur_sqr - "where" shift, and go to state 906 - "end of expression" shift, and go to state 1160 +State 1324 - $default reduce using rule 781 (optional_block) + 788 optional_trailing_semicolon_sqr_sqr: ']' ']' . - optional_block go to state 1423 + $default reduce using rule 788 (optional_trailing_semicolon_sqr_sqr) State 1325 - 792 optional_trailing_delim_cur_sqr: "end of code block" . ']' + 323 expr_list: expr_list . ',' expr + 863 array_comprehension: "[{" "for" variable_name_with_pos_list "in" expr_list . "end of expression" expr array_comprehension_where "end of code block" ']' - ']' shift, and go to state 1424 + "end of expression" shift, and go to state 1424 + ',' shift, and go to state 858 State 1326 - 793 optional_trailing_delim_cur_sqr: ";}]" . + 781 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 803 make_struct_decl: "[{" type_declaration_no_options '(' ')' make_struct_dim . optional_block optional_trailing_delim_cur_sqr - $default reduce using rule 793 (optional_trailing_delim_cur_sqr) + "where" shift, and go to state 908 + "end of expression" shift, and go to state 1162 + + $default reduce using rule 782 (optional_block) + + optional_block go to state 1425 State 1327 - 794 optional_trailing_delim_cur_sqr: ",}]" . + 793 optional_trailing_delim_cur_sqr: "end of code block" . ']' - $default reduce using rule 794 (optional_trailing_delim_cur_sqr) + ']' shift, and go to state 1426 State 1328 - 801 make_struct_decl: "[{" type_declaration_no_options make_struct_dim optional_block optional_trailing_delim_cur_sqr . + 794 optional_trailing_delim_cur_sqr: ";}]" . - $default reduce using rule 801 (make_struct_decl) + $default reduce using rule 794 (optional_trailing_delim_cur_sqr) State 1329 - 785 optional_trailing_semicolon_cur_sqr: "end of code block" ']' . + 795 optional_trailing_delim_cur_sqr: ",}]" . - $default reduce using rule 785 (optional_trailing_semicolon_cur_sqr) + $default reduce using rule 795 (optional_trailing_delim_cur_sqr) State 1330 - 322 expr_list: expr_list . ',' expr - 864 array_comprehension: "{{" "for" variable_name_with_pos_list "in" expr_list . "end of expression" make_map_tuple array_comprehension_where "end of code block" "end of code block" + 802 make_struct_decl: "[{" type_declaration_no_options make_struct_dim optional_block optional_trailing_delim_cur_sqr . - "end of expression" shift, and go to state 1425 - ',' shift, and go to state 856 + $default reduce using rule 802 (make_struct_decl) State 1331 + 786 optional_trailing_semicolon_cur_sqr: "end of code block" ']' . + + $default reduce using rule 786 (optional_trailing_semicolon_cur_sqr) + + +State 1332 + + 323 expr_list: expr_list . ',' expr + 865 array_comprehension: "{{" "for" variable_name_with_pos_list "in" expr_list . "end of expression" make_map_tuple array_comprehension_where "end of code block" "end of code block" + + "end of expression" shift, and go to state 1427 + ',' shift, and go to state 858 + + +State 1333 + 255 expression_keyword: "keyword" '<' $@7 type_declaration_no_options_list '>' . $@8 expr $default reduce using rule 254 ($@8) - $@8 go to state 1426 + $@8 go to state 1428 -State 1332 +State 1334 258 expression_keyword: "type function" '<' $@9 type_declaration_no_options_list '>' . $@10 optional_expr_list_in_braces $default reduce using rule 257 ($@10) - $@10 go to state 1427 + $@10 go to state 1429 -State 1333 +State 1335 30 string_builder_body: string_builder_body "{" expr "}" . $default reduce using rule 30 (string_builder_body) -State 1334 +State 1336 - 322 expr_list: expr_list . ',' expr - 863 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list . "end of expression" make_map_tuple array_comprehension_where "end of code block" + 323 expr_list: expr_list . ',' expr + 864 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list . "end of expression" make_map_tuple array_comprehension_where "end of code block" - "end of expression" shift, and go to state 1428 - ',' shift, and go to state 856 + "end of expression" shift, and go to state 1430 + ',' shift, and go to state 858 -State 1335 +State 1337 219 expression_block: "begin of code block" expressions "end of code block" "finally" "begin of code block" expressions "end of code block" . $default reduce using rule 219 (expression_block) -State 1336 +State 1338 - 322 expr_list: expr_list . ',' expr - 859 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list . "end of expression" expr array_comprehension_where ']' + 323 expr_list: expr_list . ',' expr + 860 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list . "end of expression" expr array_comprehension_where ']' - "end of expression" shift, and go to state 1429 - ',' shift, and go to state 856 + "end of expression" shift, and go to state 1431 + ',' shift, and go to state 858 -State 1337 +State 1339 - 860 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" . expr_list "end of expression" expr array_comprehension_where ']' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 861 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" . expr_list "end of expression" expr array_comprehension_where ']' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - expr_list go to state 1430 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 707 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + expr_list go to state 1432 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 709 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 -State 1338 +State 1340 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 394 func_addr_name: "$i" '(' expr . ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - ')' shift, and go to state 1431 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 395 func_addr_name: "$i" '(' expr . ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + ')' shift, and go to state 1433 -State 1339 +State 1341 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 513 | '@' '@' "$c" '(' expr . ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - ')' shift, and go to state 1432 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 514 | '@' '@' "$c" '(' expr . ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + ')' shift, and go to state 1434 -State 1340 +State 1342 - 398 func_addr_expr: '@' '@' '<' $@22 type_declaration_no_options . '>' $@23 func_addr_name - 686 type_declaration_no_options: type_declaration_no_options . dim_list - 687 | type_declaration_no_options . '[' ']' - 695 | type_declaration_no_options . '-' '[' ']' - 696 | type_declaration_no_options . "explicit" - 697 | type_declaration_no_options . "const" - 698 | type_declaration_no_options . '-' "const" - 699 | type_declaration_no_options . '&' - 700 | type_declaration_no_options . '-' '&' - 701 | type_declaration_no_options . '#' - 702 | type_declaration_no_options . "implicit" - 703 | type_declaration_no_options . '-' '#' - 704 | type_declaration_no_options . "==" "const" - 705 | type_declaration_no_options . "==" '&' - 706 | type_declaration_no_options . '?' - 710 | type_declaration_no_options . "??" - - "const" shift, and go to state 404 - "implicit" shift, and go to state 405 - "explicit" shift, and go to state 406 - "==" shift, and go to state 407 - "??" shift, and go to state 408 - '?' shift, and go to state 409 - '&' shift, and go to state 410 - '>' shift, and go to state 1433 - '-' shift, and go to state 411 - '[' shift, and go to state 412 - '#' shift, and go to state 413 - - dim_list go to state 414 + 399 func_addr_expr: '@' '@' '<' $@22 type_declaration_no_options . '>' $@23 func_addr_name + 687 type_declaration_no_options: type_declaration_no_options . dim_list + 688 | type_declaration_no_options . '[' ']' + 696 | type_declaration_no_options . '-' '[' ']' + 697 | type_declaration_no_options . "explicit" + 698 | type_declaration_no_options . "const" + 699 | type_declaration_no_options . '-' "const" + 700 | type_declaration_no_options . '&' + 701 | type_declaration_no_options . '-' '&' + 702 | type_declaration_no_options . '#' + 703 | type_declaration_no_options . "implicit" + 704 | type_declaration_no_options . '-' '#' + 705 | type_declaration_no_options . "==" "const" + 706 | type_declaration_no_options . "==" '&' + 707 | type_declaration_no_options . '?' + 711 | type_declaration_no_options . "??" + + "const" shift, and go to state 406 + "implicit" shift, and go to state 407 + "explicit" shift, and go to state 408 + "==" shift, and go to state 409 + "??" shift, and go to state 410 + '?' shift, and go to state 411 + '&' shift, and go to state 412 + '>' shift, and go to state 1435 + '-' shift, and go to state 413 + '[' shift, and go to state 414 + '#' shift, and go to state 415 + + dim_list go to state 416 -State 1341 +State 1343 - 401 func_addr_expr: '@' '@' '<' $@24 optional_function_argument_list . optional_function_type '>' $@25 func_addr_name + 402 func_addr_expr: '@' '@' '<' $@24 optional_function_argument_list . optional_function_type '>' $@25 func_addr_name - ':' shift, and go to state 371 + ':' shift, and go to state 373 $default reduce using rule 124 (optional_function_type) - optional_function_type go to state 1434 + optional_function_type go to state 1436 -State 1342 +State 1344 60 expression_else: "else" expression_block . $default reduce using rule 60 (expression_else) -State 1343 +State 1345 61 expression_else: elif_or_static_elif expr . expression_block expression_else - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - "begin of code block" shift, and go to state 284 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - - expression_block go to state 1435 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + "begin of code block" shift, and go to state 286 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + + expression_block go to state 1437 -State 1344 +State 1346 66 expression_else_one_liner: "else" . $@2 expression_if_one_liner $default reduce using rule 65 ($@2) - $@2 go to state 1436 + $@2 go to state 1438 -State 1345 +State 1347 74 expression_if_then_else: expression_if_one_liner "if" $@3 expr expression_else_one_liner . "end of expression" - "end of expression" shift, and go to state 1437 - - -State 1346 - - 341 expr_full_block_assumed_piped: block_or_lambda $@21 optional_annotation_list optional_capture_list . optional_function_argument_list optional_function_type expression_block - - '(' shift, and go to state 282 - - $default reduce using rule 121 (optional_function_argument_list) - - optional_function_argument_list go to state 1438 - + "end of expression" shift, and go to state 1439 -State 1347 - 389 expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' . ')' +State 1348 - ')' shift, and go to state 1439 + 342 expr_full_block_assumed_piped: block_or_lambda $@21 optional_annotation_list optional_capture_list . optional_function_argument_list optional_function_type expression_block + '(' shift, and go to state 284 -State 1348 + $default reduce using rule 121 (optional_function_argument_list) - 390 expr_named_call: name_in_namespace '(' expr_list ',' '[' . make_struct_fields ']' ')' - 826 make_dim_decl: '[' . expr_list optional_comma ']' - 859 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - 860 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "for" shift, and go to state 704 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "iterator" shift, and go to state 705 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "$f" shift, and go to state 907 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 908 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - expr_list go to state 706 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 707 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_fields go to state 1440 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + optional_function_argument_list go to state 1440 State 1349 - 299 tuple_expansion: tuple_expansion ',' . "name" + 390 expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' . ')' - "name" shift, and go to state 1441 + ')' shift, and go to state 1441 State 1350 - 300 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' . ']' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 302 | "[[" tuple_expansion ']' . ']' optional_ref copy_or_move_or_clone expr "end of expression" - - ']' shift, and go to state 1442 + 391 expr_named_call: name_in_namespace '(' expr_list ',' '[' . make_struct_fields ']' ')' + 827 make_dim_decl: '[' . expr_list optional_comma ']' + 860 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 861 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "for" shift, and go to state 706 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "iterator" shift, and go to state 707 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "$f" shift, and go to state 909 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 910 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + expr_list go to state 708 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 709 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_fields go to state 1442 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1351 - 301 tuple_expansion_variable_declaration: '(' tuple_expansion ')' . ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 303 | '(' tuple_expansion ')' . optional_ref copy_or_move_or_clone expr "end of expression" - - ':' shift, and go to state 1443 - '&' shift, and go to state 387 - - $default reduce using rule 564 (optional_ref) + 300 tuple_expansion: tuple_expansion ',' . "name" - optional_ref go to state 1444 + "name" shift, and go to state 1443 State 1352 - 331 capture_entry: "<-" "name" . + 301 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' . ']' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 303 | "[[" tuple_expansion ']' . ']' optional_ref copy_or_move_or_clone expr "end of expression" - $default reduce using rule 331 (capture_entry) + ']' shift, and go to state 1444 State 1353 - 332 capture_entry: ":=" "name" . + 302 tuple_expansion_variable_declaration: '(' tuple_expansion ')' . ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 304 | '(' tuple_expansion ')' . optional_ref copy_or_move_or_clone expr "end of expression" - $default reduce using rule 332 (capture_entry) + ':' shift, and go to state 1445 + '&' shift, and go to state 389 + + $default reduce using rule 565 (optional_ref) + + optional_ref go to state 1446 State 1354 - 330 capture_entry: '=' "name" . + 332 capture_entry: "<-" "name" . - $default reduce using rule 330 (capture_entry) + $default reduce using rule 332 (capture_entry) State 1355 - 329 capture_entry: '&' "name" . + 333 capture_entry: ":=" "name" . - $default reduce using rule 329 (capture_entry) + $default reduce using rule 333 (capture_entry) State 1356 - 334 capture_list: capture_list ',' . capture_entry - - "<-" shift, and go to state 1210 - ":=" shift, and go to state 1211 - '=' shift, and go to state 1212 - '&' shift, and go to state 1213 + 331 capture_entry: '=' "name" . - capture_entry go to state 1445 + $default reduce using rule 331 (capture_entry) State 1357 - 336 optional_capture_list: "[[" capture_list ']' . ']' + 330 capture_entry: '&' "name" . - ']' shift, and go to state 1446 + $default reduce using rule 330 (capture_entry) State 1358 - 339 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type . block_or_simple_block + 335 capture_list: capture_list ',' . capture_entry - "=>" shift, and go to state 1447 - "begin of code block" shift, and go to state 284 + "<-" shift, and go to state 1212 + ":=" shift, and go to state 1213 + '=' shift, and go to state 1214 + '&' shift, and go to state 1215 - expression_block go to state 1448 - block_or_simple_block go to state 1449 + capture_entry go to state 1447 State 1359 - 472 expr: expr "is" "type" '<' $@28 . type_declaration_no_options '>' $@29 - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 1450 + 337 optional_capture_list: "[[" capture_list ']' . ']' + + ']' shift, and go to state 1448 State 1360 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 512 | expr "is" "$f" '(' expr . ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - ')' shift, and go to state 1451 + 340 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type . block_or_simple_block + + "=>" shift, and go to state 1449 + "begin of code block" shift, and go to state 286 + + expression_block go to state 1450 + block_or_simple_block go to state 1451 State 1361 - 478 expr: expr "as" "type" '<' $@30 . type_declaration '>' $@31 - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 354 - type_declaration go to state 1452 + 473 expr: expr "is" "type" '<' $@28 . type_declaration_no_options '>' $@29 + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 1452 State 1362 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 510 | expr "as" "$f" '(' expr . ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 513 | expr "is" "$f" '(' expr . ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 ')' shift, and go to state 1453 State 1363 - 391 expr_method_call: expr "->" "name" '(' ')' . - - $default reduce using rule 391 (expr_method_call) + 479 expr: expr "as" "type" '<' $@30 . type_declaration '>' $@31 + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 356 + type_declaration go to state 1454 State 1364 - 322 expr_list: expr_list . ',' expr - 392 expr_method_call: expr "->" "name" '(' expr_list . ')' - - ',' shift, and go to state 856 - ')' shift, and go to state 1454 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 511 | expr "as" "$f" '(' expr . ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + ')' shift, and go to state 1455 State 1365 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 507 | expr "?." "$f" '(' expr . ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - ')' shift, and go to state 1455 + 392 expr_method_call: expr "->" "name" '(' ')' . + + $default reduce using rule 392 (expr_method_call) State 1366 - 483 expr: expr '?' "as" "type" '<' . $@32 type_declaration '>' $@33 - - $default reduce using rule 481 ($@32) + 323 expr_list: expr_list . ',' expr + 393 expr_method_call: expr "->" "name" '(' expr_list . ')' - $@32 go to state 1456 + ',' shift, and go to state 858 + ')' shift, and go to state 1456 State 1367 - 511 expr_mtag: expr '?' "as" "$f" '(' . expr ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1457 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 508 | expr "?." "$f" '(' expr . ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + ')' shift, and go to state 1457 State 1368 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 469 | expr '?' expr ':' expr . - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 484 expr: expr '?' "as" "type" '<' . $@32 type_declaration '>' $@33 - $default reduce using rule 469 (expr) + $default reduce using rule 482 ($@32) + + $@32 go to state 1458 State 1369 - 509 expr_mtag: expr '.' "?." "$f" '(' . expr ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 512 expr_mtag: expr '?' "as" "$f" '(' . expr ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1458 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1459 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1370 - 458 expr: expr '.' "?[" expr ']' . - - $default reduce using rule 458 (expr) + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 470 | expr '?' expr ':' expr . + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + + $default reduce using rule 470 (expr) State 1371 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 506 | expr '.' "$f" '(' expr . ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - ')' shift, and go to state 1459 + 510 expr_mtag: expr '.' "?." "$f" '(' . expr ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1460 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1372 - 404 expr_field: expr '.' "name" '(' ')' . + 459 expr: expr '.' "?[" expr ']' . - $default reduce using rule 404 (expr_field) + $default reduce using rule 459 (expr) State 1373 - 322 expr_list: expr_list . ',' expr - 405 expr_field: expr '.' "name" '(' expr_list . ')' - - ',' shift, and go to state 856 - ')' shift, and go to state 1460 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 507 | expr '.' "$f" '(' expr . ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + ')' shift, and go to state 1461 State 1374 - 508 expr_mtag: expr '.' '.' "$f" '(' . expr ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1461 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 405 expr_field: expr '.' "name" '(' ')' . + + $default reduce using rule 405 (expr_field) State 1375 - 456 expr: expr '.' '[' expr ']' . + 323 expr_list: expr_list . ',' expr + 406 expr_field: expr '.' "name" '(' expr_list . ')' - $default reduce using rule 456 (expr) + ',' shift, and go to state 858 + ')' shift, and go to state 1462 State 1376 - 408 expr_field: expr '.' $@26 error $@27 . - - $default reduce using rule 408 (expr_field) + 509 expr_mtag: expr '.' '.' "$f" '(' . expr ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1463 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1377 - 535 struct_variable_declaration_list: struct_variable_declaration_list '[' annotation_list ']' "end of expression" . + 457 expr: expr '.' '[' expr ']' . - $default reduce using rule 535 (struct_variable_declaration_list) + $default reduce using rule 457 (expr) State 1378 - 532 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" . optional_constant $@35 function_declaration_header "end of expression" - - "const" shift, and go to state 1462 + 409 expr_field: expr '.' $@26 error $@27 . - $default reduce using rule 520 (optional_constant) - - optional_constant go to state 1463 + $default reduce using rule 409 (expr_field) State 1379 - 534 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable . optional_override optional_constant $@36 function_declaration_header expression_block + 536 struct_variable_declaration_list: struct_variable_declaration_list '[' annotation_list ']' "end of expression" . - "override" shift, and go to state 1380 - "sealed" shift, and go to state 1381 + $default reduce using rule 536 (struct_variable_declaration_list) - $default reduce using rule 517 (optional_override) - optional_override go to state 1464 +State 1380 + 533 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" . optional_constant $@35 function_declaration_header "end of expression" -State 1380 + "const" shift, and go to state 1464 - 518 optional_override: "override" . + $default reduce using rule 521 (optional_constant) - $default reduce using rule 518 (optional_override) + optional_constant go to state 1465 State 1381 - 519 optional_override: "sealed" . + 535 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable . optional_override optional_constant $@36 function_declaration_header expression_block - $default reduce using rule 519 (optional_override) + "override" shift, and go to state 1382 + "sealed" shift, and go to state 1383 + $default reduce using rule 518 (optional_override) -State 1382 + optional_override go to state 1466 - 527 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override . optional_public_or_private_member_variable variable_declaration - "public" shift, and go to state 1246 - "private" shift, and go to state 1247 +State 1382 - $default reduce using rule 522 (optional_public_or_private_member_variable) + 519 optional_override: "override" . - optional_public_or_private_member_variable go to state 1465 + $default reduce using rule 519 (optional_override) State 1383 - 726 type_declaration_no_options: "block" '<' $@62 optional_function_argument_list optional_function_type '>' $@63 . + 520 optional_override: "sealed" . - $default reduce using rule 726 (type_declaration_no_options) + $default reduce using rule 520 (optional_override) State 1384 - 733 type_declaration_no_options: "function" '<' $@66 optional_function_argument_list optional_function_type '>' $@67 . + 528 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override . optional_public_or_private_member_variable variable_declaration - $default reduce using rule 733 (type_declaration_no_options) + "public" shift, and go to state 1248 + "private" shift, and go to state 1249 + + $default reduce using rule 523 (optional_public_or_private_member_variable) + + optional_public_or_private_member_variable go to state 1467 State 1385 - 740 type_declaration_no_options: "lambda" '<' $@70 optional_function_argument_list optional_function_type '>' $@71 . + 727 type_declaration_no_options: "block" '<' $@62 optional_function_argument_list optional_function_type '>' $@63 . - $default reduce using rule 740 (type_declaration_no_options) + $default reduce using rule 727 (type_declaration_no_options) State 1386 - 252 type_declaration_no_options_list: type_declaration_no_options_list "end of expression" type_declaration . - 748 type_declaration: type_declaration . '|' type_declaration_no_options - 749 | type_declaration . '|' '#' - - '|' shift, and go to state 415 + 734 type_declaration_no_options: "function" '<' $@66 optional_function_argument_list optional_function_type '>' $@67 . - $default reduce using rule 252 (type_declaration_no_options_list) + $default reduce using rule 734 (type_declaration_no_options) State 1387 - 694 type_declaration_no_options: '$' name_in_namespace '<' $@51 type_declaration_no_options_list '>' '(' . optional_expr_list ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - $default reduce using rule 247 (optional_expr_list) + 741 type_declaration_no_options: "lambda" '<' $@70 optional_function_argument_list optional_function_type '>' $@71 . - string_builder go to state 503 - expr_reader go to state 504 - optional_expr_list go to state 1466 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - expr_list go to state 820 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 707 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + $default reduce using rule 741 (type_declaration_no_options) State 1388 - 630 variable_name_with_pos_list: variable_name_with_pos_list ',' "name" "aka" "name" . + 252 type_declaration_no_options_list: type_declaration_no_options_list "end of expression" type_declaration . + 749 type_declaration: type_declaration . '|' type_declaration_no_options + 750 | type_declaration . '|' '#' + + '|' shift, and go to state 417 - $default reduce using rule 630 (variable_name_with_pos_list) + $default reduce using rule 252 (type_declaration_no_options_list) State 1389 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 558 variable_declaration: variable_name_with_pos_list ':' type_declaration copy_or_move expr . - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 695 type_declaration_no_options: '$' name_in_namespace '<' $@51 type_declaration_no_options_list '>' '(' . optional_expr_list ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + $default reduce using rule 247 (optional_expr_list) - $default reduce using rule 558 (variable_declaration) + string_builder go to state 505 + expr_reader go to state 506 + optional_expr_list go to state 1468 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + expr_list go to state 822 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 709 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1390 - 805 make_struct_decl: "struct" '<' $@88 type_declaration_no_options '>' $@89 . '(' use_initializer make_struct_dim ')' + 631 variable_name_with_pos_list: variable_name_with_pos_list ',' "name" "aka" "name" . - '(' shift, and go to state 1467 + $default reduce using rule 631 (variable_name_with_pos_list) State 1391 - 808 make_struct_decl: "class" '<' $@90 type_declaration_no_options '>' $@91 . '(' use_initializer make_struct_dim ')' + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 559 variable_declaration: variable_name_with_pos_list ':' type_declaration copy_or_move expr . + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - '(' shift, and go to state 1468 + $default reduce using rule 559 (variable_declaration) State 1392 - 76 expression_for_loop: "for" $@4 variable_name_with_pos_list "in" expr_list expression_block . + 806 make_struct_decl: "struct" '<' $@88 type_declaration_no_options '>' $@89 . '(' use_initializer make_struct_dim ')' - $default reduce using rule 76 (expression_for_loop) + '(' shift, and go to state 1469 State 1393 - 270 new_type_declaration: '<' $@11 type_declaration '>' $@12 . + 809 make_struct_decl: "class" '<' $@90 type_declaration_no_options '>' $@91 . '(' use_initializer make_struct_dim ')' - $default reduce using rule 270 (new_type_declaration) + '(' shift, and go to state 1470 State 1394 - 275 expr_new: "new" new_type_declaration '(' use_initializer make_struct_single ')' . + 76 expression_for_loop: "for" $@4 variable_name_with_pos_list "in" expr_list expression_block . - $default reduce using rule 275 (expr_new) + $default reduce using rule 76 (expression_for_loop) State 1395 - 320 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" . "name" '>' expr ')' + 271 new_type_declaration: '<' $@11 type_declaration '>' $@12 . - "name" shift, and go to state 1469 + $default reduce using rule 271 (new_type_declaration) State 1396 - 319 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' . expr ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1470 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 276 expr_new: "new" new_type_declaration '(' use_initializer make_struct_single ')' . + + $default reduce using rule 276 (expr_new) State 1397 - 317 expr_type_decl: "type" '<' $@19 type_declaration '>' $@20 . + 321 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" . "name" '>' expr ')' - $default reduce using rule 317 (expr_type_decl) + "name" shift, and go to state 1471 State 1398 - 831 make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options '>' . $@99 '(' use_initializer make_struct_dim ')' - - $default reduce using rule 830 ($@99) - - $@99 go to state 1471 + 320 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' . expr ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1472 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1399 - 834 make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options '>' . $@101 '(' use_initializer make_struct_dim ')' + 318 expr_type_decl: "type" '<' $@19 type_declaration '>' $@20 . - $default reduce using rule 833 ($@101) - - $@101 go to state 1472 + $default reduce using rule 318 (expr_type_decl) State 1400 - 837 make_dim_decl: "array" "variant" '<' $@102 type_declaration_no_options '>' . $@103 '(' make_struct_dim ')' + 832 make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options '>' . $@99 '(' use_initializer make_struct_dim ')' - $default reduce using rule 836 ($@103) + $default reduce using rule 831 ($@99) - $@103 go to state 1473 + $@99 go to state 1473 State 1401 - 841 make_dim_decl: "array" '<' $@104 type_declaration_no_options '>' $@105 . '(' expr_list optional_comma ')' + 835 make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options '>' . $@101 '(' use_initializer make_struct_dim ')' - '(' shift, and go to state 1474 + $default reduce using rule 834 ($@101) + $@101 go to state 1474 -State 1402 - 854 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' . '(' expr_map_tuple_list optional_comma ')' +State 1402 - '(' shift, and go to state 1475 + 838 make_dim_decl: "array" "variant" '<' $@102 type_declaration_no_options '>' . $@103 '(' make_struct_dim ')' + $default reduce using rule 837 ($@103) -State 1403 + $@103 go to state 1475 - 849 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple - 853 make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list . optional_comma ')' - ',' shift, and go to state 935 +State 1403 - $default reduce using rule 857 (optional_comma) + 842 make_dim_decl: "array" '<' $@104 type_declaration_no_options '>' $@105 . '(' expr_list optional_comma ')' - optional_comma go to state 1476 + '(' shift, and go to state 1476 State 1404 - 308 expr_cast: "cast" '<' $@13 type_declaration_no_options '>' $@14 . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1477 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 855 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' . '(' expr_map_tuple_list optional_comma ')' + + '(' shift, and go to state 1477 State 1405 - 311 expr_cast: "upcast" '<' $@15 type_declaration_no_options '>' $@16 . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1478 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 850 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple + 854 make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list . optional_comma ')' + + ',' shift, and go to state 937 + + $default reduce using rule 858 (optional_comma) + + optional_comma go to state 1478 State 1406 - 314 expr_cast: "reinterpret" '<' $@17 type_declaration_no_options '>' $@18 . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 309 expr_cast: "cast" '<' $@13 type_declaration_no_options '>' $@14 . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1479 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1407 - 845 make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options '>' $@107 . '(' expr_list optional_comma ')' - - '(' shift, and go to state 1480 + 312 expr_cast: "upcast" '<' $@15 type_declaration_no_options '>' $@16 . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1480 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1408 - 814 make_struct_decl: "default" '<' $@94 type_declaration_no_options '>' $@95 . use_initializer - - "uninitialized" shift, and go to state 1096 - - $default reduce using rule 795 (use_initializer) - - use_initializer go to state 1481 + 315 expr_cast: "reinterpret" '<' $@17 type_declaration_no_options '>' $@18 . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1481 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1409 - 823 make_tuple_call: "tuple" '<' $@96 type_declaration_no_options '>' $@97 . '(' use_initializer make_struct_dim ')' + 846 make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options '>' $@107 . '(' expr_list optional_comma ')' '(' shift, and go to state 1482 State 1410 - 811 make_struct_decl: "variant" '<' $@92 type_declaration_no_options '>' $@93 . '(' make_struct_dim ')' + 815 make_struct_decl: "default" '<' $@94 type_declaration_no_options '>' $@95 . use_initializer + + "uninitialized" shift, and go to state 1098 + + $default reduce using rule 796 (use_initializer) - '(' shift, and go to state 1483 + use_initializer go to state 1483 State 1411 - 466 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' . ')' - 467 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' . expr ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - ')' shift, and go to state 1484 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1485 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 824 make_tuple_call: "tuple" '<' $@96 type_declaration_no_options '>' $@97 . '(' use_initializer make_struct_dim ')' + '(' shift, and go to state 1484 -State 1412 - 338 expr_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type . block_or_simple_block +State 1412 - "=>" shift, and go to state 1447 - "begin of code block" shift, and go to state 284 + 812 make_struct_decl: "variant" '<' $@92 type_declaration_no_options '>' $@93 . '(' make_struct_dim ')' - expression_block go to state 1448 - block_or_simple_block go to state 1486 + '(' shift, and go to state 1485 State 1413 - 504 expr_mtag: "$c" '(' expr ')' '(' ')' . - - $default reduce using rule 504 (expr_mtag) + 467 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' . ')' + 468 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' . expr ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + ')' shift, and go to state 1486 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1487 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1414 - 322 expr_list: expr_list . ',' expr - 505 expr_mtag: "$c" '(' expr ')' '(' expr_list . ')' + 339 expr_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type . block_or_simple_block + + "=>" shift, and go to state 1449 + "begin of code block" shift, and go to state 286 - ',' shift, and go to state 856 - ')' shift, and go to state 1487 + expression_block go to state 1450 + block_or_simple_block go to state 1488 State 1415 - 861 array_comprehension: "[[" "for" variable_name_with_pos_list "in" expr_list "end of expression" . expr array_comprehension_where ']' ']' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1488 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 505 expr_mtag: "$c" '(' expr ')' '(' ')' . + + $default reduce using rule 505 (expr_mtag) State 1416 - 774 make_struct_fields: "$f" '(' expr ')' . copy_or_move expr - 775 | "$f" '(' expr ')' . ":=" expr - - "<-" shift, and go to state 835 - ":=" shift, and go to state 1489 - '=' shift, and go to state 837 + 323 expr_list: expr_list . ',' expr + 506 expr_mtag: "$c" '(' expr ')' '(' expr_list . ')' - copy_or_move go to state 1490 + ',' shift, and go to state 858 + ')' shift, and go to state 1489 State 1417 - 800 make_struct_decl: "[[" type_declaration_no_options '(' ')' make_struct_dim optional_block . optional_trailing_delim_sqr_sqr - - ";]]" shift, and go to state 1162 - ",]]" shift, and go to state 1163 - ']' shift, and go to state 1164 - - optional_trailing_delim_sqr_sqr go to state 1491 + 862 array_comprehension: "[[" "for" variable_name_with_pos_list "in" expr_list "end of expression" . expr array_comprehension_where ']' ']' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1490 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1418 - 799 make_struct_decl: "[[" type_declaration_no_options '(' ')' optional_block optional_trailing_delim_sqr_sqr . + 775 make_struct_fields: "$f" '(' expr ')' . copy_or_move expr + 776 | "$f" '(' expr ')' . ":=" expr - $default reduce using rule 799 (make_struct_decl) + "<-" shift, and go to state 837 + ":=" shift, and go to state 1491 + '=' shift, and go to state 839 + + copy_or_move go to state 1492 State 1419 - 776 make_struct_fields: make_struct_fields ',' "$f" '(' . expr ')' copy_or_move expr - 777 | make_struct_fields ',' "$f" '(' . expr ')' ":=" expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1492 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 801 make_struct_decl: "[[" type_declaration_no_options '(' ')' make_struct_dim optional_block . optional_trailing_delim_sqr_sqr + + ";]]" shift, and go to state 1164 + ",]]" shift, and go to state 1165 + ']' shift, and go to state 1166 + + optional_trailing_delim_sqr_sqr go to state 1493 State 1420 - 773 make_struct_fields: make_struct_fields ',' "name" ":=" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1493 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 800 make_struct_decl: "[[" type_declaration_no_options '(' ')' optional_block optional_trailing_delim_sqr_sqr . + + $default reduce using rule 800 (make_struct_decl) State 1421 - 772 make_struct_fields: make_struct_fields ',' "name" copy_or_move . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 777 make_struct_fields: make_struct_fields ',' "$f" '(' . expr ')' copy_or_move expr + 778 | make_struct_fields ',' "$f" '(' . expr ')' ":=" expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1494 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1422 - 862 array_comprehension: "[{" "for" variable_name_with_pos_list "in" expr_list "end of expression" . expr array_comprehension_where "end of code block" ']' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 774 make_struct_fields: make_struct_fields ',' "name" ":=" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1495 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1423 - 802 make_struct_decl: "[{" type_declaration_no_options '(' ')' make_struct_dim optional_block . optional_trailing_delim_cur_sqr - - "end of code block" shift, and go to state 1325 - ";}]" shift, and go to state 1326 - ",}]" shift, and go to state 1327 - - optional_trailing_delim_cur_sqr go to state 1496 + 773 make_struct_fields: make_struct_fields ',' "name" copy_or_move . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1496 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1424 - 792 optional_trailing_delim_cur_sqr: "end of code block" ']' . - - $default reduce using rule 792 (optional_trailing_delim_cur_sqr) + 863 array_comprehension: "[{" "for" variable_name_with_pos_list "in" expr_list "end of expression" . expr array_comprehension_where "end of code block" ']' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1497 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1425 - 864 array_comprehension: "{{" "for" variable_name_with_pos_list "in" expr_list "end of expression" . make_map_tuple array_comprehension_where "end of code block" "end of code block" - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 688 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_map_tuple go to state 1497 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 - + 803 make_struct_decl: "[{" type_declaration_no_options '(' ')' make_struct_dim optional_block . optional_trailing_delim_cur_sqr -State 1426 + "end of code block" shift, and go to state 1327 + ";}]" shift, and go to state 1328 + ",}]" shift, and go to state 1329 - 255 expression_keyword: "keyword" '<' $@7 type_declaration_no_options_list '>' $@8 . expr + optional_trailing_delim_cur_sqr go to state 1498 - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1498 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 +State 1426 -State 1427 + 793 optional_trailing_delim_cur_sqr: "end of code block" ']' . - 258 expression_keyword: "type function" '<' $@9 type_declaration_no_options_list '>' $@10 . optional_expr_list_in_braces + $default reduce using rule 793 (optional_trailing_delim_cur_sqr) - '(' shift, and go to state 1499 - '(' [reduce using rule 249 (optional_expr_list_in_braces)] - $default reduce using rule 249 (optional_expr_list_in_braces) +State 1427 - optional_expr_list_in_braces go to state 1500 + 865 array_comprehension: "{{" "for" variable_name_with_pos_list "in" expr_list "end of expression" . make_map_tuple array_comprehension_where "end of code block" "end of code block" + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 690 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_map_tuple go to state 1499 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1428 - 863 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" . make_map_tuple array_comprehension_where "end of code block" - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 255 expression_keyword: "keyword" '<' $@7 type_declaration_no_options_list '>' $@8 . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 688 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_map_tuple go to state 1501 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1500 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1429 - 859 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" . expr array_comprehension_where ']' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1502 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 258 expression_keyword: "type function" '<' $@9 type_declaration_no_options_list '>' $@10 . optional_expr_list_in_braces + '(' shift, and go to state 1501 -State 1430 + '(' [reduce using rule 249 (optional_expr_list_in_braces)] + $default reduce using rule 249 (optional_expr_list_in_braces) - 322 expr_list: expr_list . ',' expr - 860 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list . "end of expression" expr array_comprehension_where ']' + optional_expr_list_in_braces go to state 1502 - "end of expression" shift, and go to state 1503 - ',' shift, and go to state 856 +State 1430 -State 1431 + 864 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" . make_map_tuple array_comprehension_where "end of code block" + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 690 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_map_tuple go to state 1503 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 - 394 func_addr_name: "$i" '(' expr ')' . - $default reduce using rule 394 (func_addr_name) +State 1431 + + 860 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" . expr array_comprehension_where ']' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1504 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1432 - 513 expr_mtag: '@' '@' "$c" '(' expr ')' . + 323 expr_list: expr_list . ',' expr + 861 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list . "end of expression" expr array_comprehension_where ']' - $default reduce using rule 513 (expr_mtag) + "end of expression" shift, and go to state 1505 + ',' shift, and go to state 858 State 1433 - 398 func_addr_expr: '@' '@' '<' $@22 type_declaration_no_options '>' . $@23 func_addr_name + 395 func_addr_name: "$i" '(' expr ')' . - $default reduce using rule 397 ($@23) - - $@23 go to state 1504 + $default reduce using rule 395 (func_addr_name) State 1434 - 401 func_addr_expr: '@' '@' '<' $@24 optional_function_argument_list optional_function_type . '>' $@25 func_addr_name + 514 expr_mtag: '@' '@' "$c" '(' expr ')' . - '>' shift, and go to state 1505 + $default reduce using rule 514 (expr_mtag) State 1435 - 61 expression_else: elif_or_static_elif expr expression_block . expression_else - - "else" shift, and go to state 1196 - "elif" shift, and go to state 1197 - "static_elif" shift, and go to state 1198 + 399 func_addr_expr: '@' '@' '<' $@22 type_declaration_no_options '>' . $@23 func_addr_name - $default reduce using rule 59 (expression_else) + $default reduce using rule 398 ($@23) - elif_or_static_elif go to state 1199 - expression_else go to state 1506 + $@23 go to state 1506 State 1436 - 66 expression_else_one_liner: "else" $@2 . expression_if_one_liner + 402 func_addr_expr: '@' '@' '<' $@24 optional_function_argument_list optional_function_type . '>' $@25 func_addr_name - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "return" shift, and go to state 1507 - "null" shift, and go to state 442 - "break" shift, and go to state 443 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "continue" shift, and go to state 453 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "yield" shift, and go to state 1508 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_if_one_liner go to state 1509 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expression_break go to state 1510 - expression_continue go to state 1511 - expression_return_no_pipe go to state 1512 - expression_yield_no_pipe go to state 1513 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1514 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '>' shift, and go to state 1507 State 1437 - 74 expression_if_then_else: expression_if_one_liner "if" $@3 expr expression_else_one_liner "end of expression" . + 61 expression_else: elif_or_static_elif expr expression_block . expression_else - $default reduce using rule 74 (expression_if_then_else) + "else" shift, and go to state 1198 + "elif" shift, and go to state 1199 + "static_elif" shift, and go to state 1200 + $default reduce using rule 59 (expression_else) -State 1438 + elif_or_static_elif go to state 1201 + expression_else go to state 1508 - 341 expr_full_block_assumed_piped: block_or_lambda $@21 optional_annotation_list optional_capture_list optional_function_argument_list . optional_function_type expression_block - ':' shift, and go to state 371 +State 1438 - $default reduce using rule 124 (optional_function_type) + 66 expression_else_one_liner: "else" $@2 . expression_if_one_liner - optional_function_type go to state 1515 + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "return" shift, and go to state 1509 + "null" shift, and go to state 444 + "break" shift, and go to state 445 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "continue" shift, and go to state 455 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "yield" shift, and go to state 1510 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_if_one_liner go to state 1511 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expression_break go to state 1512 + expression_continue go to state 1513 + expression_return_no_pipe go to state 1514 + expression_yield_no_pipe go to state 1515 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1516 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1439 - 389 expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' ')' . + 74 expression_if_then_else: expression_if_one_liner "if" $@3 expr expression_else_one_liner "end of expression" . - $default reduce using rule 389 (expr_named_call) + $default reduce using rule 74 (expression_if_then_else) State 1440 - 390 expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields . ']' ')' - 772 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr - 773 | make_struct_fields . ',' "name" ":=" expr - 776 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr - 777 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr + 342 expr_full_block_assumed_piped: block_or_lambda $@21 optional_annotation_list optional_capture_list optional_function_argument_list . optional_function_type expression_block - ',' shift, and go to state 1159 - ']' shift, and go to state 1516 + ':' shift, and go to state 373 + $default reduce using rule 124 (optional_function_type) -State 1441 + optional_function_type go to state 1517 - 299 tuple_expansion: tuple_expansion ',' "name" . - $default reduce using rule 299 (tuple_expansion) +State 1441 + 390 expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' ')' . -State 1442 + $default reduce using rule 390 (expr_named_call) - 300 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' . ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 302 | "[[" tuple_expansion ']' ']' . optional_ref copy_or_move_or_clone expr "end of expression" - ':' shift, and go to state 1517 - '&' shift, and go to state 387 +State 1442 - $default reduce using rule 564 (optional_ref) + 391 expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields . ']' ')' + 773 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr + 774 | make_struct_fields . ',' "name" ":=" expr + 777 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr + 778 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr - optional_ref go to state 1518 + ',' shift, and go to state 1161 + ']' shift, and go to state 1518 State 1443 - 301 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' . type_declaration_no_options copy_or_move_or_clone expr "end of expression" - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 1519 + 300 tuple_expansion: tuple_expansion ',' "name" . + + $default reduce using rule 300 (tuple_expansion) State 1444 - 303 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref . copy_or_move_or_clone expr "end of expression" + 301 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' . ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 303 | "[[" tuple_expansion ']' ']' . optional_ref copy_or_move_or_clone expr "end of expression" + + ':' shift, and go to state 1519 + '&' shift, and go to state 389 - "<-" shift, and go to state 569 - ":=" shift, and go to state 570 - '=' shift, and go to state 571 + $default reduce using rule 565 (optional_ref) - copy_or_move_or_clone go to state 1520 + optional_ref go to state 1520 State 1445 - 334 capture_list: capture_list ',' capture_entry . - - $default reduce using rule 334 (capture_list) + 302 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' . type_declaration_no_options copy_or_move_or_clone expr "end of expression" + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 1521 State 1446 - 336 optional_capture_list: "[[" capture_list ']' ']' . + 304 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref . copy_or_move_or_clone expr "end of expression" - $default reduce using rule 336 (optional_capture_list) + "<-" shift, and go to state 571 + ":=" shift, and go to state 572 + '=' shift, and go to state 573 + + copy_or_move_or_clone go to state 1522 State 1447 - 324 block_or_simple_block: "=>" . expr - 325 | "=>" . "<-" expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "<-" shift, and go to state 1521 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1522 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 335 capture_list: capture_list ',' capture_entry . + + $default reduce using rule 335 (capture_list) State 1448 - 323 block_or_simple_block: expression_block . + 337 optional_capture_list: "[[" capture_list ']' ']' . - $default reduce using rule 323 (block_or_simple_block) + $default reduce using rule 337 (optional_capture_list) State 1449 - 339 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block . - - $default reduce using rule 339 (expr_full_block) + 325 block_or_simple_block: "=>" . expr + 326 | "=>" . "<-" expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "<-" shift, and go to state 1523 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1524 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1450 - 472 expr: expr "is" "type" '<' $@28 type_declaration_no_options . '>' $@29 - 686 type_declaration_no_options: type_declaration_no_options . dim_list - 687 | type_declaration_no_options . '[' ']' - 695 | type_declaration_no_options . '-' '[' ']' - 696 | type_declaration_no_options . "explicit" - 697 | type_declaration_no_options . "const" - 698 | type_declaration_no_options . '-' "const" - 699 | type_declaration_no_options . '&' - 700 | type_declaration_no_options . '-' '&' - 701 | type_declaration_no_options . '#' - 702 | type_declaration_no_options . "implicit" - 703 | type_declaration_no_options . '-' '#' - 704 | type_declaration_no_options . "==" "const" - 705 | type_declaration_no_options . "==" '&' - 706 | type_declaration_no_options . '?' - 710 | type_declaration_no_options . "??" - - "const" shift, and go to state 404 - "implicit" shift, and go to state 405 - "explicit" shift, and go to state 406 - "==" shift, and go to state 407 - "??" shift, and go to state 408 - '?' shift, and go to state 409 - '&' shift, and go to state 410 - '>' shift, and go to state 1523 - '-' shift, and go to state 411 - '[' shift, and go to state 412 - '#' shift, and go to state 413 - - dim_list go to state 414 + 324 block_or_simple_block: expression_block . + + $default reduce using rule 324 (block_or_simple_block) State 1451 - 512 expr_mtag: expr "is" "$f" '(' expr ')' . + 340 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block . - $default reduce using rule 512 (expr_mtag) + $default reduce using rule 340 (expr_full_block) State 1452 - 478 expr: expr "as" "type" '<' $@30 type_declaration . '>' $@31 - 748 type_declaration: type_declaration . '|' type_declaration_no_options - 749 | type_declaration . '|' '#' - - '|' shift, and go to state 415 - '>' shift, and go to state 1524 + 473 expr: expr "is" "type" '<' $@28 type_declaration_no_options . '>' $@29 + 687 type_declaration_no_options: type_declaration_no_options . dim_list + 688 | type_declaration_no_options . '[' ']' + 696 | type_declaration_no_options . '-' '[' ']' + 697 | type_declaration_no_options . "explicit" + 698 | type_declaration_no_options . "const" + 699 | type_declaration_no_options . '-' "const" + 700 | type_declaration_no_options . '&' + 701 | type_declaration_no_options . '-' '&' + 702 | type_declaration_no_options . '#' + 703 | type_declaration_no_options . "implicit" + 704 | type_declaration_no_options . '-' '#' + 705 | type_declaration_no_options . "==" "const" + 706 | type_declaration_no_options . "==" '&' + 707 | type_declaration_no_options . '?' + 711 | type_declaration_no_options . "??" + + "const" shift, and go to state 406 + "implicit" shift, and go to state 407 + "explicit" shift, and go to state 408 + "==" shift, and go to state 409 + "??" shift, and go to state 410 + '?' shift, and go to state 411 + '&' shift, and go to state 412 + '>' shift, and go to state 1525 + '-' shift, and go to state 413 + '[' shift, and go to state 414 + '#' shift, and go to state 415 + + dim_list go to state 416 State 1453 - 510 expr_mtag: expr "as" "$f" '(' expr ')' . + 513 expr_mtag: expr "is" "$f" '(' expr ')' . - $default reduce using rule 510 (expr_mtag) + $default reduce using rule 513 (expr_mtag) State 1454 - 392 expr_method_call: expr "->" "name" '(' expr_list ')' . + 479 expr: expr "as" "type" '<' $@30 type_declaration . '>' $@31 + 749 type_declaration: type_declaration . '|' type_declaration_no_options + 750 | type_declaration . '|' '#' - $default reduce using rule 392 (expr_method_call) + '|' shift, and go to state 417 + '>' shift, and go to state 1526 State 1455 - 507 expr_mtag: expr "?." "$f" '(' expr ')' . + 511 expr_mtag: expr "as" "$f" '(' expr ')' . - $default reduce using rule 507 (expr_mtag) + $default reduce using rule 511 (expr_mtag) State 1456 - 483 expr: expr '?' "as" "type" '<' $@32 . type_declaration '>' $@33 - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 354 - type_declaration go to state 1525 + 393 expr_method_call: expr "->" "name" '(' expr_list ')' . + + $default reduce using rule 393 (expr_method_call) State 1457 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 511 | expr '?' "as" "$f" '(' expr . ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - ')' shift, and go to state 1526 + 508 expr_mtag: expr "?." "$f" '(' expr ')' . + + $default reduce using rule 508 (expr_mtag) State 1458 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 509 | expr '.' "?." "$f" '(' expr . ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - ')' shift, and go to state 1527 + 484 expr: expr '?' "as" "type" '<' $@32 . type_declaration '>' $@33 + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 356 + type_declaration go to state 1527 State 1459 - 506 expr_mtag: expr '.' "$f" '(' expr ')' . - - $default reduce using rule 506 (expr_mtag) + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 512 | expr '?' "as" "$f" '(' expr . ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + ')' shift, and go to state 1528 State 1460 - 405 expr_field: expr '.' "name" '(' expr_list ')' . - - $default reduce using rule 405 (expr_field) + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 510 | expr '.' "?." "$f" '(' expr . ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + ')' shift, and go to state 1529 State 1461 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 508 | expr '.' '.' "$f" '(' expr . ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - ')' shift, and go to state 1528 + 507 expr_mtag: expr '.' "$f" '(' expr ')' . + + $default reduce using rule 507 (expr_mtag) State 1462 - 521 optional_constant: "const" . + 406 expr_field: expr '.' "name" '(' expr_list ')' . - $default reduce using rule 521 (optional_constant) + $default reduce using rule 406 (expr_field) State 1463 - 532 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant . $@35 function_declaration_header "end of expression" - - $default reduce using rule 531 ($@35) - - $@35 go to state 1529 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 509 | expr '.' '.' "$f" '(' expr . ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + ')' shift, and go to state 1530 State 1464 - 534 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override . optional_constant $@36 function_declaration_header expression_block - - "const" shift, and go to state 1462 - - $default reduce using rule 520 (optional_constant) + 522 optional_constant: "const" . - optional_constant go to state 1530 + $default reduce using rule 522 (optional_constant) State 1465 - 527 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable . variable_declaration + 533 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant . $@35 function_declaration_header "end of expression" - "$i" shift, and go to state 616 - "name" shift, and go to state 617 + $default reduce using rule 532 ($@35) - variable_declaration go to state 1531 - variable_name_with_pos_list go to state 619 + $@35 go to state 1531 State 1466 - 694 type_declaration_no_options: '$' name_in_namespace '<' $@51 type_declaration_no_options_list '>' '(' optional_expr_list . ')' + 535 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override . optional_constant $@36 function_declaration_header expression_block - ')' shift, and go to state 1532 + "const" shift, and go to state 1464 + $default reduce using rule 521 (optional_constant) -State 1467 + optional_constant go to state 1532 - 805 make_struct_decl: "struct" '<' $@88 type_declaration_no_options '>' $@89 '(' . use_initializer make_struct_dim ')' - "uninitialized" shift, and go to state 1096 +State 1467 + + 528 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable . variable_declaration - $default reduce using rule 795 (use_initializer) + "$i" shift, and go to state 618 + "name" shift, and go to state 619 - use_initializer go to state 1533 + variable_declaration go to state 1533 + variable_name_with_pos_list go to state 621 State 1468 - 808 make_struct_decl: "class" '<' $@90 type_declaration_no_options '>' $@91 '(' . use_initializer make_struct_dim ')' + 695 type_declaration_no_options: '$' name_in_namespace '<' $@51 type_declaration_no_options_list '>' '(' optional_expr_list . ')' - "uninitialized" shift, and go to state 1096 + ')' shift, and go to state 1534 - $default reduce using rule 795 (use_initializer) - use_initializer go to state 1534 +State 1469 + 806 make_struct_decl: "struct" '<' $@88 type_declaration_no_options '>' $@89 '(' . use_initializer make_struct_dim ')' -State 1469 + "uninitialized" shift, and go to state 1098 - 320 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" . '>' expr ')' + $default reduce using rule 796 (use_initializer) - '>' shift, and go to state 1535 + use_initializer go to state 1535 State 1470 - 319 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' expr . ')' - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - ')' shift, and go to state 1536 + 809 make_struct_decl: "class" '<' $@90 type_declaration_no_options '>' $@91 '(' . use_initializer make_struct_dim ')' + + "uninitialized" shift, and go to state 1098 + + $default reduce using rule 796 (use_initializer) + + use_initializer go to state 1536 State 1471 - 831 make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options '>' $@99 . '(' use_initializer make_struct_dim ')' + 321 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" . '>' expr ')' - '(' shift, and go to state 1537 + '>' shift, and go to state 1537 State 1472 - 834 make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options '>' $@101 . '(' use_initializer make_struct_dim ')' - - '(' shift, and go to state 1538 + 320 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' expr . ')' + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + ')' shift, and go to state 1538 State 1473 - 837 make_dim_decl: "array" "variant" '<' $@102 type_declaration_no_options '>' $@103 . '(' make_struct_dim ')' + 832 make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options '>' $@99 . '(' use_initializer make_struct_dim ')' '(' shift, and go to state 1539 State 1474 - 841 make_dim_decl: "array" '<' $@104 type_declaration_no_options '>' $@105 '(' . expr_list optional_comma ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - expr_list go to state 1540 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 707 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 835 make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options '>' $@101 . '(' use_initializer make_struct_dim ')' + + '(' shift, and go to state 1540 State 1475 - 854 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' . expr_map_tuple_list optional_comma ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 688 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_map_tuple go to state 696 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - expr_map_tuple_list go to state 1541 - make_table_decl go to state 552 - array_comprehension go to state 553 + 838 make_dim_decl: "array" "variant" '<' $@102 type_declaration_no_options '>' $@103 . '(' make_struct_dim ')' + '(' shift, and go to state 1541 -State 1476 - 853 make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma . ')' +State 1476 - ')' shift, and go to state 1542 + 842 make_dim_decl: "array" '<' $@104 type_declaration_no_options '>' $@105 '(' . expr_list optional_comma ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + expr_list go to state 1542 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 709 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1477 - 308 expr_cast: "cast" '<' $@13 type_declaration_no_options '>' $@14 expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - - $default reduce using rule 308 (expr_cast) + 855 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' . expr_map_tuple_list optional_comma ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 690 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_map_tuple go to state 698 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + expr_map_tuple_list go to state 1543 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1478 - 311 expr_cast: "upcast" '<' $@15 type_declaration_no_options '>' $@16 expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - - $default reduce using rule 311 (expr_cast) + 854 make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma . ')' + + ')' shift, and go to state 1544 State 1479 - 314 expr_cast: "reinterpret" '<' $@17 type_declaration_no_options '>' $@18 expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - - $default reduce using rule 314 (expr_cast) + 309 expr_cast: "cast" '<' $@13 type_declaration_no_options '>' $@14 expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + + $default reduce using rule 309 (expr_cast) State 1480 - 845 make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options '>' $@107 '(' . expr_list optional_comma ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - expr_list go to state 1543 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 707 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 312 expr_cast: "upcast" '<' $@15 type_declaration_no_options '>' $@16 expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + + $default reduce using rule 312 (expr_cast) State 1481 - 814 make_struct_decl: "default" '<' $@94 type_declaration_no_options '>' $@95 use_initializer . - - $default reduce using rule 814 (make_struct_decl) + 315 expr_cast: "reinterpret" '<' $@17 type_declaration_no_options '>' $@18 expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + + $default reduce using rule 315 (expr_cast) State 1482 - 823 make_tuple_call: "tuple" '<' $@96 type_declaration_no_options '>' $@97 '(' . use_initializer make_struct_dim ')' + 846 make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options '>' $@107 '(' . expr_list optional_comma ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + expr_list go to state 1545 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 709 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 - "uninitialized" shift, and go to state 1096 - $default reduce using rule 795 (use_initializer) +State 1483 - use_initializer go to state 1544 + 815 make_struct_decl: "default" '<' $@94 type_declaration_no_options '>' $@95 use_initializer . + $default reduce using rule 815 (make_struct_decl) -State 1483 - 811 make_struct_decl: "variant" '<' $@92 type_declaration_no_options '>' $@93 '(' . make_struct_dim ')' +State 1484 - "$f" shift, and go to state 907 - "name" shift, and go to state 1281 + 824 make_tuple_call: "tuple" '<' $@96 type_declaration_no_options '>' $@97 '(' . use_initializer make_struct_dim ')' - make_struct_fields go to state 913 - make_struct_dim go to state 1545 + "uninitialized" shift, and go to state 1098 + $default reduce using rule 796 (use_initializer) -State 1484 + use_initializer go to state 1546 - 466 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' ')' . - $default reduce using rule 466 (expr) +State 1485 + 812 make_struct_decl: "variant" '<' $@92 type_declaration_no_options '>' $@93 '(' . make_struct_dim ')' -State 1485 + "$f" shift, and go to state 909 + "name" shift, and go to state 1283 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 467 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr . ')' - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - ')' shift, and go to state 1546 + make_struct_fields go to state 915 + make_struct_dim go to state 1547 State 1486 - 338 expr_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block . + 467 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' ')' . - $default reduce using rule 338 (expr_block) + $default reduce using rule 467 (expr) State 1487 - 505 expr_mtag: "$c" '(' expr ')' '(' expr_list ')' . - - $default reduce using rule 505 (expr_mtag) + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 468 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr . ')' + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + ')' shift, and go to state 1548 State 1488 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 861 array_comprehension: "[[" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr . array_comprehension_where ']' ']' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - "end of expression" shift, and go to state 1547 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - - $default reduce using rule 855 (array_comprehension_where) - - array_comprehension_where go to state 1548 + 339 expr_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block . + + $default reduce using rule 339 (expr_block) State 1489 - 775 make_struct_fields: "$f" '(' expr ')' ":=" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1549 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 506 expr_mtag: "$c" '(' expr ')' '(' expr_list ')' . + + $default reduce using rule 506 (expr_mtag) State 1490 - 774 make_struct_fields: "$f" '(' expr ')' copy_or_move . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1550 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 862 array_comprehension: "[[" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr . array_comprehension_where ']' ']' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + "end of expression" shift, and go to state 1549 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + $default reduce using rule 856 (array_comprehension_where) -State 1491 + array_comprehension_where go to state 1550 - 800 make_struct_decl: "[[" type_declaration_no_options '(' ')' make_struct_dim optional_block optional_trailing_delim_sqr_sqr . - $default reduce using rule 800 (make_struct_decl) +State 1491 + + 776 make_struct_fields: "$f" '(' expr ')' ":=" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1551 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1492 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 776 make_struct_fields: make_struct_fields ',' "$f" '(' expr . ')' copy_or_move expr - 777 | make_struct_fields ',' "$f" '(' expr . ')' ":=" expr - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - ')' shift, and go to state 1551 + 775 make_struct_fields: "$f" '(' expr ')' copy_or_move . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1552 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1493 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 773 make_struct_fields: make_struct_fields ',' "name" ":=" expr . - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 801 make_struct_decl: "[[" type_declaration_no_options '(' ')' make_struct_dim optional_block optional_trailing_delim_sqr_sqr . - $default reduce using rule 773 (make_struct_fields) + $default reduce using rule 801 (make_struct_decl) State 1494 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 772 make_struct_fields: make_struct_fields ',' "name" copy_or_move expr . - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - - $default reduce using rule 772 (make_struct_fields) + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 777 make_struct_fields: make_struct_fields ',' "$f" '(' expr . ')' copy_or_move expr + 778 | make_struct_fields ',' "$f" '(' expr . ')' ":=" expr + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + ')' shift, and go to state 1553 State 1495 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 862 array_comprehension: "[{" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr . array_comprehension_where "end of code block" ']' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - "end of expression" shift, and go to state 1547 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - - $default reduce using rule 855 (array_comprehension_where) - - array_comprehension_where go to state 1552 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 774 make_struct_fields: make_struct_fields ',' "name" ":=" expr . + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + + $default reduce using rule 774 (make_struct_fields) State 1496 - 802 make_struct_decl: "[{" type_declaration_no_options '(' ')' make_struct_dim optional_block optional_trailing_delim_cur_sqr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 773 make_struct_fields: make_struct_fields ',' "name" copy_or_move expr . + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 802 (make_struct_decl) + $default reduce using rule 773 (make_struct_fields) State 1497 - 864 array_comprehension: "{{" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple . array_comprehension_where "end of code block" "end of code block" - - "end of expression" shift, and go to state 1547 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 863 array_comprehension: "[{" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr . array_comprehension_where "end of code block" ']' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + "end of expression" shift, and go to state 1549 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 855 (array_comprehension_where) + $default reduce using rule 856 (array_comprehension_where) - array_comprehension_where go to state 1553 + array_comprehension_where go to state 1554 State 1498 + 803 make_struct_decl: "[{" type_declaration_no_options '(' ')' make_struct_dim optional_block optional_trailing_delim_cur_sqr . + + $default reduce using rule 803 (make_struct_decl) + + +State 1499 + + 865 array_comprehension: "{{" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple . array_comprehension_where "end of code block" "end of code block" + + "end of expression" shift, and go to state 1549 + + $default reduce using rule 856 (array_comprehension_where) + + array_comprehension_where go to state 1555 + + +State 1500 + 255 expression_keyword: "keyword" '<' $@7 type_declaration_no_options_list '>' $@8 expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 $default reduce using rule 255 (expression_keyword) -State 1499 +State 1501 250 optional_expr_list_in_braces: '(' . optional_expr_list ')' - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 $default reduce using rule 247 (optional_expr_list) - string_builder go to state 503 - expr_reader go to state 504 - optional_expr_list go to state 1554 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - expr_list go to state 820 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 707 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + string_builder go to state 505 + expr_reader go to state 506 + optional_expr_list go to state 1556 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + expr_list go to state 822 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 709 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 -State 1500 +State 1502 258 expression_keyword: "type function" '<' $@9 type_declaration_no_options_list '>' $@10 optional_expr_list_in_braces . $default reduce using rule 258 (expression_keyword) -State 1501 +State 1503 - 863 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple . array_comprehension_where "end of code block" + 864 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple . array_comprehension_where "end of code block" - "end of expression" shift, and go to state 1547 + "end of expression" shift, and go to state 1549 - $default reduce using rule 855 (array_comprehension_where) + $default reduce using rule 856 (array_comprehension_where) - array_comprehension_where go to state 1555 + array_comprehension_where go to state 1557 -State 1502 +State 1504 + + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 860 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr . array_comprehension_where ']' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + "end of expression" shift, and go to state 1549 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 859 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr . array_comprehension_where ']' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - "end of expression" shift, and go to state 1547 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - - $default reduce using rule 855 (array_comprehension_where) - - array_comprehension_where go to state 1556 + $default reduce using rule 856 (array_comprehension_where) + array_comprehension_where go to state 1558 -State 1503 - 860 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" . expr array_comprehension_where ']' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 +State 1505 + + 861 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" . expr array_comprehension_where ']' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1557 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1559 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 -State 1504 +State 1506 - 398 func_addr_expr: '@' '@' '<' $@22 type_declaration_no_options '>' $@23 . func_addr_name + 399 func_addr_expr: '@' '@' '<' $@22 type_declaration_no_options '>' $@23 . func_addr_name - "$i" shift, and go to state 943 - "name" shift, and go to state 58 + "::" shift, and go to state 58 + "$i" shift, and go to state 945 + "name" shift, and go to state 59 - name_in_namespace go to state 946 - func_addr_name go to state 1558 + name_in_namespace go to state 948 + func_addr_name go to state 1560 -State 1505 +State 1507 - 401 func_addr_expr: '@' '@' '<' $@24 optional_function_argument_list optional_function_type '>' . $@25 func_addr_name + 402 func_addr_expr: '@' '@' '<' $@24 optional_function_argument_list optional_function_type '>' . $@25 func_addr_name - $default reduce using rule 400 ($@25) + $default reduce using rule 401 ($@25) - $@25 go to state 1559 + $@25 go to state 1561 -State 1506 +State 1508 61 expression_else: elif_or_static_elif expr expression_block expression_else . $default reduce using rule 61 (expression_else) -State 1507 +State 1509 - 279 expression_return_no_pipe: "return" . - 280 | "return" . expr_list - 281 | "return" . "<-" expr_list - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "<-" shift, and go to state 1560 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 280 expression_return_no_pipe: "return" . + 281 | "return" . expr_list + 282 | "return" . "<-" expr_list + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "<-" shift, and go to state 1562 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - $default reduce using rule 279 (expression_return_no_pipe) - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - expr_list go to state 638 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 707 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + $default reduce using rule 280 (expression_return_no_pipe) -State 1508 + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + expr_list go to state 640 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 709 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 - 285 expression_yield_no_pipe: "yield" . expr - 286 | "yield" . "<-" expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "<-" shift, and go to state 1561 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + +State 1510 + + 286 expression_yield_no_pipe: "yield" . expr + 287 | "yield" . "<-" expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "<-" shift, and go to state 1563 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1562 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1564 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 -State 1509 +State 1511 66 expression_else_one_liner: "else" $@2 expression_if_one_liner . $default reduce using rule 66 (expression_else_one_liner) -State 1510 +State 1512 70 expression_if_one_liner: expression_break . $default reduce using rule 70 (expression_if_one_liner) -State 1511 +State 1513 71 expression_if_one_liner: expression_continue . $default reduce using rule 71 (expression_if_one_liner) -State 1512 +State 1514 68 expression_if_one_liner: expression_return_no_pipe . $default reduce using rule 68 (expression_if_one_liner) -State 1513 +State 1515 69 expression_if_one_liner: expression_yield_no_pipe . $default reduce using rule 69 (expression_if_one_liner) -State 1514 +State 1516 67 expression_if_one_liner: expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 $default reduce using rule 67 (expression_if_one_liner) -State 1515 - - 341 expr_full_block_assumed_piped: block_or_lambda $@21 optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type . expression_block - - "begin of code block" shift, and go to state 284 - - expression_block go to state 1563 - - -State 1516 - - 390 expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' . ')' - - ')' shift, and go to state 1564 +State 1517 + 342 expr_full_block_assumed_piped: block_or_lambda $@21 optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type . expression_block -State 1517 + "begin of code block" shift, and go to state 286 - 300 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' ':' . type_declaration_no_options copy_or_move_or_clone expr "end of expression" - - "type" shift, and go to state 308 - "array" shift, and go to state 309 - "table" shift, and go to state 310 - "typedecl" shift, and go to state 311 - "iterator" shift, and go to state 312 - "smart_ptr" shift, and go to state 313 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "auto" shift, and go to state 317 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 323 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "block" shift, and go to state 335 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "function" shift, and go to state 339 - "lambda" shift, and go to state 340 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 345 - "variant" shift, and go to state 346 - "$t" shift, and go to state 347 - "name" shift, and go to state 58 - '$' shift, and go to state 348 - - name_in_namespace go to state 349 - basic_type_declaration go to state 350 - structure_type_declaration go to state 351 - auto_type_declaration go to state 352 - bitfield_type_declaration go to state 353 - type_declaration_no_options go to state 1565 + expression_block go to state 1565 State 1518 - 302 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' optional_ref . copy_or_move_or_clone expr "end of expression" + 391 expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' . ')' - "<-" shift, and go to state 569 - ":=" shift, and go to state 570 - '=' shift, and go to state 571 - - copy_or_move_or_clone go to state 1566 + ')' shift, and go to state 1566 State 1519 - 301 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options . copy_or_move_or_clone expr "end of expression" - 686 type_declaration_no_options: type_declaration_no_options . dim_list - 687 | type_declaration_no_options . '[' ']' - 695 | type_declaration_no_options . '-' '[' ']' - 696 | type_declaration_no_options . "explicit" - 697 | type_declaration_no_options . "const" - 698 | type_declaration_no_options . '-' "const" - 699 | type_declaration_no_options . '&' - 700 | type_declaration_no_options . '-' '&' - 701 | type_declaration_no_options . '#' - 702 | type_declaration_no_options . "implicit" - 703 | type_declaration_no_options . '-' '#' - 704 | type_declaration_no_options . "==" "const" - 705 | type_declaration_no_options . "==" '&' - 706 | type_declaration_no_options . '?' - 710 | type_declaration_no_options . "??" - - "const" shift, and go to state 404 - "implicit" shift, and go to state 405 - "explicit" shift, and go to state 406 - "==" shift, and go to state 407 - "<-" shift, and go to state 569 - "??" shift, and go to state 408 - ":=" shift, and go to state 570 - '=' shift, and go to state 571 - '?' shift, and go to state 409 - '&' shift, and go to state 410 - '-' shift, and go to state 411 - '[' shift, and go to state 412 - '#' shift, and go to state 413 - - copy_or_move_or_clone go to state 1567 - dim_list go to state 414 + 301 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' ':' . type_declaration_no_options copy_or_move_or_clone expr "end of expression" + + "type" shift, and go to state 310 + "array" shift, and go to state 311 + "table" shift, and go to state 312 + "typedecl" shift, and go to state 313 + "iterator" shift, and go to state 314 + "smart_ptr" shift, and go to state 315 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "auto" shift, and go to state 319 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 325 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "block" shift, and go to state 337 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "function" shift, and go to state 341 + "lambda" shift, and go to state 342 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 347 + "variant" shift, and go to state 348 + "::" shift, and go to state 58 + "$t" shift, and go to state 349 + "name" shift, and go to state 59 + '$' shift, and go to state 350 + + name_in_namespace go to state 351 + basic_type_declaration go to state 352 + structure_type_declaration go to state 353 + auto_type_declaration go to state 354 + bitfield_type_declaration go to state 355 + type_declaration_no_options go to state 1567 State 1520 - 303 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone . expr "end of expression" - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1568 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 303 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' optional_ref . copy_or_move_or_clone expr "end of expression" + "<-" shift, and go to state 571 + ":=" shift, and go to state 572 + '=' shift, and go to state 573 -State 1521 + copy_or_move_or_clone go to state 1568 - 325 block_or_simple_block: "=>" "<-" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1569 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 +State 1521 -State 1522 + 302 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options . copy_or_move_or_clone expr "end of expression" + 687 type_declaration_no_options: type_declaration_no_options . dim_list + 688 | type_declaration_no_options . '[' ']' + 696 | type_declaration_no_options . '-' '[' ']' + 697 | type_declaration_no_options . "explicit" + 698 | type_declaration_no_options . "const" + 699 | type_declaration_no_options . '-' "const" + 700 | type_declaration_no_options . '&' + 701 | type_declaration_no_options . '-' '&' + 702 | type_declaration_no_options . '#' + 703 | type_declaration_no_options . "implicit" + 704 | type_declaration_no_options . '-' '#' + 705 | type_declaration_no_options . "==" "const" + 706 | type_declaration_no_options . "==" '&' + 707 | type_declaration_no_options . '?' + 711 | type_declaration_no_options . "??" + + "const" shift, and go to state 406 + "implicit" shift, and go to state 407 + "explicit" shift, and go to state 408 + "==" shift, and go to state 409 + "<-" shift, and go to state 571 + "??" shift, and go to state 410 + ":=" shift, and go to state 572 + '=' shift, and go to state 573 + '?' shift, and go to state 411 + '&' shift, and go to state 412 + '-' shift, and go to state 413 + '[' shift, and go to state 414 + '#' shift, and go to state 415 + + copy_or_move_or_clone go to state 1569 + dim_list go to state 416 - 324 block_or_simple_block: "=>" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - ".." error (nonassociative) +State 1522 - $default reduce using rule 324 (block_or_simple_block) + 304 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone . expr "end of expression" + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1570 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1523 - 472 expr: expr "is" "type" '<' $@28 type_declaration_no_options '>' . $@29 - - $default reduce using rule 471 ($@29) - - $@29 go to state 1570 + 326 block_or_simple_block: "=>" "<-" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1571 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1524 - 478 expr: expr "as" "type" '<' $@30 type_declaration '>' . $@31 + 325 block_or_simple_block: "=>" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 477 ($@31) + ".." error (nonassociative) - $@31 go to state 1571 + $default reduce using rule 325 (block_or_simple_block) State 1525 - 483 expr: expr '?' "as" "type" '<' $@32 type_declaration . '>' $@33 - 748 type_declaration: type_declaration . '|' type_declaration_no_options - 749 | type_declaration . '|' '#' + 473 expr: expr "is" "type" '<' $@28 type_declaration_no_options '>' . $@29 + + $default reduce using rule 472 ($@29) - '|' shift, and go to state 415 - '>' shift, and go to state 1572 + $@29 go to state 1572 State 1526 - 511 expr_mtag: expr '?' "as" "$f" '(' expr ')' . + 479 expr: expr "as" "type" '<' $@30 type_declaration '>' . $@31 - $default reduce using rule 511 (expr_mtag) + $default reduce using rule 478 ($@31) + + $@31 go to state 1573 State 1527 - 509 expr_mtag: expr '.' "?." "$f" '(' expr ')' . + 484 expr: expr '?' "as" "type" '<' $@32 type_declaration . '>' $@33 + 749 type_declaration: type_declaration . '|' type_declaration_no_options + 750 | type_declaration . '|' '#' - $default reduce using rule 509 (expr_mtag) + '|' shift, and go to state 417 + '>' shift, and go to state 1574 State 1528 - 508 expr_mtag: expr '.' '.' "$f" '(' expr ')' . + 512 expr_mtag: expr '?' "as" "$f" '(' expr ')' . - $default reduce using rule 508 (expr_mtag) + $default reduce using rule 512 (expr_mtag) State 1529 - 532 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@35 . function_declaration_header "end of expression" - - "operator" shift, and go to state 179 - "bool" shift, and go to state 180 - "string" shift, and go to state 181 - "int" shift, and go to state 182 - "int2" shift, and go to state 183 - "int3" shift, and go to state 184 - "int4" shift, and go to state 185 - "uint" shift, and go to state 186 - "uint2" shift, and go to state 187 - "uint3" shift, and go to state 188 - "uint4" shift, and go to state 189 - "float" shift, and go to state 190 - "float2" shift, and go to state 191 - "float3" shift, and go to state 192 - "float4" shift, and go to state 193 - "range" shift, and go to state 194 - "urange" shift, and go to state 195 - "range64" shift, and go to state 196 - "urange64" shift, and go to state 197 - "int64" shift, and go to state 198 - "uint64" shift, and go to state 199 - "double" shift, and go to state 200 - "int8" shift, and go to state 201 - "uint8" shift, and go to state 202 - "int16" shift, and go to state 203 - "uint16" shift, and go to state 204 - "++" shift, and go to state 205 - "--" shift, and go to state 206 - "name" shift, and go to state 207 - - function_name go to state 208 - function_declaration_header go to state 1573 + 510 expr_mtag: expr '.' "?." "$f" '(' expr ')' . + + $default reduce using rule 510 (expr_mtag) State 1530 - 534 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant . $@36 function_declaration_header expression_block - - $default reduce using rule 533 ($@36) + 509 expr_mtag: expr '.' '.' "$f" '(' expr ')' . - $@36 go to state 1574 + $default reduce using rule 509 (expr_mtag) State 1531 - 527 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration . - - $default reduce using rule 527 (structure_variable_declaration) + 533 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@35 . function_declaration_header "end of expression" + + "operator" shift, and go to state 181 + "bool" shift, and go to state 182 + "string" shift, and go to state 183 + "int" shift, and go to state 184 + "int2" shift, and go to state 185 + "int3" shift, and go to state 186 + "int4" shift, and go to state 187 + "uint" shift, and go to state 188 + "uint2" shift, and go to state 189 + "uint3" shift, and go to state 190 + "uint4" shift, and go to state 191 + "float" shift, and go to state 192 + "float2" shift, and go to state 193 + "float3" shift, and go to state 194 + "float4" shift, and go to state 195 + "range" shift, and go to state 196 + "urange" shift, and go to state 197 + "range64" shift, and go to state 198 + "urange64" shift, and go to state 199 + "int64" shift, and go to state 200 + "uint64" shift, and go to state 201 + "double" shift, and go to state 202 + "int8" shift, and go to state 203 + "uint8" shift, and go to state 204 + "int16" shift, and go to state 205 + "uint16" shift, and go to state 206 + "++" shift, and go to state 207 + "--" shift, and go to state 208 + "name" shift, and go to state 209 + + function_name go to state 210 + function_declaration_header go to state 1575 State 1532 - 694 type_declaration_no_options: '$' name_in_namespace '<' $@51 type_declaration_no_options_list '>' '(' optional_expr_list ')' . + 535 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant . $@36 function_declaration_header expression_block - $default reduce using rule 694 (type_declaration_no_options) + $default reduce using rule 534 ($@36) + $@36 go to state 1576 -State 1533 - 805 make_struct_decl: "struct" '<' $@88 type_declaration_no_options '>' $@89 '(' use_initializer . make_struct_dim ')' +State 1533 - "$f" shift, and go to state 907 - "name" shift, and go to state 1281 + 528 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration . - make_struct_fields go to state 913 - make_struct_dim go to state 1575 + $default reduce using rule 528 (structure_variable_declaration) State 1534 - 808 make_struct_decl: "class" '<' $@90 type_declaration_no_options '>' $@91 '(' use_initializer . make_struct_dim ')' + 695 type_declaration_no_options: '$' name_in_namespace '<' $@51 type_declaration_no_options_list '>' '(' optional_expr_list ')' . - "$f" shift, and go to state 907 - "name" shift, and go to state 1281 - - make_struct_fields go to state 913 - make_struct_dim go to state 1576 + $default reduce using rule 695 (type_declaration_no_options) State 1535 - 320 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' . expr ')' - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1577 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 806 make_struct_decl: "struct" '<' $@88 type_declaration_no_options '>' $@89 '(' use_initializer . make_struct_dim ')' + "$f" shift, and go to state 909 + "name" shift, and go to state 1283 -State 1536 + make_struct_fields go to state 915 + make_struct_dim go to state 1577 - 319 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' expr ')' . - $default reduce using rule 319 (expr_type_info) +State 1536 + 809 make_struct_decl: "class" '<' $@90 type_declaration_no_options '>' $@91 '(' use_initializer . make_struct_dim ')' -State 1537 + "$f" shift, and go to state 909 + "name" shift, and go to state 1283 - 831 make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options '>' $@99 '(' . use_initializer make_struct_dim ')' + make_struct_fields go to state 915 + make_struct_dim go to state 1578 - "uninitialized" shift, and go to state 1096 - $default reduce using rule 795 (use_initializer) +State 1537 - use_initializer go to state 1578 + 321 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' . expr ')' + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1579 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1538 - 834 make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options '>' $@101 '(' . use_initializer make_struct_dim ')' - - "uninitialized" shift, and go to state 1096 + 320 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' expr ')' . - $default reduce using rule 795 (use_initializer) - - use_initializer go to state 1579 + $default reduce using rule 320 (expr_type_info) State 1539 - 837 make_dim_decl: "array" "variant" '<' $@102 type_declaration_no_options '>' $@103 '(' . make_struct_dim ')' + 832 make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options '>' $@99 '(' . use_initializer make_struct_dim ')' - "$f" shift, and go to state 907 - "name" shift, and go to state 1281 + "uninitialized" shift, and go to state 1098 + + $default reduce using rule 796 (use_initializer) - make_struct_fields go to state 913 - make_struct_dim go to state 1580 + use_initializer go to state 1580 State 1540 - 322 expr_list: expr_list . ',' expr - 841 make_dim_decl: "array" '<' $@104 type_declaration_no_options '>' $@105 '(' expr_list . optional_comma ')' + 835 make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options '>' $@101 '(' . use_initializer make_struct_dim ')' - ',' shift, and go to state 940 + "uninitialized" shift, and go to state 1098 - $default reduce using rule 857 (optional_comma) + $default reduce using rule 796 (use_initializer) - optional_comma go to state 1581 + use_initializer go to state 1581 State 1541 - 849 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple - 854 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list . optional_comma ')' - - ',' shift, and go to state 935 + 838 make_dim_decl: "array" "variant" '<' $@102 type_declaration_no_options '>' $@103 '(' . make_struct_dim ')' - $default reduce using rule 857 (optional_comma) + "$f" shift, and go to state 909 + "name" shift, and go to state 1283 - optional_comma go to state 1582 + make_struct_fields go to state 915 + make_struct_dim go to state 1582 State 1542 - 853 make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' . + 323 expr_list: expr_list . ',' expr + 842 make_dim_decl: "array" '<' $@104 type_declaration_no_options '>' $@105 '(' expr_list . optional_comma ')' - $default reduce using rule 853 (make_table_decl) + ',' shift, and go to state 942 + + $default reduce using rule 858 (optional_comma) + + optional_comma go to state 1583 State 1543 - 322 expr_list: expr_list . ',' expr - 845 make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options '>' $@107 '(' expr_list . optional_comma ')' + 850 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple + 855 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list . optional_comma ')' - ',' shift, and go to state 940 + ',' shift, and go to state 937 - $default reduce using rule 857 (optional_comma) + $default reduce using rule 858 (optional_comma) - optional_comma go to state 1583 + optional_comma go to state 1584 State 1544 - 823 make_tuple_call: "tuple" '<' $@96 type_declaration_no_options '>' $@97 '(' use_initializer . make_struct_dim ')' - - "$f" shift, and go to state 907 - "name" shift, and go to state 1281 + 854 make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' . - make_struct_fields go to state 913 - make_struct_dim go to state 1584 + $default reduce using rule 854 (make_table_decl) State 1545 - 780 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 811 make_struct_decl: "variant" '<' $@92 type_declaration_no_options '>' $@93 '(' make_struct_dim . ')' + 323 expr_list: expr_list . ',' expr + 846 make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options '>' $@107 '(' expr_list . optional_comma ')' + + ',' shift, and go to state 942 - "end of expression" shift, and go to state 1160 - ')' shift, and go to state 1585 + $default reduce using rule 858 (optional_comma) + + optional_comma go to state 1585 State 1546 - 467 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' . + 824 make_tuple_call: "tuple" '<' $@96 type_declaration_no_options '>' $@97 '(' use_initializer . make_struct_dim ')' - $default reduce using rule 467 (expr) + "$f" shift, and go to state 909 + "name" shift, and go to state 1283 + + make_struct_fields go to state 915 + make_struct_dim go to state 1586 State 1547 - 856 array_comprehension_where: "end of expression" . "where" expr + 781 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 812 make_struct_decl: "variant" '<' $@92 type_declaration_no_options '>' $@93 '(' make_struct_dim . ')' - "where" shift, and go to state 1586 + "end of expression" shift, and go to state 1162 + ')' shift, and go to state 1587 State 1548 - 861 array_comprehension: "[[" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where . ']' ']' + 468 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' . - ']' shift, and go to state 1587 + $default reduce using rule 468 (expr) State 1549 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 775 make_struct_fields: "$f" '(' expr ')' ":=" expr . - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 857 array_comprehension_where: "end of expression" . "where" expr - $default reduce using rule 775 (make_struct_fields) + "where" shift, and go to state 1588 State 1550 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 774 make_struct_fields: "$f" '(' expr ')' copy_or_move expr . - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 862 array_comprehension: "[[" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where . ']' ']' - $default reduce using rule 774 (make_struct_fields) + ']' shift, and go to state 1589 State 1551 - 776 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' . copy_or_move expr - 777 | make_struct_fields ',' "$f" '(' expr ')' . ":=" expr - - "<-" shift, and go to state 835 - ":=" shift, and go to state 1588 - '=' shift, and go to state 837 + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 776 make_struct_fields: "$f" '(' expr ')' ":=" expr . + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - copy_or_move go to state 1589 + $default reduce using rule 776 (make_struct_fields) State 1552 - 862 array_comprehension: "[{" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where . "end of code block" ']' + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 775 make_struct_fields: "$f" '(' expr ')' copy_or_move expr . + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - "end of code block" shift, and go to state 1590 + $default reduce using rule 775 (make_struct_fields) State 1553 - 864 array_comprehension: "{{" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where . "end of code block" "end of code block" + 777 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' . copy_or_move expr + 778 | make_struct_fields ',' "$f" '(' expr ')' . ":=" expr - "end of code block" shift, and go to state 1591 + "<-" shift, and go to state 837 + ":=" shift, and go to state 1590 + '=' shift, and go to state 839 + + copy_or_move go to state 1591 State 1554 - 250 optional_expr_list_in_braces: '(' optional_expr_list . ')' + 863 array_comprehension: "[{" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where . "end of code block" ']' - ')' shift, and go to state 1592 + "end of code block" shift, and go to state 1592 State 1555 - 863 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where . "end of code block" + 865 array_comprehension: "{{" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where . "end of code block" "end of code block" "end of code block" shift, and go to state 1593 State 1556 - 859 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where . ']' + 250 optional_expr_list_in_braces: '(' optional_expr_list . ')' - ']' shift, and go to state 1594 + ')' shift, and go to state 1594 State 1557 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 860 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr . array_comprehension_where ']' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - "end of expression" shift, and go to state 1547 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - - $default reduce using rule 855 (array_comprehension_where) - - array_comprehension_where go to state 1595 + 864 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where . "end of code block" + + "end of code block" shift, and go to state 1595 State 1558 - 398 func_addr_expr: '@' '@' '<' $@22 type_declaration_no_options '>' $@23 func_addr_name . + 860 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where . ']' - $default reduce using rule 398 (func_addr_expr) + ']' shift, and go to state 1596 State 1559 - 401 func_addr_expr: '@' '@' '<' $@24 optional_function_argument_list optional_function_type '>' $@25 . func_addr_name + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 861 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr . array_comprehension_where ']' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + "end of expression" shift, and go to state 1549 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - "$i" shift, and go to state 943 - "name" shift, and go to state 58 + $default reduce using rule 856 (array_comprehension_where) - name_in_namespace go to state 946 - func_addr_name go to state 1596 + array_comprehension_where go to state 1597 State 1560 - 281 expression_return_no_pipe: "return" "<-" . expr_list - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - expr_list go to state 855 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 707 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 399 func_addr_expr: '@' '@' '<' $@22 type_declaration_no_options '>' $@23 func_addr_name . + + $default reduce using rule 399 (func_addr_expr) State 1561 - 286 expression_yield_no_pipe: "yield" "<-" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1597 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 402 func_addr_expr: '@' '@' '<' $@24 optional_function_argument_list optional_function_type '>' $@25 . func_addr_name + + "::" shift, and go to state 58 + "$i" shift, and go to state 945 + "name" shift, and go to state 59 + + name_in_namespace go to state 948 + func_addr_name go to state 1598 State 1562 - 285 expression_yield_no_pipe: "yield" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - - $default reduce using rule 285 (expression_yield_no_pipe) + 282 expression_return_no_pipe: "return" "<-" . expr_list + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + expr_list go to state 857 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 709 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1563 - 341 expr_full_block_assumed_piped: block_or_lambda $@21 optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block . - - $default reduce using rule 341 (expr_full_block_assumed_piped) + 287 expression_yield_no_pipe: "yield" "<-" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1599 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1564 - 390 expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' ')' . + 286 expression_yield_no_pipe: "yield" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 390 (expr_named_call) + $default reduce using rule 286 (expression_yield_no_pipe) State 1565 - 300 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' ':' type_declaration_no_options . copy_or_move_or_clone expr "end of expression" - 686 type_declaration_no_options: type_declaration_no_options . dim_list - 687 | type_declaration_no_options . '[' ']' - 695 | type_declaration_no_options . '-' '[' ']' - 696 | type_declaration_no_options . "explicit" - 697 | type_declaration_no_options . "const" - 698 | type_declaration_no_options . '-' "const" - 699 | type_declaration_no_options . '&' - 700 | type_declaration_no_options . '-' '&' - 701 | type_declaration_no_options . '#' - 702 | type_declaration_no_options . "implicit" - 703 | type_declaration_no_options . '-' '#' - 704 | type_declaration_no_options . "==" "const" - 705 | type_declaration_no_options . "==" '&' - 706 | type_declaration_no_options . '?' - 710 | type_declaration_no_options . "??" - - "const" shift, and go to state 404 - "implicit" shift, and go to state 405 - "explicit" shift, and go to state 406 - "==" shift, and go to state 407 - "<-" shift, and go to state 569 - "??" shift, and go to state 408 - ":=" shift, and go to state 570 - '=' shift, and go to state 571 - '?' shift, and go to state 409 - '&' shift, and go to state 410 - '-' shift, and go to state 411 - '[' shift, and go to state 412 - '#' shift, and go to state 413 - - copy_or_move_or_clone go to state 1598 - dim_list go to state 414 + 342 expr_full_block_assumed_piped: block_or_lambda $@21 optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block . + + $default reduce using rule 342 (expr_full_block_assumed_piped) State 1566 - 302 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' optional_ref copy_or_move_or_clone . expr "end of expression" - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1599 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 391 expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' ')' . + + $default reduce using rule 391 (expr_named_call) State 1567 - 301 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone . expr "end of expression" - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1600 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 301 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' ':' type_declaration_no_options . copy_or_move_or_clone expr "end of expression" + 687 type_declaration_no_options: type_declaration_no_options . dim_list + 688 | type_declaration_no_options . '[' ']' + 696 | type_declaration_no_options . '-' '[' ']' + 697 | type_declaration_no_options . "explicit" + 698 | type_declaration_no_options . "const" + 699 | type_declaration_no_options . '-' "const" + 700 | type_declaration_no_options . '&' + 701 | type_declaration_no_options . '-' '&' + 702 | type_declaration_no_options . '#' + 703 | type_declaration_no_options . "implicit" + 704 | type_declaration_no_options . '-' '#' + 705 | type_declaration_no_options . "==" "const" + 706 | type_declaration_no_options . "==" '&' + 707 | type_declaration_no_options . '?' + 711 | type_declaration_no_options . "??" + + "const" shift, and go to state 406 + "implicit" shift, and go to state 407 + "explicit" shift, and go to state 408 + "==" shift, and go to state 409 + "<-" shift, and go to state 571 + "??" shift, and go to state 410 + ":=" shift, and go to state 572 + '=' shift, and go to state 573 + '?' shift, and go to state 411 + '&' shift, and go to state 412 + '-' shift, and go to state 413 + '[' shift, and go to state 414 + '#' shift, and go to state 415 + + copy_or_move_or_clone go to state 1600 + dim_list go to state 416 State 1568 - 303 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr . "end of expression" - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - "end of expression" shift, and go to state 1601 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 303 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' optional_ref copy_or_move_or_clone . expr "end of expression" + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1601 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1569 - 325 block_or_simple_block: "=>" "<-" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - - $default reduce using rule 325 (block_or_simple_block) + 302 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone . expr "end of expression" + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1602 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1570 - 472 expr: expr "is" "type" '<' $@28 type_declaration_no_options '>' $@29 . - - $default reduce using rule 472 (expr) + 304 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr . "end of expression" + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + "end of expression" shift, and go to state 1603 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 State 1571 - 478 expr: expr "as" "type" '<' $@30 type_declaration '>' $@31 . - - $default reduce using rule 478 (expr) + 326 block_or_simple_block: "=>" "<-" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + + $default reduce using rule 326 (block_or_simple_block) State 1572 - 483 expr: expr '?' "as" "type" '<' $@32 type_declaration '>' . $@33 - - $default reduce using rule 482 ($@33) + 473 expr: expr "is" "type" '<' $@28 type_declaration_no_options '>' $@29 . - $@33 go to state 1602 + $default reduce using rule 473 (expr) State 1573 - 532 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@35 function_declaration_header . "end of expression" + 479 expr: expr "as" "type" '<' $@30 type_declaration '>' $@31 . - "end of expression" shift, and go to state 1603 + $default reduce using rule 479 (expr) State 1574 - 534 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@36 . function_declaration_header expression_block - - "operator" shift, and go to state 179 - "bool" shift, and go to state 180 - "string" shift, and go to state 181 - "int" shift, and go to state 182 - "int2" shift, and go to state 183 - "int3" shift, and go to state 184 - "int4" shift, and go to state 185 - "uint" shift, and go to state 186 - "uint2" shift, and go to state 187 - "uint3" shift, and go to state 188 - "uint4" shift, and go to state 189 - "float" shift, and go to state 190 - "float2" shift, and go to state 191 - "float3" shift, and go to state 192 - "float4" shift, and go to state 193 - "range" shift, and go to state 194 - "urange" shift, and go to state 195 - "range64" shift, and go to state 196 - "urange64" shift, and go to state 197 - "int64" shift, and go to state 198 - "uint64" shift, and go to state 199 - "double" shift, and go to state 200 - "int8" shift, and go to state 201 - "uint8" shift, and go to state 202 - "int16" shift, and go to state 203 - "uint16" shift, and go to state 204 - "++" shift, and go to state 205 - "--" shift, and go to state 206 - "name" shift, and go to state 207 - - function_name go to state 208 - function_declaration_header go to state 1604 + 484 expr: expr '?' "as" "type" '<' $@32 type_declaration '>' . $@33 + + $default reduce using rule 483 ($@33) + + $@33 go to state 1604 State 1575 - 780 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 805 make_struct_decl: "struct" '<' $@88 type_declaration_no_options '>' $@89 '(' use_initializer make_struct_dim . ')' + 533 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@35 function_declaration_header . "end of expression" - "end of expression" shift, and go to state 1160 - ')' shift, and go to state 1605 + "end of expression" shift, and go to state 1605 State 1576 - 780 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 808 make_struct_decl: "class" '<' $@90 type_declaration_no_options '>' $@91 '(' use_initializer make_struct_dim . ')' - - "end of expression" shift, and go to state 1160 - ')' shift, and go to state 1606 + 535 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@36 . function_declaration_header expression_block + + "operator" shift, and go to state 181 + "bool" shift, and go to state 182 + "string" shift, and go to state 183 + "int" shift, and go to state 184 + "int2" shift, and go to state 185 + "int3" shift, and go to state 186 + "int4" shift, and go to state 187 + "uint" shift, and go to state 188 + "uint2" shift, and go to state 189 + "uint3" shift, and go to state 190 + "uint4" shift, and go to state 191 + "float" shift, and go to state 192 + "float2" shift, and go to state 193 + "float3" shift, and go to state 194 + "float4" shift, and go to state 195 + "range" shift, and go to state 196 + "urange" shift, and go to state 197 + "range64" shift, and go to state 198 + "urange64" shift, and go to state 199 + "int64" shift, and go to state 200 + "uint64" shift, and go to state 201 + "double" shift, and go to state 202 + "int8" shift, and go to state 203 + "uint8" shift, and go to state 204 + "int16" shift, and go to state 205 + "uint16" shift, and go to state 206 + "++" shift, and go to state 207 + "--" shift, and go to state 208 + "name" shift, and go to state 209 + + function_name go to state 210 + function_declaration_header go to state 1606 State 1577 - 320 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr . ')' - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - ')' shift, and go to state 1607 + 781 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 806 make_struct_decl: "struct" '<' $@88 type_declaration_no_options '>' $@89 '(' use_initializer make_struct_dim . ')' + "end of expression" shift, and go to state 1162 + ')' shift, and go to state 1607 -State 1578 - 831 make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options '>' $@99 '(' use_initializer . make_struct_dim ')' +State 1578 - "$f" shift, and go to state 907 - "name" shift, and go to state 1281 + 781 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 809 make_struct_decl: "class" '<' $@90 type_declaration_no_options '>' $@91 '(' use_initializer make_struct_dim . ')' - make_struct_fields go to state 913 - make_struct_dim go to state 1608 + "end of expression" shift, and go to state 1162 + ')' shift, and go to state 1608 State 1579 - 834 make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options '>' $@101 '(' use_initializer . make_struct_dim ')' - - "$f" shift, and go to state 907 - "name" shift, and go to state 1281 - - make_struct_fields go to state 913 - make_struct_dim go to state 1609 + 321 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr . ')' + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + ')' shift, and go to state 1609 State 1580 - 780 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 837 make_dim_decl: "array" "variant" '<' $@102 type_declaration_no_options '>' $@103 '(' make_struct_dim . ')' + 832 make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options '>' $@99 '(' use_initializer . make_struct_dim ')' - "end of expression" shift, and go to state 1160 - ')' shift, and go to state 1610 + "$f" shift, and go to state 909 + "name" shift, and go to state 1283 + + make_struct_fields go to state 915 + make_struct_dim go to state 1610 State 1581 - 841 make_dim_decl: "array" '<' $@104 type_declaration_no_options '>' $@105 '(' expr_list optional_comma . ')' + 835 make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options '>' $@101 '(' use_initializer . make_struct_dim ')' + + "$f" shift, and go to state 909 + "name" shift, and go to state 1283 - ')' shift, and go to state 1611 + make_struct_fields go to state 915 + make_struct_dim go to state 1611 State 1582 - 854 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma . ')' + 781 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 838 make_dim_decl: "array" "variant" '<' $@102 type_declaration_no_options '>' $@103 '(' make_struct_dim . ')' - ')' shift, and go to state 1612 + "end of expression" shift, and go to state 1162 + ')' shift, and go to state 1612 State 1583 - 845 make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options '>' $@107 '(' expr_list optional_comma . ')' + 842 make_dim_decl: "array" '<' $@104 type_declaration_no_options '>' $@105 '(' expr_list optional_comma . ')' ')' shift, and go to state 1613 State 1584 - 780 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 823 make_tuple_call: "tuple" '<' $@96 type_declaration_no_options '>' $@97 '(' use_initializer make_struct_dim . ')' + 855 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma . ')' - "end of expression" shift, and go to state 1160 - ')' shift, and go to state 1614 + ')' shift, and go to state 1614 State 1585 - 811 make_struct_decl: "variant" '<' $@92 type_declaration_no_options '>' $@93 '(' make_struct_dim ')' . + 846 make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options '>' $@107 '(' expr_list optional_comma . ')' - $default reduce using rule 811 (make_struct_decl) + ')' shift, and go to state 1615 State 1586 - 856 array_comprehension_where: "end of expression" "where" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1615 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 781 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 824 make_tuple_call: "tuple" '<' $@96 type_declaration_no_options '>' $@97 '(' use_initializer make_struct_dim . ')' + + "end of expression" shift, and go to state 1162 + ')' shift, and go to state 1616 State 1587 - 861 array_comprehension: "[[" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' . ']' + 812 make_struct_decl: "variant" '<' $@92 type_declaration_no_options '>' $@93 '(' make_struct_dim ')' . - ']' shift, and go to state 1616 + $default reduce using rule 812 (make_struct_decl) State 1588 - 777 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' ":=" . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 + 857 array_comprehension_where: "end of expression" "where" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 expr go to state 1617 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1589 - 776 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' copy_or_move . expr - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1618 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 862 array_comprehension: "[[" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' . ']' + ']' shift, and go to state 1618 -State 1590 - 862 array_comprehension: "[{" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where "end of code block" . ']' +State 1590 - ']' shift, and go to state 1619 + 778 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' ":=" . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1619 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1591 - 864 array_comprehension: "{{" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" . "end of code block" - - "end of code block" shift, and go to state 1620 + 777 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' copy_or_move . expr + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1620 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1592 - 250 optional_expr_list_in_braces: '(' optional_expr_list ')' . + 863 array_comprehension: "[{" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where "end of code block" . ']' - $default reduce using rule 250 (optional_expr_list_in_braces) + ']' shift, and go to state 1621 State 1593 - 863 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" . + 865 array_comprehension: "{{" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" . "end of code block" - $default reduce using rule 863 (array_comprehension) + "end of code block" shift, and go to state 1622 State 1594 - 859 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' . + 250 optional_expr_list_in_braces: '(' optional_expr_list ')' . - $default reduce using rule 859 (array_comprehension) + $default reduce using rule 250 (optional_expr_list_in_braces) State 1595 - 860 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where . ']' + 864 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" . - ']' shift, and go to state 1621 + $default reduce using rule 864 (array_comprehension) State 1596 - 401 func_addr_expr: '@' '@' '<' $@24 optional_function_argument_list optional_function_type '>' $@25 func_addr_name . + 860 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' . - $default reduce using rule 401 (func_addr_expr) + $default reduce using rule 860 (array_comprehension) State 1597 - 286 expression_yield_no_pipe: "yield" "<-" expr . - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 861 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where . ']' - $default reduce using rule 286 (expression_yield_no_pipe) + ']' shift, and go to state 1623 State 1598 - 300 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' ':' type_declaration_no_options copy_or_move_or_clone . expr "end of expression" - - "struct" shift, and go to state 429 - "class" shift, and go to state 430 - "true" shift, and go to state 435 - "false" shift, and go to state 436 - "new" shift, and go to state 437 - "typeinfo" shift, and go to state 438 - "type" shift, and go to state 439 - "array" shift, and go to state 440 - "null" shift, and go to state 442 - "table" shift, and go to state 445 - "deref" shift, and go to state 447 - "cast" shift, and go to state 450 - "upcast" shift, and go to state 451 - "addr" shift, and go to state 452 - "reinterpret" shift, and go to state 455 - "unsafe" shift, and go to state 562 - "fixed_array" shift, and go to state 459 - "default" shift, and go to state 460 - "bool" shift, and go to state 314 - "void" shift, and go to state 315 - "string" shift, and go to state 316 - "int" shift, and go to state 318 - "int2" shift, and go to state 319 - "int3" shift, and go to state 320 - "int4" shift, and go to state 321 - "uint" shift, and go to state 322 - "bitfield" shift, and go to state 461 - "uint2" shift, and go to state 324 - "uint3" shift, and go to state 325 - "uint4" shift, and go to state 326 - "float" shift, and go to state 327 - "float2" shift, and go to state 328 - "float3" shift, and go to state 329 - "float4" shift, and go to state 330 - "range" shift, and go to state 331 - "urange" shift, and go to state 332 - "range64" shift, and go to state 333 - "urange64" shift, and go to state 334 - "int64" shift, and go to state 336 - "uint64" shift, and go to state 337 - "double" shift, and go to state 338 - "int8" shift, and go to state 341 - "uint8" shift, and go to state 342 - "int16" shift, and go to state 343 - "uint16" shift, and go to state 344 - "tuple" shift, and go to state 462 - "variant" shift, and go to state 463 - "generator" shift, and go to state 464 - "++" shift, and go to state 466 - "--" shift, and go to state 467 - "$$" shift, and go to state 471 - "$i" shift, and go to state 472 - "$v" shift, and go to state 473 - "$b" shift, and go to state 474 - "$a" shift, and go to state 475 - "$c" shift, and go to state 476 - "..." shift, and go to state 477 - "[[" shift, and go to state 478 - "[{" shift, and go to state 479 - "{{" shift, and go to state 480 - "integer constant" shift, and go to state 481 - "long integer constant" shift, and go to state 482 - "unsigned integer constant" shift, and go to state 483 - "unsigned long integer constant" shift, and go to state 484 - "unsigned int8 constant" shift, and go to state 485 - "floating point constant" shift, and go to state 486 - "double constant" shift, and go to state 487 - "name" shift, and go to state 58 - "keyword" shift, and go to state 563 - "type function" shift, and go to state 489 - "start of the string" shift, and go to state 490 - "begin of code block" shift, and go to state 491 - '-' shift, and go to state 494 - '+' shift, and go to state 495 - '*' shift, and go to state 496 - '%' shift, and go to state 14 - '~' shift, and go to state 497 - '!' shift, and go to state 498 - '[' shift, and go to state 499 - '(' shift, and go to state 500 - '$' shift, and go to state 501 - '@' shift, and go to state 502 - - string_builder go to state 503 - expr_reader go to state 504 - expression_keyword go to state 564 - name_in_namespace go to state 520 - expr_new go to state 522 - expr_cast go to state 532 - expr_type_decl go to state 533 - expr_type_info go to state 534 - block_or_lambda go to state 535 - expr_full_block go to state 536 - expr_numeric_const go to state 537 - expr_named_call go to state 540 - expr_method_call go to state 541 - func_addr_expr go to state 542 - expr_field go to state 543 - expr_call go to state 544 - expr go to state 1622 - expr_mtag go to state 546 - basic_type_declaration go to state 547 - make_decl go to state 548 - make_struct_decl go to state 549 - make_tuple_call go to state 550 - make_dim_decl go to state 551 - make_table_decl go to state 552 - array_comprehension go to state 553 + 402 func_addr_expr: '@' '@' '<' $@24 optional_function_argument_list optional_function_type '>' $@25 func_addr_name . + + $default reduce using rule 402 (func_addr_expr) State 1599 - 302 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' optional_ref copy_or_move_or_clone expr . "end of expression" - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - "end of expression" shift, and go to state 1623 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 287 expression_yield_no_pipe: "yield" "<-" expr . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + + $default reduce using rule 287 (expression_yield_no_pipe) State 1600 - 301 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr . "end of expression" - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - "end of expression" shift, and go to state 1624 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 301 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' ':' type_declaration_no_options copy_or_move_or_clone . expr "end of expression" + + "struct" shift, and go to state 431 + "class" shift, and go to state 432 + "true" shift, and go to state 437 + "false" shift, and go to state 438 + "new" shift, and go to state 439 + "typeinfo" shift, and go to state 440 + "type" shift, and go to state 441 + "array" shift, and go to state 442 + "null" shift, and go to state 444 + "table" shift, and go to state 447 + "deref" shift, and go to state 449 + "cast" shift, and go to state 452 + "upcast" shift, and go to state 453 + "addr" shift, and go to state 454 + "reinterpret" shift, and go to state 457 + "unsafe" shift, and go to state 564 + "fixed_array" shift, and go to state 461 + "default" shift, and go to state 462 + "bool" shift, and go to state 316 + "void" shift, and go to state 317 + "string" shift, and go to state 318 + "int" shift, and go to state 320 + "int2" shift, and go to state 321 + "int3" shift, and go to state 322 + "int4" shift, and go to state 323 + "uint" shift, and go to state 324 + "bitfield" shift, and go to state 463 + "uint2" shift, and go to state 326 + "uint3" shift, and go to state 327 + "uint4" shift, and go to state 328 + "float" shift, and go to state 329 + "float2" shift, and go to state 330 + "float3" shift, and go to state 331 + "float4" shift, and go to state 332 + "range" shift, and go to state 333 + "urange" shift, and go to state 334 + "range64" shift, and go to state 335 + "urange64" shift, and go to state 336 + "int64" shift, and go to state 338 + "uint64" shift, and go to state 339 + "double" shift, and go to state 340 + "int8" shift, and go to state 343 + "uint8" shift, and go to state 344 + "int16" shift, and go to state 345 + "uint16" shift, and go to state 346 + "tuple" shift, and go to state 464 + "variant" shift, and go to state 465 + "generator" shift, and go to state 466 + "++" shift, and go to state 468 + "--" shift, and go to state 469 + "::" shift, and go to state 58 + "$$" shift, and go to state 473 + "$i" shift, and go to state 474 + "$v" shift, and go to state 475 + "$b" shift, and go to state 476 + "$a" shift, and go to state 477 + "$c" shift, and go to state 478 + "..." shift, and go to state 479 + "[[" shift, and go to state 480 + "[{" shift, and go to state 481 + "{{" shift, and go to state 482 + "integer constant" shift, and go to state 483 + "long integer constant" shift, and go to state 484 + "unsigned integer constant" shift, and go to state 485 + "unsigned long integer constant" shift, and go to state 486 + "unsigned int8 constant" shift, and go to state 487 + "floating point constant" shift, and go to state 488 + "double constant" shift, and go to state 489 + "name" shift, and go to state 59 + "keyword" shift, and go to state 565 + "type function" shift, and go to state 491 + "start of the string" shift, and go to state 492 + "begin of code block" shift, and go to state 493 + '-' shift, and go to state 496 + '+' shift, and go to state 497 + '*' shift, and go to state 498 + '%' shift, and go to state 14 + '~' shift, and go to state 499 + '!' shift, and go to state 500 + '[' shift, and go to state 501 + '(' shift, and go to state 502 + '$' shift, and go to state 503 + '@' shift, and go to state 504 + + string_builder go to state 505 + expr_reader go to state 506 + expression_keyword go to state 566 + name_in_namespace go to state 522 + expr_new go to state 524 + expr_cast go to state 534 + expr_type_decl go to state 535 + expr_type_info go to state 536 + block_or_lambda go to state 537 + expr_full_block go to state 538 + expr_numeric_const go to state 539 + expr_named_call go to state 542 + expr_method_call go to state 543 + func_addr_expr go to state 544 + expr_field go to state 545 + expr_call go to state 546 + expr go to state 1624 + expr_mtag go to state 548 + basic_type_declaration go to state 549 + make_decl go to state 550 + make_struct_decl go to state 551 + make_tuple_call go to state 552 + make_dim_decl go to state 553 + make_table_decl go to state 554 + array_comprehension go to state 555 State 1601 - 303 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" . - - $default reduce using rule 303 (tuple_expansion_variable_declaration) + 303 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' optional_ref copy_or_move_or_clone expr . "end of expression" + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + "end of expression" shift, and go to state 1625 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 State 1602 - 483 expr: expr '?' "as" "type" '<' $@32 type_declaration '>' $@33 . - - $default reduce using rule 483 (expr) + 302 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr . "end of expression" + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + "end of expression" shift, and go to state 1626 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 State 1603 - 532 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@35 function_declaration_header "end of expression" . + 304 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" . - $default reduce using rule 532 (struct_variable_declaration_list) + $default reduce using rule 304 (tuple_expansion_variable_declaration) State 1604 - 534 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@36 function_declaration_header . expression_block + 484 expr: expr '?' "as" "type" '<' $@32 type_declaration '>' $@33 . - "begin of code block" shift, and go to state 284 - - expression_block go to state 1625 + $default reduce using rule 484 (expr) State 1605 - 805 make_struct_decl: "struct" '<' $@88 type_declaration_no_options '>' $@89 '(' use_initializer make_struct_dim ')' . + 533 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@35 function_declaration_header "end of expression" . - $default reduce using rule 805 (make_struct_decl) + $default reduce using rule 533 (struct_variable_declaration_list) State 1606 - 808 make_struct_decl: "class" '<' $@90 type_declaration_no_options '>' $@91 '(' use_initializer make_struct_dim ')' . + 535 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@36 function_declaration_header . expression_block - $default reduce using rule 808 (make_struct_decl) + "begin of code block" shift, and go to state 286 + + expression_block go to state 1627 State 1607 - 320 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' . + 806 make_struct_decl: "struct" '<' $@88 type_declaration_no_options '>' $@89 '(' use_initializer make_struct_dim ')' . - $default reduce using rule 320 (expr_type_info) + $default reduce using rule 806 (make_struct_decl) State 1608 - 780 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 831 make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options '>' $@99 '(' use_initializer make_struct_dim . ')' + 809 make_struct_decl: "class" '<' $@90 type_declaration_no_options '>' $@91 '(' use_initializer make_struct_dim ')' . - "end of expression" shift, and go to state 1160 - ')' shift, and go to state 1626 + $default reduce using rule 809 (make_struct_decl) State 1609 - 780 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 834 make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options '>' $@101 '(' use_initializer make_struct_dim . ')' + 321 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' . - "end of expression" shift, and go to state 1160 - ')' shift, and go to state 1627 + $default reduce using rule 321 (expr_type_info) State 1610 - 837 make_dim_decl: "array" "variant" '<' $@102 type_declaration_no_options '>' $@103 '(' make_struct_dim ')' . + 781 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 832 make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options '>' $@99 '(' use_initializer make_struct_dim . ')' - $default reduce using rule 837 (make_dim_decl) + "end of expression" shift, and go to state 1162 + ')' shift, and go to state 1628 State 1611 - 841 make_dim_decl: "array" '<' $@104 type_declaration_no_options '>' $@105 '(' expr_list optional_comma ')' . + 781 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 835 make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options '>' $@101 '(' use_initializer make_struct_dim . ')' - $default reduce using rule 841 (make_dim_decl) + "end of expression" shift, and go to state 1162 + ')' shift, and go to state 1629 State 1612 - 854 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' . + 838 make_dim_decl: "array" "variant" '<' $@102 type_declaration_no_options '>' $@103 '(' make_struct_dim ')' . - $default reduce using rule 854 (make_table_decl) + $default reduce using rule 838 (make_dim_decl) State 1613 - 845 make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options '>' $@107 '(' expr_list optional_comma ')' . + 842 make_dim_decl: "array" '<' $@104 type_declaration_no_options '>' $@105 '(' expr_list optional_comma ')' . - $default reduce using rule 845 (make_dim_decl) + $default reduce using rule 842 (make_dim_decl) State 1614 - 823 make_tuple_call: "tuple" '<' $@96 type_declaration_no_options '>' $@97 '(' use_initializer make_struct_dim ')' . + 855 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' . - $default reduce using rule 823 (make_tuple_call) + $default reduce using rule 855 (make_table_decl) State 1615 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 856 array_comprehension_where: "end of expression" "where" expr . - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 846 make_dim_decl: "fixed_array" '<' $@106 type_declaration_no_options '>' $@107 '(' expr_list optional_comma ')' . - $default reduce using rule 856 (array_comprehension_where) + $default reduce using rule 846 (make_dim_decl) State 1616 - 861 array_comprehension: "[[" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' ']' . + 824 make_tuple_call: "tuple" '<' $@96 type_declaration_no_options '>' $@97 '(' use_initializer make_struct_dim ')' . - $default reduce using rule 861 (array_comprehension) + $default reduce using rule 824 (make_tuple_call) State 1617 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 777 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' ":=" expr . - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 - - $default reduce using rule 777 (make_struct_fields) + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 857 array_comprehension_where: "end of expression" "where" expr . + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + + $default reduce using rule 857 (array_comprehension_where) State 1618 - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - 776 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' copy_or_move expr . - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 862 array_comprehension: "[[" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' ']' . - $default reduce using rule 776 (make_struct_fields) + $default reduce using rule 862 (array_comprehension) State 1619 - 862 array_comprehension: "[{" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where "end of code block" ']' . - - $default reduce using rule 862 (array_comprehension) + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 778 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' ":=" expr . + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 + + $default reduce using rule 778 (make_struct_fields) State 1620 - 864 array_comprehension: "{{" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" "end of code block" . + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + 777 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' copy_or_move expr . + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 - $default reduce using rule 864 (array_comprehension) + $default reduce using rule 777 (make_struct_fields) State 1621 - 860 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' . + 863 array_comprehension: "[{" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where "end of code block" ']' . - $default reduce using rule 860 (array_comprehension) + $default reduce using rule 863 (array_comprehension) State 1622 - 300 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' ':' type_declaration_no_options copy_or_move_or_clone expr . "end of expression" - 391 expr_method_call: expr . "->" "name" '(' ')' - 392 | expr . "->" "name" '(' expr_list ')' - 402 expr_field: expr . '.' "name" - 403 | expr . '.' '.' "name" - 404 | expr . '.' "name" '(' ')' - 405 | expr . '.' "name" '(' expr_list ')' - 408 | expr . '.' $@26 error $@27 - 428 expr: expr . "<<" expr - 429 | expr . ">>" expr - 430 | expr . "<<<" expr - 431 | expr . ">>>" expr - 432 | expr . '+' expr - 433 | expr . '-' expr - 434 | expr . '*' expr - 435 | expr . '/' expr - 436 | expr . '%' expr - 437 | expr . '<' expr - 438 | expr . '>' expr - 439 | expr . "==" expr - 440 | expr . "!=" expr - 441 | expr . "<=" expr - 442 | expr . ">=" expr - 443 | expr . '&' expr - 444 | expr . '|' expr - 445 | expr . '^' expr - 446 | expr . "&&" expr - 447 | expr . "||" expr - 448 | expr . "^^" expr - 449 | expr . ".." expr - 452 | expr . "++" - 453 | expr . "--" - 455 | expr . '[' expr ']' - 456 | expr . '.' '[' expr ']' - 457 | expr . "?[" expr ']' - 458 | expr . '.' "?[" expr ']' - 459 | expr . "?." "name" - 460 | expr . '.' "?." "name" - 468 | expr . "??" expr - 469 | expr . '?' expr ':' expr - 472 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 - 473 | expr . "is" basic_type_declaration - 474 | expr . "is" "name" - 475 | expr . "as" "name" - 478 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 - 479 | expr . "as" basic_type_declaration - 480 | expr . '?' "as" "name" - 483 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 - 484 | expr . '?' "as" basic_type_declaration - 492 | expr . "<|" expr - 493 | expr . "|>" expr - 494 | expr . "|>" basic_type_declaration - 506 expr_mtag: expr . '.' "$f" '(' expr ')' - 507 | expr . "?." "$f" '(' expr ')' - 508 | expr . '.' '.' "$f" '(' expr ')' - 509 | expr . '.' "?." "$f" '(' expr ')' - 510 | expr . "as" "$f" '(' expr ')' - 511 | expr . '?' "as" "$f" '(' expr ')' - 512 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 728 - "as" shift, and go to state 729 - "<<" shift, and go to state 738 - ">>" shift, and go to state 739 - "++" shift, and go to state 740 - "--" shift, and go to state 741 - "<=" shift, and go to state 742 - ">=" shift, and go to state 745 - "==" shift, and go to state 746 - "!=" shift, and go to state 747 - "->" shift, and go to state 748 - "??" shift, and go to state 750 - "?." shift, and go to state 751 - "?[" shift, and go to state 752 - "<|" shift, and go to state 753 - "|>" shift, and go to state 754 - "<<<" shift, and go to state 756 - ">>>" shift, and go to state 757 - "&&" shift, and go to state 760 - "||" shift, and go to state 761 - "^^" shift, and go to state 762 - ".." shift, and go to state 766 - "end of expression" shift, and go to state 1628 - '?' shift, and go to state 768 - '|' shift, and go to state 769 - '^' shift, and go to state 770 - '&' shift, and go to state 771 - '<' shift, and go to state 772 - '>' shift, and go to state 773 - '-' shift, and go to state 774 - '+' shift, and go to state 775 - '*' shift, and go to state 776 - '/' shift, and go to state 777 - '%' shift, and go to state 778 - '.' shift, and go to state 779 - '[' shift, and go to state 780 + 865 array_comprehension: "{{" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" "end of code block" . + + $default reduce using rule 865 (array_comprehension) State 1623 - 302 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' optional_ref copy_or_move_or_clone expr "end of expression" . + 861 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' . - $default reduce using rule 302 (tuple_expansion_variable_declaration) + $default reduce using rule 861 (array_comprehension) State 1624 - 301 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" . - - $default reduce using rule 301 (tuple_expansion_variable_declaration) + 301 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' ':' type_declaration_no_options copy_or_move_or_clone expr . "end of expression" + 392 expr_method_call: expr . "->" "name" '(' ')' + 393 | expr . "->" "name" '(' expr_list ')' + 403 expr_field: expr . '.' "name" + 404 | expr . '.' '.' "name" + 405 | expr . '.' "name" '(' ')' + 406 | expr . '.' "name" '(' expr_list ')' + 409 | expr . '.' $@26 error $@27 + 429 expr: expr . "<<" expr + 430 | expr . ">>" expr + 431 | expr . "<<<" expr + 432 | expr . ">>>" expr + 433 | expr . '+' expr + 434 | expr . '-' expr + 435 | expr . '*' expr + 436 | expr . '/' expr + 437 | expr . '%' expr + 438 | expr . '<' expr + 439 | expr . '>' expr + 440 | expr . "==" expr + 441 | expr . "!=" expr + 442 | expr . "<=" expr + 443 | expr . ">=" expr + 444 | expr . '&' expr + 445 | expr . '|' expr + 446 | expr . '^' expr + 447 | expr . "&&" expr + 448 | expr . "||" expr + 449 | expr . "^^" expr + 450 | expr . ".." expr + 453 | expr . "++" + 454 | expr . "--" + 456 | expr . '[' expr ']' + 457 | expr . '.' '[' expr ']' + 458 | expr . "?[" expr ']' + 459 | expr . '.' "?[" expr ']' + 460 | expr . "?." "name" + 461 | expr . '.' "?." "name" + 469 | expr . "??" expr + 470 | expr . '?' expr ':' expr + 473 | expr . "is" "type" '<' $@28 type_declaration_no_options '>' $@29 + 474 | expr . "is" basic_type_declaration + 475 | expr . "is" "name" + 476 | expr . "as" "name" + 479 | expr . "as" "type" '<' $@30 type_declaration '>' $@31 + 480 | expr . "as" basic_type_declaration + 481 | expr . '?' "as" "name" + 484 | expr . '?' "as" "type" '<' $@32 type_declaration '>' $@33 + 485 | expr . '?' "as" basic_type_declaration + 493 | expr . "<|" expr + 494 | expr . "|>" expr + 495 | expr . "|>" basic_type_declaration + 507 expr_mtag: expr . '.' "$f" '(' expr ')' + 508 | expr . "?." "$f" '(' expr ')' + 509 | expr . '.' '.' "$f" '(' expr ')' + 510 | expr . '.' "?." "$f" '(' expr ')' + 511 | expr . "as" "$f" '(' expr ')' + 512 | expr . '?' "as" "$f" '(' expr ')' + 513 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 730 + "as" shift, and go to state 731 + "<<" shift, and go to state 740 + ">>" shift, and go to state 741 + "++" shift, and go to state 742 + "--" shift, and go to state 743 + "<=" shift, and go to state 744 + ">=" shift, and go to state 747 + "==" shift, and go to state 748 + "!=" shift, and go to state 749 + "->" shift, and go to state 750 + "??" shift, and go to state 752 + "?." shift, and go to state 753 + "?[" shift, and go to state 754 + "<|" shift, and go to state 755 + "|>" shift, and go to state 756 + "<<<" shift, and go to state 758 + ">>>" shift, and go to state 759 + "&&" shift, and go to state 762 + "||" shift, and go to state 763 + "^^" shift, and go to state 764 + ".." shift, and go to state 768 + "end of expression" shift, and go to state 1630 + '?' shift, and go to state 770 + '|' shift, and go to state 771 + '^' shift, and go to state 772 + '&' shift, and go to state 773 + '<' shift, and go to state 774 + '>' shift, and go to state 775 + '-' shift, and go to state 776 + '+' shift, and go to state 777 + '*' shift, and go to state 778 + '/' shift, and go to state 779 + '%' shift, and go to state 780 + '.' shift, and go to state 781 + '[' shift, and go to state 782 State 1625 - 534 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@36 function_declaration_header expression_block . + 303 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' optional_ref copy_or_move_or_clone expr "end of expression" . - $default reduce using rule 534 (struct_variable_declaration_list) + $default reduce using rule 303 (tuple_expansion_variable_declaration) State 1626 - 831 make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options '>' $@99 '(' use_initializer make_struct_dim ')' . + 302 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" . - $default reduce using rule 831 (make_dim_decl) + $default reduce using rule 302 (tuple_expansion_variable_declaration) State 1627 - 834 make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options '>' $@101 '(' use_initializer make_struct_dim ')' . + 535 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@36 function_declaration_header expression_block . - $default reduce using rule 834 (make_dim_decl) + $default reduce using rule 535 (struct_variable_declaration_list) State 1628 - 300 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" . + 832 make_dim_decl: "array" "struct" '<' $@98 type_declaration_no_options '>' $@99 '(' use_initializer make_struct_dim ')' . + + $default reduce using rule 832 (make_dim_decl) - $default reduce using rule 300 (tuple_expansion_variable_declaration) + +State 1629 + + 835 make_dim_decl: "array" "tuple" '<' $@100 type_declaration_no_options '>' $@101 '(' use_initializer make_struct_dim ')' . + + $default reduce using rule 835 (make_dim_decl) + + +State 1630 + + 301 tuple_expansion_variable_declaration: "[[" tuple_expansion ']' ']' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" . + + $default reduce using rule 301 (tuple_expansion_variable_declaration) From 66ec4e797df7b20232544c7e271f2df8002aa0e8 Mon Sep 17 00:00:00 2001 From: Boris Batkin Date: Tue, 29 Oct 2024 17:13:04 -0700 Subject: [PATCH 4/5] down to 6 --- src/parser/ds2_parser.cpp | 6387 ++++--- src/parser/ds2_parser.output | 30968 ++++++++++++++++----------------- src/parser/ds2_parser.ypp | 15 +- 3 files changed, 18408 insertions(+), 18962 deletions(-) diff --git a/src/parser/ds2_parser.cpp b/src/parser/ds2_parser.cpp index 9f8fb8c8c..79170675d 100644 --- a/src/parser/ds2_parser.cpp +++ b/src/parser/ds2_parser.cpp @@ -412,195 +412,194 @@ enum yysymbol_kind_t YYSYMBOL_expression_break = 274, /* expression_break */ YYSYMBOL_expression_continue = 275, /* expression_continue */ YYSYMBOL_expression_return = 276, /* expression_return */ - YYSYMBOL_expression_yield_no_pipe = 277, /* expression_yield_no_pipe */ - YYSYMBOL_expression_yield = 278, /* expression_yield */ - YYSYMBOL_expression_try_catch = 279, /* expression_try_catch */ - YYSYMBOL_kwd_let_var_or_nothing = 280, /* kwd_let_var_or_nothing */ - YYSYMBOL_kwd_let = 281, /* kwd_let */ - YYSYMBOL_optional_in_scope = 282, /* optional_in_scope */ - YYSYMBOL_tuple_expansion = 283, /* tuple_expansion */ - YYSYMBOL_tuple_expansion_variable_declaration = 284, /* tuple_expansion_variable_declaration */ - YYSYMBOL_expression_let = 285, /* expression_let */ - YYSYMBOL_expr_cast = 286, /* expr_cast */ - YYSYMBOL_287_5 = 287, /* $@5 */ - YYSYMBOL_288_6 = 288, /* $@6 */ - YYSYMBOL_289_7 = 289, /* $@7 */ - YYSYMBOL_290_8 = 290, /* $@8 */ - YYSYMBOL_291_9 = 291, /* $@9 */ - YYSYMBOL_292_10 = 292, /* $@10 */ - YYSYMBOL_expr_type_decl = 293, /* expr_type_decl */ - YYSYMBOL_294_11 = 294, /* $@11 */ - YYSYMBOL_295_12 = 295, /* $@12 */ - YYSYMBOL_expr_type_info = 296, /* expr_type_info */ - YYSYMBOL_expr_list = 297, /* expr_list */ - YYSYMBOL_block_or_simple_block = 298, /* block_or_simple_block */ - YYSYMBOL_block_or_lambda = 299, /* block_or_lambda */ - YYSYMBOL_capture_entry = 300, /* capture_entry */ - YYSYMBOL_capture_list = 301, /* capture_list */ - YYSYMBOL_optional_capture_list = 302, /* optional_capture_list */ - YYSYMBOL_expr_full_block = 303, /* expr_full_block */ - YYSYMBOL_expr_full_block_assumed_piped = 304, /* expr_full_block_assumed_piped */ - YYSYMBOL_expr_numeric_const = 305, /* expr_numeric_const */ - YYSYMBOL_expr_assign = 306, /* expr_assign */ - YYSYMBOL_expr_named_call = 307, /* expr_named_call */ - YYSYMBOL_expr_method_call = 308, /* expr_method_call */ - YYSYMBOL_func_addr_name = 309, /* func_addr_name */ - YYSYMBOL_func_addr_expr = 310, /* func_addr_expr */ - YYSYMBOL_311_13 = 311, /* $@13 */ - YYSYMBOL_312_14 = 312, /* $@14 */ - YYSYMBOL_313_15 = 313, /* $@15 */ - YYSYMBOL_314_16 = 314, /* $@16 */ - YYSYMBOL_expr_field = 315, /* expr_field */ - YYSYMBOL_316_17 = 316, /* $@17 */ - YYSYMBOL_317_18 = 317, /* $@18 */ - YYSYMBOL_expr_call = 318, /* expr_call */ - YYSYMBOL_expr = 319, /* expr */ - YYSYMBOL_320_19 = 320, /* $@19 */ - YYSYMBOL_321_20 = 321, /* $@20 */ - YYSYMBOL_322_21 = 322, /* $@21 */ - YYSYMBOL_323_22 = 323, /* $@22 */ - YYSYMBOL_324_23 = 324, /* $@23 */ - YYSYMBOL_325_24 = 325, /* $@24 */ - YYSYMBOL_expr_mtag = 326, /* expr_mtag */ - YYSYMBOL_optional_field_annotation = 327, /* optional_field_annotation */ - YYSYMBOL_optional_override = 328, /* optional_override */ - YYSYMBOL_optional_constant = 329, /* optional_constant */ - YYSYMBOL_optional_public_or_private_member_variable = 330, /* optional_public_or_private_member_variable */ - YYSYMBOL_optional_static_member_variable = 331, /* optional_static_member_variable */ - YYSYMBOL_structure_variable_declaration = 332, /* structure_variable_declaration */ - YYSYMBOL_struct_variable_declaration_list = 333, /* struct_variable_declaration_list */ - YYSYMBOL_334_25 = 334, /* $@25 */ - YYSYMBOL_335_26 = 335, /* $@26 */ - YYSYMBOL_336_27 = 336, /* $@27 */ - YYSYMBOL_function_argument_declaration = 337, /* function_argument_declaration */ - YYSYMBOL_function_argument_list = 338, /* function_argument_list */ - YYSYMBOL_tuple_type = 339, /* tuple_type */ - YYSYMBOL_tuple_type_list = 340, /* tuple_type_list */ - YYSYMBOL_tuple_alias_type_list = 341, /* tuple_alias_type_list */ - YYSYMBOL_variant_type = 342, /* variant_type */ - YYSYMBOL_variant_type_list = 343, /* variant_type_list */ - YYSYMBOL_variant_alias_type_list = 344, /* variant_alias_type_list */ - YYSYMBOL_copy_or_move = 345, /* copy_or_move */ - YYSYMBOL_variable_declaration = 346, /* variable_declaration */ - YYSYMBOL_copy_or_move_or_clone = 347, /* copy_or_move_or_clone */ - YYSYMBOL_optional_ref = 348, /* optional_ref */ - YYSYMBOL_let_variable_name_with_pos_list = 349, /* let_variable_name_with_pos_list */ - YYSYMBOL_let_variable_declaration = 350, /* let_variable_declaration */ - YYSYMBOL_global_variable_declaration_list = 351, /* global_variable_declaration_list */ - YYSYMBOL_352_28 = 352, /* $@28 */ - YYSYMBOL_optional_shared = 353, /* optional_shared */ - YYSYMBOL_optional_public_or_private_variable = 354, /* optional_public_or_private_variable */ - YYSYMBOL_global_let = 355, /* global_let */ - YYSYMBOL_356_29 = 356, /* $@29 */ - YYSYMBOL_enum_expression = 357, /* enum_expression */ - YYSYMBOL_enum_list = 358, /* enum_list */ - YYSYMBOL_optional_public_or_private_alias = 359, /* optional_public_or_private_alias */ - YYSYMBOL_single_alias = 360, /* single_alias */ - YYSYMBOL_361_30 = 361, /* $@30 */ - YYSYMBOL_alias_declaration = 362, /* alias_declaration */ - YYSYMBOL_optional_public_or_private_enum = 363, /* optional_public_or_private_enum */ - YYSYMBOL_enum_name = 364, /* enum_name */ - YYSYMBOL_optional_enum_basic_type_declaration = 365, /* optional_enum_basic_type_declaration */ - YYSYMBOL_enum_declaration = 366, /* enum_declaration */ - YYSYMBOL_367_31 = 367, /* $@31 */ - YYSYMBOL_368_32 = 368, /* $@32 */ - YYSYMBOL_optional_structure_parent = 369, /* optional_structure_parent */ - YYSYMBOL_optional_sealed = 370, /* optional_sealed */ - YYSYMBOL_structure_name = 371, /* structure_name */ - YYSYMBOL_class_or_struct = 372, /* class_or_struct */ - YYSYMBOL_optional_public_or_private_structure = 373, /* optional_public_or_private_structure */ - YYSYMBOL_optional_struct_variable_declaration_list = 374, /* optional_struct_variable_declaration_list */ - YYSYMBOL_structure_declaration = 375, /* structure_declaration */ - YYSYMBOL_376_33 = 376, /* $@33 */ - YYSYMBOL_377_34 = 377, /* $@34 */ - YYSYMBOL_variable_name_with_pos_list = 378, /* variable_name_with_pos_list */ - YYSYMBOL_basic_type_declaration = 379, /* basic_type_declaration */ - YYSYMBOL_enum_basic_type_declaration = 380, /* enum_basic_type_declaration */ - YYSYMBOL_structure_type_declaration = 381, /* structure_type_declaration */ - YYSYMBOL_auto_type_declaration = 382, /* auto_type_declaration */ - YYSYMBOL_bitfield_bits = 383, /* bitfield_bits */ - YYSYMBOL_bitfield_alias_bits = 384, /* bitfield_alias_bits */ - YYSYMBOL_bitfield_type_declaration = 385, /* bitfield_type_declaration */ - YYSYMBOL_386_35 = 386, /* $@35 */ - YYSYMBOL_387_36 = 387, /* $@36 */ - YYSYMBOL_table_type_pair = 388, /* table_type_pair */ - YYSYMBOL_dim_list = 389, /* dim_list */ - YYSYMBOL_type_declaration_no_options = 390, /* type_declaration_no_options */ - YYSYMBOL_type_declaration_no_options_no_dim = 391, /* type_declaration_no_options_no_dim */ - YYSYMBOL_392_37 = 392, /* $@37 */ - YYSYMBOL_393_38 = 393, /* $@38 */ - YYSYMBOL_394_39 = 394, /* $@39 */ - YYSYMBOL_395_40 = 395, /* $@40 */ - YYSYMBOL_396_41 = 396, /* $@41 */ - YYSYMBOL_397_42 = 397, /* $@42 */ - YYSYMBOL_398_43 = 398, /* $@43 */ - YYSYMBOL_399_44 = 399, /* $@44 */ - YYSYMBOL_400_45 = 400, /* $@45 */ - YYSYMBOL_401_46 = 401, /* $@46 */ - YYSYMBOL_402_47 = 402, /* $@47 */ - YYSYMBOL_403_48 = 403, /* $@48 */ - YYSYMBOL_404_49 = 404, /* $@49 */ - YYSYMBOL_405_50 = 405, /* $@50 */ - YYSYMBOL_406_51 = 406, /* $@51 */ - YYSYMBOL_407_52 = 407, /* $@52 */ - YYSYMBOL_408_53 = 408, /* $@53 */ - YYSYMBOL_409_54 = 409, /* $@54 */ - YYSYMBOL_410_55 = 410, /* $@55 */ - YYSYMBOL_411_56 = 411, /* $@56 */ - YYSYMBOL_412_57 = 412, /* $@57 */ - YYSYMBOL_413_58 = 413, /* $@58 */ - YYSYMBOL_414_59 = 414, /* $@59 */ - YYSYMBOL_415_60 = 415, /* $@60 */ - YYSYMBOL_416_61 = 416, /* $@61 */ - YYSYMBOL_417_62 = 417, /* $@62 */ - YYSYMBOL_418_63 = 418, /* $@63 */ - YYSYMBOL_type_declaration = 419, /* type_declaration */ - YYSYMBOL_tuple_alias_declaration = 420, /* tuple_alias_declaration */ - YYSYMBOL_421_64 = 421, /* $@64 */ - YYSYMBOL_422_65 = 422, /* $@65 */ - YYSYMBOL_423_66 = 423, /* $@66 */ - YYSYMBOL_variant_alias_declaration = 424, /* variant_alias_declaration */ - YYSYMBOL_425_67 = 425, /* $@67 */ - YYSYMBOL_426_68 = 426, /* $@68 */ - YYSYMBOL_427_69 = 427, /* $@69 */ - YYSYMBOL_bitfield_alias_declaration = 428, /* bitfield_alias_declaration */ - YYSYMBOL_429_70 = 429, /* $@70 */ - YYSYMBOL_430_71 = 430, /* $@71 */ - YYSYMBOL_431_72 = 431, /* $@72 */ - YYSYMBOL_make_decl = 432, /* make_decl */ - YYSYMBOL_make_struct_fields = 433, /* make_struct_fields */ - YYSYMBOL_make_struct_single = 434, /* make_struct_single */ - YYSYMBOL_make_struct_dim = 435, /* make_struct_dim */ - YYSYMBOL_use_initializer = 436, /* use_initializer */ - YYSYMBOL_make_struct_decl = 437, /* make_struct_decl */ - YYSYMBOL_438_73 = 438, /* $@73 */ - YYSYMBOL_439_74 = 439, /* $@74 */ - YYSYMBOL_440_75 = 440, /* $@75 */ - YYSYMBOL_441_76 = 441, /* $@76 */ - YYSYMBOL_442_77 = 442, /* $@77 */ - YYSYMBOL_443_78 = 443, /* $@78 */ - YYSYMBOL_444_79 = 444, /* $@79 */ - YYSYMBOL_445_80 = 445, /* $@80 */ - YYSYMBOL_make_map_tuple = 446, /* make_map_tuple */ - YYSYMBOL_make_tuple_call = 447, /* make_tuple_call */ - YYSYMBOL_448_81 = 448, /* $@81 */ - YYSYMBOL_449_82 = 449, /* $@82 */ - YYSYMBOL_make_dim_decl = 450, /* make_dim_decl */ - YYSYMBOL_451_83 = 451, /* $@83 */ - YYSYMBOL_452_84 = 452, /* $@84 */ - YYSYMBOL_453_85 = 453, /* $@85 */ - YYSYMBOL_454_86 = 454, /* $@86 */ - YYSYMBOL_455_87 = 455, /* $@87 */ - YYSYMBOL_456_88 = 456, /* $@88 */ - YYSYMBOL_457_89 = 457, /* $@89 */ - YYSYMBOL_458_90 = 458, /* $@90 */ - YYSYMBOL_459_91 = 459, /* $@91 */ - YYSYMBOL_460_92 = 460, /* $@92 */ - YYSYMBOL_expr_map_tuple_list = 461, /* expr_map_tuple_list */ - YYSYMBOL_make_table_decl = 462, /* make_table_decl */ - YYSYMBOL_array_comprehension_where = 463, /* array_comprehension_where */ - YYSYMBOL_optional_comma = 464, /* optional_comma */ - YYSYMBOL_array_comprehension = 465 /* array_comprehension */ + YYSYMBOL_expression_yield = 277, /* expression_yield */ + YYSYMBOL_expression_try_catch = 278, /* expression_try_catch */ + YYSYMBOL_kwd_let_var_or_nothing = 279, /* kwd_let_var_or_nothing */ + YYSYMBOL_kwd_let = 280, /* kwd_let */ + YYSYMBOL_optional_in_scope = 281, /* optional_in_scope */ + YYSYMBOL_tuple_expansion = 282, /* tuple_expansion */ + YYSYMBOL_tuple_expansion_variable_declaration = 283, /* tuple_expansion_variable_declaration */ + YYSYMBOL_expression_let = 284, /* expression_let */ + YYSYMBOL_expr_cast = 285, /* expr_cast */ + YYSYMBOL_286_5 = 286, /* $@5 */ + YYSYMBOL_287_6 = 287, /* $@6 */ + YYSYMBOL_288_7 = 288, /* $@7 */ + YYSYMBOL_289_8 = 289, /* $@8 */ + YYSYMBOL_290_9 = 290, /* $@9 */ + YYSYMBOL_291_10 = 291, /* $@10 */ + YYSYMBOL_expr_type_decl = 292, /* expr_type_decl */ + YYSYMBOL_293_11 = 293, /* $@11 */ + YYSYMBOL_294_12 = 294, /* $@12 */ + YYSYMBOL_expr_type_info = 295, /* expr_type_info */ + YYSYMBOL_expr_list = 296, /* expr_list */ + YYSYMBOL_block_or_simple_block = 297, /* block_or_simple_block */ + YYSYMBOL_block_or_lambda = 298, /* block_or_lambda */ + YYSYMBOL_capture_entry = 299, /* capture_entry */ + YYSYMBOL_capture_list = 300, /* capture_list */ + YYSYMBOL_optional_capture_list = 301, /* optional_capture_list */ + YYSYMBOL_expr_full_block = 302, /* expr_full_block */ + YYSYMBOL_expr_full_block_assumed_piped = 303, /* expr_full_block_assumed_piped */ + YYSYMBOL_expr_numeric_const = 304, /* expr_numeric_const */ + YYSYMBOL_expr_assign = 305, /* expr_assign */ + YYSYMBOL_expr_named_call = 306, /* expr_named_call */ + YYSYMBOL_expr_method_call = 307, /* expr_method_call */ + YYSYMBOL_func_addr_name = 308, /* func_addr_name */ + YYSYMBOL_func_addr_expr = 309, /* func_addr_expr */ + YYSYMBOL_310_13 = 310, /* $@13 */ + YYSYMBOL_311_14 = 311, /* $@14 */ + YYSYMBOL_312_15 = 312, /* $@15 */ + YYSYMBOL_313_16 = 313, /* $@16 */ + YYSYMBOL_expr_field = 314, /* expr_field */ + YYSYMBOL_315_17 = 315, /* $@17 */ + YYSYMBOL_316_18 = 316, /* $@18 */ + YYSYMBOL_expr_call = 317, /* expr_call */ + YYSYMBOL_expr = 318, /* expr */ + YYSYMBOL_319_19 = 319, /* $@19 */ + YYSYMBOL_320_20 = 320, /* $@20 */ + YYSYMBOL_321_21 = 321, /* $@21 */ + YYSYMBOL_322_22 = 322, /* $@22 */ + YYSYMBOL_323_23 = 323, /* $@23 */ + YYSYMBOL_324_24 = 324, /* $@24 */ + YYSYMBOL_expr_mtag = 325, /* expr_mtag */ + YYSYMBOL_optional_field_annotation = 326, /* optional_field_annotation */ + YYSYMBOL_optional_override = 327, /* optional_override */ + YYSYMBOL_optional_constant = 328, /* optional_constant */ + YYSYMBOL_optional_public_or_private_member_variable = 329, /* optional_public_or_private_member_variable */ + YYSYMBOL_optional_static_member_variable = 330, /* optional_static_member_variable */ + YYSYMBOL_structure_variable_declaration = 331, /* structure_variable_declaration */ + YYSYMBOL_struct_variable_declaration_list = 332, /* struct_variable_declaration_list */ + YYSYMBOL_333_25 = 333, /* $@25 */ + YYSYMBOL_334_26 = 334, /* $@26 */ + YYSYMBOL_335_27 = 335, /* $@27 */ + YYSYMBOL_function_argument_declaration = 336, /* function_argument_declaration */ + YYSYMBOL_function_argument_list = 337, /* function_argument_list */ + YYSYMBOL_tuple_type = 338, /* tuple_type */ + YYSYMBOL_tuple_type_list = 339, /* tuple_type_list */ + YYSYMBOL_tuple_alias_type_list = 340, /* tuple_alias_type_list */ + YYSYMBOL_variant_type = 341, /* variant_type */ + YYSYMBOL_variant_type_list = 342, /* variant_type_list */ + YYSYMBOL_variant_alias_type_list = 343, /* variant_alias_type_list */ + YYSYMBOL_copy_or_move = 344, /* copy_or_move */ + YYSYMBOL_variable_declaration = 345, /* variable_declaration */ + YYSYMBOL_copy_or_move_or_clone = 346, /* copy_or_move_or_clone */ + YYSYMBOL_optional_ref = 347, /* optional_ref */ + YYSYMBOL_let_variable_name_with_pos_list = 348, /* let_variable_name_with_pos_list */ + YYSYMBOL_let_variable_declaration = 349, /* let_variable_declaration */ + YYSYMBOL_global_variable_declaration_list = 350, /* global_variable_declaration_list */ + YYSYMBOL_351_28 = 351, /* $@28 */ + YYSYMBOL_optional_shared = 352, /* optional_shared */ + YYSYMBOL_optional_public_or_private_variable = 353, /* optional_public_or_private_variable */ + YYSYMBOL_global_let = 354, /* global_let */ + YYSYMBOL_355_29 = 355, /* $@29 */ + YYSYMBOL_enum_expression = 356, /* enum_expression */ + YYSYMBOL_enum_list = 357, /* enum_list */ + YYSYMBOL_optional_public_or_private_alias = 358, /* optional_public_or_private_alias */ + YYSYMBOL_single_alias = 359, /* single_alias */ + YYSYMBOL_360_30 = 360, /* $@30 */ + YYSYMBOL_alias_declaration = 361, /* alias_declaration */ + YYSYMBOL_optional_public_or_private_enum = 362, /* optional_public_or_private_enum */ + YYSYMBOL_enum_name = 363, /* enum_name */ + YYSYMBOL_optional_enum_basic_type_declaration = 364, /* optional_enum_basic_type_declaration */ + YYSYMBOL_enum_declaration = 365, /* enum_declaration */ + YYSYMBOL_366_31 = 366, /* $@31 */ + YYSYMBOL_367_32 = 367, /* $@32 */ + YYSYMBOL_optional_structure_parent = 368, /* optional_structure_parent */ + YYSYMBOL_optional_sealed = 369, /* optional_sealed */ + YYSYMBOL_structure_name = 370, /* structure_name */ + YYSYMBOL_class_or_struct = 371, /* class_or_struct */ + YYSYMBOL_optional_public_or_private_structure = 372, /* optional_public_or_private_structure */ + YYSYMBOL_optional_struct_variable_declaration_list = 373, /* optional_struct_variable_declaration_list */ + YYSYMBOL_structure_declaration = 374, /* structure_declaration */ + YYSYMBOL_375_33 = 375, /* $@33 */ + YYSYMBOL_376_34 = 376, /* $@34 */ + YYSYMBOL_variable_name_with_pos_list = 377, /* variable_name_with_pos_list */ + YYSYMBOL_basic_type_declaration = 378, /* basic_type_declaration */ + YYSYMBOL_enum_basic_type_declaration = 379, /* enum_basic_type_declaration */ + YYSYMBOL_structure_type_declaration = 380, /* structure_type_declaration */ + YYSYMBOL_auto_type_declaration = 381, /* auto_type_declaration */ + YYSYMBOL_bitfield_bits = 382, /* bitfield_bits */ + YYSYMBOL_bitfield_alias_bits = 383, /* bitfield_alias_bits */ + YYSYMBOL_bitfield_type_declaration = 384, /* bitfield_type_declaration */ + YYSYMBOL_385_35 = 385, /* $@35 */ + YYSYMBOL_386_36 = 386, /* $@36 */ + YYSYMBOL_table_type_pair = 387, /* table_type_pair */ + YYSYMBOL_dim_list = 388, /* dim_list */ + YYSYMBOL_type_declaration_no_options = 389, /* type_declaration_no_options */ + YYSYMBOL_type_declaration_no_options_no_dim = 390, /* type_declaration_no_options_no_dim */ + YYSYMBOL_391_37 = 391, /* $@37 */ + YYSYMBOL_392_38 = 392, /* $@38 */ + YYSYMBOL_393_39 = 393, /* $@39 */ + YYSYMBOL_394_40 = 394, /* $@40 */ + YYSYMBOL_395_41 = 395, /* $@41 */ + YYSYMBOL_396_42 = 396, /* $@42 */ + YYSYMBOL_397_43 = 397, /* $@43 */ + YYSYMBOL_398_44 = 398, /* $@44 */ + YYSYMBOL_399_45 = 399, /* $@45 */ + YYSYMBOL_400_46 = 400, /* $@46 */ + YYSYMBOL_401_47 = 401, /* $@47 */ + YYSYMBOL_402_48 = 402, /* $@48 */ + YYSYMBOL_403_49 = 403, /* $@49 */ + YYSYMBOL_404_50 = 404, /* $@50 */ + YYSYMBOL_405_51 = 405, /* $@51 */ + YYSYMBOL_406_52 = 406, /* $@52 */ + YYSYMBOL_407_53 = 407, /* $@53 */ + YYSYMBOL_408_54 = 408, /* $@54 */ + YYSYMBOL_409_55 = 409, /* $@55 */ + YYSYMBOL_410_56 = 410, /* $@56 */ + YYSYMBOL_411_57 = 411, /* $@57 */ + YYSYMBOL_412_58 = 412, /* $@58 */ + YYSYMBOL_413_59 = 413, /* $@59 */ + YYSYMBOL_414_60 = 414, /* $@60 */ + YYSYMBOL_415_61 = 415, /* $@61 */ + YYSYMBOL_416_62 = 416, /* $@62 */ + YYSYMBOL_417_63 = 417, /* $@63 */ + YYSYMBOL_type_declaration = 418, /* type_declaration */ + YYSYMBOL_tuple_alias_declaration = 419, /* tuple_alias_declaration */ + YYSYMBOL_420_64 = 420, /* $@64 */ + YYSYMBOL_421_65 = 421, /* $@65 */ + YYSYMBOL_422_66 = 422, /* $@66 */ + YYSYMBOL_variant_alias_declaration = 423, /* variant_alias_declaration */ + YYSYMBOL_424_67 = 424, /* $@67 */ + YYSYMBOL_425_68 = 425, /* $@68 */ + YYSYMBOL_426_69 = 426, /* $@69 */ + YYSYMBOL_bitfield_alias_declaration = 427, /* bitfield_alias_declaration */ + YYSYMBOL_428_70 = 428, /* $@70 */ + YYSYMBOL_429_71 = 429, /* $@71 */ + YYSYMBOL_430_72 = 430, /* $@72 */ + YYSYMBOL_make_decl = 431, /* make_decl */ + YYSYMBOL_make_struct_fields = 432, /* make_struct_fields */ + YYSYMBOL_make_struct_single = 433, /* make_struct_single */ + YYSYMBOL_make_struct_dim = 434, /* make_struct_dim */ + YYSYMBOL_use_initializer = 435, /* use_initializer */ + YYSYMBOL_make_struct_decl = 436, /* make_struct_decl */ + YYSYMBOL_437_73 = 437, /* $@73 */ + YYSYMBOL_438_74 = 438, /* $@74 */ + YYSYMBOL_439_75 = 439, /* $@75 */ + YYSYMBOL_440_76 = 440, /* $@76 */ + YYSYMBOL_441_77 = 441, /* $@77 */ + YYSYMBOL_442_78 = 442, /* $@78 */ + YYSYMBOL_443_79 = 443, /* $@79 */ + YYSYMBOL_444_80 = 444, /* $@80 */ + YYSYMBOL_make_map_tuple = 445, /* make_map_tuple */ + YYSYMBOL_make_tuple_call = 446, /* make_tuple_call */ + YYSYMBOL_447_81 = 447, /* $@81 */ + YYSYMBOL_448_82 = 448, /* $@82 */ + YYSYMBOL_make_dim_decl = 449, /* make_dim_decl */ + YYSYMBOL_450_83 = 450, /* $@83 */ + YYSYMBOL_451_84 = 451, /* $@84 */ + YYSYMBOL_452_85 = 452, /* $@85 */ + YYSYMBOL_453_86 = 453, /* $@86 */ + YYSYMBOL_454_87 = 454, /* $@87 */ + YYSYMBOL_455_88 = 455, /* $@88 */ + YYSYMBOL_456_89 = 456, /* $@89 */ + YYSYMBOL_457_90 = 457, /* $@90 */ + YYSYMBOL_458_91 = 458, /* $@91 */ + YYSYMBOL_459_92 = 459, /* $@92 */ + YYSYMBOL_expr_map_tuple_list = 460, /* expr_map_tuple_list */ + YYSYMBOL_make_table_decl = 461, /* make_table_decl */ + YYSYMBOL_array_comprehension_where = 462, /* array_comprehension_where */ + YYSYMBOL_optional_comma = 463, /* optional_comma */ + YYSYMBOL_array_comprehension = 464 /* array_comprehension */ }; typedef enum yysymbol_kind_t yysymbol_kind_t; @@ -931,14 +930,14 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 2 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 10696 +#define YYLAST 10650 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 209 /* YYNNTS -- Number of nonterminals. */ -#define YYNNTS 257 +#define YYNNTS 256 /* YYNRULES -- Number of rules. */ -#define YYNRULES 765 +#define YYNRULES 764 /* YYNSTATES -- Number of states. */ #define YYNSTATES 1392 @@ -1007,83 +1006,83 @@ static const yytype_uint8 yytranslate[] = /* YYRLINE[YYN] -- Source line where rule number YYN was defined. */ static const yytype_int16 yyrline[] = { - 0, 525, 525, 526, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 547, 553, 554, - 555, 559, 560, 564, 582, 583, 584, 585, 589, 593, - 598, 607, 615, 631, 636, 644, 644, 683, 701, 705, - 708, 712, 718, 727, 730, 736, 737, 741, 745, 746, - 750, 753, 759, 765, 768, 774, 775, 779, 780, 781, - 790, 791, 795, 796, 802, 803, 804, 805, 806, 810, - 816, 822, 828, 836, 846, 855, 862, 863, 864, 865, - 866, 867, 871, 876, 884, 885, 886, 890, 891, 892, - 893, 894, 895, 896, 897, 903, 906, 912, 915, 921, - 922, 923, 927, 940, 958, 961, 969, 980, 991, 1002, - 1005, 1012, 1016, 1023, 1024, 1028, 1029, 1030, 1034, 1037, - 1044, 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, 1136, 1154, 1155, 1156, 1160, - 1166, 1166, 1183, 1187, 1198, 1211, 1212, 1213, 1214, 1215, - 1216, 1217, 1218, 1219, 1220, 1221, 1222, 1223, 1224, 1225, - 1226, 1227, 1228, 1232, 1237, 1243, 1249, 1250, 1254, 1258, - 1265, 1266, 1277, 1281, 1284, 1292, 1292, 1292, 1298, 1301, - 1305, 1309, 1316, 1322, 1326, 1330, 1333, 1336, 1344, 1347, - 1355, 1361, 1367, 1368, 1369, 1373, 1374, 1378, 1379, 1383, - 1388, 1396, 1402, 1414, 1417, 1423, 1423, 1423, 1426, 1426, - 1426, 1431, 1431, 1431, 1439, 1439, 1439, 1445, 1455, 1466, - 1481, 1484, 1490, 1491, 1498, 1509, 1510, 1511, 1515, 1516, - 1517, 1518, 1522, 1527, 1535, 1536, 1540, 1547, 1551, 1557, - 1558, 1559, 1560, 1561, 1562, 1563, 1567, 1568, 1569, 1570, - 1571, 1572, 1573, 1574, 1575, 1576, 1577, 1578, 1579, 1580, - 1581, 1582, 1583, 1584, 1585, 1589, 1596, 1608, 1613, 1623, - 1627, 1634, 1637, 1637, 1637, 1642, 1642, 1642, 1655, 1659, - 1663, 1668, 1675, 1675, 1675, 1682, 1686, 1695, 1699, 1702, - 1708, 1709, 1710, 1711, 1712, 1713, 1714, 1715, 1716, 1717, - 1718, 1719, 1720, 1721, 1722, 1723, 1724, 1725, 1726, 1727, - 1728, 1729, 1730, 1731, 1732, 1733, 1734, 1735, 1736, 1737, - 1738, 1739, 1740, 1741, 1742, 1743, 1749, 1750, 1751, 1752, - 1753, 1766, 1767, 1768, 1769, 1770, 1771, 1772, 1773, 1774, - 1775, 1776, 1777, 1780, 1783, 1784, 1787, 1787, 1787, 1790, - 1795, 1799, 1803, 1803, 1803, 1808, 1811, 1815, 1815, 1815, - 1820, 1823, 1824, 1825, 1826, 1827, 1828, 1829, 1830, 1831, - 1833, 1837, 1841, 1842, 1843, 1844, 1845, 1846, 1847, 1851, - 1855, 1859, 1863, 1867, 1871, 1875, 1879, 1883, 1890, 1891, - 1895, 1896, 1897, 1901, 1902, 1906, 1907, 1908, 1912, 1913, - 1917, 1928, 1931, 1931, 1950, 1949, 1963, 1962, 1978, 1987, - 1997, 1998, 2002, 2005, 2014, 2015, 2019, 2022, 2025, 2041, - 2050, 2051, 2055, 2058, 2061, 2075, 2076, 2080, 2086, 2092, - 2095, 2099, 2108, 2109, 2110, 2114, 2115, 2119, 2126, 2131, - 2140, 2146, 2157, 2160, 2165, 2176, 2179, 2179, 2199, 2200, - 2204, 2205, 2206, 2210, 2213, 2213, 2231, 2235, 2242, 2245, - 2258, 2275, 2276, 2277, 2282, 2282, 2308, 2312, 2313, 2314, - 2318, 2328, 2331, 2337, 2342, 2337, 2357, 2358, 2362, 2363, - 2367, 2373, 2374, 2378, 2379, 2380, 2384, 2387, 2393, 2398, - 2393, 2412, 2419, 2424, 2433, 2439, 2450, 2451, 2452, 2453, - 2454, 2455, 2456, 2457, 2458, 2459, 2460, 2461, 2462, 2463, - 2464, 2465, 2466, 2467, 2468, 2469, 2470, 2471, 2472, 2473, - 2474, 2475, 2476, 2480, 2481, 2482, 2483, 2484, 2485, 2486, - 2487, 2491, 2502, 2506, 2513, 2525, 2532, 2541, 2546, 2556, - 2569, 2569, 2569, 2582, 2586, 2593, 2597, 2601, 2605, 2612, - 2615, 2633, 2634, 2635, 2636, 2637, 2637, 2637, 2641, 2646, - 2653, 2653, 2660, 2664, 2668, 2673, 2678, 2683, 2688, 2692, - 2696, 2701, 2705, 2709, 2714, 2714, 2714, 2720, 2727, 2727, - 2727, 2732, 2732, 2732, 2738, 2738, 2738, 2743, 2747, 2747, - 2747, 2752, 2752, 2752, 2761, 2765, 2765, 2765, 2770, 2770, - 2770, 2779, 2783, 2783, 2783, 2788, 2788, 2788, 2797, 2797, - 2797, 2803, 2803, 2803, 2812, 2815, 2826, 2842, 2847, 2852, - 2842, 2877, 2882, 2888, 2877, 2913, 2918, 2923, 2913, 2953, - 2954, 2955, 2956, 2957, 2961, 2968, 2975, 2981, 2987, 2994, - 3001, 3007, 3017, 3025, 3030, 3037, 3038, 3042, 3042, 3042, - 3050, 3050, 3050, 3057, 3057, 3057, 3064, 3064, 3064, 3075, - 3081, 3087, 3093, 3093, 3093, 3103, 3111, 3111, 3111, 3121, - 3121, 3121, 3131, 3131, 3131, 3141, 3149, 3149, 3149, 3157, - 3164, 3164, 3164, 3174, 3177, 3183, 3191, 3199, 3207, 3220, - 3221, 3225, 3226, 3231, 3234, 3237 + 0, 524, 524, 525, 530, 531, 532, 533, 534, 535, + 536, 537, 538, 539, 540, 541, 542, 546, 552, 553, + 554, 558, 559, 563, 581, 582, 583, 584, 588, 592, + 597, 606, 614, 630, 635, 643, 643, 682, 700, 704, + 707, 711, 717, 726, 729, 735, 736, 740, 744, 745, + 749, 752, 758, 764, 767, 773, 774, 778, 779, 780, + 789, 790, 794, 795, 801, 802, 803, 804, 805, 809, + 815, 821, 827, 835, 845, 854, 861, 862, 863, 864, + 865, 866, 870, 875, 883, 884, 885, 889, 890, 891, + 892, 893, 894, 895, 896, 902, 905, 911, 914, 920, + 921, 922, 926, 939, 957, 960, 968, 979, 990, 1001, + 1004, 1011, 1015, 1022, 1023, 1027, 1028, 1029, 1033, 1036, + 1043, 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, 1135, 1153, 1154, 1155, 1159, + 1165, 1165, 1182, 1186, 1197, 1210, 1211, 1212, 1213, 1214, + 1215, 1216, 1217, 1218, 1219, 1220, 1221, 1222, 1223, 1224, + 1225, 1226, 1227, 1231, 1236, 1242, 1248, 1249, 1253, 1257, + 1264, 1265, 1276, 1280, 1283, 1291, 1291, 1291, 1297, 1300, + 1304, 1308, 1315, 1321, 1325, 1329, 1332, 1335, 1343, 1346, + 1354, 1360, 1361, 1362, 1366, 1367, 1371, 1372, 1376, 1381, + 1389, 1395, 1407, 1410, 1416, 1416, 1416, 1419, 1419, 1419, + 1424, 1424, 1424, 1432, 1432, 1432, 1438, 1448, 1459, 1474, + 1477, 1483, 1484, 1491, 1502, 1503, 1504, 1508, 1509, 1510, + 1511, 1515, 1520, 1528, 1529, 1533, 1540, 1544, 1550, 1551, + 1552, 1553, 1554, 1555, 1556, 1560, 1561, 1562, 1563, 1564, + 1565, 1566, 1567, 1568, 1569, 1570, 1571, 1572, 1573, 1574, + 1575, 1576, 1577, 1578, 1582, 1589, 1601, 1606, 1616, 1620, + 1627, 1630, 1630, 1630, 1635, 1635, 1635, 1648, 1652, 1656, + 1661, 1668, 1668, 1668, 1675, 1679, 1688, 1692, 1695, 1701, + 1702, 1703, 1704, 1705, 1706, 1707, 1708, 1709, 1710, 1711, + 1712, 1713, 1714, 1715, 1716, 1717, 1718, 1719, 1720, 1721, + 1722, 1723, 1724, 1725, 1726, 1727, 1728, 1729, 1730, 1731, + 1732, 1733, 1734, 1735, 1736, 1742, 1743, 1744, 1745, 1746, + 1759, 1760, 1761, 1762, 1763, 1764, 1765, 1766, 1767, 1768, + 1769, 1770, 1773, 1776, 1777, 1780, 1780, 1780, 1783, 1788, + 1792, 1796, 1796, 1796, 1801, 1804, 1808, 1808, 1808, 1813, + 1816, 1817, 1818, 1819, 1820, 1821, 1822, 1823, 1824, 1826, + 1830, 1834, 1835, 1836, 1837, 1838, 1839, 1840, 1844, 1848, + 1852, 1856, 1860, 1864, 1868, 1872, 1876, 1883, 1884, 1888, + 1889, 1890, 1894, 1895, 1899, 1900, 1901, 1905, 1906, 1910, + 1921, 1924, 1924, 1943, 1942, 1956, 1955, 1971, 1980, 1990, + 1991, 1995, 1998, 2007, 2008, 2012, 2015, 2018, 2034, 2043, + 2044, 2048, 2051, 2054, 2068, 2069, 2073, 2079, 2085, 2088, + 2092, 2101, 2102, 2103, 2107, 2108, 2112, 2119, 2124, 2133, + 2139, 2150, 2153, 2158, 2169, 2172, 2172, 2192, 2193, 2197, + 2198, 2199, 2203, 2206, 2206, 2224, 2228, 2235, 2238, 2251, + 2268, 2269, 2270, 2275, 2275, 2301, 2305, 2306, 2307, 2311, + 2321, 2324, 2330, 2335, 2330, 2350, 2351, 2355, 2356, 2360, + 2366, 2367, 2371, 2372, 2373, 2377, 2380, 2386, 2391, 2386, + 2405, 2412, 2417, 2426, 2432, 2443, 2444, 2445, 2446, 2447, + 2448, 2449, 2450, 2451, 2452, 2453, 2454, 2455, 2456, 2457, + 2458, 2459, 2460, 2461, 2462, 2463, 2464, 2465, 2466, 2467, + 2468, 2469, 2473, 2474, 2475, 2476, 2477, 2478, 2479, 2480, + 2484, 2495, 2499, 2506, 2518, 2525, 2534, 2539, 2549, 2562, + 2562, 2562, 2575, 2579, 2586, 2590, 2594, 2598, 2605, 2608, + 2626, 2627, 2628, 2629, 2630, 2630, 2630, 2634, 2639, 2646, + 2646, 2653, 2657, 2661, 2666, 2671, 2676, 2681, 2685, 2689, + 2694, 2698, 2702, 2707, 2707, 2707, 2713, 2720, 2720, 2720, + 2725, 2725, 2725, 2731, 2731, 2731, 2736, 2740, 2740, 2740, + 2745, 2745, 2745, 2754, 2758, 2758, 2758, 2763, 2763, 2763, + 2772, 2776, 2776, 2776, 2781, 2781, 2781, 2790, 2790, 2790, + 2796, 2796, 2796, 2805, 2808, 2819, 2835, 2840, 2845, 2835, + 2870, 2875, 2881, 2870, 2906, 2911, 2916, 2906, 2946, 2947, + 2948, 2949, 2950, 2954, 2961, 2968, 2974, 2980, 2987, 2994, + 3000, 3010, 3018, 3023, 3030, 3031, 3035, 3035, 3035, 3043, + 3043, 3043, 3050, 3050, 3050, 3057, 3057, 3057, 3068, 3074, + 3080, 3086, 3086, 3086, 3096, 3104, 3104, 3104, 3114, 3114, + 3114, 3124, 3124, 3124, 3134, 3142, 3142, 3142, 3150, 3157, + 3157, 3157, 3167, 3170, 3176, 3184, 3192, 3200, 3213, 3214, + 3218, 3219, 3224, 3227, 3230 }; #endif @@ -1164,13 +1163,13 @@ static const char *const yytname[] = "type_declaration_no_options_list", "name_in_namespace", "expression_delete", "new_type_declaration", "$@3", "$@4", "expr_new", "expression_break", "expression_continue", "expression_return", - "expression_yield_no_pipe", "expression_yield", "expression_try_catch", - "kwd_let_var_or_nothing", "kwd_let", "optional_in_scope", - "tuple_expansion", "tuple_expansion_variable_declaration", - "expression_let", "expr_cast", "$@5", "$@6", "$@7", "$@8", "$@9", "$@10", - "expr_type_decl", "$@11", "$@12", "expr_type_info", "expr_list", - "block_or_simple_block", "block_or_lambda", "capture_entry", - "capture_list", "optional_capture_list", "expr_full_block", + "expression_yield", "expression_try_catch", "kwd_let_var_or_nothing", + "kwd_let", "optional_in_scope", "tuple_expansion", + "tuple_expansion_variable_declaration", "expression_let", "expr_cast", + "$@5", "$@6", "$@7", "$@8", "$@9", "$@10", "expr_type_decl", "$@11", + "$@12", "expr_type_info", "expr_list", "block_or_simple_block", + "block_or_lambda", "capture_entry", "capture_list", + "optional_capture_list", "expr_full_block", "expr_full_block_assumed_piped", "expr_numeric_const", "expr_assign", "expr_named_call", "expr_method_call", "func_addr_name", "func_addr_expr", "$@13", "$@14", "$@15", "$@16", "expr_field", "$@17", @@ -1221,12 +1220,12 @@ yysymbol_name (yysymbol_kind_t yysymbol) } #endif -#define YYPACT_NINF (-1245) +#define YYPACT_NINF (-1219) #define yypact_value_is_default(Yyn) \ ((Yyn) == YYPACT_NINF) -#define YYTABLE_NINF (-676) +#define YYTABLE_NINF (-675) #define yytable_value_is_error(Yyn) \ ((Yyn) == YYTABLE_NINF) @@ -1235,146 +1234,146 @@ yysymbol_name (yysymbol_kind_t yysymbol) STATE-NUM. */ static const yytype_int16 yypact[] = { - -1245, 29, -1245, -1245, 52, -85, 68, 445, -1245, -112, - 445, 445, 445, -1245, 213, 282, -1245, -1245, -32, -1245, - -1245, -1245, 318, -1245, 96, -1245, -1245, -1245, -1245, -1245, - -1245, -1245, -1245, -1245, -1245, -3, -1245, 79, 91, 135, - -1245, -1245, 68, 21, -1245, -1245, -1245, 172, 189, -1245, - -1245, 96, 211, 212, 233, 238, 313, -1245, -1245, -1245, - 282, 282, 282, 274, -1245, 519, -123, -1245, -1245, -1245, - -1245, 490, 497, 498, -1245, 499, 12, 52, 345, -85, - 325, 410, -1245, 418, 423, -1245, -1245, -1245, 501, -1245, - -1245, -1245, -1245, 428, 387, -1245, -1245, -6, 52, 282, - 282, 282, 282, -1245, -1245, -1245, -1245, -1245, -1245, -1245, - 453, -1245, -1245, -1245, -1245, -1245, 393, -1245, -1245, -1245, - -1245, -1245, 413, 78, -1245, -1245, -1245, -1245, 559, -1245, - -1245, 443, -1245, -1245, -1245, 454, 457, 458, -1245, -1245, - 466, -1245, -50, -1245, 162, 492, 519, 10535, -1245, 452, - 530, -1245, 436, -1245, -1245, 507, -1245, -1245, -1245, -1245, - -1245, -1245, -1245, 59, -1245, 6457, -1245, -1245, -1245, -1245, - -1245, 9333, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, - -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, - -1245, -1245, -1245, -1245, -1245, -1245, -1245, 610, 617, -1245, - 451, 504, 430, 506, -1245, 515, -1245, 508, 52, 460, - -82, -1245, -1245, -1245, 78, -1245, 493, 495, 496, 477, - 500, 503, -1245, -1245, -1245, 479, -1245, -1245, -1245, -1245, - -1245, 505, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, - -1245, -1245, -1245, 509, -1245, -1245, -1245, 512, 516, -1245, - -1245, -1245, -1245, 517, 518, 482, 213, -1245, -1245, -1245, - -1245, -1245, -1245, 146, 487, 527, -1245, -1245, 529, 531, - -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, - -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, - 537, 510, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, - -1245, -1245, -1245, -1245, 678, -1245, -1245, -1245, -1245, -1245, - -1245, -1245, -1245, -1245, -1245, -1245, -1245, 542, 511, -1245, - -1245, -98, 524, -1245, -1245, -1245, -1245, -1245, -1245, -1245, - -1245, -1245, -1245, -1245, -1245, 525, 539, -1245, 436, -1245, - 52, 513, 664, 365, -1245, -1245, -1245, -1245, -1245, 6114, - -1245, -1245, 548, -1245, 200, 307, 309, -1245, -1245, 6114, - 180, -1245, -1245, -1245, 8, -1245, -1245, 7, -1245, 3202, - -1245, 520, 1260, -1245, 533, 1399, 116, -1245, -1245, -1245, - -1245, 554, 585, -1245, 522, -1245, 77, -1245, -26, 6457, - -1245, 1820, 557, 213, -1245, -1245, -1245, -82, -1245, 6114, - 558, 560, 6457, -1245, -2, 6457, 6457, 6457, 536, 543, - -1245, -1245, 51, 526, 544, 20, -1245, 203, 532, 545, - 547, 534, 549, 237, 550, -1245, 240, 551, 553, 6114, - 6114, 538, 540, 541, 546, 552, 555, -1245, -1245, -1245, - -1245, -1245, -1245, -1245, -1245, -1245, 3398, 6114, 6114, 6114, - 6114, 6114, 2814, 6114, -1245, 561, -1245, -1245, -1245, 556, - -1245, -1245, -1245, -1245, 521, -1245, -1245, -1245, -1245, -1245, - -1245, 150, 1537, -1245, 566, -1245, -1245, -1245, -1245, -1245, - -1245, 6457, 6457, 535, 580, 6457, 451, 6457, 451, 6457, - 451, 6549, 582, 6543, -1245, 6114, -1245, -1245, -1245, -1245, - 571, -1245, -1245, 8776, 3592, -1245, -1245, 586, -1245, -12, - -1245, 575, 487, 578, 569, -1245, 581, 583, -1245, -1245, - 6114, -1245, -1245, -70, -118, -1245, 487, -1245, 6114, -1245, - -1245, 572, 3786, -1245, 504, 3980, 6114, 590, -1245, 584, - 600, 4174, 504, 4368, 722, -1245, 606, 608, 588, 752, - -1245, -1245, -1245, -1245, -1245, -1245, -1245, 611, 614, 623, - 624, 625, -1245, -1245, 723, -1245, 626, 9217, 620, -1245, - 622, -1245, 25, -1245, 6579, -1245, 758, 165, -1245, -1245, - -1245, 6114, -39, 321, 616, 67, -1245, -1245, -1245, 598, - 599, -1245, 213, -1245, 621, 627, 628, -1245, 6114, 6457, - 6114, 6114, -1245, -1245, 6114, -1245, -1245, 6114, -1245, -1245, - 6114, -1245, 6457, 53, 53, 6114, 6114, 6114, 6114, 6114, - 6114, 484, -70, 9364, -1245, 629, 53, 53, -15, 53, - 53, -70, 792, 630, 9989, 630, 155, 3008, 607, -1245, - 601, 521, -1245, 1106, 1536, 6114, 6114, -1245, -1245, 6114, - 6114, 6114, 6114, 649, 6114, 245, 6114, 6114, 6114, 6114, - 6114, 6114, 6114, 6114, 6114, 4562, 6114, 6114, 6114, 6114, - 6114, 6114, 6114, 6114, 6114, 6114, -17, 6114, -1245, 4756, - 389, 401, -1245, -1245, -35, 402, 524, 414, 524, 415, - 524, -1245, 295, -1245, 303, -1245, 6457, 609, 636, -1245, - -1245, -1245, 8809, -1245, 650, 6457, -1245, -1245, 6457, -1245, - -1245, 6671, 615, 780, -1245, 98, -1245, 9463, -70, 6114, - 9989, 810, 6114, 9989, 9463, 646, -1245, 645, 672, 9989, - -1245, 6114, 9989, 658, -1245, -1245, 6114, 631, -1245, -1245, - -1245, -1245, -1245, -1245, -89, -1245, 6114, 6114, 6114, 6114, - 6114, 6114, 6114, 6114, 6114, 6114, 6114, 6114, 6114, 6114, - 6114, 6114, 6114, 6114, 6114, 557, -1245, -1245, 821, 436, - -1245, 668, -1245, 6114, 9552, -1245, -1245, -1245, 6457, 6457, - 6457, 6457, 761, 6114, 4950, 6457, -1245, -1245, -1245, 6457, - 630, 308, 629, 6770, 6457, 6457, 6801, 6457, 6457, 630, - 6457, 6457, 630, 6457, 647, 6900, 6992, 7025, 7117, 7216, - 7247, -1245, 6114, 441, 15, 6114, 6114, 661, 26, -70, - 6114, 633, 632, 635, 637, 310, -1245, -1245, 639, 157, - 2618, -1245, 185, 656, 640, 642, 451, 2024, -1245, 607, - 662, 643, -1245, -1245, 665, 644, -1245, -1245, 181, 181, - 742, 742, 331, 331, 648, 32, 651, -1245, 8901, -61, - -61, 566, 181, 181, 10217, 933, 10135, 10021, 10504, 9588, - 10249, 10331, 10363, 742, 742, 464, 464, 32, 32, 32, - 301, 6114, 657, 659, 348, 6114, 833, 8993, -1245, 204, - -1245, -1245, 690, -1245, -1245, 677, -1245, 679, -1245, 680, - 6549, -1245, 582, -1245, 320, 487, -1245, 6114, -1245, -1245, - 487, 487, -1245, 6114, 692, -1245, 706, -1245, 6457, -1245, - 6114, -1245, 31, 9989, 504, 9989, -1245, 6114, -1245, -1245, - 9989, -1245, 7346, 6114, 712, -1245, -1245, 9989, 9989, 9989, - 9989, 9989, 9989, 9989, 9989, 9989, 9989, 9989, 9989, 9989, - 9989, 9989, 9989, 9989, 9989, 9989, -1245, 707, 502, 812, - 705, -1245, 9677, -1245, -1245, -1245, -1245, 487, 695, 696, - 416, -1245, -62, 682, 724, 7438, 421, 6457, 6457, 6457, - 698, 683, 6457, 685, 686, -1245, 699, 708, -1245, 709, - 710, 687, 711, 713, 694, 715, 607, -1245, -1245, -1245, - -1245, -1245, 693, 9759, 6114, 9989, -1245, -1245, 6114, 40, - 9989, -1245, -1245, 6114, 6114, 6457, 451, 6114, 6114, 6114, - 44, 6308, -1245, 379, -1245, -11, 524, -1245, 451, -1245, - 6114, -1245, 6114, 5144, 6114, -1245, 717, 702, -1245, -1245, - 6114, 703, -1245, 9026, 6114, 5338, 704, -1245, 9118, -1245, - -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, - -1245, -1245, -1245, -1245, -1245, -1245, 6457, 714, 7471, -1245, - 860, -81, 9989, 6114, -1245, 9989, 2228, 504, 7563, -1245, - 209, -1245, -1245, -1245, 390, -1245, -7, -1245, -1245, -1245, - -1245, -1245, 126, -1245, 718, -1245, 339, -1245, -1245, 725, - 726, 727, -1245, -1245, 729, 6114, -1245, -1245, -1245, -1245, - -1245, -1245, -1245, -1245, -1245, -1245, 720, 5532, -1245, 395, - 396, 6114, 7662, 7693, 730, 524, 7792, 9989, 9989, 728, - 2618, 721, 149, 748, 755, 756, 766, -1245, 92, -41, - 524, 6457, 7884, 6457, 7917, -1245, 218, 8009, -1245, 6114, - 10103, 6114, -1245, 8108, -1245, 228, 6114, -1245, -1245, -1245, - -1245, -1245, 487, 6114, -1245, 773, 6114, 260, -1245, 514, - 892, 774, 358, 890, -7, -1245, -1245, 502, 732, 741, - -1245, -1245, 785, 6114, -1245, -1245, -1245, -1245, 743, 744, - 629, 6114, 6114, 6114, 745, 761, 746, 747, 5726, -1245, - 265, 6114, 6114, 398, -1245, -1245, -1245, 767, 160, -1245, - 186, 6114, 6114, 6114, -1245, -1245, -1245, -1245, -11, 753, - 5920, -1245, -1245, 504, 770, -1245, 422, -1245, -1245, -1245, - 6457, 8139, 8238, -1245, -1245, 8330, 754, -1245, 9989, 504, - 504, -1245, -1245, 757, -1245, 2422, 786, -1245, 6457, -2, - -1245, -1245, 890, -70, 761, 761, 775, 8363, 762, 763, - 765, 6114, 6114, 768, 742, 742, 742, 6114, -1245, 761, - 382, -1245, 8455, -1245, 787, 9791, 6114, 335, -1245, 6114, - 6114, 769, 8554, 9989, 9989, -1245, -1245, 6114, 10021, -1245, - -1245, -1245, 431, -1245, -1245, -1245, -1245, -1245, -1245, 6114, - -1245, -1245, -1245, -1245, -1245, 9989, -1245, -2, 6114, 10535, - -1245, -1245, 382, 382, 6114, -1245, 761, 761, 382, 630, - 629, -1245, 630, 382, 656, -8, -1245, 910, 800, 772, - 9791, -1245, 335, 9989, 9989, -1245, 168, 10103, -1245, -1245, - -1245, 8585, 6114, 9873, 801, 10535, 47, 55, 8684, 382, - 382, 108, 771, 776, 778, 112, 382, -1245, 6114, -1245, - -1245, 781, -1245, 6114, 6114, -1245, 504, 9907, -1245, -1245, - 504, -1245, -1245, -1245, 113, 132, -1245, -1245, -1245, -1245, - -1245, 656, 9989, -1245, 9989, 9989, 514, -1245, -1245, -1245, - -1245, -1245 + -1219, 27, -1219, -1219, 52, 26, -107, 263, -1219, -88, + 263, 263, 263, -1219, -5, 36, -1219, -1219, -4, -1219, + -1219, -1219, 376, -1219, 144, -1219, -1219, -1219, -1219, -1219, + -1219, -1219, -1219, -1219, -1219, -21, -1219, 41, 81, 83, + -1219, -1219, -107, 7, -1219, -1219, -1219, 116, 108, -1219, + -1219, 144, 166, 196, 254, 270, 165, -1219, -1219, -1219, + 36, 36, 36, 110, -1219, 449, -27, -1219, -1219, -1219, + -1219, 466, 467, 471, -1219, 494, 16, 52, 243, 26, + 241, 325, -1219, 379, 407, -1219, -1219, -1219, 496, -1219, + -1219, -1219, -1219, 419, 286, -1219, -1219, -89, 52, 36, + 36, 36, 36, -1219, -1219, -1219, -1219, -1219, -1219, -1219, + 435, -1219, -1219, -1219, -1219, -1219, 433, -1219, -1219, -1219, + -1219, -1219, 402, 97, -1219, -1219, -1219, -1219, 566, -1219, + -1219, 451, -1219, -1219, -1219, 461, 479, 481, -1219, -1219, + 495, -1219, 96, -1219, 353, 521, 449, 10489, -1219, 472, + 572, -1219, 473, -1219, -1219, 538, -1219, -1219, -1219, -1219, + -1219, -1219, -1219, 141, -1219, 6458, -1219, -1219, -1219, -1219, + -1219, 9334, -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, + -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, + -1219, -1219, -1219, -1219, -1219, -1219, -1219, 651, 652, -1219, + 484, 520, 643, 522, -1219, 531, -1219, 524, 52, 501, + 187, -1219, -1219, -1219, 97, -1219, 512, 513, 525, 506, + 529, 530, -1219, -1219, -1219, 511, -1219, -1219, -1219, -1219, + -1219, 532, -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, + -1219, -1219, -1219, 534, -1219, -1219, -1219, 535, 539, -1219, + -1219, -1219, -1219, 540, 541, 518, -5, -1219, -1219, -1219, + -1219, -1219, -1219, 67, 545, 569, -1219, -1219, 570, 571, + -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, + -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, + 576, 542, -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, + -1219, -1219, -1219, -1219, 712, -1219, -1219, -1219, -1219, -1219, + -1219, -1219, -1219, -1219, -1219, -1219, -1219, 577, 543, -1219, + -1219, -45, 567, -1219, -1219, -1219, -1219, -1219, -1219, -1219, + -1219, -1219, -1219, -1219, -1219, 574, 580, -1219, 473, -1219, + 52, 546, 709, 361, -1219, -1219, -1219, -1219, -1219, 6115, + -1219, -1219, 595, -1219, 159, 236, 239, -1219, -1219, 6115, + -74, -1219, -1219, -1219, 3, -1219, -1219, 8, -1219, 3203, + -1219, 556, 1261, -1219, 582, 1400, -12, -1219, -1219, -1219, + -1219, 599, 630, -1219, 558, -1219, 35, -1219, -31, 6458, + -1219, 1821, 602, -5, -1219, -1219, -1219, 187, -1219, 6115, + 607, 608, 6458, -1219, -86, 6458, 6458, 6458, 586, 588, + -1219, -1219, 70, 573, 589, 22, -1219, 228, 575, 590, + 592, 578, 601, 257, 604, -1219, 288, 613, 614, 6115, + 6115, 587, 596, 597, 605, 609, 610, -1219, -1219, -1219, + -1219, -1219, -1219, -1219, -1219, -1219, 3399, 6115, 6115, 6115, + 6115, 6115, 2815, 6115, -1219, 612, -1219, -1219, -1219, 611, + -1219, -1219, -1219, -1219, 618, -1219, -1219, -1219, -1219, -1219, + -1219, -116, 1538, -1219, 621, -1219, -1219, -1219, -1219, -1219, + -1219, 6458, 6458, 598, 661, 6458, 484, 6458, 484, 6458, + 484, 6550, 665, 6544, -1219, 6115, -1219, -1219, -1219, -1219, + 624, -1219, -1219, 8777, 3593, -1219, -1219, 667, -1219, -17, + -1219, 641, 545, 659, 650, -1219, 660, 662, -1219, -1219, + 6115, -1219, -1219, 240, -94, -1219, 545, -1219, 6115, -1219, + -1219, 629, 3787, -1219, 520, 3981, 6115, 673, -1219, 664, + 682, 4175, 520, 4369, 801, -1219, 668, 669, 639, 835, + -1219, -1219, -1219, -1219, -1219, 674, -1219, 676, 677, 679, + 681, 684, -1219, 784, -1219, 685, 9218, 675, -1219, 680, + -1219, 17, -1219, 6580, -1219, 816, -10, -1219, -1219, -1219, + 6115, -113, 179, 686, 255, -1219, -1219, -1219, 655, 656, + -1219, -5, -1219, 688, 689, 690, -1219, 6115, 6458, 6115, + 6115, -1219, -1219, 6115, -1219, -1219, 6115, -1219, -1219, 6115, + -1219, 6458, 527, 527, 6115, 6115, 6115, 6115, 6115, 6115, + 450, 240, 9365, -1219, 692, 527, 527, -66, 527, 527, + 240, 858, 698, 9990, 698, 101, 3009, 683, -1219, 670, + 618, -1219, 1105, 1537, 6115, 6115, -1219, -1219, 6115, 6115, + 6115, 6115, 715, 6115, 278, 6115, 6115, 6115, 6115, 6115, + 6115, 6115, 6115, 6115, 4563, 6115, 6115, 6115, 6115, 6115, + 6115, 6115, 6115, 6115, 6115, 277, 6115, -1219, 4757, 397, + 398, -1219, -1219, -92, 400, 567, 405, 567, 427, 567, + -1219, 223, -1219, 249, -1219, 6458, 687, 701, -1219, -1219, + -1219, 8810, -1219, 711, 6458, -1219, -1219, 6458, -1219, -1219, + 6672, 691, 840, -1219, -36, -1219, 9464, 240, 6115, 9990, + 871, 6115, 9990, 9464, 718, -1219, 707, 735, 9990, -1219, + 6115, 9990, 721, -1219, -1219, 6115, 693, -1219, -1219, -1219, + -1219, -1219, -1219, -1219, -65, -1219, 6115, 6115, 6115, 6115, + 6115, 6115, 6115, 6115, 6115, 6115, 6115, 6115, 6115, 6115, + 6115, 6115, 6115, 6115, 6115, 602, -1219, -1219, 886, 473, + -1219, 737, -1219, 6115, 9553, -1219, -1219, -1219, 6458, 6458, + 6458, 6458, 830, 6115, 4951, 6458, -1219, -1219, -1219, 6458, + 698, 305, 692, 6771, 6458, 6458, 6802, 6458, 6458, 698, + 6458, 6458, 698, 6458, 716, 6901, 6993, 7026, 7118, 7217, + 7248, -1219, 6115, 463, 13, 6115, 6115, 730, 15, 240, + 6115, 699, 702, 704, 705, 284, -1219, -1219, 706, 21, + 2619, -1219, 185, 726, 708, 710, 484, 2025, -1219, 683, + 722, 719, -1219, -1219, 727, 720, -1219, -1219, 183, 183, + 803, 803, 678, 678, 724, 445, 733, -1219, 8902, -19, + -19, 621, 183, 183, 10250, 10136, 10218, 10022, 10396, 9589, + 330, 10332, 477, 803, 803, 164, 164, 445, 445, 445, + 322, 6115, 740, 741, 328, 6115, 913, 8994, -1219, 197, + -1219, -1219, 754, -1219, -1219, 731, -1219, 749, -1219, 761, + 6550, -1219, 665, -1219, 324, 545, -1219, 6115, -1219, -1219, + 545, 545, -1219, 6115, 764, -1219, 786, -1219, 6458, -1219, + 6115, -1219, 23, 9990, 520, 9990, -1219, 6115, -1219, -1219, + 9990, -1219, 7347, 6115, 787, -1219, -1219, 9990, 9990, 9990, + 9990, 9990, 9990, 9990, 9990, 9990, 9990, 9990, 9990, 9990, + 9990, 9990, 9990, 9990, 9990, 9990, -1219, 779, 497, 884, + 780, -1219, 9678, -1219, -1219, -1219, -1219, 545, 767, 769, + 468, -1219, 82, 750, 795, 7439, 488, 6458, 6458, 6458, + 772, 753, 6458, 755, 756, -1219, 775, 777, -1219, 781, + 782, 765, 788, 789, 766, 790, 683, -1219, -1219, -1219, + -1219, -1219, 768, 9760, 6115, 9990, -1219, -1219, 6115, 25, + 9990, -1219, -1219, 6115, 6115, 6458, 484, 6115, 6115, 6115, + -22, 6309, -1219, 369, -1219, -30, 567, -1219, 484, -1219, + 6115, -1219, 6115, 5145, 6115, -1219, 785, 773, -1219, -1219, + 6115, 774, -1219, 9027, 6115, 5339, 783, -1219, 9119, -1219, + -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, + -1219, -1219, -1219, -1219, -1219, -1219, 6458, 791, 7472, -1219, + 934, -47, 9990, 6115, -1219, 9990, 2229, 520, 7564, -1219, + 201, -1219, -1219, -1219, 441, -1219, -8, -1219, -1219, -1219, + -1219, -1219, 90, -1219, 776, -1219, 339, -1219, -1219, 794, + 798, 799, -1219, -1219, 800, 6115, -1219, -1219, -1219, -1219, + -1219, -1219, -1219, -1219, -1219, -1219, 793, 5533, -1219, 383, + 386, 6115, 7663, 7694, 809, 567, 7793, 9990, 9990, 797, + 2619, 796, 139, 825, 827, 837, 838, -1219, 45, 186, + 567, 6458, 7885, 6458, 7918, -1219, 212, 8010, -1219, 6115, + 10104, 6115, -1219, 8109, -1219, 218, 6115, -1219, -1219, -1219, + -1219, -1219, 545, 6115, -1219, 845, 6115, 222, -1219, 514, + 996, 847, 362, 977, -8, -1219, -1219, 497, 806, 807, + -1219, -1219, 852, 6115, -1219, -1219, -1219, -1219, 810, 811, + 692, 6115, 6115, 6115, 812, 830, 813, 814, 5727, -1219, + 230, 6115, 6115, 399, -1219, -1219, -1219, 834, 151, -1219, + 80, 6115, 6115, 6115, -1219, -1219, -1219, -1219, -30, 818, + 5921, -1219, -1219, 520, 841, -1219, 489, -1219, -1219, -1219, + 6458, 8140, 8239, -1219, -1219, 8331, 817, -1219, 9990, 520, + 520, -1219, -1219, 819, -1219, 2423, 854, -1219, 6458, -86, + -1219, -1219, 977, 240, 830, 830, 844, 8364, 826, 828, + 832, 6115, 6115, 829, 803, 803, 803, 6115, -1219, 830, + 374, -1219, 8456, -1219, 860, 9792, 6115, 272, -1219, 6115, + 6115, 833, 8555, 9990, 9990, -1219, -1219, 6115, 10022, -1219, + -1219, -1219, 490, -1219, -1219, -1219, -1219, -1219, -1219, 6115, + -1219, -1219, -1219, -1219, -1219, 9990, -1219, -86, 6115, 10489, + -1219, -1219, 374, 374, 6115, -1219, 830, 830, 374, 698, + 692, -1219, 698, 374, 726, -26, -1219, 985, 869, 839, + 9792, -1219, 272, 9990, 9990, -1219, 153, 10104, -1219, -1219, + -1219, 8586, 6115, 9874, 870, 10489, 66, 103, 8685, 374, + 374, 118, 842, 843, 846, 127, 374, -1219, 6115, -1219, + -1219, 850, -1219, 6115, 6115, -1219, 520, 9908, -1219, -1219, + 520, -1219, -1219, -1219, 133, 135, -1219, -1219, -1219, -1219, + -1219, 726, 9990, -1219, 9990, 9990, 514, -1219, -1219, -1219, + -1219, -1219 }; /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM. @@ -1382,208 +1381,208 @@ static const yytype_int16 yypact[] = means the default is an error. */ static const yytype_int16 yydefact[] = { - 2, 113, 1, 265, 0, 0, 0, 531, 266, 0, - 531, 531, 531, 16, 0, 0, 15, 3, 0, 10, - 9, 8, 0, 7, 518, 6, 11, 5, 4, 13, + 2, 113, 1, 264, 0, 0, 0, 530, 265, 0, + 530, 530, 530, 16, 0, 0, 15, 3, 0, 10, + 9, 8, 0, 7, 517, 6, 11, 5, 4, 13, 12, 14, 85, 86, 84, 93, 95, 37, 50, 47, - 48, 39, 0, 45, 38, 533, 532, 0, 0, 22, - 21, 518, 0, 0, 0, 0, 240, 35, 100, 101, - 0, 0, 0, 102, 104, 111, 0, 99, 17, 552, - 551, 206, 537, 553, 519, 520, 0, 0, 0, 0, - 40, 0, 46, 0, 0, 43, 534, 536, 18, 695, - 687, 691, 242, 0, 0, 110, 105, 0, 0, 0, - 0, 0, 0, 114, 208, 207, 210, 205, 539, 538, - 0, 555, 554, 558, 522, 521, 524, 91, 92, 89, + 48, 39, 0, 45, 38, 532, 531, 0, 0, 22, + 21, 517, 0, 0, 0, 0, 240, 35, 100, 101, + 0, 0, 0, 102, 104, 111, 0, 99, 17, 551, + 550, 206, 536, 552, 518, 519, 0, 0, 0, 0, + 40, 0, 46, 0, 0, 43, 533, 535, 18, 694, + 686, 690, 242, 0, 0, 110, 105, 0, 0, 0, + 0, 0, 0, 114, 208, 207, 210, 205, 538, 537, + 0, 554, 553, 557, 521, 520, 523, 91, 92, 89, 90, 88, 0, 0, 87, 96, 51, 49, 45, 42, 41, 0, 19, 20, 23, 0, 0, 0, 241, 33, - 36, 109, 0, 106, 107, 108, 112, 0, 540, 541, - 548, 515, 458, 24, 25, 0, 80, 81, 78, 79, - 77, 76, 82, 0, 44, 0, 696, 688, 692, 34, + 36, 109, 0, 106, 107, 108, 112, 0, 539, 540, + 547, 514, 457, 24, 25, 0, 80, 81, 78, 79, + 77, 76, 82, 0, 44, 0, 695, 687, 691, 34, 103, 0, 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, 0, 0, 120, - 115, 0, 0, 0, 549, 0, 559, 516, 0, 459, + 115, 0, 0, 0, 548, 0, 558, 515, 0, 458, 0, 26, 27, 28, 0, 94, 0, 0, 0, 0, - 0, 0, 566, 586, 567, 602, 568, 572, 573, 574, - 575, 592, 579, 580, 581, 582, 583, 584, 585, 587, - 588, 589, 590, 657, 571, 578, 591, 664, 671, 569, - 576, 570, 577, 0, 0, 0, 0, 601, 621, 624, - 622, 623, 684, 619, 535, 607, 486, 492, 174, 175, + 0, 0, 565, 585, 566, 601, 567, 571, 572, 573, + 574, 591, 578, 579, 580, 581, 582, 583, 584, 586, + 587, 588, 589, 656, 570, 577, 590, 663, 670, 568, + 575, 569, 576, 0, 0, 0, 0, 600, 620, 623, + 621, 622, 683, 618, 534, 606, 485, 491, 174, 175, 172, 123, 124, 126, 125, 127, 128, 129, 130, 156, 157, 154, 155, 147, 158, 159, 148, 145, 146, 173, 167, 0, 171, 160, 161, 162, 163, 134, 135, 136, 131, 132, 133, 144, 0, 150, 151, 149, 142, 143, 138, 137, 139, 140, 141, 122, 121, 166, 0, 152, - 153, 458, 118, 233, 211, 593, 596, 599, 600, 594, - 597, 595, 598, 542, 543, 546, 556, 523, 458, 97, - 0, 0, 507, 505, 525, 83, 625, 648, 651, 0, - 654, 644, 0, 610, 658, 665, 672, 678, 681, 0, - 0, 634, 639, 633, 0, 647, 636, 0, 643, 0, - 638, 620, 0, 608, 761, 689, 693, 176, 177, 170, - 165, 178, 168, 164, 0, 116, 264, 480, 0, 0, - 209, 0, 528, 0, 550, 471, 560, 0, 98, 0, - 0, 0, 0, 506, 0, 0, 0, 0, 0, 0, - 366, 367, 0, 0, 0, 0, 360, 0, 0, 0, - 0, 0, 0, 0, 0, 592, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 447, 309, 311, - 310, 312, 313, 314, 315, 29, 0, 0, 0, 0, - 0, 0, 0, 0, 295, 296, 364, 363, 441, 361, - 434, 433, 432, 431, 113, 437, 362, 436, 435, 407, - 368, 408, 0, 369, 0, 365, 699, 703, 700, 701, - 702, 0, 0, 0, 0, 0, 115, 0, 115, 0, - 115, 0, 0, 0, 630, 236, 641, 642, 635, 637, - 0, 640, 616, 0, 0, 686, 685, 762, 697, 240, - 487, 0, 482, 0, 0, 493, 0, 0, 179, 169, - 0, 262, 263, 0, 458, 117, 119, 235, 0, 60, + 153, 457, 118, 233, 211, 592, 595, 598, 599, 593, + 596, 594, 597, 541, 542, 545, 555, 522, 457, 97, + 0, 0, 506, 504, 524, 83, 624, 647, 650, 0, + 653, 643, 0, 609, 657, 664, 671, 677, 680, 0, + 0, 633, 638, 632, 0, 646, 635, 0, 642, 0, + 637, 619, 0, 607, 760, 688, 692, 176, 177, 170, + 165, 178, 168, 164, 0, 116, 263, 479, 0, 0, + 209, 0, 527, 0, 549, 470, 559, 0, 98, 0, + 0, 0, 0, 505, 0, 0, 0, 0, 0, 0, + 365, 366, 0, 0, 0, 0, 359, 0, 0, 0, + 0, 0, 0, 0, 0, 591, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 446, 308, 310, + 309, 311, 312, 313, 314, 29, 0, 0, 0, 0, + 0, 0, 0, 0, 294, 295, 363, 362, 440, 360, + 433, 432, 431, 430, 113, 436, 361, 435, 434, 406, + 367, 407, 0, 368, 0, 364, 698, 702, 699, 700, + 701, 0, 0, 0, 0, 0, 115, 0, 115, 0, + 115, 0, 0, 0, 629, 236, 640, 641, 634, 636, + 0, 639, 615, 0, 0, 685, 684, 761, 696, 240, + 486, 0, 481, 0, 0, 492, 0, 0, 179, 169, + 0, 261, 262, 0, 457, 117, 119, 235, 0, 60, 61, 0, 255, 253, 0, 0, 0, 0, 254, 0, 0, 0, 0, 0, 212, 215, 0, 0, 0, 0, - 228, 223, 220, 219, 221, 222, 234, 0, 67, 68, - 65, 66, 227, 229, 268, 218, 0, 64, 526, 529, - 761, 547, 472, 517, 0, 509, 510, 0, 503, 504, - 502, 0, 0, 0, 0, 613, 717, 720, 245, 0, - 248, 252, 0, 284, 0, 0, 0, 746, 0, 0, - 0, 0, 275, 278, 0, 281, 750, 0, 726, 732, - 0, 723, 0, 396, 397, 0, 0, 0, 0, 0, - 0, 0, 0, 730, 753, 761, 373, 372, 409, 371, - 370, 0, 0, 761, 290, 761, 297, 0, 304, 233, - 296, 113, 214, 0, 0, 0, 0, 398, 399, 0, + 228, 223, 220, 219, 221, 0, 234, 0, 67, 68, + 65, 66, 229, 267, 218, 0, 64, 525, 528, 760, + 546, 471, 516, 0, 508, 509, 0, 502, 503, 501, + 0, 0, 0, 0, 612, 716, 719, 245, 0, 248, + 252, 0, 283, 0, 0, 0, 745, 0, 0, 0, + 0, 274, 277, 0, 280, 749, 0, 725, 731, 0, + 722, 0, 395, 396, 0, 0, 0, 0, 0, 0, + 0, 0, 729, 752, 760, 372, 371, 408, 370, 369, + 0, 0, 760, 289, 760, 296, 0, 303, 233, 295, + 113, 214, 0, 0, 0, 0, 397, 398, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 352, 0, 628, 0, - 0, 0, 603, 605, 0, 0, 118, 0, 118, 0, - 118, 484, 0, 490, 0, 604, 0, 0, 237, 632, - 615, 618, 0, 609, 0, 0, 488, 690, 0, 494, - 694, 0, 0, 561, 478, 497, 481, 0, 0, 0, - 256, 0, 0, 243, 0, 0, 232, 0, 0, 54, - 72, 0, 258, 0, 230, 231, 0, 0, 217, 224, - 225, 226, 260, 267, 0, 216, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 351, 0, 627, 0, 0, + 0, 602, 604, 0, 0, 118, 0, 118, 0, 118, + 483, 0, 489, 0, 603, 0, 0, 237, 631, 614, + 617, 0, 608, 0, 0, 487, 689, 0, 493, 693, + 0, 0, 560, 477, 496, 480, 0, 0, 0, 256, + 0, 0, 243, 0, 0, 232, 0, 0, 54, 72, + 0, 258, 0, 230, 231, 0, 0, 222, 217, 224, + 225, 226, 227, 266, 0, 216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 762, 544, 557, 0, 458, - 508, 0, 512, 0, 0, 626, 649, 652, 0, 0, - 0, 0, 715, 236, 0, 0, 736, 739, 742, 0, - 761, 0, 761, 0, 0, 0, 0, 0, 0, 761, - 0, 0, 761, 0, 0, 0, 0, 0, 0, 0, - 0, 32, 0, 30, 0, 0, 762, 0, 0, 0, - 762, 0, 0, 0, 0, 342, 339, 341, 0, 240, - 0, 355, 0, 712, 0, 0, 115, 0, 297, 304, - 0, 0, 420, 419, 0, 0, 421, 425, 374, 375, - 387, 388, 385, 386, 0, 414, 0, 405, 0, 438, - 439, 440, 376, 377, 392, 393, 394, 395, 0, 0, - 390, 391, 389, 383, 384, 379, 378, 380, 381, 382, - 0, 0, 0, 348, 0, 0, 0, 0, 358, 0, - 655, 645, 0, 611, 659, 0, 666, 0, 673, 0, - 0, 679, 0, 682, 0, 238, 629, 0, 617, 698, - 483, 489, 479, 0, 0, 496, 0, 495, 0, 498, + 0, 0, 0, 0, 0, 761, 543, 556, 0, 457, + 507, 0, 511, 0, 0, 625, 648, 651, 0, 0, + 0, 0, 714, 236, 0, 0, 735, 738, 741, 0, + 760, 0, 760, 0, 0, 0, 0, 0, 0, 760, + 0, 0, 760, 0, 0, 0, 0, 0, 0, 0, + 0, 32, 0, 30, 0, 0, 761, 0, 0, 0, + 761, 0, 0, 0, 0, 341, 338, 340, 0, 240, + 0, 354, 0, 711, 0, 0, 115, 0, 296, 303, + 0, 0, 419, 418, 0, 0, 420, 424, 373, 374, + 386, 387, 384, 385, 0, 413, 0, 404, 0, 437, + 438, 439, 375, 376, 391, 392, 393, 394, 0, 0, + 389, 390, 388, 382, 383, 378, 377, 379, 380, 381, + 0, 0, 0, 347, 0, 0, 0, 0, 357, 0, + 654, 644, 0, 610, 658, 0, 665, 0, 672, 0, + 0, 678, 0, 681, 0, 238, 628, 0, 616, 697, + 482, 488, 478, 0, 0, 495, 0, 494, 0, 497, 0, 73, 0, 257, 0, 244, 74, 0, 52, 53, - 259, 233, 0, 0, 0, 274, 273, 326, 327, 329, - 328, 330, 320, 321, 322, 331, 332, 318, 319, 333, - 334, 323, 324, 325, 317, 527, 530, 0, 465, 468, - 0, 511, 0, 514, 627, 650, 653, 614, 0, 0, - 0, 716, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 410, 0, 0, 411, 0, - 0, 0, 0, 0, 0, 0, 304, 442, 443, 444, - 445, 446, 0, 0, 0, 729, 754, 755, 0, 0, - 291, 735, 400, 0, 0, 0, 115, 0, 0, 0, - 0, 0, 357, 0, 356, 0, 118, 308, 115, 416, - 0, 422, 0, 0, 0, 403, 0, 0, 426, 430, - 0, 0, 406, 0, 0, 0, 0, 349, 0, 353, - 401, 359, 656, 646, 606, 612, 660, 662, 667, 669, - 674, 676, 485, 680, 491, 683, 0, 0, 0, 563, - 564, 499, 501, 0, 261, 75, 0, 0, 0, 269, - 0, 545, 466, 467, 468, 469, 460, 473, 513, 718, - 721, 246, 0, 250, 0, 249, 0, 287, 285, 0, - 0, 0, 747, 745, 0, 0, 756, 276, 279, 282, - 751, 749, 727, 733, 731, 724, 0, 0, 31, 0, - 0, 0, 0, 0, 0, 118, 0, 705, 704, 0, - 0, 0, 0, 0, 0, 0, 0, 302, 0, 0, - 118, 0, 0, 0, 0, 337, 0, 0, 427, 0, - 415, 0, 404, 0, 350, 0, 0, 402, 354, 663, - 670, 677, 239, 236, 562, 0, 0, 0, 213, 57, - 62, 0, 505, 463, 460, 461, 462, 465, 0, 0, - 247, 251, 0, 0, 286, 737, 740, 743, 0, 0, - 761, 0, 0, 0, 0, 715, 0, 0, 0, 448, - 0, 0, 0, 0, 340, 457, 343, 0, 0, 335, - 0, 0, 0, 0, 300, 301, 299, 298, 0, 0, - 0, 292, 306, 0, 0, 456, 0, 454, 338, 451, - 0, 0, 0, 450, 351, 0, 0, 565, 500, 0, - 0, 55, 56, 0, 69, 0, 0, 270, 0, 0, - 464, 474, 463, 0, 715, 715, 0, 0, 0, 0, - 0, 0, 0, 0, 277, 280, 283, 0, 728, 715, - 0, 412, 0, 449, 759, 759, 0, 0, 346, 0, - 0, 0, 0, 707, 706, 303, 305, 0, 293, 307, - 417, 423, 0, 455, 453, 452, 631, 71, 58, 0, + 259, 233, 0, 0, 0, 273, 272, 325, 326, 328, + 327, 329, 319, 320, 321, 330, 331, 317, 318, 332, + 333, 322, 323, 324, 316, 526, 529, 0, 464, 467, + 0, 510, 0, 513, 626, 649, 652, 613, 0, 0, + 0, 715, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 409, 0, 0, 410, 0, + 0, 0, 0, 0, 0, 0, 303, 441, 442, 443, + 444, 445, 0, 0, 0, 728, 753, 754, 0, 0, + 290, 734, 399, 0, 0, 0, 115, 0, 0, 0, + 0, 0, 356, 0, 355, 0, 118, 307, 115, 415, + 0, 421, 0, 0, 0, 402, 0, 0, 425, 429, + 0, 0, 405, 0, 0, 0, 0, 348, 0, 352, + 400, 358, 655, 645, 605, 611, 659, 661, 666, 668, + 673, 675, 484, 679, 490, 682, 0, 0, 0, 562, + 563, 498, 500, 0, 260, 75, 0, 0, 0, 268, + 0, 544, 465, 466, 467, 468, 459, 472, 512, 717, + 720, 246, 0, 250, 0, 249, 0, 286, 284, 0, + 0, 0, 746, 744, 0, 0, 755, 275, 278, 281, + 750, 748, 726, 732, 730, 723, 0, 0, 31, 0, + 0, 0, 0, 0, 0, 118, 0, 704, 703, 0, + 0, 0, 0, 0, 0, 0, 0, 301, 0, 0, + 118, 0, 0, 0, 0, 336, 0, 0, 426, 0, + 414, 0, 403, 0, 349, 0, 0, 401, 353, 662, + 669, 676, 239, 236, 561, 0, 0, 0, 213, 57, + 62, 0, 504, 462, 459, 460, 461, 464, 0, 0, + 247, 251, 0, 0, 285, 736, 739, 742, 0, 0, + 760, 0, 0, 0, 0, 714, 0, 0, 0, 447, + 0, 0, 0, 0, 339, 456, 342, 0, 0, 334, + 0, 0, 0, 0, 299, 300, 298, 297, 0, 0, + 0, 291, 305, 0, 0, 455, 0, 453, 337, 450, + 0, 0, 0, 449, 350, 0, 0, 564, 499, 0, + 0, 55, 56, 0, 69, 0, 0, 269, 0, 0, + 463, 473, 462, 0, 714, 714, 0, 0, 0, 0, + 0, 0, 0, 0, 276, 279, 282, 0, 727, 714, + 0, 411, 0, 448, 758, 758, 0, 0, 345, 0, + 0, 0, 0, 706, 705, 302, 304, 0, 292, 306, + 416, 422, 0, 454, 452, 451, 630, 71, 58, 0, 63, 67, 68, 65, 66, 64, 70, 0, 0, 0, - 476, 470, 0, 0, 0, 288, 715, 715, 0, 761, - 761, 757, 761, 0, 713, 0, 413, 0, 0, 0, - 759, 344, 0, 709, 708, 336, 0, 294, 418, 424, - 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 725, 0, 765, - 763, 0, 347, 0, 0, 429, 0, 0, 272, 475, - 0, 719, 722, 289, 0, 0, 744, 748, 758, 752, - 734, 714, 760, 764, 711, 710, 57, 271, 477, 738, - 741, 59 + 475, 469, 0, 0, 0, 287, 714, 714, 0, 760, + 760, 756, 760, 0, 712, 0, 412, 0, 0, 0, + 758, 343, 0, 708, 707, 335, 0, 293, 417, 423, + 427, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 724, 0, 764, + 762, 0, 346, 0, 0, 428, 0, 0, 271, 474, + 0, 718, 721, 288, 0, 0, 743, 747, 757, 751, + 733, 713, 759, 763, 710, 709, 57, 270, 476, 737, + 740, 59 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -1245, -1245, -1245, -1245, -1245, -1245, 350, 901, -1245, -1245, - -1245, 977, -1245, -1245, -1245, 937, -1245, 857, -1245, -1245, - 907, -1245, -1245, -1245, -399, -1245, -1245, -257, -1245, -1245, - -1245, -1245, -1245, -1245, 777, -1245, -1245, -54, 891, -1245, - -1245, -1245, 316, -1245, -434, -477, -671, -1245, -1245, -1245, - -1244, -1245, -1245, -528, -1245, -1245, -617, -763, -1245, -14, - -1245, -1245, -1245, -1245, -1245, -255, -253, -252, -251, -1245, - -1245, -1245, 995, -1245, -1245, -1245, -1245, -1245, -1245, -1245, - -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -348, -1245, - 528, -221, -1245, -803, -1245, -1245, -1245, -1245, -1245, -1245, - -1216, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, - 491, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -144, -176, - -250, -177, -80, -1245, -1245, -1245, -1245, -1245, 481, -1245, - -470, -1245, -1245, -480, -1245, -1245, -705, -247, -575, -165, - -1245, -379, -1245, -1245, 957, -1245, -1245, -1245, 244, -1245, - 652, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, - -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -594, - -161, -1245, 602, -1245, -1245, -1245, -1245, -1245, -1245, -1245, - -1245, -369, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, - -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, - -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, - -140, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, - -1245, -1245, -1245, 603, -632, 38, -910, -1152, -1245, -1245, - -1245, -1245, -1245, -1245, -1245, -1245, -1245, -800, -1245, -1245, - -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, -1245, - -1245, -1245, -593, -1245, -1193, -529, -1245 + -1219, -1219, -1219, -1219, -1219, -1219, 420, 967, -1219, -1219, + -1219, 1043, -1219, -1219, -1219, 1003, -1219, 918, -1219, -1219, + 970, -1219, -1219, -1219, -336, -1219, -1219, -191, -1219, -1219, + -1219, -1219, -1219, -1219, 848, -1219, -1219, -54, 957, -1219, + -1219, -1219, 235, -1219, -428, -477, -670, -1219, -1219, -1219, + -1176, -1219, -1219, -528, -1219, -1219, -616, -763, -1219, -14, + -1219, -1219, -1219, -1219, -1219, -189, -188, -187, -186, -1219, + -1219, 1059, -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, + -1219, -1219, -1219, -1219, -1219, -1219, -1219, -373, -1219, 593, + -157, -1219, -787, -1219, -1219, -1219, -1219, -1219, -1219, -1218, + -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, 492, + -1219, -1219, -1219, -1219, -1219, -1219, -1219, -144, -111, -185, + -112, -18, -1219, -1219, -1219, -1219, -1219, 544, -1219, -475, + -1219, -1219, -480, -1219, -1219, -704, -183, -573, -101, -1219, + -376, -1219, -1219, 1022, -1219, -1219, -1219, 309, -1219, 694, + -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, + -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, -592, -161, + -1219, 663, -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, + -295, -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, + -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, + -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, -140, + -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, + -1219, -1219, 666, -629, 104, -936, -1152, -1219, -1219, -1219, + -1219, -1219, -1219, -1219, -1219, -1219, -798, -1219, -1219, -1219, + -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, -1219, + -1219, -594, -1219, -1211, -567, -1219 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - 0, 1, 16, 134, 51, 17, 155, 161, 621, 456, + 0, 1, 16, 134, 51, 17, 155, 161, 620, 456, 140, 457, 94, 19, 20, 43, 44, 85, 21, 39, 40, 546, 547, 1243, 1244, 548, 1246, 549, 550, 551, 552, 553, 554, 555, 162, 163, 35, 36, 37, 209, 63, 64, 65, 66, 22, 322, 390, 200, 23, 106, - 201, 107, 147, 324, 458, 556, 391, 697, 904, 459, - 557, 589, 781, 1180, 460, 558, 559, 560, 561, 562, - 563, 523, 564, 744, 1080, 935, 565, 461, 794, 1191, - 795, 1192, 797, 1193, 462, 785, 1184, 463, 633, 1222, - 464, 1137, 1138, 836, 465, 642, 466, 566, 467, 468, - 827, 469, 1015, 1277, 1016, 1332, 470, 886, 1158, 471, - 634, 1141, 1338, 1143, 1339, 1230, 1365, 473, 386, 1177, - 1251, 1084, 1086, 960, 572, 769, 1309, 1345, 387, 388, - 511, 692, 375, 516, 694, 376, 1019, 714, 581, 404, - 343, 344, 207, 338, 75, 116, 25, 152, 569, 570, - 47, 48, 131, 26, 110, 149, 203, 27, 392, 957, - 394, 205, 206, 73, 113, 396, 28, 150, 336, 715, - 474, 333, 259, 260, 684, 374, 261, 484, 1055, 584, - 371, 262, 263, 405, 964, 696, 482, 1053, 406, 965, - 407, 966, 481, 1052, 485, 1056, 486, 1159, 487, 1058, - 488, 1160, 489, 1060, 490, 1161, 491, 1063, 492, 1065, - 512, 29, 136, 266, 513, 30, 137, 267, 517, 31, - 135, 265, 704, 475, 1324, 834, 1325, 972, 476, 779, - 1178, 780, 1179, 803, 1197, 800, 1195, 624, 477, 801, - 1196, 478, 977, 1258, 978, 1259, 979, 1260, 789, 1188, - 798, 1194, 625, 479, 1328, 508, 480 + 201, 107, 147, 324, 458, 556, 391, 696, 904, 459, + 557, 588, 781, 1180, 460, 558, 559, 560, 561, 562, + 523, 563, 744, 1080, 935, 564, 461, 794, 1191, 795, + 1192, 797, 1193, 462, 785, 1184, 463, 632, 1222, 464, + 1137, 1138, 836, 465, 641, 466, 565, 467, 468, 827, + 469, 1015, 1277, 1016, 1332, 470, 886, 1158, 471, 633, + 1141, 1338, 1143, 1339, 1230, 1365, 473, 386, 1177, 1251, + 1084, 1086, 960, 571, 769, 1309, 1345, 387, 388, 511, + 691, 375, 516, 693, 376, 1019, 713, 580, 404, 343, + 344, 207, 338, 75, 116, 25, 152, 568, 569, 47, + 48, 131, 26, 110, 149, 203, 27, 392, 957, 394, + 205, 206, 73, 113, 396, 28, 150, 336, 714, 474, + 333, 259, 260, 683, 374, 261, 484, 1055, 583, 371, + 262, 263, 405, 964, 695, 482, 1053, 406, 965, 407, + 966, 481, 1052, 485, 1056, 486, 1159, 487, 1058, 488, + 1160, 489, 1060, 490, 1161, 491, 1063, 492, 1065, 512, + 29, 136, 266, 513, 30, 137, 267, 517, 31, 135, + 265, 703, 475, 1324, 834, 1325, 972, 476, 779, 1178, + 780, 1179, 803, 1197, 800, 1195, 623, 477, 801, 1196, + 478, 977, 1258, 978, 1259, 979, 1260, 789, 1188, 798, + 1194, 624, 479, 1328, 508, 480 }; /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If @@ -1591,1871 +1590,1978 @@ static const yytype_int16 yydefgoto[] = number is the opposite. If YYTABLE_NINF, syntax error. */ static const yytype_int16 yytable[] = { - 57, 67, 773, 506, 258, 833, 721, 792, 210, 686, - 920, 688, 693, 690, 730, 895, 1006, 897, 573, 899, - 973, 691, 837, 125, 594, 264, 117, 118, 814, 2, - 638, 384, -113, 577, 1004, 3, 1028, 818, 1175, 498, - 496, 766, 81, 1268, 915, 1008, 67, 67, 67, 49, - 1073, 384, 643, 644, 102, 408, 409, 341, 4, 1121, - 5, 1331, 6, 653, 341, 1344, 655, 656, 7, 38, - 32, 33, 342, 643, 644, 415, 712, 82, 8, 342, - 103, 417, 1329, 521, 9, 67, 67, 67, 67, 208, - 828, 713, 156, 157, 50, 1220, 817, 917, 1176, 1092, - 372, 1370, 1312, 1313, 821, 635, 822, 385, 10, 208, - 880, 881, 655, 656, 1133, 934, 1362, 1323, 423, 424, - 1134, 595, 596, 578, 922, 93, 522, 77, 323, 579, - 11, 12, 99, 100, 101, 882, 892, 1361, 768, 68, - 676, 677, 372, 1093, 883, 524, 775, 698, 647, 648, - 893, 257, 426, 427, 339, 170, 653, 74, 654, 655, - 656, 657, 658, 1356, 1349, 1350, 119, 1135, 705, 647, - 648, 120, 1136, 121, 122, 76, 580, 653, 361, 525, - 655, 656, 657, 658, 884, 885, 676, 677, 55, 921, - 499, 497, 916, 1116, 397, 767, 926, 1357, 1020, 141, - 13, 643, 644, 916, 597, 362, 363, 839, 916, 500, - 83, 258, 56, 34, 258, 501, 123, 916, 1356, 14, - 446, 1023, 84, 915, 598, 1009, 1356, 15, 258, 41, - 791, 15, 158, 676, 677, 588, 214, 159, 778, 160, - 122, 258, 360, 804, 258, 258, 258, 1129, 372, 526, - 790, 915, 1371, 452, 676, 677, 77, 1018, 42, 799, - 1372, 981, 802, 984, 215, 582, 583, 585, 364, 1218, - 991, 78, 365, 994, 915, 916, 917, 514, 918, 1356, - 1212, 919, 915, 1356, 1356, 915, 398, 515, 1018, 832, - 578, 1279, 55, 915, 93, 1219, 579, 647, 648, 1363, - 99, 823, 101, 1356, 917, 653, 824, 654, 655, 656, - 657, 658, 79, 1376, 1076, 58, 56, 1380, 1389, 639, - 258, 258, 69, 70, 258, 71, 258, 917, 258, 366, - 258, 889, 367, 86, 368, 917, 772, 1390, 917, 825, - 833, 680, 681, 580, 59, 685, 917, 687, 369, 689, - 55, 643, 644, 72, 370, 1139, 454, 640, 257, 1026, - 87, 257, 1021, 1023, 494, 936, 1166, 671, 672, 673, - 674, 675, 89, 90, 56, 257, 95, 96, 97, 571, - -661, 907, 676, 677, 495, -661, 1171, 599, 257, 1281, - 1022, 257, 257, 257, 91, 907, 1074, 856, 257, 92, - 1236, 1274, 1346, 1347, -661, 907, 857, 600, 1351, 1051, - 968, 969, 60, 1355, 1172, 143, 144, 145, 146, 55, - 980, 606, 1064, 1228, 609, 986, 987, 1213, 989, 990, - 1062, 992, 993, 1234, 995, 698, 1173, 907, 258, 1374, - 1375, 607, 907, 56, 610, 645, 646, 647, 648, 649, - 93, 258, 650, 1041, 1207, 653, 1085, 654, 655, 656, - 657, 658, 1042, 659, 660, 1239, 900, 257, 257, 1223, - 1273, 257, 55, 257, 902, 257, 61, 257, 98, 982, - 901, 823, 843, 847, 643, 644, 62, -668, 903, -675, - -345, 1066, -668, 983, -675, -345, 56, 861, 1210, 126, - 1046, 45, 372, 1280, 325, 1067, 776, 46, 326, 1047, - 1182, -668, 1190, -675, -345, 669, 670, 671, 672, 673, - 674, 675, 327, 328, 1183, 1240, 84, 329, 330, 331, - 332, 1131, 676, 677, 828, 258, 1241, 1242, 1248, 1125, - 1132, 403, 401, 1092, 258, 402, 104, 258, 403, 1169, - 139, 1140, 105, 108, 111, 114, 905, 132, 1082, 109, - 112, 115, 151, 133, 1083, 910, 1201, 1202, 911, 1276, - 372, 128, 907, 907, 890, 907, 153, 154, 784, 129, - 647, 648, 372, 372, 130, 257, 891, 894, 653, 138, - 654, 655, 656, 657, 658, 372, 372, 372, 257, 896, - 898, 1091, 372, 372, 211, 212, 1098, 1291, 1099, 1100, - 1101, 1221, 372, 1104, 148, 82, 1340, 258, 258, 258, - 258, 165, 826, 166, 258, 959, 167, 168, 258, 169, - 99, 1364, 202, 258, 258, 204, 258, 258, 967, 258, - 258, 970, 258, 208, 319, 976, 1124, 153, 154, 811, - 812, 320, 673, 674, 675, 321, 1119, 99, 100, 101, - 1120, 1263, 52, 53, 54, 676, 677, 340, 372, 1320, - 211, 212, 213, 323, 1308, 334, 335, 346, 337, 347, - 348, 349, 257, 352, 350, 1146, 359, 351, 373, 353, - 377, 257, 378, 354, 257, 1289, 355, 1155, 379, 381, - 356, 357, 358, 382, 389, 393, 400, 1039, 395, 483, - 507, 1297, 1298, 380, 383, 518, 519, 399, 568, 575, - 586, 576, 504, 15, 1381, 1167, 520, 587, 593, 602, - 592, 603, 1342, 605, 608, 611, 601, 612, 604, 258, - 682, 683, 615, 514, 616, 617, 706, 703, 707, 708, - 618, 725, 709, 710, 727, 726, 619, 258, 733, 620, - 637, 737, 643, 644, 257, 257, 257, 257, 636, 1200, - 679, 257, 1224, 1203, 699, 257, 718, 734, 1071, 735, - 257, 257, 738, 257, 257, 739, 257, 257, 743, 257, - 1352, 1353, 736, 1354, 740, 741, 742, 745, 764, 765, - 771, 777, 782, 783, 819, 786, 816, 820, 838, 835, - 854, 787, 788, 907, 906, 698, 258, 258, 258, 913, - 909, 258, 914, 924, 927, 928, 929, 931, 958, 961, - 971, 1007, 996, 1023, 1049, 933, 1011, 1012, 1386, 1013, - 472, 1014, 1388, 1017, 1025, 1024, 1029, 1030, 1032, 1031, - 493, 1054, 1033, 1069, 258, 1034, 645, 646, 647, 648, - 503, 1044, 1057, 1045, 1059, 1061, 653, 1070, 654, 655, - 656, 657, 658, 1079, 659, 660, 1087, 1081, 1085, 1307, - 1089, 1090, 567, 1102, 1107, 1096, 257, 1095, 1103, 1105, - 574, 1106, 1111, 1108, 1109, 1110, 1112, 1117, 1113, 1114, - 1115, 1148, 1165, 1245, 257, 258, 1149, 1151, 1156, 1214, - 1185, 1186, 1187, 1319, 1189, 1206, 1215, 1216, 1163, 1322, - 613, 614, 1250, 1181, 1198, 1211, 1162, 1217, 671, 672, - 673, 674, 675, 1209, 1237, 1247, 1254, 623, 626, 627, - 628, 629, 630, 676, 677, 1255, 1256, 1261, 1262, 1267, - 1269, 1270, 1278, 643, 644, 1290, 1286, 1306, 1327, 1296, - 1314, 1299, 1358, 257, 257, 257, 1316, 1317, 257, 1318, - 1359, 813, 1369, 1321, 1335, 1360, 1377, 124, 18, 80, - 258, 1378, 258, 1379, 1383, 164, 127, 1391, 1300, 142, - 1301, 345, 1302, 1303, 1304, 702, 24, 1285, 1252, 641, - 1253, 257, 1310, 1226, 1174, 716, 1311, 1249, 88, 956, - 1094, 711, 0, 0, 590, 591, 0, 0, 0, 717, - 0, 0, 0, 720, 0, 0, 723, 724, 0, 0, - 0, 0, 729, 0, 732, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 645, 646, 647, - 648, 649, 257, 0, 650, 651, 652, 653, 0, 654, - 655, 656, 657, 658, 0, 659, 660, 0, 0, 258, - 0, 661, 774, 663, 0, 0, 0, 0, 0, 0, + 57, 67, 766, 773, 258, 792, 720, 833, 210, 685, + 920, 687, 692, 689, 729, 895, 690, 897, 1006, 899, + 973, 572, 837, 125, -113, 264, 593, 2, 81, 814, + 117, 118, 1004, 3, 1008, 496, 637, 1175, 818, 577, + 498, 521, 1073, 1268, 1121, 578, 67, 67, 67, 99, + 100, 101, 1028, 638, 41, 384, 4, 817, 5, 1331, + 6, 654, 655, 82, 1329, 821, 7, 822, 372, 58, + 32, 33, 775, 49, 408, 409, 8, 506, 915, 892, + 634, 341, 9, 42, 522, 67, 67, 67, 67, 915, + 454, 639, 579, 893, 415, 1133, 342, 1176, 59, 361, + 417, 1134, 1312, 1313, 384, 652, 10, 576, 654, 655, + 494, 156, 157, 208, 1362, 577, 141, 1323, 50, 1361, + 93, 578, 697, 594, 595, 922, 362, 363, 11, 12, + 495, 917, 55, 1344, 372, 675, 676, 423, 424, 934, + 524, 916, 917, 768, 918, 1356, 915, 919, 1135, 514, + 102, 257, 1018, 1136, 339, 1023, 56, 76, 93, 515, + 385, 772, 208, 704, 1349, 1350, 60, 68, 579, 1370, + 119, 426, 427, 55, 525, 120, 103, 121, 122, 1357, + 38, 1129, 675, 676, 642, 643, 497, 767, 921, 364, + 916, 499, 916, 365, 397, 926, 83, 56, 13, 917, + 916, 1020, 916, 642, 643, 74, 596, 55, 84, 1116, + 500, 258, 839, 34, 258, 915, 501, 14, 77, 15, + 123, 1018, 1218, 981, 790, 984, 597, 1009, 258, 15, + 61, 56, 991, 799, 828, 994, 802, 1356, 55, 446, + 62, 258, 360, 1092, 258, 258, 258, 823, 1219, 526, + 366, 158, 824, 367, 587, 368, 159, 1023, 160, 122, + 79, 78, 56, 832, 915, 581, 582, 584, 917, 369, + 1212, 1371, 452, 77, 1356, 370, 915, 86, 915, 87, + 646, 647, 1279, 1281, 1363, 825, 398, 1093, 652, 1356, + 653, 654, 655, 656, 657, 95, 96, 97, 1356, 646, + 647, 170, 93, 791, 1356, 889, 1356, 652, 1372, 653, + 654, 655, 656, 657, 98, 1076, 804, 917, 214, 45, + 258, 258, 1220, 1376, 258, 46, 258, 89, 258, 917, + 258, 917, 1380, 341, 143, 144, 145, 146, 1389, -660, + 1390, 679, 680, 833, -660, 684, 215, 686, 342, 688, + 642, 643, 672, 673, 674, 323, 1139, 90, 257, 1026, + 372, 257, 1021, -660, 776, 675, 676, 1166, 936, 670, + 671, 672, 673, 674, 907, 257, 1346, 1347, 1171, 570, + 69, 70, 1351, 71, 675, 676, 711, 1355, 257, 907, + 1022, 257, 257, 257, 900, 907, 1074, 126, 257, 907, + 1236, 712, 1051, 1274, 880, 881, 1172, 907, 901, 55, + 697, 72, 598, 1374, 1375, 91, -667, 1228, 823, -674, + 902, -667, 1064, 1234, -674, 1062, 778, 1239, 1213, 882, + 856, 92, 599, 56, 903, 1273, 372, 258, 883, 857, + -667, 605, 84, -674, 644, 645, 646, 647, 648, 139, + 258, 649, 650, 651, 652, 1207, 653, 654, 655, 656, + 657, 606, 658, 659, -344, 642, 643, 257, 257, -344, + 1223, 257, 608, 257, 1041, 257, 982, 257, 884, 885, + 1046, 843, 847, 1042, 968, 969, 128, 1173, -344, 1047, + 983, 99, 609, 101, 980, 1066, 861, 642, 643, 986, + 987, 1210, 989, 990, 1280, 992, 993, 1085, 995, 1067, + 1182, 1190, 666, 667, 668, 669, 670, 671, 672, 673, + 674, 1131, 104, 108, 1183, 1240, 828, 111, 105, 109, + 1132, 675, 676, 112, 258, 1092, 1241, 1242, 401, 1125, + 129, 402, 1248, 258, 403, 403, 258, 642, 643, 1169, + 114, 1140, 132, 1082, 1201, 905, 115, 1202, 133, 1083, + 907, 646, 647, 907, 910, 153, 154, 911, 130, 652, + 1276, 653, 654, 655, 656, 657, 907, 784, 372, 372, + 138, 372, 890, 891, 257, 894, 372, 99, 100, 101, + 896, 644, 645, 646, 647, 648, 148, 257, 649, 650, + 651, 652, 151, 653, 654, 655, 656, 657, 372, 658, + 659, 1221, 898, 153, 154, 811, 812, 258, 258, 258, + 258, 826, 82, 1263, 258, 959, 211, 212, 258, 165, + 166, 1119, 1364, 258, 258, 1120, 258, 258, 967, 258, + 258, 970, 258, 646, 647, 976, 675, 676, 167, 372, + 168, 652, 202, 1091, 654, 655, 656, 657, 169, 99, + 1146, 668, 669, 670, 671, 672, 673, 674, 1320, 372, + 372, 372, 1155, 1098, 1291, 1340, 1308, 204, 675, 676, + 208, 257, 1099, 1100, 1101, 319, 320, 1104, 321, 323, + 257, 334, 335, 257, 337, 1289, 346, 347, 642, 643, + 1167, 211, 212, 213, 52, 53, 54, 1039, 340, 348, + 349, 1297, 1298, 350, 351, 352, 353, 325, 354, 355, + 1124, 326, 359, 356, 357, 358, 372, 1381, 675, 676, + 373, 377, 378, 381, 1342, 327, 328, 379, 382, 258, + 329, 330, 331, 332, 1200, 380, 383, 389, 1203, 395, + 399, 400, 1352, 1353, 393, 1354, 483, 258, 504, 507, + 518, 519, 520, 567, 257, 257, 257, 257, 574, 575, + 585, 257, 586, 592, 601, 257, 602, 591, 1071, 600, + 257, 257, 603, 257, 257, 604, 257, 257, 607, 257, + 697, 614, 644, 645, 646, 647, 648, 610, 611, 649, + 615, 616, 652, 681, 653, 654, 655, 656, 657, 617, + 658, 659, 705, 618, 619, 636, 258, 258, 258, 635, + 15, 258, 682, 642, 643, 678, 514, 698, 702, 706, + 707, 708, 709, 717, 724, 725, 726, 732, 1386, 733, + 734, 472, 1388, 735, 736, 737, 1224, 738, 739, 743, + 740, 493, 741, 764, 258, 742, 745, 765, 771, 782, + 783, 503, 668, 669, 670, 671, 672, 673, 674, 816, + 819, 777, 786, 787, 788, 820, 854, 838, 907, 675, + 676, 909, 914, 566, 924, 835, 257, 928, 1319, 929, + 931, 573, 906, 958, 1322, 913, 927, 933, 961, 971, + 1007, 996, 1011, 1023, 257, 258, 1029, 1012, 1013, 1014, + 1017, 1031, 1025, 1024, 1049, 1054, 1057, 644, 645, 646, + 647, 612, 613, 1030, 1032, 1069, 1162, 652, 1033, 653, + 654, 655, 656, 657, 1059, 658, 659, 1034, 622, 625, + 626, 627, 628, 629, 1044, 1045, 1061, 1070, 1079, 1081, + 1085, 1087, 1089, 1307, 1090, 1095, 1096, 1102, 1103, 1105, + 1107, 1106, 1108, 257, 257, 257, 1109, 1110, 257, 1148, + 1111, 1114, 1117, 1112, 1113, 1115, 1165, 1149, 1151, 1185, + 258, 1181, 258, 1186, 1187, 1189, 1214, 1156, 1215, 670, + 671, 672, 673, 674, 1206, 1163, 701, 1198, 1216, 1217, + 1211, 257, 1209, 1226, 675, 676, 1237, 1245, 1247, 1250, + 1254, 1255, 710, 1256, 1261, 1262, 1267, 1269, 1270, 1278, + 716, 1286, 1296, 1299, 719, 1306, 1290, 722, 723, 1314, + 1316, 1327, 1317, 728, 1321, 731, 1318, 1358, 1335, 1359, + 813, 1369, 1360, 124, 18, 80, 164, 1377, 1378, 127, + 1391, 1379, 257, 1383, 1300, 142, 1301, 1302, 1303, 1304, + 24, 1285, 345, 1252, 640, 1253, 1174, 1310, 715, 258, + 1311, 1249, 774, 88, 956, 589, 1094, 0, 590, 0, 0, 0, 0, 0, 0, 0, 0, 258, 0, 0, - 1292, 623, 793, 0, 0, 796, 0, 0, 0, 0, + 1292, 622, 793, 0, 0, 796, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 805, 806, 807, 808, - 809, 810, 0, 0, 666, 667, 668, 669, 670, 671, - 672, 673, 674, 675, 840, 0, 0, 257, 0, 257, - 0, 0, 0, 0, 676, 677, 848, 849, 0, 0, + 809, 810, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 840, 0, 0, 0, 257, 0, 257, + 0, 0, 0, 0, 0, 0, 848, 849, 0, 0, 850, 851, 852, 853, 0, 855, 0, 858, 859, 860, 862, 863, 864, 865, 866, 867, 869, 870, 871, 872, 873, 874, 875, 876, 877, 878, 879, 0, 887, 0, - 0, 0, 0, 0, 0, 0, 222, 223, 224, 0, - 226, 227, 228, 229, 230, 425, 232, 233, 234, 235, - 236, 237, 238, 239, 240, 241, 242, 0, 244, 245, - 246, 0, 0, 249, 250, 251, 252, 0, 0, 0, + 0, 0, 0, 0, 0, 222, 223, 224, 0, 226, + 227, 228, 229, 230, 425, 232, 233, 234, 235, 236, + 237, 238, 239, 240, 241, 242, 0, 244, 245, 246, + 0, 0, 249, 250, 251, 252, 0, 0, 0, 0, 923, 0, 0, 925, 0, 0, 257, 0, 0, 0, 0, 0, 930, 0, 0, 0, 0, 932, 0, 0, - 0, 0, 0, 0, 257, 0, 0, 937, 938, 939, - 940, 941, 942, 943, 944, 945, 946, 947, 948, 949, - 950, 951, 952, 953, 954, 955, 0, 0, 841, 0, - 0, 0, 0, 826, 962, 0, 0, 842, 0, 0, - 0, 0, 0, 0, 0, 975, 0, 0, 216, 0, - 0, 0, 0, 0, 217, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 257, 0, 0, 0, 937, 938, + 939, 940, 941, 942, 943, 944, 945, 946, 947, 948, + 949, 950, 951, 952, 953, 954, 955, 841, 0, 0, + 0, 0, 0, 826, 0, 962, 842, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 975, 0, 0, 216, + 0, 0, 0, 0, 0, 217, 0, 0, 0, 0, + 0, 218, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 219, 0, 0, 1003, 0, 0, 1005, 622, 220, + 0, 0, 1010, 0, 0, 0, 0, 0, 826, 0, + 0, 0, 0, 0, 221, 0, 0, 0, 0, 566, + 0, 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, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1043, 0, 0, 0, 1048, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 55, 1010, + 0, 0, 0, 0, 0, 1068, 0, 0, 0, 0, + 0, 255, 1072, 0, 0, 0, 0, 0, 216, 1075, + 0, 0, 56, 0, 217, 1078, 0, 0, 0, 0, 218, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 219, 0, 0, 1003, 0, 0, 1005, 623, 220, 0, - 0, 1010, 0, 0, 0, 0, 0, 0, 826, 0, - 0, 0, 0, 221, 0, 0, 0, 0, 567, 0, + 219, 0, 0, 0, 0, 0, 0, 0, 220, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 221, 0, 0, 0, 256, 0, 505, 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, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1043, 0, 0, 0, 1048, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 55, 1010, 0, - 0, 0, 0, 0, 1068, 0, 0, 0, 0, 0, - 255, 1072, 0, 0, 0, 0, 0, 216, 1075, 0, - 0, 56, 0, 217, 1078, 0, 0, 0, 0, 218, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 219, - 0, 0, 0, 0, 0, 0, 0, 220, 0, 0, + 252, 253, 254, 0, 0, 1122, 1123, 0, 0, 1126, + 1127, 1128, 0, 1010, 0, 0, 0, 0, 0, 0, + 0, 0, 1142, 0, 1144, 0, 1147, 0, 0, 0, + 0, 0, 1150, 0, 0, 0, 1153, 55, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 221, 0, 0, 0, 256, 0, 505, 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, 0, 0, 1122, 1123, 0, 0, 1126, 1127, - 1128, 0, 1010, 0, 0, 0, 0, 0, 0, 0, - 0, 1142, 0, 1144, 0, 1147, 0, 0, 0, 0, - 0, 1150, 0, 0, 0, 1153, 55, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, - 0, 0, 0, 0, 844, 0, 0, 643, 644, 0, - 509, 0, 0, 0, 0, 0, 0, 567, 0, 0, - 510, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 623, 0, 0, 0, - 0, 0, 0, 0, 0, 256, 222, 223, 224, 0, - 226, 227, 228, 229, 230, 425, 232, 233, 234, 235, - 236, 237, 238, 239, 240, 241, 242, 0, 244, 245, - 246, 0, 0, 249, 250, 251, 252, 0, 0, 0, - 1231, 0, 1232, 0, 0, 0, 0, 1235, 0, 0, - 0, 645, 646, 647, 648, 649, 0, 1238, 650, 651, - 652, 653, 0, 654, 655, 656, 657, 658, 0, 659, - 660, 0, 0, 0, 1257, 661, 662, 663, 0, 0, - 0, 664, 1264, 1265, 1266, 0, 0, 0, 845, 1272, - 0, 0, 623, 1275, 0, 0, 0, 846, 0, 0, - 0, 0, 1282, 1283, 1284, 0, 0, 0, 0, 0, - 0, 1288, 0, 0, 0, 0, 665, 0, 666, 667, - 668, 669, 670, 671, 672, 673, 674, 675, 0, 0, - 0, 0, 0, 0, 0, 0, 1305, 0, 676, 677, - 0, 0, 678, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 623, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1330, 0, 0, - 1333, 1334, 0, 0, 0, 0, 0, 0, 1337, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1341, 0, 0, 0, 0, 0, 0, 0, 0, 1343, - 0, 0, 0, 0, 0, 1348, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 527, 0, 0, 408, 409, 3, 0, 528, 529, - 530, 0, 531, 1367, 410, 411, 412, 413, 414, 0, - 0, 0, 0, 0, 415, 532, 416, 533, 534, 1382, - 417, 0, 0, 0, 1384, 1385, 0, 535, 418, 0, - 0, 536, 0, 537, 419, 0, 0, 420, 0, 8, - 421, 538, 0, 539, 422, 0, 0, 540, 541, 0, - 0, 0, 0, 0, 542, 0, 0, 423, 424, 0, - 222, 223, 224, 0, 226, 227, 228, 229, 230, 425, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, - 242, 0, 244, 245, 246, 0, 0, 249, 250, 251, - 252, 426, 427, 428, 543, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 429, 430, 0, 0, + 255, 0, 0, 0, 0, 844, 0, 0, 642, 643, + 0, 509, 0, 0, 0, 0, 0, 0, 566, 0, + 0, 510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 55, 0, 0, - 0, 0, 0, 0, 0, 431, 432, 433, 434, 435, - 0, 436, 0, 437, 438, 439, 440, 441, 442, 443, - 444, 56, 445, 0, 0, 0, 0, 0, 0, 446, - 544, 545, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 447, 448, 449, 0, - 14, 0, 0, 450, 451, 0, 0, 0, 0, 0, - 0, 0, 452, 0, 453, 527, 454, 455, 408, 409, - 3, 0, 528, 529, 530, 0, 531, 0, 410, 411, - 412, 413, 414, 0, 0, 0, 0, 0, 415, 532, - 416, 533, 534, 0, 417, 0, 0, 0, 0, 0, - 0, 535, 418, 0, 0, 536, 0, 537, 419, 0, - 0, 420, 0, 8, 421, 538, 0, 539, 422, 0, - 0, 540, 541, 0, 0, 0, 0, 0, 542, 0, - 0, 423, 424, 0, 222, 223, 224, 0, 226, 227, - 228, 229, 230, 425, 232, 233, 234, 235, 236, 237, - 238, 239, 240, 241, 242, 0, 244, 245, 246, 0, - 0, 249, 250, 251, 252, 426, 427, 428, 543, 0, + 0, 0, 0, 0, 0, 0, 0, 622, 0, 0, + 0, 0, 0, 0, 0, 0, 256, 222, 223, 224, + 0, 226, 227, 228, 229, 230, 425, 232, 233, 234, + 235, 236, 237, 238, 239, 240, 241, 242, 0, 244, + 245, 246, 0, 0, 249, 250, 251, 252, 0, 0, + 0, 1231, 0, 1232, 0, 0, 0, 0, 1235, 0, + 0, 0, 644, 645, 646, 647, 648, 0, 1238, 649, + 650, 651, 652, 0, 653, 654, 655, 656, 657, 0, + 658, 659, 0, 0, 0, 1257, 660, 661, 662, 0, + 0, 0, 663, 1264, 1265, 1266, 0, 0, 0, 845, + 1272, 0, 0, 622, 1275, 0, 0, 0, 846, 0, + 0, 0, 0, 1282, 1283, 1284, 0, 0, 0, 0, + 0, 0, 1288, 0, 0, 0, 0, 664, 0, 665, + 666, 667, 668, 669, 670, 671, 672, 673, 674, 0, + 0, 0, 0, 0, 0, 0, 0, 1305, 0, 675, + 676, 0, 0, 677, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 622, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1330, 0, + 0, 1333, 1334, 0, 0, 0, 0, 0, 0, 1337, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1341, 0, 0, 0, 0, 0, 0, 0, 0, + 1343, 0, 0, 0, 0, 0, 1348, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 55, 0, 0, 0, 0, 0, 0, 0, 431, - 432, 433, 434, 435, 0, 436, 0, 437, 438, 439, - 440, 441, 442, 443, 444, 56, 445, 0, 0, 0, - 0, 0, 0, 446, 1027, 545, 0, 0, 0, 0, + 0, 0, 527, 0, 0, 408, 409, 3, 0, 528, + 529, 530, 0, 531, 1367, 410, 411, 412, 413, 414, + 0, 0, 0, 0, 0, 415, 532, 416, 533, 534, + 1382, 417, 0, 0, 0, 1384, 1385, 0, 535, 418, + 0, 0, 536, 0, 537, 419, 0, 0, 420, 0, + 8, 421, 538, 0, 539, 422, 0, 0, 540, 541, + 0, 0, 0, 0, 0, 542, 0, 0, 423, 424, + 0, 222, 223, 224, 0, 226, 227, 228, 229, 230, + 425, 232, 233, 234, 235, 236, 237, 238, 239, 240, + 241, 242, 0, 244, 245, 246, 0, 0, 249, 250, + 251, 252, 426, 427, 428, 543, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 447, 448, 449, 0, 14, 0, 0, 450, 451, 0, - 0, 0, 0, 0, 0, 0, 452, 0, 453, 527, - 454, 455, 408, 409, 3, 0, 528, 529, 530, 0, - 531, 0, 410, 411, 412, 413, 414, 0, 0, 0, - 0, 0, 415, 532, 416, 533, 534, 0, 417, 0, - 0, 0, 0, 0, 0, 535, 418, 0, 0, 536, - 0, 537, 419, 0, 0, 420, 0, 8, 421, 538, - 0, 539, 422, 0, 0, 540, 541, 0, 0, 0, - 0, 0, 542, 0, 0, 423, 424, 0, 222, 223, - 224, 0, 226, 227, 228, 229, 230, 425, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 0, - 244, 245, 246, 0, 0, 249, 250, 251, 252, 426, - 427, 428, 543, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 429, 430, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 55, 0, + 0, 0, 0, 0, 0, 0, 431, 432, 433, 434, + 435, 0, 436, 0, 437, 438, 439, 440, 441, 442, + 443, 444, 56, 445, 0, 0, 0, 0, 0, 0, + 446, 544, 545, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 447, 448, 449, + 0, 14, 0, 0, 450, 451, 0, 0, 0, 0, + 0, 0, 0, 452, 0, 453, 527, 454, 455, 408, + 409, 3, 0, 528, 529, 530, 0, 531, 0, 410, + 411, 412, 413, 414, 0, 0, 0, 0, 0, 415, + 532, 416, 533, 534, 0, 417, 0, 0, 0, 0, + 0, 0, 535, 418, 0, 0, 536, 0, 537, 419, + 0, 0, 420, 0, 8, 421, 538, 0, 539, 422, + 0, 0, 540, 541, 0, 0, 0, 0, 0, 542, + 0, 0, 423, 424, 0, 222, 223, 224, 0, 226, + 227, 228, 229, 230, 425, 232, 233, 234, 235, 236, + 237, 238, 239, 240, 241, 242, 0, 244, 245, 246, + 0, 0, 249, 250, 251, 252, 426, 427, 428, 543, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 55, 0, 0, 0, 0, - 0, 0, 0, 431, 432, 433, 434, 435, 0, 436, - 0, 437, 438, 439, 440, 441, 442, 443, 444, 56, - 445, 0, 0, 0, 0, 0, 0, 446, 1168, 545, + 0, 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 447, 448, 449, 0, 14, 0, - 0, 450, 451, 0, 0, 0, 408, 409, 0, 0, - 452, 0, 453, 0, 454, 455, 410, 411, 412, 413, - 414, 0, 0, 0, 0, 0, 415, 532, 416, 533, - 0, 0, 417, 0, 0, 0, 0, 0, 0, 0, - 418, 0, 0, 0, 0, 0, 419, 0, 0, 420, - 0, 0, 421, 538, 0, 0, 422, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 423, - 424, 0, 222, 223, 224, 0, 226, 227, 228, 229, - 230, 425, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 0, 244, 245, 246, 0, 0, 249, - 250, 251, 252, 426, 427, 428, 543, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 429, 430, + 0, 0, 55, 0, 0, 0, 0, 0, 0, 0, + 431, 432, 433, 434, 435, 0, 436, 0, 437, 438, + 439, 440, 441, 442, 443, 444, 56, 445, 0, 0, + 0, 0, 0, 0, 446, 1027, 545, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 55, - 0, 0, 0, 0, 0, 0, 0, 431, 432, 433, - 434, 435, 0, 436, 0, 437, 438, 439, 440, 441, - 442, 443, 444, 56, 445, 0, 0, 0, 0, 0, - 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 447, 448, - 449, 0, 14, 0, 0, 450, 451, 0, 0, 0, - 0, 0, 408, 409, 452, 0, 453, 0, 454, 455, - 631, 0, 410, 411, 412, 413, 414, 0, 0, 0, - 0, 0, 415, 0, 416, 0, 0, 0, 417, 0, - 0, 0, 0, 0, 0, 0, 418, 0, 0, 0, - 0, 0, 419, 0, 0, 420, 632, 0, 421, 0, - 0, 0, 422, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 423, 424, 0, 222, 223, - 224, 0, 226, 227, 228, 229, 230, 425, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 0, - 244, 245, 246, 0, 0, 249, 250, 251, 252, 426, - 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 429, 430, 0, 0, 0, 0, + 0, 447, 448, 449, 0, 14, 0, 0, 450, 451, + 0, 0, 0, 0, 0, 0, 0, 452, 0, 453, + 527, 454, 455, 408, 409, 3, 0, 528, 529, 530, + 0, 531, 0, 410, 411, 412, 413, 414, 0, 0, + 0, 0, 0, 415, 532, 416, 533, 534, 0, 417, + 0, 0, 0, 0, 0, 0, 535, 418, 0, 0, + 536, 0, 537, 419, 0, 0, 420, 0, 8, 421, + 538, 0, 539, 422, 0, 0, 540, 541, 0, 0, + 0, 0, 0, 542, 0, 0, 423, 424, 0, 222, + 223, 224, 0, 226, 227, 228, 229, 230, 425, 232, + 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, + 0, 244, 245, 246, 0, 0, 249, 250, 251, 252, + 426, 427, 428, 543, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 55, 0, 0, 0, 0, - 0, 0, 0, 431, 432, 433, 434, 435, 0, 436, - 828, 437, 438, 439, 440, 441, 442, 443, 444, 829, - 445, 0, 0, 0, 0, 0, 0, 446, 0, 0, + 0, 0, 0, 0, 0, 0, 55, 0, 0, 0, + 0, 0, 0, 0, 431, 432, 433, 434, 435, 0, + 436, 0, 437, 438, 439, 440, 441, 442, 443, 444, + 56, 445, 0, 0, 0, 0, 0, 0, 446, 1168, + 545, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 447, 448, 449, 0, 14, + 0, 0, 450, 451, 0, 0, 0, 408, 409, 0, + 0, 452, 0, 453, 0, 454, 455, 410, 411, 412, + 413, 414, 0, 0, 0, 0, 0, 415, 532, 416, + 533, 0, 0, 417, 0, 0, 0, 0, 0, 0, + 0, 418, 0, 0, 0, 0, 0, 419, 0, 0, + 420, 0, 0, 421, 538, 0, 0, 422, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 447, 448, 449, 0, 14, 0, - 0, 450, 451, 0, 0, 0, 0, 0, 408, 409, - 452, 0, 453, 0, 454, 455, 631, 0, 410, 411, - 412, 413, 414, 0, 0, 0, 0, 0, 415, 0, - 416, 0, 0, 0, 417, 0, 0, 0, 0, 0, - 0, 0, 418, 0, 0, 0, 0, 0, 419, 0, - 0, 420, 632, 0, 421, 0, 0, 0, 422, 0, + 423, 424, 0, 222, 223, 224, 0, 226, 227, 228, + 229, 230, 425, 232, 233, 234, 235, 236, 237, 238, + 239, 240, 241, 242, 0, 244, 245, 246, 0, 0, + 249, 250, 251, 252, 426, 427, 428, 543, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 429, + 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 423, 424, 0, 222, 223, 224, 0, 226, 227, - 228, 229, 230, 425, 232, 233, 234, 235, 236, 237, - 238, 239, 240, 241, 242, 0, 244, 245, 246, 0, - 0, 249, 250, 251, 252, 426, 427, 428, 0, 0, + 55, 0, 0, 0, 0, 0, 0, 0, 431, 432, + 433, 434, 435, 0, 436, 0, 437, 438, 439, 440, + 441, 442, 443, 444, 56, 445, 0, 0, 0, 0, + 0, 0, 446, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 447, + 448, 449, 0, 14, 0, 0, 450, 451, 0, 0, + 0, 0, 0, 408, 409, 452, 0, 453, 0, 454, + 455, 630, 0, 410, 411, 412, 413, 414, 0, 0, + 0, 0, 0, 415, 0, 416, 0, 0, 0, 417, + 0, 0, 0, 0, 0, 0, 0, 418, 0, 0, + 0, 0, 0, 419, 0, 0, 420, 631, 0, 421, + 0, 0, 0, 422, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 423, 424, 0, 222, + 223, 224, 0, 226, 227, 228, 229, 230, 425, 232, + 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, + 0, 244, 245, 246, 0, 0, 249, 250, 251, 252, + 426, 427, 428, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 55, 0, 0, 0, + 0, 0, 0, 0, 431, 432, 433, 434, 435, 0, + 436, 828, 437, 438, 439, 440, 441, 442, 443, 444, + 829, 445, 0, 0, 0, 0, 0, 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 55, 0, 0, 0, 0, 0, 0, 0, 431, - 432, 433, 434, 435, 0, 436, 0, 437, 438, 439, - 440, 441, 442, 443, 444, 56, 445, 0, 0, 0, - 0, 0, 0, 446, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 447, 448, 449, 0, 14, + 0, 0, 450, 451, 0, 0, 0, 0, 0, 408, + 409, 452, 0, 453, 0, 454, 455, 630, 0, 410, + 411, 412, 413, 414, 0, 0, 0, 0, 0, 415, + 0, 416, 0, 0, 0, 417, 0, 0, 0, 0, + 0, 0, 0, 418, 0, 0, 0, 0, 0, 419, + 0, 0, 420, 631, 0, 421, 0, 0, 0, 422, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 447, 448, 449, 0, 14, 0, 0, 450, 451, 0, - 0, 0, 408, 409, 0, 0, 452, 0, 453, 0, - 454, 455, 410, 411, 412, 413, 414, 0, 0, 0, - 0, 0, 415, 0, 416, 0, 0, 0, 417, 0, - 0, 0, 0, 0, 0, 0, 418, 0, 0, 0, - 0, 0, 419, 0, 0, 420, 0, 0, 421, 0, - 0, 0, 422, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 423, 424, 0, 222, 223, - 224, 0, 226, 227, 228, 229, 230, 425, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 0, - 244, 245, 246, 0, 0, 249, 250, 251, 252, 426, - 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 429, 430, 0, 0, 0, 0, + 0, 0, 423, 424, 0, 222, 223, 224, 0, 226, + 227, 228, 229, 230, 425, 232, 233, 234, 235, 236, + 237, 238, 239, 240, 241, 242, 0, 244, 245, 246, + 0, 0, 249, 250, 251, 252, 426, 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 55, 0, 0, 0, 0, - 0, 0, 0, 431, 432, 433, 434, 435, 0, 436, - 828, 437, 438, 439, 440, 441, 442, 443, 444, 829, - 445, 0, 0, 0, 0, 0, 0, 446, 0, 0, + 0, 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 447, 448, 449, 0, 14, 0, - 0, 450, 451, 0, 0, 0, 408, 409, 0, 0, - 830, 0, 453, 831, 454, 455, 410, 411, 412, 413, - 414, 0, 0, 0, 0, 0, 415, 0, 416, 0, - 0, 0, 417, 0, 0, 0, 0, 0, 0, 0, - 418, 0, 0, 0, 0, 0, 419, 0, 0, 420, - 0, 0, 421, 0, 0, 0, 422, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 423, - 424, 0, 222, 223, 224, 0, 226, 227, 228, 229, - 230, 425, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 0, 244, 245, 246, 0, 0, 249, - 250, 251, 252, 426, 427, 428, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 429, 430, + 0, 0, 55, 0, 0, 0, 0, 0, 0, 0, + 431, 432, 433, 434, 435, 0, 436, 0, 437, 438, + 439, 440, 441, 442, 443, 444, 56, 445, 0, 0, + 0, 0, 0, 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 55, - 0, 0, 0, 0, 0, 0, 0, 431, 432, 433, - 434, 435, 0, 436, 0, 437, 438, 439, 440, 441, - 442, 443, 444, 56, 445, 0, 0, 0, 0, 0, - 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 447, 448, - 449, 0, 14, 0, 0, 450, 451, 0, 0, 0, - 0, 0, 408, 409, 452, 502, 453, 0, 454, 455, - 622, 0, 410, 411, 412, 413, 414, 0, 0, 0, - 0, 0, 415, 0, 416, 0, 0, 0, 417, 0, - 0, 0, 0, 0, 0, 0, 418, 0, 0, 0, - 0, 0, 419, 0, 0, 420, 0, 0, 421, 0, - 0, 0, 422, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 423, 424, 0, 222, 223, - 224, 0, 226, 227, 228, 229, 230, 425, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 0, - 244, 245, 246, 0, 0, 249, 250, 251, 252, 426, - 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 429, 430, 0, 0, 0, 0, + 0, 447, 448, 449, 0, 14, 0, 0, 450, 451, + 0, 0, 0, 408, 409, 0, 0, 452, 0, 453, + 0, 454, 455, 410, 411, 412, 413, 414, 0, 0, + 0, 0, 0, 415, 0, 416, 0, 0, 0, 417, + 0, 0, 0, 0, 0, 0, 0, 418, 0, 0, + 0, 0, 0, 419, 0, 0, 420, 0, 0, 421, + 0, 0, 0, 422, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 423, 424, 0, 222, + 223, 224, 0, 226, 227, 228, 229, 230, 425, 232, + 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, + 0, 244, 245, 246, 0, 0, 249, 250, 251, 252, + 426, 427, 428, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 55, 0, 0, 0, 0, - 0, 0, 0, 431, 432, 433, 434, 435, 0, 436, - 0, 437, 438, 439, 440, 441, 442, 443, 444, 56, - 445, 0, 0, 0, 0, 0, 0, 446, 0, 0, + 0, 0, 0, 0, 0, 0, 55, 0, 0, 0, + 0, 0, 0, 0, 431, 432, 433, 434, 435, 0, + 436, 828, 437, 438, 439, 440, 441, 442, 443, 444, + 829, 445, 0, 0, 0, 0, 0, 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 447, 448, 449, 0, 14, 0, - 0, 450, 451, 0, 0, 0, 408, 409, 0, 0, - 452, 0, 453, 0, 454, 455, 410, 411, 412, 413, - 414, 0, 0, 0, 0, 0, 415, 0, 416, 0, - 0, 0, 417, 0, 0, 0, 0, 0, 0, 0, - 418, 0, 0, 0, 0, 0, 419, 0, 0, 420, - 0, 0, 421, 0, 0, 0, 422, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 423, - 424, 0, 222, 223, 224, 0, 226, 227, 228, 229, - 230, 425, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 0, 244, 245, 246, 0, 0, 249, - 250, 251, 252, 426, 427, 428, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 429, 430, + 0, 0, 0, 0, 0, 447, 448, 449, 0, 14, + 0, 0, 450, 451, 0, 0, 0, 408, 409, 0, + 0, 830, 0, 453, 831, 454, 455, 410, 411, 412, + 413, 414, 0, 0, 0, 0, 0, 415, 0, 416, + 0, 0, 0, 417, 0, 0, 0, 0, 0, 0, + 0, 418, 0, 0, 0, 0, 0, 419, 0, 0, + 420, 0, 0, 421, 0, 0, 0, 422, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 55, - 0, 0, 0, 0, 0, 0, 0, 431, 432, 433, - 434, 435, 0, 436, 0, 437, 438, 439, 440, 441, - 442, 443, 444, 56, 445, 0, 0, 0, 0, 0, - 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 447, 448, - 449, 0, 14, 0, 0, 450, 451, 0, 0, 0, - 408, 409, 0, 0, 452, 701, 453, 0, 454, 455, - 410, 411, 412, 413, 414, 0, 0, 0, 0, 0, - 415, 0, 416, 0, 0, 0, 417, 0, 0, 0, - 0, 0, 0, 0, 418, 0, 0, 0, 0, 0, - 419, 0, 0, 420, 0, 0, 421, 0, 0, 0, - 422, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 423, 424, 0, 222, 223, 224, 0, - 226, 227, 228, 229, 230, 425, 232, 233, 234, 235, - 236, 237, 238, 239, 240, 241, 242, 0, 244, 245, - 246, 0, 0, 249, 250, 251, 252, 426, 427, 428, + 423, 424, 0, 222, 223, 224, 0, 226, 227, 228, + 229, 230, 425, 232, 233, 234, 235, 236, 237, 238, + 239, 240, 241, 242, 0, 244, 245, 246, 0, 0, + 249, 250, 251, 252, 426, 427, 428, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 429, + 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 429, 430, 0, 0, 0, 0, 0, 0, - 0, 719, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 55, 0, 0, 0, 0, 0, 0, - 0, 431, 432, 433, 434, 435, 0, 436, 0, 437, - 438, 439, 440, 441, 442, 443, 444, 56, 445, 0, - 0, 0, 0, 0, 0, 446, 0, 0, 0, 0, + 55, 0, 0, 0, 0, 0, 0, 0, 431, 432, + 433, 434, 435, 0, 436, 0, 437, 438, 439, 440, + 441, 442, 443, 444, 56, 445, 0, 0, 0, 0, + 0, 0, 446, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 447, + 448, 449, 0, 14, 0, 0, 450, 451, 0, 0, + 0, 0, 0, 408, 409, 452, 502, 453, 0, 454, + 455, 621, 0, 410, 411, 412, 413, 414, 0, 0, + 0, 0, 0, 415, 0, 416, 0, 0, 0, 417, + 0, 0, 0, 0, 0, 0, 0, 418, 0, 0, + 0, 0, 0, 419, 0, 0, 420, 0, 0, 421, + 0, 0, 0, 422, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 423, 424, 0, 222, + 223, 224, 0, 226, 227, 228, 229, 230, 425, 232, + 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, + 0, 244, 245, 246, 0, 0, 249, 250, 251, 252, + 426, 427, 428, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 447, 448, 449, 0, 14, 0, 0, 450, - 451, 0, 0, 0, 408, 409, 0, 0, 452, 0, - 453, 0, 454, 455, 410, 411, 412, 413, 414, 0, - 0, 0, 0, 0, 415, 0, 416, 0, 0, 0, - 417, 0, 0, 0, 0, 0, 0, 0, 418, 0, - 0, 0, 0, 0, 419, 0, 0, 420, 0, 0, - 421, 0, 0, 0, 422, 0, 0, 0, 0, 0, - 722, 0, 0, 0, 0, 0, 0, 423, 424, 0, - 222, 223, 224, 0, 226, 227, 228, 229, 230, 425, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, - 242, 0, 244, 245, 246, 0, 0, 249, 250, 251, - 252, 426, 427, 428, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 429, 430, 0, 0, + 0, 0, 0, 0, 0, 0, 55, 0, 0, 0, + 0, 0, 0, 0, 431, 432, 433, 434, 435, 0, + 436, 0, 437, 438, 439, 440, 441, 442, 443, 444, + 56, 445, 0, 0, 0, 0, 0, 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 55, 0, 0, - 0, 0, 0, 0, 0, 431, 432, 433, 434, 435, - 0, 436, 0, 437, 438, 439, 440, 441, 442, 443, - 444, 56, 445, 0, 0, 0, 0, 0, 0, 446, + 0, 0, 0, 0, 0, 447, 448, 449, 0, 14, + 0, 0, 450, 451, 0, 0, 0, 408, 409, 0, + 0, 452, 0, 453, 0, 454, 455, 410, 411, 412, + 413, 414, 0, 0, 0, 0, 0, 415, 0, 416, + 0, 0, 0, 417, 0, 0, 0, 0, 0, 0, + 0, 418, 0, 0, 0, 0, 0, 419, 0, 0, + 420, 0, 0, 421, 0, 0, 0, 422, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 447, 448, 449, 0, - 14, 0, 0, 450, 451, 0, 0, 0, 408, 409, - 0, 0, 452, 0, 453, 0, 454, 455, 410, 411, - 412, 413, 414, 0, 0, 0, 0, 0, 415, 0, - 416, 0, 0, 0, 417, 0, 0, 0, 0, 0, - 0, 0, 418, 0, 0, 0, 0, 0, 419, 0, - 0, 420, 0, 0, 421, 0, 0, 0, 422, 0, - 0, 728, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 423, 424, 0, 222, 223, 224, 0, 226, 227, - 228, 229, 230, 425, 232, 233, 234, 235, 236, 237, - 238, 239, 240, 241, 242, 0, 244, 245, 246, 0, - 0, 249, 250, 251, 252, 426, 427, 428, 0, 0, + 423, 424, 0, 222, 223, 224, 0, 226, 227, 228, + 229, 230, 425, 232, 233, 234, 235, 236, 237, 238, + 239, 240, 241, 242, 0, 244, 245, 246, 0, 0, + 249, 250, 251, 252, 426, 427, 428, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 429, + 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, + 55, 0, 0, 0, 0, 0, 0, 0, 431, 432, + 433, 434, 435, 0, 436, 0, 437, 438, 439, 440, + 441, 442, 443, 444, 56, 445, 0, 0, 0, 0, + 0, 0, 446, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 447, + 448, 449, 0, 14, 0, 0, 450, 451, 0, 0, + 0, 408, 409, 0, 0, 452, 700, 453, 0, 454, + 455, 410, 411, 412, 413, 414, 0, 0, 0, 0, + 0, 415, 0, 416, 0, 0, 0, 417, 0, 0, + 0, 0, 0, 0, 0, 418, 0, 0, 0, 0, + 0, 419, 0, 0, 420, 0, 0, 421, 0, 0, + 0, 422, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 423, 424, 0, 222, 223, 224, + 0, 226, 227, 228, 229, 230, 425, 232, 233, 234, + 235, 236, 237, 238, 239, 240, 241, 242, 0, 244, + 245, 246, 0, 0, 249, 250, 251, 252, 426, 427, + 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 429, 430, 0, 0, 0, 0, 0, + 0, 0, 718, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 55, 0, 0, 0, 0, 0, + 0, 0, 431, 432, 433, 434, 435, 0, 436, 0, + 437, 438, 439, 440, 441, 442, 443, 444, 56, 445, + 0, 0, 0, 0, 0, 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 55, 0, 0, 0, 0, 0, 0, 0, 431, - 432, 433, 434, 435, 0, 436, 0, 437, 438, 439, - 440, 441, 442, 443, 444, 56, 445, 0, 0, 0, - 0, 0, 0, 446, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 447, 448, 449, 0, 14, 0, 0, + 450, 451, 0, 0, 0, 408, 409, 0, 0, 452, + 0, 453, 0, 454, 455, 410, 411, 412, 413, 414, + 0, 0, 0, 0, 0, 415, 0, 416, 0, 0, + 0, 417, 0, 0, 0, 0, 0, 0, 0, 418, + 0, 0, 0, 0, 0, 419, 0, 0, 420, 0, + 0, 421, 0, 0, 0, 422, 0, 0, 0, 0, + 0, 721, 0, 0, 0, 0, 0, 0, 423, 424, + 0, 222, 223, 224, 0, 226, 227, 228, 229, 230, + 425, 232, 233, 234, 235, 236, 237, 238, 239, 240, + 241, 242, 0, 244, 245, 246, 0, 0, 249, 250, + 251, 252, 426, 427, 428, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 447, 448, 449, 0, 14, 0, 0, 450, 451, 0, - 0, 0, 408, 409, 0, 0, 452, 0, 453, 0, - 454, 455, 410, 411, 412, 413, 414, 0, 0, 0, - 0, 0, 415, 0, 416, 0, 0, 0, 417, 0, - 0, 0, 0, 0, 0, 0, 418, 0, 0, 0, - 0, 0, 419, 0, 0, 420, 0, 0, 421, 0, - 0, 0, 422, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 423, 424, 0, 222, 223, - 224, 0, 226, 227, 228, 229, 230, 425, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 0, - 244, 245, 246, 0, 0, 249, 250, 251, 252, 426, - 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 429, 430, 0, 0, 0, 0, - 0, 0, 0, 731, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 55, 0, 0, 0, 0, - 0, 0, 0, 431, 432, 433, 434, 435, 0, 436, - 0, 437, 438, 439, 440, 441, 442, 443, 444, 56, - 445, 0, 0, 0, 0, 0, 0, 446, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 55, 0, + 0, 0, 0, 0, 0, 0, 431, 432, 433, 434, + 435, 0, 436, 0, 437, 438, 439, 440, 441, 442, + 443, 444, 56, 445, 0, 0, 0, 0, 0, 0, + 446, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 447, 448, 449, + 0, 14, 0, 0, 450, 451, 0, 0, 0, 408, + 409, 0, 0, 452, 0, 453, 0, 454, 455, 410, + 411, 412, 413, 414, 0, 0, 0, 0, 0, 415, + 0, 416, 0, 0, 0, 417, 0, 0, 0, 0, + 0, 0, 0, 418, 0, 0, 0, 0, 0, 419, + 0, 0, 420, 0, 0, 421, 0, 0, 0, 422, + 0, 0, 727, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 423, 424, 0, 222, 223, 224, 0, 226, + 227, 228, 229, 230, 425, 232, 233, 234, 235, 236, + 237, 238, 239, 240, 241, 242, 0, 244, 245, 246, + 0, 0, 249, 250, 251, 252, 426, 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 447, 448, 449, 0, 14, 0, - 0, 450, 451, 0, 0, 0, 408, 409, 0, 0, - 452, 0, 453, 0, 454, 455, 410, 411, 412, 413, - 414, 0, 0, 868, 0, 0, 415, 0, 416, 0, - 0, 0, 417, 0, 0, 0, 0, 0, 0, 0, - 418, 0, 0, 0, 0, 0, 419, 0, 0, 420, - 0, 0, 421, 0, 0, 0, 422, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 423, - 424, 0, 222, 223, 224, 0, 226, 227, 228, 229, - 230, 425, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 0, 244, 245, 246, 0, 0, 249, - 250, 251, 252, 426, 427, 428, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 429, 430, + 0, 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 55, - 0, 0, 0, 0, 0, 0, 0, 431, 432, 433, - 434, 435, 0, 436, 0, 437, 438, 439, 440, 441, - 442, 443, 444, 56, 445, 0, 0, 0, 0, 0, - 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 447, 448, - 449, 0, 14, 0, 0, 450, 451, 0, 0, 0, - 408, 409, 0, 0, 452, 0, 453, 0, 454, 455, - 410, 411, 412, 413, 414, 0, 0, 0, 0, 0, - 415, 0, 416, 0, 0, 0, 417, 0, 0, 0, - 0, 0, 0, 0, 418, 0, 0, 0, 0, 0, - 419, 0, 0, 420, 0, 0, 421, 0, 0, 0, - 422, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 423, 424, 0, 222, 223, 224, 0, - 226, 227, 228, 229, 230, 425, 232, 233, 234, 235, - 236, 237, 238, 239, 240, 241, 242, 0, 244, 245, - 246, 0, 0, 249, 250, 251, 252, 426, 427, 428, + 0, 0, 55, 0, 0, 0, 0, 0, 0, 0, + 431, 432, 433, 434, 435, 0, 436, 0, 437, 438, + 439, 440, 441, 442, 443, 444, 56, 445, 0, 0, + 0, 0, 0, 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 429, 430, 0, 0, 0, 0, 0, 0, + 0, 447, 448, 449, 0, 14, 0, 0, 450, 451, + 0, 0, 0, 408, 409, 0, 0, 452, 0, 453, + 0, 454, 455, 410, 411, 412, 413, 414, 0, 0, + 0, 0, 0, 415, 0, 416, 0, 0, 0, 417, + 0, 0, 0, 0, 0, 0, 0, 418, 0, 0, + 0, 0, 0, 419, 0, 0, 420, 0, 0, 421, + 0, 0, 0, 422, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 423, 424, 0, 222, + 223, 224, 0, 226, 227, 228, 229, 230, 425, 232, + 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, + 0, 244, 245, 246, 0, 0, 249, 250, 251, 252, + 426, 427, 428, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 429, 430, 0, 0, 0, + 0, 0, 0, 0, 730, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 55, 0, 0, 0, + 0, 0, 0, 0, 431, 432, 433, 434, 435, 0, + 436, 0, 437, 438, 439, 440, 441, 442, 443, 444, + 56, 445, 0, 0, 0, 0, 0, 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 55, 0, 0, 0, 0, 0, 0, - 0, 431, 432, 433, 434, 435, 0, 436, 0, 437, - 438, 439, 440, 441, 442, 443, 444, 56, 445, 0, - 0, 0, 0, 0, 0, 446, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 447, 448, 449, 0, 14, + 0, 0, 450, 451, 0, 0, 0, 408, 409, 0, + 0, 452, 0, 453, 0, 454, 455, 410, 411, 412, + 413, 414, 0, 0, 868, 0, 0, 415, 0, 416, + 0, 0, 0, 417, 0, 0, 0, 0, 0, 0, + 0, 418, 0, 0, 0, 0, 0, 419, 0, 0, + 420, 0, 0, 421, 0, 0, 0, 422, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 447, 448, 449, 0, 14, 0, 0, 450, - 451, 0, 0, 0, 408, 409, 0, 0, 452, 0, - 453, 888, 454, 455, 410, 411, 412, 413, 414, 0, - 0, 0, 0, 0, 415, 0, 416, 0, 0, 0, - 417, 0, 0, 0, 0, 0, 0, 0, 418, 0, - 0, 0, 0, 0, 419, 0, 0, 420, 0, 0, - 421, 0, 0, 0, 422, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 423, 424, 0, - 222, 223, 224, 0, 226, 227, 228, 229, 230, 425, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, - 242, 0, 244, 245, 246, 0, 0, 249, 250, 251, - 252, 426, 427, 428, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 429, 430, 0, 0, + 423, 424, 0, 222, 223, 224, 0, 226, 227, 228, + 229, 230, 425, 232, 233, 234, 235, 236, 237, 238, + 239, 240, 241, 242, 0, 244, 245, 246, 0, 0, + 249, 250, 251, 252, 426, 427, 428, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 429, + 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 55, 0, 0, - 0, 0, 0, 0, 0, 431, 432, 433, 434, 435, - 0, 436, 0, 437, 438, 439, 440, 441, 442, 443, - 444, 56, 445, 0, 0, 0, 0, 0, 0, 446, + 55, 0, 0, 0, 0, 0, 0, 0, 431, 432, + 433, 434, 435, 0, 436, 0, 437, 438, 439, 440, + 441, 442, 443, 444, 56, 445, 0, 0, 0, 0, + 0, 0, 446, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 447, + 448, 449, 0, 14, 0, 0, 450, 451, 0, 0, + 0, 408, 409, 0, 0, 452, 0, 453, 0, 454, + 455, 410, 411, 412, 413, 414, 0, 0, 0, 0, + 0, 415, 0, 416, 0, 0, 0, 417, 0, 0, + 0, 0, 0, 0, 0, 418, 0, 0, 0, 0, + 0, 419, 0, 0, 420, 0, 0, 421, 0, 0, + 0, 422, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 423, 424, 0, 222, 223, 224, + 0, 226, 227, 228, 229, 230, 425, 232, 233, 234, + 235, 236, 237, 238, 239, 240, 241, 242, 0, 244, + 245, 246, 0, 0, 249, 250, 251, 252, 426, 427, + 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 974, 0, 447, 448, 449, 0, - 14, 0, 0, 450, 451, 0, 0, 0, 408, 409, - 0, 0, 452, 0, 453, 0, 454, 455, 410, 411, - 412, 413, 414, 0, 0, 0, 0, 0, 415, 0, - 416, 0, 0, 0, 417, 0, 0, 0, 0, 0, - 0, 0, 418, 0, 0, 0, 0, 0, 419, 0, - 0, 420, 0, 0, 421, 0, 0, 0, 422, 0, + 0, 0, 0, 0, 55, 0, 0, 0, 0, 0, + 0, 0, 431, 432, 433, 434, 435, 0, 436, 0, + 437, 438, 439, 440, 441, 442, 443, 444, 56, 445, + 0, 0, 0, 0, 0, 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 423, 424, 0, 222, 223, 224, 0, 226, 227, - 228, 229, 230, 425, 232, 233, 234, 235, 236, 237, - 238, 239, 240, 241, 242, 0, 244, 245, 246, 0, - 0, 249, 250, 251, 252, 426, 427, 428, 0, 0, + 0, 0, 0, 447, 448, 449, 0, 14, 0, 0, + 450, 451, 0, 0, 0, 408, 409, 0, 0, 452, + 0, 453, 888, 454, 455, 410, 411, 412, 413, 414, + 0, 0, 0, 0, 0, 415, 0, 416, 0, 0, + 0, 417, 0, 0, 0, 0, 0, 0, 0, 418, + 0, 0, 0, 0, 0, 419, 0, 0, 420, 0, + 0, 421, 0, 0, 0, 422, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 423, 424, + 0, 222, 223, 224, 0, 226, 227, 228, 229, 230, + 425, 232, 233, 234, 235, 236, 237, 238, 239, 240, + 241, 242, 0, 244, 245, 246, 0, 0, 249, 250, + 251, 252, 426, 427, 428, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 55, 0, + 0, 0, 0, 0, 0, 0, 431, 432, 433, 434, + 435, 0, 436, 0, 437, 438, 439, 440, 441, 442, + 443, 444, 56, 445, 0, 0, 0, 0, 0, 0, + 446, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 974, 0, 447, 448, 449, + 0, 14, 0, 0, 450, 451, 0, 0, 0, 408, + 409, 0, 0, 452, 0, 453, 0, 454, 455, 410, + 411, 412, 413, 414, 0, 0, 0, 0, 0, 415, + 0, 416, 0, 0, 0, 417, 0, 0, 0, 0, + 0, 0, 0, 418, 0, 0, 0, 0, 0, 419, + 0, 0, 420, 0, 0, 421, 0, 0, 0, 422, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 55, 0, 0, 0, 0, 0, 0, 0, 431, - 432, 433, 434, 435, 0, 436, 0, 437, 438, 439, - 440, 441, 442, 443, 444, 56, 445, 0, 0, 0, - 0, 0, 0, 446, 0, 0, 0, 0, 0, 0, + 0, 0, 423, 424, 0, 222, 223, 224, 0, 226, + 227, 228, 229, 230, 425, 232, 233, 234, 235, 236, + 237, 238, 239, 240, 241, 242, 0, 244, 245, 246, + 0, 0, 249, 250, 251, 252, 426, 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 447, 448, 449, 0, 14, 0, 0, 450, 451, 0, - 0, 0, 408, 409, 0, 0, 452, 0, 453, 1145, - 454, 455, 410, 411, 412, 413, 414, 0, 0, 0, - 0, 0, 415, 0, 416, 0, 0, 0, 417, 0, - 0, 0, 0, 0, 0, 0, 418, 0, 0, 0, - 0, 0, 419, 0, 0, 420, 0, 0, 421, 0, - 0, 0, 422, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 423, 424, 0, 222, 223, - 224, 0, 226, 227, 228, 229, 230, 425, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 0, - 244, 245, 246, 0, 0, 249, 250, 251, 252, 426, - 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 429, 430, 0, 0, 0, 0, + 0, 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 55, 0, 0, 0, 0, - 0, 0, 0, 431, 432, 433, 434, 435, 0, 436, - 0, 437, 438, 439, 440, 441, 442, 443, 444, 56, - 445, 0, 0, 0, 0, 0, 0, 446, 0, 0, + 0, 0, 55, 0, 0, 0, 0, 0, 0, 0, + 431, 432, 433, 434, 435, 0, 436, 0, 437, 438, + 439, 440, 441, 442, 443, 444, 56, 445, 0, 0, + 0, 0, 0, 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 447, 448, 449, 0, 14, 0, - 0, 450, 451, 0, 0, 0, 408, 409, 0, 0, - 452, 0, 453, 1154, 454, 455, 410, 411, 412, 413, - 414, 0, 0, 0, 0, 0, 415, 0, 416, 0, - 0, 0, 417, 0, 0, 0, 0, 0, 0, 0, - 418, 0, 0, 0, 0, 0, 419, 0, 0, 420, - 0, 0, 421, 0, 0, 0, 422, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 423, - 424, 0, 222, 223, 224, 0, 226, 227, 228, 229, - 230, 425, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 0, 244, 245, 246, 0, 0, 249, - 250, 251, 252, 426, 427, 428, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 429, 430, + 0, 447, 448, 449, 0, 14, 0, 0, 450, 451, + 0, 0, 0, 408, 409, 0, 0, 452, 0, 453, + 1145, 454, 455, 410, 411, 412, 413, 414, 0, 0, + 0, 0, 0, 415, 0, 416, 0, 0, 0, 417, + 0, 0, 0, 0, 0, 0, 0, 418, 0, 0, + 0, 0, 0, 419, 0, 0, 420, 0, 0, 421, + 0, 0, 0, 422, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 423, 424, 0, 222, + 223, 224, 0, 226, 227, 228, 229, 230, 425, 232, + 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, + 0, 244, 245, 246, 0, 0, 249, 250, 251, 252, + 426, 427, 428, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 55, - 0, 0, 0, 0, 0, 0, 0, 431, 432, 433, - 434, 435, 0, 436, 0, 437, 438, 439, 440, 441, - 442, 443, 444, 56, 445, 0, 0, 0, 0, 0, - 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 447, 448, - 449, 0, 14, 0, 0, 450, 451, 0, 0, 0, - 408, 409, 0, 0, 452, 0, 453, 1199, 454, 455, - 410, 411, 412, 413, 414, 0, 0, 0, 0, 0, - 415, 0, 416, 0, 0, 0, 417, 0, 0, 0, - 0, 0, 0, 0, 418, 0, 0, 0, 0, 0, - 419, 0, 0, 420, 0, 0, 421, 0, 0, 0, - 422, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 423, 424, 0, 222, 223, 224, 0, - 226, 227, 228, 229, 230, 425, 232, 233, 234, 235, - 236, 237, 238, 239, 240, 241, 242, 0, 244, 245, - 246, 0, 0, 249, 250, 251, 252, 426, 427, 428, + 0, 0, 0, 0, 0, 0, 55, 0, 0, 0, + 0, 0, 0, 0, 431, 432, 433, 434, 435, 0, + 436, 0, 437, 438, 439, 440, 441, 442, 443, 444, + 56, 445, 0, 0, 0, 0, 0, 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 429, 430, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 447, 448, 449, 0, 14, + 0, 0, 450, 451, 0, 0, 0, 408, 409, 0, + 0, 452, 0, 453, 1154, 454, 455, 410, 411, 412, + 413, 414, 0, 0, 0, 0, 0, 415, 0, 416, + 0, 0, 0, 417, 0, 0, 0, 0, 0, 0, + 0, 418, 0, 0, 0, 0, 0, 419, 0, 0, + 420, 0, 0, 421, 0, 0, 0, 422, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 55, 0, 0, 0, 0, 0, 0, - 0, 431, 432, 433, 434, 435, 0, 436, 0, 437, - 438, 439, 440, 441, 442, 443, 444, 56, 445, 0, - 0, 0, 0, 0, 0, 446, 0, 0, 0, 0, + 423, 424, 0, 222, 223, 224, 0, 226, 227, 228, + 229, 230, 425, 232, 233, 234, 235, 236, 237, 238, + 239, 240, 241, 242, 0, 244, 245, 246, 0, 0, + 249, 250, 251, 252, 426, 427, 428, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 429, + 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 447, 448, 449, 0, 14, 0, 0, 450, - 451, 0, 0, 0, 408, 409, 0, 0, 452, 0, - 453, 1271, 454, 455, 410, 411, 412, 413, 414, 0, - 0, 0, 0, 0, 415, 0, 416, 0, 0, 0, - 417, 0, 0, 0, 0, 0, 0, 0, 418, 0, - 0, 0, 0, 0, 419, 0, 0, 420, 0, 0, - 421, 0, 0, 0, 422, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 423, 424, 0, - 222, 223, 224, 0, 226, 227, 228, 229, 230, 425, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, - 242, 0, 244, 245, 246, 0, 0, 249, 250, 251, - 252, 426, 427, 428, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 429, 430, 0, 0, - 0, 0, 0, 0, 0, 1287, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 55, 0, 0, - 0, 0, 0, 0, 0, 431, 432, 433, 434, 435, - 0, 436, 0, 437, 438, 439, 440, 441, 442, 443, - 444, 56, 445, 0, 0, 0, 0, 0, 0, 446, + 55, 0, 0, 0, 0, 0, 0, 0, 431, 432, + 433, 434, 435, 0, 436, 0, 437, 438, 439, 440, + 441, 442, 443, 444, 56, 445, 0, 0, 0, 0, + 0, 0, 446, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 447, + 448, 449, 0, 14, 0, 0, 450, 451, 0, 0, + 0, 408, 409, 0, 0, 452, 0, 453, 1199, 454, + 455, 410, 411, 412, 413, 414, 0, 0, 0, 0, + 0, 415, 0, 416, 0, 0, 0, 417, 0, 0, + 0, 0, 0, 0, 0, 418, 0, 0, 0, 0, + 0, 419, 0, 0, 420, 0, 0, 421, 0, 0, + 0, 422, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 423, 424, 0, 222, 223, 224, + 0, 226, 227, 228, 229, 230, 425, 232, 233, 234, + 235, 236, 237, 238, 239, 240, 241, 242, 0, 244, + 245, 246, 0, 0, 249, 250, 251, 252, 426, 427, + 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 447, 448, 449, 0, - 14, 0, 0, 450, 451, 0, 0, 0, 408, 409, - 0, 0, 452, 0, 453, 0, 454, 455, 410, 411, - 412, 413, 414, 0, 0, 0, 0, 0, 415, 0, - 416, 0, 0, 0, 417, 0, 0, 0, 0, 0, - 0, 0, 418, 0, 0, 0, 0, 0, 419, 0, - 0, 420, 0, 0, 421, 0, 0, 0, 422, 0, + 0, 0, 0, 0, 55, 0, 0, 0, 0, 0, + 0, 0, 431, 432, 433, 434, 435, 0, 436, 0, + 437, 438, 439, 440, 441, 442, 443, 444, 56, 445, + 0, 0, 0, 0, 0, 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 423, 424, 0, 222, 223, 224, 0, 226, 227, - 228, 229, 230, 425, 232, 233, 234, 235, 236, 237, - 238, 239, 240, 241, 242, 0, 244, 245, 246, 0, - 0, 249, 250, 251, 252, 426, 427, 428, 0, 0, + 0, 0, 0, 447, 448, 449, 0, 14, 0, 0, + 450, 451, 0, 0, 0, 408, 409, 0, 0, 452, + 0, 453, 1271, 454, 455, 410, 411, 412, 413, 414, + 0, 0, 0, 0, 0, 415, 0, 416, 0, 0, + 0, 417, 0, 0, 0, 0, 0, 0, 0, 418, + 0, 0, 0, 0, 0, 419, 0, 0, 420, 0, + 0, 421, 0, 0, 0, 422, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 423, 424, + 0, 222, 223, 224, 0, 226, 227, 228, 229, 230, + 425, 232, 233, 234, 235, 236, 237, 238, 239, 240, + 241, 242, 0, 244, 245, 246, 0, 0, 249, 250, + 251, 252, 426, 427, 428, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 429, 430, 0, + 0, 0, 0, 0, 0, 0, 1287, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 55, 0, + 0, 0, 0, 0, 0, 0, 431, 432, 433, 434, + 435, 0, 436, 0, 437, 438, 439, 440, 441, 442, + 443, 444, 56, 445, 0, 0, 0, 0, 0, 0, + 446, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 447, 448, 449, + 0, 14, 0, 0, 450, 451, 0, 0, 0, 408, + 409, 0, 0, 452, 0, 453, 0, 454, 455, 410, + 411, 412, 413, 414, 0, 0, 0, 0, 0, 415, + 0, 416, 0, 0, 0, 417, 0, 0, 0, 0, + 0, 0, 0, 418, 0, 0, 0, 0, 0, 419, + 0, 0, 420, 0, 0, 421, 0, 0, 0, 422, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 423, 424, 0, 222, 223, 224, 0, 226, + 227, 228, 229, 230, 425, 232, 233, 234, 235, 236, + 237, 238, 239, 240, 241, 242, 0, 244, 245, 246, + 0, 0, 249, 250, 251, 252, 426, 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 55, 0, 0, 0, 0, 0, 0, 0, 431, - 432, 433, 434, 435, 0, 436, 0, 437, 438, 439, - 440, 441, 442, 443, 444, 56, 445, 0, 0, 0, - 0, 0, 0, 446, 0, 0, 0, 0, 0, 0, + 0, 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 447, 448, 449, 0, 14, 0, 0, 450, 451, 0, - 0, 0, 408, 409, 0, 0, 452, 0, 453, 0, - 454, 455, 410, 411, 412, 413, 414, 0, 0, 0, - 0, 0, 415, 0, 416, 0, 0, 0, 417, 0, - 0, 0, 0, 0, 0, 0, 418, 0, 0, 0, - 0, 0, 419, 0, 0, 420, 0, 0, 421, 0, - 0, 0, 422, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 423, 424, 0, 222, 223, - 224, 0, 226, 227, 228, 229, 230, 425, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 0, - 244, 245, 246, 0, 0, 249, 250, 251, 252, 426, - 427, 428, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 429, 430, 0, 0, 0, 0, + 0, 0, 55, 0, 0, 0, 0, 0, 0, 0, + 431, 432, 433, 434, 435, 0, 436, 0, 437, 438, + 439, 440, 441, 442, 443, 444, 56, 445, 0, 0, + 0, 0, 0, 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 55, 0, 0, 0, 0, - 0, 0, 0, 431, 432, 433, 434, 435, 0, 436, - 0, 437, 438, 439, 440, 441, 442, 443, 444, 56, - 445, 0, 0, 0, 0, 216, 0, 446, 0, 0, - 0, 217, 0, 0, 0, 0, 0, 218, 0, 0, - 0, 0, 0, 0, 447, 448, 449, 219, 14, 0, - 0, 450, 451, 0, 0, 220, 0, 0, 0, 0, - 1130, 0, 453, 0, 454, 455, 0, 0, 0, 0, - 221, 0, 0, 0, 0, 0, 0, 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, - 0, 0, 0, 643, 644, 0, 0, 216, 0, 0, - 0, 0, 0, 217, 0, 0, 0, 0, 0, 218, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 219, - 0, 0, 0, 0, 55, 0, 0, 220, 0, 643, - 644, 0, 0, 0, 0, 0, 0, 255, 0, 0, - 0, 0, 221, 0, 0, 0, 0, 0, 56, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, + 0, 447, 448, 449, 0, 14, 0, 0, 450, 451, + 0, 0, 0, 408, 409, 0, 0, 452, 0, 453, + 0, 454, 455, 410, 411, 412, 413, 414, 0, 0, + 0, 0, 0, 415, 0, 416, 0, 0, 0, 417, + 0, 0, 0, 0, 0, 0, 0, 418, 0, 0, + 0, 0, 0, 419, 0, 0, 420, 0, 0, 421, + 0, 0, 0, 422, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 423, 424, 0, 222, + 223, 224, 0, 226, 227, 228, 229, 230, 425, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, - 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 0, 0, 0, 0, 0, 645, 646, 647, - 648, 649, 0, 256, 650, 651, 652, 653, 0, 654, - 655, 656, 657, 658, 0, 659, 660, 0, 0, 0, - 0, 661, 662, 663, 0, 0, 55, 664, 0, 0, - 0, 643, 644, 645, 646, 647, 648, 649, 0, 255, - 650, 651, 652, 653, 0, 654, 655, 656, 657, 658, - 509, 659, 660, 0, 0, 0, 0, 661, 662, 663, - 0, 0, 665, 664, 666, 667, 668, 669, 670, 671, - 672, 673, 674, 675, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 676, 677, 0, 0, 695, 0, - 0, 0, 0, 0, 0, 256, 0, 0, 665, 0, - 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, + 0, 244, 245, 246, 0, 0, 249, 250, 251, 252, + 426, 427, 428, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 429, 430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 676, 677, 0, 0, 770, 645, 646, 647, 648, 649, - 643, 644, 650, 651, 652, 653, 0, 654, 655, 656, - 657, 658, 0, 659, 660, 0, 0, 0, 0, 661, - 662, 663, 0, 0, 0, 664, 0, 0, 0, 0, - 0, 643, 644, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 55, 0, 0, 0, + 0, 0, 0, 0, 431, 432, 433, 434, 435, 0, + 436, 0, 437, 438, 439, 440, 441, 442, 443, 444, + 56, 445, 0, 0, 0, 0, 216, 0, 446, 0, + 0, 0, 217, 0, 0, 0, 0, 0, 218, 0, + 0, 0, 0, 0, 0, 447, 448, 449, 219, 14, + 0, 0, 450, 451, 0, 0, 220, 0, 0, 0, + 0, 1130, 0, 453, 0, 454, 455, 0, 0, 0, + 0, 221, 0, 0, 0, 0, 0, 0, 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, 0, 0, 0, 642, 643, 0, 0, 216, 0, + 0, 0, 0, 0, 217, 0, 0, 0, 0, 0, + 218, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 219, 0, 0, 0, 0, 55, 0, 0, 220, 0, + 642, 643, 0, 0, 0, 0, 0, 0, 255, 0, + 0, 0, 0, 221, 0, 0, 0, 0, 0, 56, + 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, 0, 0, 0, 0, 0, 644, 645, + 646, 647, 648, 0, 256, 649, 650, 651, 652, 0, + 653, 654, 655, 656, 657, 0, 658, 659, 0, 0, + 0, 0, 660, 661, 662, 0, 0, 55, 663, 0, + 0, 0, 642, 643, 644, 645, 646, 647, 648, 0, + 255, 649, 650, 651, 652, 0, 653, 654, 655, 656, + 657, 509, 658, 659, 0, 0, 0, 0, 660, 661, + 662, 0, 0, 664, 663, 665, 666, 667, 668, 669, + 670, 671, 672, 673, 674, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 675, 676, 0, 0, 694, + 0, 0, 0, 0, 0, 0, 256, 0, 0, 664, + 0, 665, 666, 667, 668, 669, 670, 671, 672, 673, + 674, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 675, 676, 0, 0, 770, 644, 645, 646, 647, + 648, 642, 643, 649, 650, 651, 652, 0, 653, 654, + 655, 656, 657, 0, 658, 659, 0, 0, 0, 0, + 660, 661, 662, 0, 0, 0, 663, 0, 0, 0, + 0, 0, 642, 643, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 665, 0, 666, 667, 668, 669, 670, 671, 672, 673, - 674, 675, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 676, 677, 0, 0, 912, 0, 0, 0, - 0, 0, 0, 0, 645, 646, 647, 648, 649, 0, - 0, 650, 651, 652, 653, 0, 654, 655, 656, 657, - 658, 0, 659, 660, 0, 0, 0, 0, 661, 662, - 663, 0, 0, 0, 664, 645, 646, 647, 648, 649, - 643, 644, 650, 651, 652, 653, 0, 654, 655, 656, - 657, 658, 0, 659, 660, 0, 0, 0, 0, 661, - 662, 663, 0, 0, 0, 664, 0, 0, 0, 665, - 0, 666, 667, 668, 669, 670, 671, 672, 673, 674, - 675, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 676, 677, 0, 0, 985, 0, 0, 0, 0, - 665, 0, 666, 667, 668, 669, 670, 671, 672, 673, - 674, 675, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 676, 677, 0, 0, 988, 0, 0, 0, - 0, 0, 643, 644, 645, 646, 647, 648, 649, 0, - 0, 650, 651, 652, 653, 0, 654, 655, 656, 657, - 658, 0, 659, 660, 0, 0, 0, 0, 661, 662, - 663, 0, 0, 0, 664, 643, 644, 0, 0, 0, + 0, 664, 0, 665, 666, 667, 668, 669, 670, 671, + 672, 673, 674, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 675, 676, 0, 0, 912, 0, 0, + 0, 0, 0, 0, 0, 644, 645, 646, 647, 648, + 0, 0, 649, 650, 651, 652, 0, 653, 654, 655, + 656, 657, 0, 658, 659, 0, 0, 0, 0, 660, + 661, 662, 0, 0, 0, 663, 644, 645, 646, 647, + 648, 642, 643, 649, 650, 651, 652, 0, 653, 654, + 655, 656, 657, 0, 658, 659, 0, 0, 0, 0, + 660, 661, 662, 0, 0, 0, 663, 0, 0, 0, + 664, 0, 665, 666, 667, 668, 669, 670, 671, 672, + 673, 674, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 675, 676, 0, 0, 985, 0, 0, 0, + 0, 664, 0, 665, 666, 667, 668, 669, 670, 671, + 672, 673, 674, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 675, 676, 0, 0, 988, 0, 0, + 0, 0, 0, 642, 643, 644, 645, 646, 647, 648, + 0, 0, 649, 650, 651, 652, 0, 653, 654, 655, + 656, 657, 0, 658, 659, 0, 0, 0, 0, 660, + 661, 662, 0, 0, 0, 663, 642, 643, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 665, - 0, 666, 667, 668, 669, 670, 671, 672, 673, 674, - 675, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 676, 677, 0, 0, 997, 645, 646, 647, 648, - 649, 0, 0, 650, 651, 652, 653, 0, 654, 655, - 656, 657, 658, 0, 659, 660, 0, 0, 0, 0, - 661, 662, 663, 0, 0, 0, 664, 643, 644, 645, - 646, 647, 648, 649, 0, 0, 650, 651, 652, 653, - 0, 654, 655, 656, 657, 658, 0, 659, 660, 0, - 0, 0, 0, 661, 662, 663, 0, 0, 0, 664, - 0, 665, 0, 666, 667, 668, 669, 670, 671, 672, - 673, 674, 675, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 676, 677, 0, 0, 998, 0, 0, - 0, 0, 0, 0, 665, 0, 666, 667, 668, 669, - 670, 671, 672, 673, 674, 675, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 676, 677, 0, 0, - 999, 645, 646, 647, 648, 649, 643, 644, 650, 651, - 652, 653, 0, 654, 655, 656, 657, 658, 0, 659, - 660, 0, 0, 0, 0, 661, 662, 663, 0, 0, - 0, 664, 0, 0, 0, 0, 0, 643, 644, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 664, 0, 665, 666, 667, 668, 669, 670, 671, 672, + 673, 674, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 675, 676, 0, 0, 997, 644, 645, 646, + 647, 648, 0, 0, 649, 650, 651, 652, 0, 653, + 654, 655, 656, 657, 0, 658, 659, 0, 0, 0, + 0, 660, 661, 662, 0, 0, 0, 663, 642, 643, + 644, 645, 646, 647, 648, 0, 0, 649, 650, 651, + 652, 0, 653, 654, 655, 656, 657, 0, 658, 659, + 0, 0, 0, 0, 660, 661, 662, 0, 0, 0, + 663, 0, 664, 0, 665, 666, 667, 668, 669, 670, + 671, 672, 673, 674, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 675, 676, 0, 0, 998, 0, + 0, 0, 0, 0, 0, 664, 0, 665, 666, 667, + 668, 669, 670, 671, 672, 673, 674, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 675, 676, 0, + 0, 999, 644, 645, 646, 647, 648, 642, 643, 649, + 650, 651, 652, 0, 653, 654, 655, 656, 657, 0, + 658, 659, 0, 0, 0, 0, 660, 661, 662, 0, + 0, 0, 663, 0, 0, 0, 0, 0, 642, 643, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 665, 0, 666, 667, - 668, 669, 670, 671, 672, 673, 674, 675, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 676, 677, - 0, 0, 1000, 0, 0, 0, 0, 0, 0, 0, - 645, 646, 647, 648, 649, 0, 0, 650, 651, 652, - 653, 0, 654, 655, 656, 657, 658, 0, 659, 660, - 0, 0, 0, 0, 661, 662, 663, 0, 0, 0, - 664, 645, 646, 647, 648, 649, 643, 644, 650, 651, - 652, 653, 0, 654, 655, 656, 657, 658, 0, 659, - 660, 0, 0, 0, 0, 661, 662, 663, 0, 0, - 0, 664, 0, 0, 0, 665, 0, 666, 667, 668, - 669, 670, 671, 672, 673, 674, 675, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 676, 677, 0, - 0, 1001, 0, 0, 0, 0, 665, 0, 666, 667, - 668, 669, 670, 671, 672, 673, 674, 675, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 676, 677, - 0, 0, 1002, 0, 0, 0, 0, 0, 643, 644, - 645, 646, 647, 648, 649, 0, 0, 650, 651, 652, - 653, 0, 654, 655, 656, 657, 658, 0, 659, 660, - 0, 0, 0, 0, 661, 662, 663, 0, 0, 0, - 664, 643, 644, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 664, 0, 665, + 666, 667, 668, 669, 670, 671, 672, 673, 674, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 675, + 676, 0, 0, 1000, 0, 0, 0, 0, 0, 0, + 0, 644, 645, 646, 647, 648, 0, 0, 649, 650, + 651, 652, 0, 653, 654, 655, 656, 657, 0, 658, + 659, 0, 0, 0, 0, 660, 661, 662, 0, 0, + 0, 663, 644, 645, 646, 647, 648, 642, 643, 649, + 650, 651, 652, 0, 653, 654, 655, 656, 657, 0, + 658, 659, 0, 0, 0, 0, 660, 661, 662, 0, + 0, 0, 663, 0, 0, 0, 664, 0, 665, 666, + 667, 668, 669, 670, 671, 672, 673, 674, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 675, 676, + 0, 0, 1001, 0, 0, 0, 0, 664, 0, 665, + 666, 667, 668, 669, 670, 671, 672, 673, 674, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 675, + 676, 0, 0, 1002, 0, 0, 0, 0, 0, 642, + 643, 644, 645, 646, 647, 648, 0, 0, 649, 650, + 651, 652, 0, 653, 654, 655, 656, 657, 0, 658, + 659, 0, 0, 0, 0, 660, 661, 662, 0, 0, + 0, 663, 642, 643, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 665, 0, 666, 667, 668, - 669, 670, 671, 672, 673, 674, 675, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 676, 677, 0, - 0, 1077, 645, 646, 647, 648, 649, 0, 0, 650, - 651, 652, 653, 0, 654, 655, 656, 657, 658, 0, - 659, 660, 0, 0, 0, 0, 661, 662, 663, 0, - 0, 0, 664, 643, 644, 645, 646, 647, 648, 649, - 0, 0, 650, 651, 652, 653, 0, 654, 655, 656, - 657, 658, 0, 659, 660, 0, 0, 0, 0, 661, - 662, 663, 0, 0, 0, 664, 0, 665, 0, 666, - 667, 668, 669, 670, 671, 672, 673, 674, 675, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 676, - 677, 0, 0, 1097, 0, 0, 0, 0, 0, 0, - 665, 0, 666, 667, 668, 669, 670, 671, 672, 673, - 674, 675, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 676, 677, 0, 0, 1164, 645, 646, 647, - 648, 649, 643, 644, 650, 651, 652, 653, 0, 654, - 655, 656, 657, 658, 0, 659, 660, 0, 0, 0, - 0, 661, 662, 663, 0, 0, 0, 664, 0, 0, - 0, 0, 0, 643, 644, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 664, 0, 665, 666, + 667, 668, 669, 670, 671, 672, 673, 674, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 675, 676, + 0, 0, 1077, 644, 645, 646, 647, 648, 0, 0, + 649, 650, 651, 652, 0, 653, 654, 655, 656, 657, + 0, 658, 659, 0, 0, 0, 0, 660, 661, 662, + 0, 0, 0, 663, 642, 643, 644, 645, 646, 647, + 648, 0, 0, 649, 650, 651, 652, 0, 653, 654, + 655, 656, 657, 0, 658, 659, 0, 0, 0, 0, + 660, 661, 662, 0, 0, 0, 663, 0, 664, 0, + 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 665, 0, 666, 667, 668, 669, 670, 671, - 672, 673, 674, 675, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 676, 677, 0, 0, 1170, 0, - 0, 0, 0, 0, 0, 0, 645, 646, 647, 648, - 649, 0, 0, 650, 651, 652, 653, 0, 654, 655, - 656, 657, 658, 0, 659, 660, 0, 0, 0, 0, - 661, 662, 663, 0, 0, 0, 664, 645, 646, 647, - 648, 649, 643, 644, 650, 651, 652, 653, 0, 654, - 655, 656, 657, 658, 0, 659, 660, 0, 0, 0, - 0, 661, 662, 663, 0, 0, 0, 664, 0, 0, - 0, 665, 0, 666, 667, 668, 669, 670, 671, 672, - 673, 674, 675, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 676, 677, 0, 0, 1204, 0, 0, - 0, 0, 665, 0, 666, 667, 668, 669, 670, 671, - 672, 673, 674, 675, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 676, 677, 0, 0, 1205, 0, - 0, 0, 0, 0, 643, 644, 645, 646, 647, 648, - 649, 0, 0, 650, 651, 652, 653, 0, 654, 655, - 656, 657, 658, 0, 659, 660, 0, 0, 0, 0, - 661, 662, 663, 0, 0, 0, 664, 643, 644, 0, + 675, 676, 0, 0, 1097, 0, 0, 0, 0, 0, + 0, 664, 0, 665, 666, 667, 668, 669, 670, 671, + 672, 673, 674, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 675, 676, 0, 0, 1164, 644, 645, + 646, 647, 648, 642, 643, 649, 650, 651, 652, 0, + 653, 654, 655, 656, 657, 0, 658, 659, 0, 0, + 0, 0, 660, 661, 662, 0, 0, 0, 663, 0, + 0, 0, 0, 0, 642, 643, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 664, 0, 665, 666, 667, 668, 669, + 670, 671, 672, 673, 674, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 675, 676, 0, 0, 1170, + 0, 0, 0, 0, 0, 0, 0, 644, 645, 646, + 647, 648, 0, 0, 649, 650, 651, 652, 0, 653, + 654, 655, 656, 657, 0, 658, 659, 0, 0, 0, + 0, 660, 661, 662, 0, 0, 0, 663, 644, 645, + 646, 647, 648, 642, 643, 649, 650, 651, 652, 0, + 653, 654, 655, 656, 657, 0, 658, 659, 0, 0, + 0, 0, 660, 661, 662, 0, 0, 0, 663, 0, + 0, 0, 664, 0, 665, 666, 667, 668, 669, 670, + 671, 672, 673, 674, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 675, 676, 0, 0, 1204, 0, + 0, 0, 0, 664, 0, 665, 666, 667, 668, 669, + 670, 671, 672, 673, 674, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 675, 676, 0, 0, 1205, + 0, 0, 0, 0, 0, 642, 643, 644, 645, 646, + 647, 648, 0, 0, 649, 650, 651, 652, 0, 653, + 654, 655, 656, 657, 0, 658, 659, 0, 0, 0, + 0, 660, 661, 662, 0, 0, 0, 663, 642, 643, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 665, 0, 666, 667, 668, 669, 670, 671, 672, - 673, 674, 675, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 676, 677, 0, 0, 1208, 645, 646, - 647, 648, 649, 0, 0, 650, 651, 652, 653, 0, - 654, 655, 656, 657, 658, 0, 659, 660, 0, 0, - 0, 0, 661, 662, 663, 0, 0, 0, 664, 643, - 644, 645, 646, 647, 648, 649, 0, 0, 650, 651, - 652, 653, 0, 654, 655, 656, 657, 658, 0, 659, - 660, 0, 0, 0, 0, 661, 662, 663, 0, 0, - 0, 664, 0, 665, 0, 666, 667, 668, 669, 670, - 671, 672, 673, 674, 675, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 676, 677, 0, 0, 1225, - 0, 0, 0, 0, 0, 0, 665, 0, 666, 667, - 668, 669, 670, 671, 672, 673, 674, 675, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 676, 677, - 0, 0, 1227, 645, 646, 647, 648, 649, 643, 644, - 650, 651, 652, 653, 0, 654, 655, 656, 657, 658, - 0, 659, 660, 0, 0, 0, 0, 661, 662, 663, - 0, 0, 0, 664, 0, 0, 0, 0, 0, 643, - 644, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 665, 0, - 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 676, 677, 0, 0, 1229, 0, 0, 0, 0, 0, - 0, 0, 645, 646, 647, 648, 649, 0, 0, 650, - 651, 652, 653, 0, 654, 655, 656, 657, 658, 0, - 659, 660, 0, 0, 0, 0, 661, 662, 663, 0, - 0, 0, 664, 645, 646, 647, 648, 649, 643, 644, - 650, 651, 652, 653, 0, 654, 655, 656, 657, 658, - 0, 659, 660, 0, 0, 0, 0, 661, 662, 663, - 0, 0, 0, 664, 0, 0, 0, 665, 0, 666, - 667, 668, 669, 670, 671, 672, 673, 674, 675, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 676, - 677, 0, 0, 1233, 0, 0, 0, 0, 665, 0, - 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, + 0, 0, 664, 0, 665, 666, 667, 668, 669, 670, + 671, 672, 673, 674, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 675, 676, 0, 0, 1208, 644, + 645, 646, 647, 648, 0, 0, 649, 650, 651, 652, + 0, 653, 654, 655, 656, 657, 0, 658, 659, 0, + 0, 0, 0, 660, 661, 662, 0, 0, 0, 663, + 642, 643, 644, 645, 646, 647, 648, 0, 0, 649, + 650, 651, 652, 0, 653, 654, 655, 656, 657, 0, + 658, 659, 0, 0, 0, 0, 660, 661, 662, 0, + 0, 0, 663, 0, 664, 0, 665, 666, 667, 668, + 669, 670, 671, 672, 673, 674, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 675, 676, 0, 0, + 1225, 0, 0, 0, 0, 0, 0, 664, 0, 665, + 666, 667, 668, 669, 670, 671, 672, 673, 674, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 675, + 676, 0, 0, 1227, 644, 645, 646, 647, 648, 642, + 643, 649, 650, 651, 652, 0, 653, 654, 655, 656, + 657, 0, 658, 659, 0, 0, 0, 0, 660, 661, + 662, 0, 0, 0, 663, 0, 0, 0, 0, 0, + 642, 643, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 676, 677, 0, 0, 1293, 0, 0, 0, 0, 0, - 643, 644, 645, 646, 647, 648, 649, 0, 0, 650, - 651, 652, 653, 0, 654, 655, 656, 657, 658, 0, - 659, 660, 0, 0, 0, 0, 661, 662, 663, 0, - 0, 0, 664, 643, 644, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 664, + 0, 665, 666, 667, 668, 669, 670, 671, 672, 673, + 674, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 675, 676, 0, 0, 1229, 0, 0, 0, 0, + 0, 0, 0, 644, 645, 646, 647, 648, 0, 0, + 649, 650, 651, 652, 0, 653, 654, 655, 656, 657, + 0, 658, 659, 0, 0, 0, 0, 660, 661, 662, + 0, 0, 0, 663, 644, 645, 646, 647, 648, 642, + 643, 649, 650, 651, 652, 0, 653, 654, 655, 656, + 657, 0, 658, 659, 0, 0, 0, 0, 660, 661, + 662, 0, 0, 0, 663, 0, 0, 0, 664, 0, + 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 675, 676, 0, 0, 1233, 0, 0, 0, 0, 664, + 0, 665, 666, 667, 668, 669, 670, 671, 672, 673, + 674, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 675, 676, 0, 0, 1293, 0, 0, 0, 0, + 0, 642, 643, 644, 645, 646, 647, 648, 0, 0, + 649, 650, 651, 652, 0, 653, 654, 655, 656, 657, + 0, 658, 659, 0, 0, 0, 0, 660, 661, 662, + 0, 0, 0, 663, 642, 643, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 665, 0, 666, - 667, 668, 669, 670, 671, 672, 673, 674, 675, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 676, - 677, 0, 0, 1294, 645, 646, 647, 648, 649, 0, - 0, 650, 651, 652, 653, 0, 654, 655, 656, 657, - 658, 0, 659, 660, 0, 0, 0, 0, 661, 662, - 663, 0, 0, 0, 664, 643, 644, 645, 646, 647, - 648, 649, 0, 0, 650, 651, 652, 653, 0, 654, - 655, 656, 657, 658, 0, 659, 660, 0, 0, 0, - 0, 661, 662, 663, 0, 0, 0, 664, 0, 665, - 0, 666, 667, 668, 669, 670, 671, 672, 673, 674, - 675, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 676, 677, 0, 0, 1295, 0, 0, 0, 0, - 0, 0, 665, 0, 666, 667, 668, 669, 670, 671, - 672, 673, 674, 675, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 676, 677, 0, 0, 1315, 645, - 646, 647, 648, 649, 643, 644, 650, 651, 652, 653, - 0, 654, 655, 656, 657, 658, 0, 659, 660, 0, - 0, 0, 0, 661, 662, 663, 0, 0, 0, 664, - 0, 0, 0, 0, 0, 643, 644, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 664, 0, + 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 665, 0, 666, 667, 668, 669, - 670, 671, 672, 673, 674, 675, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 676, 677, 0, 0, - 1326, 0, 0, 0, 0, 0, 0, 0, 645, 646, - 647, 648, 649, 0, 0, 650, 651, 652, 653, 0, - 654, 655, 656, 657, 658, 0, 659, 660, 0, 0, - 0, 0, 661, 662, 663, 0, 0, 0, 664, 645, - 646, 647, 648, 649, 643, 644, 650, 651, 652, 653, - 0, 654, 655, 656, 657, 658, 0, 659, 660, 0, - 0, 0, 0, 661, 662, 663, 0, 0, 0, 664, - 0, 0, 0, 665, 0, 666, 667, 668, 669, 670, - 671, 672, 673, 674, 675, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 676, 677, 0, 0, 1336, - 0, 0, 0, 0, 665, 0, 666, 667, 668, 669, - 670, 671, 672, 673, 674, 675, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 676, 677, 0, 0, - 1366, 0, 0, 0, 0, 0, 643, 644, 645, 646, - 647, 648, 649, 0, 0, 650, 651, 652, 653, 0, - 654, 655, 656, 657, 658, 0, 659, 660, 0, 0, - 0, 0, 661, 662, 663, 0, 0, 0, 664, 643, - 644, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 675, 676, 0, 0, 1294, 644, 645, 646, 647, 648, + 0, 0, 649, 650, 651, 652, 0, 653, 654, 655, + 656, 657, 0, 658, 659, 0, 0, 0, 0, 660, + 661, 662, 0, 0, 0, 663, 642, 643, 644, 645, + 646, 647, 648, 0, 0, 649, 650, 651, 652, 0, + 653, 654, 655, 656, 657, 0, 658, 659, 0, 0, + 0, 0, 660, 661, 662, 0, 0, 0, 663, 0, + 664, 0, 665, 666, 667, 668, 669, 670, 671, 672, + 673, 674, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 675, 676, 0, 0, 1295, 0, 0, 0, + 0, 0, 0, 664, 0, 665, 666, 667, 668, 669, + 670, 671, 672, 673, 674, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 675, 676, 0, 0, 1315, + 644, 645, 646, 647, 648, 642, 643, 649, 650, 651, + 652, 0, 653, 654, 655, 656, 657, 0, 658, 659, + 0, 0, 0, 0, 660, 661, 662, 0, 0, 0, + 663, 0, 0, 0, 0, 0, 642, 643, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 665, 0, 666, 667, 668, 669, 670, - 671, 672, 673, 674, 675, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 676, 677, 0, 0, 1373, - 645, 646, 647, 648, 649, 0, 0, 650, 651, 652, - 653, 0, 654, 655, 656, 657, 658, 0, 659, 660, - 0, 0, 0, 0, 661, 662, 663, 0, 0, 0, - 664, 643, 644, 645, 646, 647, 648, 649, 0, 0, - 650, 651, 652, 653, 0, 654, 655, 656, 657, 658, - 0, 659, 660, 0, 0, 0, 0, 661, 662, 663, - 0, 0, 0, 664, 0, 665, 0, 666, 667, 668, - 669, 670, 671, 672, 673, 674, 675, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 676, 677, 700, - 0, 0, 0, 0, 0, 0, 0, 0, 665, 0, - 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, + 0, 0, 0, 0, 0, 664, 0, 665, 666, 667, + 668, 669, 670, 671, 672, 673, 674, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 675, 676, 0, + 0, 1326, 0, 0, 0, 0, 0, 0, 0, 644, + 645, 646, 647, 648, 0, 0, 649, 650, 651, 652, + 0, 653, 654, 655, 656, 657, 0, 658, 659, 0, + 0, 0, 0, 660, 661, 662, 0, 0, 0, 663, + 644, 645, 646, 647, 648, 642, 643, 649, 650, 651, + 652, 0, 653, 654, 655, 656, 657, 0, 658, 659, + 0, 0, 0, 0, 660, 661, 662, 0, 0, 0, + 663, 0, 0, 0, 664, 0, 665, 666, 667, 668, + 669, 670, 671, 672, 673, 674, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 675, 676, 0, 0, + 1336, 0, 0, 0, 0, 664, 0, 665, 666, 667, + 668, 669, 670, 671, 672, 673, 674, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 675, 676, 0, + 0, 1366, 0, 0, 0, 0, 0, 642, 643, 644, + 645, 646, 647, 648, 0, 0, 649, 650, 651, 652, + 0, 653, 654, 655, 656, 657, 0, 658, 659, 0, + 0, 0, 0, 660, 661, 662, 0, 0, 0, 663, + 642, 643, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 676, 677, 908, 643, 644, 645, 646, 647, 648, 649, - 0, 0, 650, 651, 652, 653, 0, 654, 655, 656, - 657, 658, 0, 659, 660, 0, 0, 0, 0, 661, - 662, 663, 0, 0, 0, 664, 643, 644, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 664, 0, 665, 666, 667, 668, + 669, 670, 671, 672, 673, 674, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 675, 676, 0, 0, + 1373, 644, 645, 646, 647, 648, 0, 0, 649, 650, + 651, 652, 0, 653, 654, 655, 656, 657, 0, 658, + 659, 0, 0, 0, 0, 660, 661, 662, 0, 0, + 0, 663, 642, 643, 644, 645, 646, 647, 648, 0, + 0, 649, 650, 651, 652, 0, 653, 654, 655, 656, + 657, 0, 658, 659, 0, 0, 0, 0, 660, 661, + 662, 0, 0, 0, 663, 0, 664, 0, 665, 666, + 667, 668, 669, 670, 671, 672, 673, 674, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 675, 676, + 699, 0, 0, 0, 0, 0, 0, 0, 0, 664, + 0, 665, 666, 667, 668, 669, 670, 671, 672, 673, + 674, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 675, 676, 908, 642, 643, 644, 645, 646, 647, + 648, 0, 0, 649, 650, 651, 652, 0, 653, 654, + 655, 656, 657, 0, 658, 659, 0, 0, 0, 0, + 660, 661, 662, 0, 0, 0, 663, 642, 643, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 665, 0, 666, 667, 668, 669, 670, 671, 672, 673, - 674, 675, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 676, 677, 1035, 0, 0, 645, 646, 647, - 648, 649, 0, 0, 650, 651, 652, 653, 0, 654, - 655, 656, 657, 658, 0, 659, 660, 0, 0, 0, - 0, 661, 662, 663, 0, 0, 0, 664, 643, 644, - 645, 646, 647, 648, 649, 0, 0, 650, 651, 652, - 653, 0, 654, 655, 656, 657, 658, 0, 659, 660, - 0, 0, 0, 0, 661, 662, 663, 0, 0, 0, - 664, 0, 665, 0, 666, 667, 668, 669, 670, 671, - 672, 673, 674, 675, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 676, 677, 1050, 0, 0, 0, - 0, 0, 0, 0, 0, 665, 0, 666, 667, 668, - 669, 670, 671, 672, 673, 674, 675, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 676, 677, 1152, - 0, 0, 645, 646, 647, 648, 649, 643, 644, 650, - 651, 652, 653, 0, 654, 655, 656, 657, 658, 0, - 659, 660, 0, 0, 0, 0, 661, 662, 663, 0, - 0, 0, 664, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 664, 0, 665, 666, 667, 668, 669, 670, 671, + 672, 673, 674, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 675, 676, 1035, 0, 0, 644, 645, + 646, 647, 648, 0, 0, 649, 650, 651, 652, 0, + 653, 654, 655, 656, 657, 0, 658, 659, 0, 0, + 0, 0, 660, 661, 662, 0, 0, 0, 663, 642, + 643, 644, 645, 646, 647, 648, 0, 0, 649, 650, + 651, 652, 0, 653, 654, 655, 656, 657, 0, 658, + 659, 0, 0, 0, 0, 660, 661, 662, 0, 0, + 0, 663, 0, 664, 0, 665, 666, 667, 668, 669, + 670, 671, 672, 673, 674, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 675, 676, 1050, 0, 0, + 0, 0, 0, 0, 0, 0, 664, 0, 665, 666, + 667, 668, 669, 670, 671, 672, 673, 674, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 675, 676, + 1152, 0, 0, 644, 645, 646, 647, 648, 642, 643, + 649, 650, 651, 652, 0, 653, 654, 655, 656, 657, + 0, 658, 659, 0, 0, 0, 0, 660, 661, 662, + 0, 0, 0, 663, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 665, 0, 666, - 667, 668, 669, 670, 671, 672, 673, 674, 675, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 676, - 677, 1157, 0, 746, 747, 748, 749, 750, 751, 752, - 753, 645, 646, 647, 648, 649, 754, 755, 650, 651, - 652, 653, 756, 654, 655, 656, 657, 658, 757, 659, - 660, 758, 759, 268, 269, 661, 662, 663, 760, 761, - 762, 664, 0, 0, 0, 0, 0, 0, 0, 0, - 270, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 643, 644, 0, 0, -316, 0, - 0, 0, 0, 0, 0, 763, 665, 0, 666, 667, - 668, 669, 670, 671, 672, 673, 674, 675, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 676, 677, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 271, - 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 0, 0, 289, - 290, 291, 0, 0, 292, 293, 294, 295, 296, 0, - 0, 297, 298, 299, 300, 301, 302, 303, 645, 646, - 647, 648, 649, 643, 644, 650, 651, 652, 653, 0, - 654, 655, 656, 657, 658, 0, 659, 660, 0, 0, - 815, 0, 661, 662, 663, 0, 0, 0, 664, 0, - 0, 0, 304, 0, 305, 306, 307, 308, 309, 310, - 311, 312, 313, 314, 0, 0, 315, 316, 0, 0, - 0, 0, 0, 0, 317, 318, 0, 0, 0, 0, - 0, 0, 0, 665, 0, 666, 667, 668, 669, 670, - 671, 672, 673, 674, 675, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 676, 677, 0, 0, 0, - 0, 0, 643, 644, 0, 0, 0, 645, 646, 647, - 648, 649, 0, 0, 650, 651, 652, 653, 0, 654, - 655, 656, 657, 658, 0, 659, 660, 0, 0, 0, - 0, 661, 662, 663, 0, 0, 0, 664, 643, 644, + 0, 0, 0, 0, 0, 0, 0, 0, 664, 0, + 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 675, 676, 1157, 0, 746, 747, 748, 749, 750, 751, + 752, 753, 644, 645, 646, 647, 648, 754, 755, 649, + 650, 651, 652, 756, 653, 654, 655, 656, 657, 757, + 658, 659, 758, 759, 268, 269, 660, 661, 662, 760, + 761, 762, 663, 0, 0, 0, 0, 0, 0, 0, + 0, 270, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 642, 643, 0, 0, -315, + 0, 0, 0, 0, 0, 0, 763, 664, 0, 665, + 666, 667, 668, 669, 670, 671, 672, 673, 674, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 675, + 676, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 323, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 665, 0, 666, 667, 668, 669, 670, 671, - 672, 673, 674, 675, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 676, 677, 645, 646, 647, 648, - 649, 0, 0, 650, 651, 652, 653, 0, 654, 655, - 656, 657, 658, 0, 659, 660, 0, 0, 0, 0, - 661, 662, 663, 0, 0, 0, 664, 643, 644, 0, - 0, 0, 645, 646, 647, 648, 649, 0, 0, 650, - 651, 652, 653, 0, 654, 655, 656, 657, 658, 0, - 659, 660, 0, 963, 0, 0, 661, 662, 663, 0, - 0, 665, 664, 666, 667, 668, 669, 670, 671, 672, - 673, 674, 675, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 676, 677, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 665, 1040, 666, - 667, 668, 669, 670, 671, 672, 673, 674, 675, 643, - 644, 0, 0, 0, 0, 0, 0, 0, 0, 676, - 677, 645, 646, 647, 648, 649, 0, 0, 650, 651, - 652, 653, 0, 654, 655, 656, 657, 658, 0, 659, - 660, 643, 644, 0, 0, 661, 662, 663, 0, 0, - 0, 664, 0, 0, 0, 0, 0, 0, 0, 0, + 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, + 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, + 289, 290, 291, 0, 0, 292, 293, 294, 295, 296, + 0, 0, 297, 298, 299, 300, 301, 302, 303, 644, + 645, 646, 647, 648, 642, 643, 649, 650, 651, 652, + 0, 653, 654, 655, 656, 657, 0, 658, 659, 0, + 0, 815, 0, 660, 661, 662, 0, 0, 0, 663, + 0, 0, 0, 304, 0, 305, 306, 307, 308, 309, + 310, 311, 312, 313, 314, 0, 0, 315, 316, 0, + 0, 0, 0, 0, 0, 317, 318, 0, 0, 0, + 0, 0, 0, 0, 664, 0, 665, 666, 667, 668, + 669, 670, 671, 672, 673, 674, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 675, 676, 0, 0, + 0, 0, 0, 642, 643, 0, 0, 0, 644, 645, + 646, 647, 648, 0, 0, 649, 650, 651, 652, 0, + 653, 654, 655, 656, 657, 0, 658, 659, 0, 0, + 0, 0, 660, 661, 662, 0, 0, 0, 663, 642, + 643, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1088, 0, - 0, 0, 0, 0, 0, 0, 665, 0, 666, 667, - 668, 669, 670, 671, 672, 673, 674, 675, 0, 0, - 0, 0, 0, 645, 646, 647, 648, 649, 676, 677, - 650, 651, 652, 653, 0, 654, 655, 656, 657, 658, - 0, 659, 660, 643, 644, 0, 0, 661, 662, 663, - 0, 0, 0, 664, 0, 645, 646, 647, 648, 649, - 0, 0, 650, 651, 652, 653, 0, 654, 655, 656, - 657, 658, 0, 659, 660, 0, 1118, 643, 644, 661, - 662, 663, 0, 0, 0, 664, 0, 0, 665, 0, - 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, + 0, 0, 0, 323, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 664, 0, 665, 666, 667, 668, 669, + 670, 671, 672, 673, 674, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 675, 676, 644, 645, 646, + 647, 648, 0, 0, 649, 650, 651, 652, 0, 653, + 654, 655, 656, 657, 0, 658, 659, 0, 0, 0, + 0, 660, 661, 662, 0, 0, 0, 663, 642, 643, + 0, 0, 0, 644, 645, 646, 647, 648, 0, 0, + 649, 650, 651, 652, 0, 653, 654, 655, 656, 657, + 0, 658, 659, 0, 963, 0, 0, 660, 661, 662, + 0, 0, 664, 663, 665, 666, 667, 668, 669, 670, + 671, 672, 673, 674, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 675, 676, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 664, 1040, + 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, + 642, 643, 0, 0, 0, 0, 0, 0, 0, 0, + 675, 676, 644, 645, 646, 647, 648, 0, 0, 649, + 650, 651, 652, 0, 653, 654, 655, 656, 657, 0, + 658, 659, 642, 643, 0, 0, 660, 661, 662, 0, + 0, 0, 663, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 676, 677, 1327, 0, 0, 0, 0, 0, 0, 0, - 665, 0, 666, 667, 668, 669, 670, 671, 672, 673, - 674, 675, 0, 0, 0, 0, 0, 645, 646, 647, - 648, 649, 676, 677, 650, 651, 652, 653, 0, 654, - 655, 656, 657, 658, 0, 659, 660, 0, 0, 643, - 644, 661, 662, 663, 0, 0, 0, 664, 0, 0, - 0, 645, 646, 647, 648, 649, 0, 0, 650, 651, - 652, 653, 0, 654, 655, 656, 657, 658, 0, 659, - 660, 643, 644, 0, 1368, 661, 662, 663, 0, 0, - 0, 664, 665, 0, 666, 667, 668, 669, 670, 671, - 672, 673, 674, 675, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 676, 677, 0, 0, 1387, 0, - 0, 0, 0, 0, 0, 0, 665, 0, 666, 667, - 668, 669, 670, 671, 672, 673, 674, 675, 0, 0, - 0, 0, 0, 645, 646, 647, 648, 649, 676, 677, - 650, 651, 652, 653, 0, 654, 655, 656, 657, 658, - 0, 659, 660, 643, 644, 0, 0, 661, 662, 663, - 0, 0, 0, 664, 0, 645, 646, 647, 648, 649, - 0, 0, 650, 651, 652, 653, 0, 654, 655, 656, - 657, 658, 0, 659, 660, 643, 644, 0, 0, 661, - 662, 663, 0, 0, 0, -676, 0, 0, 665, 0, - 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1088, + 0, 0, 0, 0, 0, 0, 0, 664, 0, 665, + 666, 667, 668, 669, 670, 671, 672, 673, 674, 0, + 0, 0, 0, 0, 644, 645, 646, 647, 648, 675, + 676, 649, 650, 651, 652, 0, 653, 654, 655, 656, + 657, 0, 658, 659, 642, 643, 0, 0, 660, 661, + 662, 0, 0, 0, 663, 0, 644, 645, 646, 647, + 648, 0, 0, 649, 650, 651, 652, 0, 653, 654, + 655, 656, 657, 0, 658, 659, 0, 1118, 642, 643, + 660, 661, 662, 0, 0, 0, 663, 0, 0, 664, + 0, 665, 666, 667, 668, 669, 670, 671, 672, 673, + 674, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 675, 676, 1327, 0, 0, 0, 0, 0, 0, + 0, 664, 0, 665, 666, 667, 668, 669, 670, 671, + 672, 673, 674, 0, 0, 0, 0, 0, 644, 645, + 646, 647, 648, 675, 676, 649, 650, 651, 652, 0, + 653, 654, 655, 656, 657, 0, 658, 659, 0, 0, + 642, 643, 660, 661, 662, 0, 0, 0, 663, 0, + 0, 0, 644, 645, 646, 647, 648, 0, 0, 649, + 650, 651, 652, 0, 653, 654, 655, 656, 657, 0, + 658, 659, 642, 643, 0, 1368, 660, 661, 662, 0, + 0, 0, 663, 664, 0, 665, 666, 667, 668, 669, + 670, 671, 672, 673, 674, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 675, 676, 0, 0, 1387, + 0, 0, 0, 0, 0, 0, 0, 664, 0, 665, + 666, 667, 668, 669, 670, 671, 672, 673, 674, 0, + 0, 0, 0, 0, 644, 645, 646, 647, 648, 675, + 676, 649, 650, 651, 652, 0, 653, 654, 655, 656, + 657, 0, 658, 659, 642, 643, 0, 0, 660, 661, + 662, 0, 0, 0, 663, 0, 644, 645, 646, 647, + 648, 0, 0, 649, 650, 651, 652, 0, 653, 654, + 655, 656, 657, 0, 658, 659, 642, 643, 0, 0, + 660, 661, 662, 0, 0, 0, -675, 0, 0, 664, + 0, 665, 666, 667, 668, 669, 670, 671, 672, 673, + 674, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 675, 676, 0, 0, 0, 0, 0, 0, 0, + 0, 664, 0, 665, 666, 667, 668, 669, 670, 671, + 672, 673, 674, 0, 0, 0, 0, 0, 644, 645, + 646, 647, 648, 675, 676, 649, 650, 651, 652, 0, + 653, 654, 655, 656, 657, 0, 658, 659, 642, 643, + 0, 0, 660, 661, 662, 0, 0, 0, 0, 0, + 644, 645, 646, 647, 648, 0, 0, 649, 650, 651, + 652, 0, 653, 654, 655, 656, 657, 0, 658, 659, + 642, 643, 0, 0, 660, 0, 662, 0, 0, 0, + 0, 0, 0, 664, 0, 665, 666, 667, 668, 669, + 670, 671, 672, 673, 674, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 675, 676, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 665, 666, 667, + 668, 669, 670, 671, 672, 673, 674, 0, 0, 0, + 0, 0, 644, 645, 646, 647, 648, 675, 676, 649, + 650, 651, 652, 0, 653, 654, 655, 656, 657, 0, + 658, 659, 642, 643, 0, 0, 660, 0, 0, 0, + 0, 0, 0, 0, 644, 645, 646, 647, 648, 0, + 0, 649, 650, 651, 652, 0, 653, 654, 655, 656, + 657, 0, 658, 659, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 665, + 666, 667, 668, 669, 670, 671, 672, 673, 674, 0, + 0, 0, 0, 0, 1036, 0, 0, 0, 0, 675, + 676, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 665, 666, 667, 668, 669, 670, 671, 672, 673, + 674, 0, 0, 0, 0, 0, 644, 645, 646, 647, + 648, 675, 676, 649, 650, 651, 652, 0, 653, 654, + 655, 656, 657, 0, 658, 659, 222, 223, 224, 0, + 226, 227, 228, 229, 230, 425, 232, 233, 234, 235, + 236, 237, 238, 239, 240, 241, 242, 0, 244, 245, + 246, 0, 0, 249, 250, 251, 252, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 676, 677, 0, 0, 0, 0, 0, 0, 0, 0, - 665, 0, 666, 667, 668, 669, 670, 671, 672, 673, - 674, 675, 0, 0, 0, 0, 0, 645, 646, 647, - 648, 649, 676, 677, 650, 651, 652, 653, 0, 654, - 655, 656, 657, 658, 0, 659, 660, 643, 644, 0, - 0, 661, 662, 663, 0, 0, 0, 0, 0, 645, - 646, 647, 648, 649, 0, 0, 650, 651, 652, 653, - 0, 654, 655, 656, 657, 658, 0, 659, 660, 643, - 644, 0, 0, 661, 0, 0, 0, 0, 0, 0, - 0, 0, 665, 0, 666, 667, 668, 669, 670, 671, - 672, 673, 674, 675, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 676, 677, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 666, 667, 668, 669, - 670, 671, 672, 673, 674, 675, 0, 0, 0, 0, - 0, 645, 646, 647, 648, 649, 676, 677, 650, 651, - 652, 653, 0, 654, 655, 656, 657, 658, 0, 659, - 660, 643, 644, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 645, 646, 647, 648, 649, 0, 0, - 650, 651, 652, 653, 0, 654, 655, 656, 657, 658, - 0, 659, 660, 643, 644, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 666, 667, - 668, 669, 670, 671, 672, 673, 674, 675, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 676, 677, + 0, 0, 0, 0, 0, 667, 668, 669, 670, 671, + 672, 673, 674, 171, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 675, 676, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1037, 0, + 0, 0, 0, 0, 0, 0, 0, 1038, 0, 172, + 0, 173, 0, 174, 175, 176, 177, 178, 0, 179, + 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 0, 190, 191, 192, 0, 0, 193, 194, 195, 196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 0, 0, 0, 0, 0, 645, 646, 647, 648, 649, - 676, 677, 650, 651, 652, 653, 0, 654, 655, 656, - 657, 658, 0, 659, 660, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 645, 646, 647, - 648, 649, 0, 0, 650, 651, 652, 653, 0, 654, - 655, 656, 657, 658, 0, 659, 660, 0, 0, 0, + 0, 0, 0, 0, 0, 197, 198, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 668, 669, 670, 671, 672, 673, - 674, 675, 1036, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 676, 677, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 669, 670, 671, - 672, 673, 674, 675, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 676, 677, 0, 0, 0, 171, - 0, 0, 0, 0, 222, 223, 224, 0, 226, 227, - 228, 229, 230, 425, 232, 233, 234, 235, 236, 237, - 238, 239, 240, 241, 242, 0, 244, 245, 246, 0, - 0, 249, 250, 251, 252, 172, 0, 173, 0, 174, - 175, 176, 177, 178, 0, 179, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 0, 190, 191, 192, - 0, 0, 193, 194, 195, 196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 197, 198, 0, 0, 0, 1037, 0, 0, 0, - 0, 0, 0, 0, 0, 1038, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 199 + 199 }; static const yytype_int16 yycheck[] = { - 14, 15, 577, 372, 165, 637, 534, 600, 152, 486, - 715, 488, 492, 490, 542, 686, 816, 688, 397, 690, - 783, 491, 639, 77, 4, 165, 14, 15, 622, 0, - 464, 149, 7, 402, 19, 6, 839, 631, 45, 32, - 32, 570, 21, 1195, 125, 19, 60, 61, 62, 161, - 19, 149, 20, 21, 177, 4, 5, 146, 29, 19, - 31, 1277, 33, 124, 146, 1309, 127, 128, 39, 154, - 18, 19, 161, 20, 21, 24, 146, 56, 49, 161, - 203, 30, 1275, 6, 55, 99, 100, 101, 102, 207, - 152, 161, 14, 15, 206, 136, 625, 178, 105, 161, - 181, 1345, 1254, 1255, 633, 453, 635, 205, 79, 207, - 127, 128, 127, 128, 125, 204, 1332, 1269, 67, 68, - 131, 101, 102, 125, 718, 137, 49, 177, 169, 131, - 101, 102, 138, 139, 140, 152, 171, 1330, 572, 171, - 201, 202, 181, 205, 161, 171, 185, 495, 116, 117, - 185, 165, 101, 102, 208, 205, 124, 61, 126, 127, - 128, 129, 130, 171, 1316, 1317, 154, 178, 180, 116, - 117, 159, 183, 161, 162, 178, 178, 124, 32, 205, - 127, 128, 129, 130, 201, 202, 201, 202, 137, 717, - 183, 183, 177, 996, 338, 170, 724, 205, 830, 205, - 171, 20, 21, 177, 184, 59, 60, 641, 177, 202, - 189, 372, 161, 161, 375, 208, 204, 177, 171, 190, - 169, 177, 201, 125, 204, 819, 171, 202, 389, 161, - 599, 202, 154, 201, 202, 184, 177, 159, 171, 161, - 162, 402, 256, 612, 405, 406, 407, 203, 181, 389, - 598, 125, 205, 202, 201, 202, 177, 131, 190, 607, - 205, 790, 610, 792, 205, 405, 406, 407, 122, 177, - 799, 180, 126, 802, 125, 177, 178, 161, 180, 171, - 131, 183, 125, 171, 171, 125, 340, 171, 131, 637, - 125, 131, 137, 125, 137, 203, 131, 116, 117, 131, - 138, 146, 140, 171, 178, 124, 151, 126, 127, 128, - 129, 130, 177, 205, 931, 33, 161, 205, 205, 169, - 481, 482, 4, 5, 485, 7, 487, 178, 489, 183, - 491, 679, 186, 161, 188, 178, 171, 205, 178, 184, - 972, 481, 482, 178, 62, 485, 178, 487, 202, 489, - 137, 20, 21, 35, 208, 1026, 206, 207, 372, 836, - 171, 375, 177, 177, 184, 744, 1071, 186, 187, 188, - 189, 190, 161, 161, 161, 389, 60, 61, 62, 393, - 180, 177, 201, 202, 204, 185, 177, 184, 402, 203, - 205, 405, 406, 407, 161, 177, 924, 152, 412, 161, - 1163, 1201, 1312, 1313, 204, 177, 161, 204, 1318, 205, - 779, 780, 130, 1323, 205, 99, 100, 101, 102, 137, - 789, 184, 902, 205, 184, 794, 795, 1132, 797, 798, - 900, 800, 801, 205, 803, 783, 46, 177, 599, 1349, - 1350, 204, 177, 161, 204, 114, 115, 116, 117, 118, - 137, 612, 121, 152, 1125, 124, 66, 126, 127, 128, - 129, 130, 161, 132, 133, 205, 171, 481, 482, 1140, - 205, 485, 137, 487, 171, 489, 194, 491, 204, 171, - 185, 146, 643, 644, 20, 21, 204, 180, 185, 180, - 180, 171, 185, 185, 185, 185, 161, 658, 1130, 154, - 152, 56, 181, 1208, 74, 185, 185, 62, 78, 161, - 171, 204, 1105, 204, 204, 184, 185, 186, 187, 188, - 189, 190, 92, 93, 185, 11, 201, 97, 98, 99, - 100, 152, 201, 202, 152, 696, 22, 23, 180, 1016, - 161, 183, 177, 161, 705, 180, 56, 708, 183, 1077, - 163, 1028, 62, 56, 56, 56, 696, 56, 56, 62, - 62, 62, 169, 62, 62, 705, 171, 171, 708, 171, - 181, 161, 177, 177, 185, 177, 163, 164, 592, 161, - 116, 117, 181, 181, 161, 599, 185, 185, 124, 161, - 126, 127, 128, 129, 130, 181, 181, 181, 612, 185, - 185, 185, 181, 181, 163, 164, 185, 185, 977, 978, - 979, 1139, 181, 982, 161, 56, 185, 778, 779, 780, - 781, 178, 636, 169, 785, 769, 169, 169, 789, 163, - 138, 1336, 180, 794, 795, 105, 797, 798, 778, 800, - 801, 781, 803, 207, 34, 785, 1015, 163, 164, 165, - 166, 34, 188, 189, 190, 204, 1004, 138, 139, 140, - 1008, 1190, 10, 11, 12, 201, 202, 207, 181, 1262, - 163, 164, 165, 169, 1249, 169, 161, 184, 170, 184, - 184, 204, 696, 204, 184, 1033, 204, 184, 161, 184, - 161, 705, 161, 184, 708, 1223, 184, 1045, 161, 21, - 184, 184, 184, 161, 180, 180, 42, 868, 169, 161, - 177, 1239, 1240, 203, 203, 161, 131, 204, 161, 161, - 184, 161, 202, 202, 1356, 1073, 204, 184, 184, 184, - 204, 184, 1307, 184, 184, 184, 204, 184, 204, 900, - 205, 161, 204, 161, 204, 204, 171, 161, 170, 180, - 204, 161, 171, 170, 154, 171, 204, 918, 36, 204, - 204, 9, 20, 21, 778, 779, 780, 781, 207, 1117, - 204, 785, 1141, 1121, 203, 789, 204, 171, 918, 171, - 794, 795, 171, 797, 798, 171, 800, 801, 65, 803, - 1319, 1320, 204, 1322, 171, 171, 171, 171, 178, 177, - 42, 185, 204, 204, 12, 184, 177, 177, 207, 202, - 161, 184, 184, 177, 205, 1163, 977, 978, 979, 204, - 170, 982, 42, 13, 178, 180, 154, 169, 7, 161, - 69, 170, 185, 177, 1, 204, 203, 205, 1366, 204, - 349, 204, 1370, 204, 202, 205, 184, 204, 204, 184, - 359, 161, 204, 161, 1015, 204, 114, 115, 116, 117, - 369, 204, 185, 204, 185, 185, 124, 161, 126, 127, - 128, 129, 130, 161, 132, 133, 171, 170, 66, 1248, - 185, 185, 391, 185, 185, 161, 900, 205, 205, 204, - 399, 205, 205, 185, 185, 185, 185, 204, 185, 205, - 185, 184, 42, 11, 918, 1066, 204, 204, 204, 161, - 185, 185, 185, 1261, 185, 185, 161, 161, 204, 1267, - 429, 430, 32, 205, 204, 204, 1066, 161, 186, 187, - 188, 189, 190, 205, 161, 161, 204, 446, 447, 448, - 449, 450, 451, 201, 202, 204, 161, 204, 204, 204, - 204, 204, 185, 20, 21, 185, 203, 171, 171, 205, - 185, 204, 52, 977, 978, 979, 204, 204, 982, 204, - 170, 621, 171, 205, 205, 203, 205, 76, 1, 42, - 1141, 205, 1143, 205, 203, 128, 79, 1386, 1245, 98, - 1245, 214, 1245, 1245, 1245, 504, 1, 1218, 1174, 471, - 1177, 1015, 1252, 1143, 1084, 524, 1253, 1172, 51, 765, - 972, 520, -1, -1, 412, 412, -1, -1, -1, 528, - -1, -1, -1, 532, -1, -1, 535, 536, -1, -1, - -1, -1, 541, -1, 543, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 114, 115, 116, - 117, 118, 1066, -1, 121, 122, 123, 124, -1, 126, - 127, 128, 129, 130, -1, 132, 133, -1, -1, 1230, - -1, 138, 581, 140, -1, -1, -1, -1, -1, -1, + 14, 15, 569, 576, 165, 599, 534, 636, 152, 486, + 714, 488, 492, 490, 542, 685, 491, 687, 816, 689, + 783, 397, 638, 77, 7, 165, 4, 0, 21, 621, + 14, 15, 19, 6, 19, 32, 464, 45, 630, 125, + 32, 6, 19, 1195, 19, 131, 60, 61, 62, 138, + 139, 140, 839, 169, 161, 149, 29, 624, 31, 1277, + 33, 127, 128, 56, 1275, 632, 39, 634, 181, 33, + 18, 19, 185, 161, 4, 5, 49, 372, 125, 171, + 453, 146, 55, 190, 49, 99, 100, 101, 102, 125, + 206, 207, 178, 185, 24, 125, 161, 105, 62, 32, + 30, 131, 1254, 1255, 149, 124, 79, 402, 127, 128, + 184, 14, 15, 207, 1332, 125, 205, 1269, 206, 1330, + 137, 131, 495, 101, 102, 717, 59, 60, 101, 102, + 204, 178, 137, 1309, 181, 201, 202, 67, 68, 204, + 171, 177, 178, 571, 180, 171, 125, 183, 178, 161, + 177, 165, 131, 183, 208, 177, 161, 178, 137, 171, + 205, 171, 207, 180, 1316, 1317, 130, 171, 178, 1345, + 154, 101, 102, 137, 205, 159, 203, 161, 162, 205, + 154, 203, 201, 202, 20, 21, 183, 170, 716, 122, + 177, 183, 177, 126, 338, 723, 189, 161, 171, 178, + 177, 830, 177, 20, 21, 61, 184, 137, 201, 996, + 202, 372, 640, 161, 375, 125, 208, 190, 177, 202, + 204, 131, 177, 790, 597, 792, 204, 819, 389, 202, + 194, 161, 799, 606, 152, 802, 609, 171, 137, 169, + 204, 402, 256, 161, 405, 406, 407, 146, 203, 389, + 183, 154, 151, 186, 184, 188, 159, 177, 161, 162, + 177, 180, 161, 636, 125, 405, 406, 407, 178, 202, + 131, 205, 202, 177, 171, 208, 125, 161, 125, 171, + 116, 117, 131, 203, 131, 184, 340, 205, 124, 171, + 126, 127, 128, 129, 130, 60, 61, 62, 171, 116, + 117, 205, 137, 598, 171, 678, 171, 124, 205, 126, + 127, 128, 129, 130, 204, 931, 611, 178, 177, 56, + 481, 482, 136, 205, 485, 62, 487, 161, 489, 178, + 491, 178, 205, 146, 99, 100, 101, 102, 205, 180, + 205, 481, 482, 972, 185, 485, 205, 487, 161, 489, + 20, 21, 188, 189, 190, 169, 1026, 161, 372, 836, + 181, 375, 177, 204, 185, 201, 202, 1071, 744, 186, + 187, 188, 189, 190, 177, 389, 1312, 1313, 177, 393, + 4, 5, 1318, 7, 201, 202, 146, 1323, 402, 177, + 205, 405, 406, 407, 171, 177, 924, 154, 412, 177, + 1163, 161, 205, 1201, 127, 128, 205, 177, 185, 137, + 783, 35, 184, 1349, 1350, 161, 180, 205, 146, 180, + 171, 185, 902, 205, 185, 900, 171, 205, 1132, 152, + 152, 161, 204, 161, 185, 205, 181, 598, 161, 161, + 204, 184, 201, 204, 114, 115, 116, 117, 118, 163, + 611, 121, 122, 123, 124, 1125, 126, 127, 128, 129, + 130, 204, 132, 133, 180, 20, 21, 481, 482, 185, + 1140, 485, 184, 487, 152, 489, 171, 491, 201, 202, + 152, 642, 643, 161, 779, 780, 161, 46, 204, 161, + 185, 138, 204, 140, 789, 171, 657, 20, 21, 794, + 795, 1130, 797, 798, 1208, 800, 801, 66, 803, 185, + 171, 1105, 182, 183, 184, 185, 186, 187, 188, 189, + 190, 152, 56, 56, 185, 11, 152, 56, 62, 62, + 161, 201, 202, 62, 695, 161, 22, 23, 177, 1016, + 161, 180, 180, 704, 183, 183, 707, 20, 21, 1077, + 56, 1028, 56, 56, 171, 695, 62, 171, 62, 62, + 177, 116, 117, 177, 704, 163, 164, 707, 161, 124, + 171, 126, 127, 128, 129, 130, 177, 591, 181, 181, + 161, 181, 185, 185, 598, 185, 181, 138, 139, 140, + 185, 114, 115, 116, 117, 118, 161, 611, 121, 122, + 123, 124, 169, 126, 127, 128, 129, 130, 181, 132, + 133, 1139, 185, 163, 164, 165, 166, 778, 779, 780, + 781, 635, 56, 1190, 785, 769, 163, 164, 789, 178, + 169, 1004, 1336, 794, 795, 1008, 797, 798, 778, 800, + 801, 781, 803, 116, 117, 785, 201, 202, 169, 181, + 169, 124, 180, 185, 127, 128, 129, 130, 163, 138, + 1033, 184, 185, 186, 187, 188, 189, 190, 1262, 181, + 181, 181, 1045, 185, 185, 185, 1249, 105, 201, 202, + 207, 695, 977, 978, 979, 34, 34, 982, 204, 169, + 704, 169, 161, 707, 170, 1223, 184, 184, 20, 21, + 1073, 163, 164, 165, 10, 11, 12, 868, 207, 184, + 204, 1239, 1240, 184, 184, 204, 184, 74, 184, 184, + 1015, 78, 204, 184, 184, 184, 181, 1356, 201, 202, + 161, 161, 161, 21, 1307, 92, 93, 161, 161, 900, + 97, 98, 99, 100, 1117, 203, 203, 180, 1121, 169, + 204, 42, 1319, 1320, 180, 1322, 161, 918, 202, 177, + 161, 131, 204, 161, 778, 779, 780, 781, 161, 161, + 184, 785, 184, 184, 184, 789, 184, 204, 918, 204, + 794, 795, 204, 797, 798, 184, 800, 801, 184, 803, + 1163, 204, 114, 115, 116, 117, 118, 184, 184, 121, + 204, 204, 124, 205, 126, 127, 128, 129, 130, 204, + 132, 133, 171, 204, 204, 204, 977, 978, 979, 207, + 202, 982, 161, 20, 21, 204, 161, 203, 161, 170, + 180, 171, 170, 204, 161, 171, 154, 36, 1366, 171, + 171, 349, 1370, 204, 9, 171, 1141, 171, 171, 65, + 171, 359, 171, 178, 1015, 171, 171, 177, 42, 204, + 204, 369, 184, 185, 186, 187, 188, 189, 190, 177, + 12, 185, 184, 184, 184, 177, 161, 207, 177, 201, + 202, 170, 42, 391, 13, 202, 900, 180, 1261, 154, + 169, 399, 205, 7, 1267, 204, 178, 204, 161, 69, + 170, 185, 203, 177, 918, 1066, 184, 205, 204, 204, + 204, 184, 202, 205, 1, 161, 185, 114, 115, 116, + 117, 429, 430, 204, 204, 161, 1066, 124, 204, 126, + 127, 128, 129, 130, 185, 132, 133, 204, 446, 447, + 448, 449, 450, 451, 204, 204, 185, 161, 161, 170, + 66, 171, 185, 1248, 185, 205, 161, 185, 205, 204, + 185, 205, 185, 977, 978, 979, 185, 185, 982, 184, + 205, 205, 204, 185, 185, 185, 42, 204, 204, 185, + 1141, 205, 1143, 185, 185, 185, 161, 204, 161, 186, + 187, 188, 189, 190, 185, 204, 504, 204, 161, 161, + 204, 1015, 205, 1143, 201, 202, 161, 11, 161, 32, + 204, 204, 520, 161, 204, 204, 204, 204, 204, 185, + 528, 203, 205, 204, 532, 171, 185, 535, 536, 185, + 204, 171, 204, 541, 205, 543, 204, 52, 205, 170, + 620, 171, 203, 76, 1, 42, 128, 205, 205, 79, + 1386, 205, 1066, 203, 1245, 98, 1245, 1245, 1245, 1245, + 1, 1218, 214, 1174, 471, 1177, 1084, 1252, 524, 1230, + 1253, 1172, 580, 51, 765, 412, 972, -1, 412, -1, -1, -1, -1, -1, -1, -1, -1, 1248, -1, -1, - 1230, 600, 601, -1, -1, 604, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 615, 616, 617, 618, - 619, 620, -1, -1, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 18, -1, -1, 1141, -1, 1143, - -1, -1, -1, -1, 201, 202, 645, 646, -1, -1, - 649, 650, 651, 652, -1, 654, -1, 656, 657, 658, - 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, - 669, 670, 671, 672, 673, 674, 675, -1, 677, -1, - -1, -1, -1, -1, -1, -1, 70, 71, 72, -1, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, - 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, - 94, -1, -1, 97, 98, 99, 100, -1, -1, -1, - 719, -1, -1, 722, -1, -1, 1230, -1, -1, -1, - -1, -1, 731, -1, -1, -1, -1, 736, -1, -1, - -1, -1, -1, -1, 1248, -1, -1, 746, 747, 748, - 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, - 759, 760, 761, 762, 763, 764, -1, -1, 152, -1, - -1, -1, -1, 1277, 773, -1, -1, 161, -1, -1, - -1, -1, -1, -1, -1, 784, -1, -1, 18, -1, - -1, -1, -1, -1, 24, -1, -1, -1, -1, -1, + 1230, 599, 600, -1, -1, 603, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 614, 615, 616, 617, + 618, 619, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 18, -1, -1, -1, 1141, -1, 1143, + -1, -1, -1, -1, -1, -1, 644, 645, -1, -1, + 648, 649, 650, 651, -1, 653, -1, 655, 656, 657, + 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, + 668, 669, 670, 671, 672, 673, 674, -1, 676, -1, + -1, -1, -1, -1, -1, 70, 71, 72, -1, 74, + 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, + 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, + -1, -1, 97, 98, 99, 100, -1, -1, -1, -1, + 718, -1, -1, 721, -1, -1, 1230, -1, -1, -1, + -1, -1, 730, -1, -1, -1, -1, 735, -1, -1, + -1, -1, -1, -1, 1248, -1, -1, -1, 746, 747, + 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, + 758, 759, 760, 761, 762, 763, 764, 152, -1, -1, + -1, -1, -1, 1277, -1, 773, 161, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 784, -1, -1, 18, + -1, -1, -1, -1, -1, 24, -1, -1, -1, -1, + -1, 30, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 40, -1, -1, 812, -1, -1, 815, 816, 48, + -1, -1, 820, -1, -1, -1, -1, -1, 1332, -1, + -1, -1, -1, -1, 63, -1, -1, -1, -1, 837, + -1, 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, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 881, -1, -1, -1, 885, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 137, 907, + -1, -1, -1, -1, -1, 913, -1, -1, -1, -1, + -1, 150, 920, -1, -1, -1, -1, -1, 18, 927, + -1, -1, 161, -1, 24, 933, -1, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 40, -1, -1, 812, -1, -1, 815, 816, 48, -1, - -1, 820, -1, -1, -1, -1, -1, -1, 1332, -1, - -1, -1, -1, 63, -1, -1, -1, -1, 837, -1, + 40, -1, -1, -1, -1, -1, -1, -1, 48, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 63, -1, -1, -1, 206, -1, 208, 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, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 881, -1, -1, -1, 885, -1, -1, -1, + 100, 101, 102, -1, -1, 1013, 1014, -1, -1, 1017, + 1018, 1019, -1, 1021, -1, -1, -1, -1, -1, -1, + -1, -1, 1030, -1, 1032, -1, 1034, -1, -1, -1, + -1, -1, 1040, -1, -1, -1, 1044, 137, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 137, 907, -1, - -1, -1, -1, -1, 913, -1, -1, -1, -1, -1, - 150, 920, -1, -1, -1, -1, -1, 18, 927, -1, - -1, 161, -1, 24, 933, -1, -1, -1, -1, 30, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 40, - -1, -1, -1, -1, -1, -1, -1, 48, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 63, -1, -1, -1, 206, -1, 208, 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, -1, -1, 1013, 1014, -1, -1, 1017, 1018, - 1019, -1, 1021, -1, -1, -1, -1, -1, -1, -1, - -1, 1030, -1, 1032, -1, 1034, -1, -1, -1, -1, - -1, 1040, -1, -1, -1, 1044, 137, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 150, - -1, -1, -1, -1, 18, -1, -1, 20, 21, -1, - 161, -1, -1, -1, -1, -1, -1, 1076, -1, -1, - 171, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 1105, -1, -1, -1, - -1, -1, -1, -1, -1, 206, 70, 71, 72, -1, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, - 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, - 94, -1, -1, 97, 98, 99, 100, -1, -1, -1, - 1149, -1, 1151, -1, -1, -1, -1, 1156, -1, -1, - -1, 114, 115, 116, 117, 118, -1, 1166, 121, 122, - 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, - 133, -1, -1, -1, 1183, 138, 139, 140, -1, -1, - -1, 144, 1191, 1192, 1193, -1, -1, -1, 152, 1198, - -1, -1, 1201, 1202, -1, -1, -1, 161, -1, -1, - -1, -1, 1211, 1212, 1213, -1, -1, -1, -1, -1, - -1, 1220, -1, -1, -1, -1, 179, -1, 181, 182, - 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, - -1, -1, -1, -1, -1, -1, 1245, -1, 201, 202, - -1, -1, 205, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 1262, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 1276, -1, -1, - 1279, 1280, -1, -1, -1, -1, -1, -1, 1287, -1, + 150, -1, -1, -1, -1, 18, -1, -1, 20, 21, + -1, 161, -1, -1, -1, -1, -1, -1, 1076, -1, + -1, 171, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 1299, -1, -1, -1, -1, -1, -1, -1, -1, 1308, - -1, -1, -1, -1, -1, 1314, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 1, -1, -1, 4, 5, 6, -1, 8, 9, - 10, -1, 12, 1342, 14, 15, 16, 17, 18, -1, - -1, -1, -1, -1, 24, 25, 26, 27, 28, 1358, - 30, -1, -1, -1, 1363, 1364, -1, 37, 38, -1, - -1, 41, -1, 43, 44, -1, -1, 47, -1, 49, - 50, 51, -1, 53, 54, -1, -1, 57, 58, -1, - -1, -1, -1, -1, 64, -1, -1, 67, 68, -1, - 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, - 100, 101, 102, 103, 104, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 1105, -1, -1, + -1, -1, -1, -1, -1, -1, 206, 70, 71, 72, + -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, + 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, + 93, 94, -1, -1, 97, 98, 99, 100, -1, -1, + -1, 1149, -1, 1151, -1, -1, -1, -1, 1156, -1, + -1, -1, 114, 115, 116, 117, 118, -1, 1166, 121, + 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, + 132, 133, -1, -1, -1, 1183, 138, 139, 140, -1, + -1, -1, 144, 1191, 1192, 1193, -1, -1, -1, 152, + 1198, -1, -1, 1201, 1202, -1, -1, -1, 161, -1, + -1, -1, -1, 1211, 1212, 1213, -1, -1, -1, -1, + -1, -1, 1220, -1, -1, -1, -1, 179, -1, 181, + 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, + -1, -1, -1, -1, -1, -1, -1, 1245, -1, 201, + 202, -1, -1, 205, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 1262, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 1276, -1, + -1, 1279, 1280, -1, -1, -1, -1, -1, -1, 1287, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 137, -1, -1, - -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, - -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, - 170, 171, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 186, 187, 188, -1, - 190, -1, -1, 193, 194, -1, -1, -1, -1, -1, - -1, -1, 202, -1, 204, 1, 206, 207, 4, 5, - 6, -1, 8, 9, 10, -1, 12, -1, 14, 15, - 16, 17, 18, -1, -1, -1, -1, -1, 24, 25, - 26, 27, 28, -1, 30, -1, -1, -1, -1, -1, - -1, 37, 38, -1, -1, 41, -1, 43, 44, -1, - -1, 47, -1, 49, 50, 51, -1, 53, 54, -1, - -1, 57, 58, -1, -1, -1, -1, -1, 64, -1, - -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, - 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, - -1, 97, 98, 99, 100, 101, 102, 103, 104, -1, + -1, 1299, -1, -1, -1, -1, -1, -1, -1, -1, + 1308, -1, -1, -1, -1, -1, 1314, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 1, -1, -1, 4, 5, 6, -1, 8, + 9, 10, -1, 12, 1342, 14, 15, 16, 17, 18, + -1, -1, -1, -1, -1, 24, 25, 26, 27, 28, + 1358, 30, -1, -1, -1, 1363, 1364, -1, 37, 38, + -1, -1, 41, -1, 43, 44, -1, -1, 47, -1, + 49, 50, 51, -1, 53, 54, -1, -1, 57, 58, + -1, -1, -1, -1, -1, 64, -1, -1, 67, 68, + -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, + 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, + 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, + 99, 100, 101, 102, 103, 104, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 137, -1, -1, -1, -1, -1, -1, -1, 145, - 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, - -1, -1, -1, 169, 170, 171, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 137, -1, + -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, + 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, + 159, 160, 161, 162, -1, -1, -1, -1, -1, -1, + 169, 170, 171, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 186, 187, 188, + -1, 190, -1, -1, 193, 194, -1, -1, -1, -1, + -1, -1, -1, 202, -1, 204, 1, 206, 207, 4, + 5, 6, -1, 8, 9, 10, -1, 12, -1, 14, + 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, + 25, 26, 27, 28, -1, 30, -1, -1, -1, -1, + -1, -1, 37, 38, -1, -1, 41, -1, 43, 44, + -1, -1, 47, -1, 49, 50, 51, -1, 53, 54, + -1, -1, 57, 58, -1, -1, -1, -1, -1, 64, + -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, + 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, + 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, + -1, -1, 97, 98, 99, 100, 101, 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 186, 187, 188, -1, 190, -1, -1, 193, 194, -1, - -1, -1, -1, -1, -1, -1, 202, -1, 204, 1, - 206, 207, 4, 5, 6, -1, 8, 9, 10, -1, - 12, -1, 14, 15, 16, 17, 18, -1, -1, -1, - -1, -1, 24, 25, 26, 27, 28, -1, 30, -1, - -1, -1, -1, -1, -1, 37, 38, -1, -1, 41, - -1, 43, 44, -1, -1, 47, -1, 49, 50, 51, - -1, 53, 54, -1, -1, 57, 58, -1, -1, -1, - -1, -1, 64, -1, -1, 67, 68, -1, 70, 71, - 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, - 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, - 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, - 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, + -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 137, -1, -1, -1, -1, - -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, - -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, -1, -1, -1, -1, -1, -1, 169, 170, 171, + -1, -1, 137, -1, -1, -1, -1, -1, -1, -1, + 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, + 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, + -1, -1, -1, -1, 169, 170, 171, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 186, 187, 188, -1, 190, -1, - -1, 193, 194, -1, -1, -1, 4, 5, -1, -1, - 202, -1, 204, -1, 206, 207, 14, 15, 16, 17, - 18, -1, -1, -1, -1, -1, 24, 25, 26, 27, - -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, - 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, - -1, -1, 50, 51, -1, -1, 54, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, - 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, - 98, 99, 100, 101, 102, 103, 104, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, + -1, 186, 187, 188, -1, 190, -1, -1, 193, 194, + -1, -1, -1, -1, -1, -1, -1, 202, -1, 204, + 1, 206, 207, 4, 5, 6, -1, 8, 9, 10, + -1, 12, -1, 14, 15, 16, 17, 18, -1, -1, + -1, -1, -1, 24, 25, 26, 27, 28, -1, 30, + -1, -1, -1, -1, -1, -1, 37, 38, -1, -1, + 41, -1, 43, 44, -1, -1, 47, -1, 49, 50, + 51, -1, 53, 54, -1, -1, 57, 58, -1, -1, + -1, -1, -1, 64, -1, -1, 67, 68, -1, 70, + 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, + 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, + -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, + 101, 102, 103, 104, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 137, - -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, - 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, - -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 186, 187, - 188, -1, 190, -1, -1, 193, 194, -1, -1, -1, - -1, -1, 4, 5, 202, -1, 204, -1, 206, 207, - 12, -1, 14, 15, 16, 17, 18, -1, -1, -1, - -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, - -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, - -1, -1, 44, -1, -1, 47, 48, -1, 50, -1, - -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 67, 68, -1, 70, 71, - 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, - 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, - 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, - 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 137, -1, -1, -1, + -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, + 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, + 161, 162, -1, -1, -1, -1, -1, -1, 169, 170, + 171, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 186, 187, 188, -1, 190, + -1, -1, 193, 194, -1, -1, -1, 4, 5, -1, + -1, 202, -1, 204, -1, 206, 207, 14, 15, 16, + 17, 18, -1, -1, -1, -1, -1, 24, 25, 26, + 27, -1, -1, 30, -1, -1, -1, -1, -1, -1, + -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, + 47, -1, -1, 50, 51, -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 137, -1, -1, -1, -1, - -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, + 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, + 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, + 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, + 97, 98, 99, 100, 101, 102, 103, 104, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, + 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 186, 187, 188, -1, 190, -1, - -1, 193, 194, -1, -1, -1, -1, -1, 4, 5, - 202, -1, 204, -1, 206, 207, 12, -1, 14, 15, - 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, - 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, - -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, - -1, 47, 48, -1, 50, -1, -1, -1, 54, -1, + 137, -1, -1, -1, -1, -1, -1, -1, 145, 146, + 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, + 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, + -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 186, + 187, 188, -1, 190, -1, -1, 193, 194, -1, -1, + -1, -1, -1, 4, 5, 202, -1, 204, -1, 206, + 207, 12, -1, 14, 15, 16, 17, 18, -1, -1, + -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, + -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, + -1, -1, -1, 44, -1, -1, 47, 48, -1, 50, + -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 67, 68, -1, 70, + 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, + 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, + -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, + 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, - 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, - -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, + -1, -1, -1, -1, -1, -1, 137, -1, -1, -1, + -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, + 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, + 161, 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 186, 187, 188, -1, 190, + -1, -1, 193, 194, -1, -1, -1, -1, -1, 4, + 5, 202, -1, 204, -1, 206, 207, 12, -1, 14, + 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, + -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, + -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, + -1, -1, 47, 48, -1, 50, -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 137, -1, -1, -1, -1, -1, -1, -1, 145, - 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, - -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, + -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, + 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, + 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, + -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 186, 187, 188, -1, 190, -1, -1, 193, 194, -1, - -1, -1, 4, 5, -1, -1, 202, -1, 204, -1, - 206, 207, 14, 15, 16, 17, 18, -1, -1, -1, - -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, - -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, - -1, -1, 44, -1, -1, 47, -1, -1, 50, -1, - -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 67, 68, -1, 70, 71, - 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, - 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, - 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, - 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, + -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 137, -1, -1, -1, -1, - -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, + -1, -1, 137, -1, -1, -1, -1, -1, -1, -1, + 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, + 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, + -1, -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 186, 187, 188, -1, 190, -1, - -1, 193, 194, -1, -1, -1, 4, 5, -1, -1, - 202, -1, 204, 205, 206, 207, 14, 15, 16, 17, - 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, - -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, - 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, - -1, -1, 50, -1, -1, -1, 54, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, - 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, - 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 137, - -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, - 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, - -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 186, 187, - 188, -1, 190, -1, -1, 193, 194, -1, -1, -1, - -1, -1, 4, 5, 202, 203, 204, -1, 206, 207, - 12, -1, 14, 15, 16, 17, 18, -1, -1, -1, - -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, - -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, - -1, -1, 44, -1, -1, 47, -1, -1, 50, -1, - -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 67, 68, -1, 70, 71, - 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, - 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, - 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, - 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, + -1, 186, 187, 188, -1, 190, -1, -1, 193, 194, + -1, -1, -1, 4, 5, -1, -1, 202, -1, 204, + -1, 206, 207, 14, 15, 16, 17, 18, -1, -1, + -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, + -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, + -1, -1, -1, 44, -1, -1, 47, -1, -1, 50, + -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 67, 68, -1, 70, + 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, + 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, + -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, + 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 137, -1, -1, -1, -1, - -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, - -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, + -1, -1, -1, -1, -1, -1, 137, -1, -1, -1, + -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, + 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, + 161, 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 186, 187, 188, -1, 190, -1, - -1, 193, 194, -1, -1, -1, 4, 5, -1, -1, - 202, -1, 204, -1, 206, 207, 14, 15, 16, 17, - 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, - -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, - 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, - -1, -1, 50, -1, -1, -1, 54, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, - 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, - 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, + -1, -1, -1, -1, -1, 186, 187, 188, -1, 190, + -1, -1, 193, 194, -1, -1, -1, 4, 5, -1, + -1, 202, -1, 204, 205, 206, 207, 14, 15, 16, + 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, + -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, + -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, + 47, -1, -1, 50, -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 137, - -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, - 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, - -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 186, 187, - 188, -1, 190, -1, -1, 193, 194, -1, -1, -1, - 4, 5, -1, -1, 202, 203, 204, -1, 206, 207, - 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, - 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, - -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, - 44, -1, -1, 47, -1, -1, 50, -1, -1, -1, - 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 67, 68, -1, 70, 71, 72, -1, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, - 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, - 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, + 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, + 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, + 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, + 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, + 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, - -1, 125, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 137, -1, -1, -1, -1, -1, -1, - -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, - -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, + 137, -1, -1, -1, -1, -1, -1, -1, 145, 146, + 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, + 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, + -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 186, + 187, 188, -1, 190, -1, -1, 193, 194, -1, -1, + -1, -1, -1, 4, 5, 202, 203, 204, -1, 206, + 207, 12, -1, 14, 15, 16, 17, 18, -1, -1, + -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, + -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, + -1, -1, -1, 44, -1, -1, 47, -1, -1, 50, + -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 67, 68, -1, 70, + 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, + 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, + -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, + 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 186, 187, 188, -1, 190, -1, -1, 193, - 194, -1, -1, -1, 4, 5, -1, -1, 202, -1, - 204, -1, 206, 207, 14, 15, 16, 17, 18, -1, - -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, - 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, - -1, -1, -1, -1, 44, -1, -1, 47, -1, -1, - 50, -1, -1, -1, 54, -1, -1, -1, -1, -1, - 60, -1, -1, -1, -1, -1, -1, 67, 68, -1, - 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, - 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, + -1, -1, -1, -1, -1, -1, 137, -1, -1, -1, + -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, + 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, + 161, 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 137, -1, -1, - -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, - -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, + -1, -1, -1, -1, -1, 186, 187, 188, -1, 190, + -1, -1, 193, 194, -1, -1, -1, 4, 5, -1, + -1, 202, -1, 204, -1, 206, 207, 14, 15, 16, + 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, + -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, + -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, + 47, -1, -1, 50, -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 186, 187, 188, -1, - 190, -1, -1, 193, 194, -1, -1, -1, 4, 5, - -1, -1, 202, -1, 204, -1, 206, 207, 14, 15, - 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, - 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, - -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, - -1, 47, -1, -1, 50, -1, -1, -1, 54, -1, - -1, 57, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, - 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, - -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, + 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, + 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, + 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, + 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, + 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, + 137, -1, -1, -1, -1, -1, -1, -1, 145, 146, + 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, + 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, + -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 186, + 187, 188, -1, 190, -1, -1, 193, 194, -1, -1, + -1, 4, 5, -1, -1, 202, 203, 204, -1, 206, + 207, 14, 15, 16, 17, 18, -1, -1, -1, -1, + -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, + -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, + -1, 44, -1, -1, 47, -1, -1, 50, -1, -1, + -1, 54, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 67, 68, -1, 70, 71, 72, + -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, + 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, + 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, + 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, + -1, -1, 125, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 137, -1, -1, -1, -1, -1, + -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, + 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, + -1, -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 137, -1, -1, -1, -1, -1, -1, -1, 145, - 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, - -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 186, 187, 188, -1, 190, -1, -1, + 193, 194, -1, -1, -1, 4, 5, -1, -1, 202, + -1, 204, -1, 206, 207, 14, 15, 16, 17, 18, + -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, + -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, + -1, -1, -1, -1, -1, 44, -1, -1, 47, -1, + -1, 50, -1, -1, -1, 54, -1, -1, -1, -1, + -1, 60, -1, -1, -1, -1, -1, -1, 67, 68, + -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, + 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, + 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, + 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 186, 187, 188, -1, 190, -1, -1, 193, 194, -1, - -1, -1, 4, 5, -1, -1, 202, -1, 204, -1, - 206, 207, 14, 15, 16, 17, 18, -1, -1, -1, - -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, - -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, - -1, -1, 44, -1, -1, 47, -1, -1, 50, -1, - -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 67, 68, -1, 70, 71, - 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, - 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, - 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, - 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, - -1, -1, -1, 125, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 137, -1, -1, -1, -1, - -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, - -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 137, -1, + -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, + 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, + 159, 160, 161, 162, -1, -1, -1, -1, -1, -1, + 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 186, 187, 188, + -1, 190, -1, -1, 193, 194, -1, -1, -1, 4, + 5, -1, -1, 202, -1, 204, -1, 206, 207, 14, + 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, + -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, + -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, + -1, -1, 47, -1, -1, 50, -1, -1, -1, 54, + -1, -1, 57, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, + 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, + 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, + -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 186, 187, 188, -1, 190, -1, - -1, 193, 194, -1, -1, -1, 4, 5, -1, -1, - 202, -1, 204, -1, 206, 207, 14, 15, 16, 17, - 18, -1, -1, 21, -1, -1, 24, -1, 26, -1, - -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, - 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, - -1, -1, 50, -1, -1, -1, 54, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, - 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, - 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, + -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 137, - -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, - 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, - -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 186, 187, - 188, -1, 190, -1, -1, 193, 194, -1, -1, -1, - 4, 5, -1, -1, 202, -1, 204, -1, 206, 207, - 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, - 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, - -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, - 44, -1, -1, 47, -1, -1, 50, -1, -1, -1, - 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 67, 68, -1, 70, 71, 72, -1, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, - 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, - 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, + -1, -1, 137, -1, -1, -1, -1, -1, -1, -1, + 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, + 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, + -1, -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, + -1, 186, 187, 188, -1, 190, -1, -1, 193, 194, + -1, -1, -1, 4, 5, -1, -1, 202, -1, 204, + -1, 206, 207, 14, 15, 16, 17, 18, -1, -1, + -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, + -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, + -1, -1, -1, 44, -1, -1, 47, -1, -1, 50, + -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 67, 68, -1, 70, + 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, + 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, + -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, + 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, + -1, -1, -1, -1, 125, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 137, -1, -1, -1, + -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, + 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, + 161, 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 137, -1, -1, -1, -1, -1, -1, - -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, - -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 186, 187, 188, -1, 190, + -1, -1, 193, 194, -1, -1, -1, 4, 5, -1, + -1, 202, -1, 204, -1, 206, 207, 14, 15, 16, + 17, 18, -1, -1, 21, -1, -1, 24, -1, 26, + -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, + -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, + 47, -1, -1, 50, -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 186, 187, 188, -1, 190, -1, -1, 193, - 194, -1, -1, -1, 4, 5, -1, -1, 202, -1, - 204, 205, 206, 207, 14, 15, 16, 17, 18, -1, - -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, - 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, - -1, -1, -1, -1, 44, -1, -1, 47, -1, -1, - 50, -1, -1, -1, 54, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 67, 68, -1, - 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, - 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, + 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, + 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, + 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, + 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, + 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 137, -1, -1, - -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, - -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, + 137, -1, -1, -1, -1, -1, -1, -1, 145, 146, + 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, + 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, + -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 186, + 187, 188, -1, 190, -1, -1, 193, 194, -1, -1, + -1, 4, 5, -1, -1, 202, -1, 204, -1, 206, + 207, 14, 15, 16, 17, 18, -1, -1, -1, -1, + -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, + -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, + -1, 44, -1, -1, 47, -1, -1, 50, -1, -1, + -1, 54, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 67, 68, -1, 70, 71, 72, + -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, + 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, + 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, + 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 184, -1, 186, 187, 188, -1, - 190, -1, -1, 193, 194, -1, -1, -1, 4, 5, - -1, -1, 202, -1, 204, -1, 206, 207, 14, 15, - 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, - 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, - -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, - -1, 47, -1, -1, 50, -1, -1, -1, 54, -1, + -1, -1, -1, -1, 137, -1, -1, -1, -1, -1, + -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, + 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, + -1, -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, - 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, - -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, + -1, -1, -1, 186, 187, 188, -1, 190, -1, -1, + 193, 194, -1, -1, -1, 4, 5, -1, -1, 202, + -1, 204, 205, 206, 207, 14, 15, 16, 17, 18, + -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, + -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, + -1, -1, -1, -1, -1, 44, -1, -1, 47, -1, + -1, 50, -1, -1, -1, 54, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 67, 68, + -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, + 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, + 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, + 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 137, -1, + -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, + 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, + 159, 160, 161, 162, -1, -1, -1, -1, -1, -1, + 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 184, -1, 186, 187, 188, + -1, 190, -1, -1, 193, 194, -1, -1, -1, 4, + 5, -1, -1, 202, -1, 204, -1, 206, 207, 14, + 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, + -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, + -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, + -1, -1, 47, -1, -1, 50, -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 137, -1, -1, -1, -1, -1, -1, -1, 145, - 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, - -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, + -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, + 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, + 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, + -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 186, 187, 188, -1, 190, -1, -1, 193, 194, -1, - -1, -1, 4, 5, -1, -1, 202, -1, 204, 205, - 206, 207, 14, 15, 16, 17, 18, -1, -1, -1, - -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, - -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, - -1, -1, 44, -1, -1, 47, -1, -1, 50, -1, - -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 67, 68, -1, 70, 71, - 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, - 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, - 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, - 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, + -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 137, -1, -1, -1, -1, - -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, - -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, + -1, -1, 137, -1, -1, -1, -1, -1, -1, -1, + 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, + 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, + -1, -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 186, 187, 188, -1, 190, -1, - -1, 193, 194, -1, -1, -1, 4, 5, -1, -1, - 202, -1, 204, 205, 206, 207, 14, 15, 16, 17, - 18, -1, -1, -1, -1, -1, 24, -1, 26, -1, - -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, - 38, -1, -1, -1, -1, -1, 44, -1, -1, 47, - -1, -1, 50, -1, -1, -1, 54, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, - 68, -1, 70, 71, 72, -1, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, -1, 92, 93, 94, -1, -1, 97, - 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, + -1, 186, 187, 188, -1, 190, -1, -1, 193, 194, + -1, -1, -1, 4, 5, -1, -1, 202, -1, 204, + 205, 206, 207, 14, 15, 16, 17, 18, -1, -1, + -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, + -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, + -1, -1, -1, 44, -1, -1, 47, -1, -1, 50, + -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 67, 68, -1, 70, + 71, 72, -1, 74, 75, 76, 77, 78, 79, 80, + 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, + -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, + 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 137, - -1, -1, -1, -1, -1, -1, -1, 145, 146, 147, - 148, 149, -1, 151, -1, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 162, -1, -1, -1, -1, -1, - -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 186, 187, - 188, -1, 190, -1, -1, 193, 194, -1, -1, -1, - 4, 5, -1, -1, 202, -1, 204, 205, 206, 207, - 14, 15, 16, 17, 18, -1, -1, -1, -1, -1, - 24, -1, 26, -1, -1, -1, 30, -1, -1, -1, - -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, - 44, -1, -1, 47, -1, -1, 50, -1, -1, -1, - 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 67, 68, -1, 70, 71, 72, -1, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, - 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, - 94, -1, -1, 97, 98, 99, 100, 101, 102, 103, + -1, -1, -1, -1, -1, -1, 137, -1, -1, -1, + -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, + 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, + 161, 162, -1, -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 186, 187, 188, -1, 190, + -1, -1, 193, 194, -1, -1, -1, 4, 5, -1, + -1, 202, -1, 204, 205, 206, 207, 14, 15, 16, + 17, 18, -1, -1, -1, -1, -1, 24, -1, 26, + -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, + -1, 38, -1, -1, -1, -1, -1, 44, -1, -1, + 47, -1, -1, 50, -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 137, -1, -1, -1, -1, -1, -1, - -1, 145, 146, 147, 148, 149, -1, 151, -1, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, -1, - -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, + 67, 68, -1, 70, 71, 72, -1, 74, 75, 76, + 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, + 87, 88, 89, 90, -1, 92, 93, 94, -1, -1, + 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, + 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 186, 187, 188, -1, 190, -1, -1, 193, - 194, -1, -1, -1, 4, 5, -1, -1, 202, -1, - 204, 205, 206, 207, 14, 15, 16, 17, 18, -1, - -1, -1, -1, -1, 24, -1, 26, -1, -1, -1, - 30, -1, -1, -1, -1, -1, -1, -1, 38, -1, - -1, -1, -1, -1, 44, -1, -1, 47, -1, -1, - 50, -1, -1, -1, 54, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 67, 68, -1, - 70, 71, 72, -1, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, -1, 92, 93, 94, -1, -1, 97, 98, 99, - 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 116, 117, -1, -1, - -1, -1, -1, -1, -1, 125, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 137, -1, -1, - -1, -1, -1, -1, -1, 145, 146, 147, 148, 149, - -1, 151, -1, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, -1, -1, -1, -1, -1, -1, 169, + 137, -1, -1, -1, -1, -1, -1, -1, 145, 146, + 147, 148, 149, -1, 151, -1, 153, 154, 155, 156, + 157, 158, 159, 160, 161, 162, -1, -1, -1, -1, + -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 186, + 187, 188, -1, 190, -1, -1, 193, 194, -1, -1, + -1, 4, 5, -1, -1, 202, -1, 204, 205, 206, + 207, 14, 15, 16, 17, 18, -1, -1, -1, -1, + -1, 24, -1, 26, -1, -1, -1, 30, -1, -1, + -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, + -1, 44, -1, -1, 47, -1, -1, 50, -1, -1, + -1, 54, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 67, 68, -1, 70, 71, 72, + -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, + 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, + 93, 94, -1, -1, 97, 98, 99, 100, 101, 102, + 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 186, 187, 188, -1, - 190, -1, -1, 193, 194, -1, -1, -1, 4, 5, - -1, -1, 202, -1, 204, -1, 206, 207, 14, 15, - 16, 17, 18, -1, -1, -1, -1, -1, 24, -1, - 26, -1, -1, -1, 30, -1, -1, -1, -1, -1, - -1, -1, 38, -1, -1, -1, -1, -1, 44, -1, - -1, 47, -1, -1, 50, -1, -1, -1, 54, -1, + -1, -1, -1, -1, 137, -1, -1, -1, -1, -1, + -1, -1, 145, 146, 147, 148, 149, -1, 151, -1, + 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, + -1, -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 67, 68, -1, 70, 71, 72, -1, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, - 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, - -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, + -1, -1, -1, 186, 187, 188, -1, 190, -1, -1, + 193, 194, -1, -1, -1, 4, 5, -1, -1, 202, + -1, 204, 205, 206, 207, 14, 15, 16, 17, 18, + -1, -1, -1, -1, -1, 24, -1, 26, -1, -1, + -1, 30, -1, -1, -1, -1, -1, -1, -1, 38, + -1, -1, -1, -1, -1, 44, -1, -1, 47, -1, + -1, 50, -1, -1, -1, 54, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 67, 68, + -1, 70, 71, 72, -1, 74, 75, 76, 77, 78, + 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, + 89, 90, -1, 92, 93, 94, -1, -1, 97, 98, + 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 116, 117, -1, + -1, -1, -1, -1, -1, -1, 125, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 137, -1, + -1, -1, -1, -1, -1, -1, 145, 146, 147, 148, + 149, -1, 151, -1, 153, 154, 155, 156, 157, 158, + 159, 160, 161, 162, -1, -1, -1, -1, -1, -1, + 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 186, 187, 188, + -1, 190, -1, -1, 193, 194, -1, -1, -1, 4, + 5, -1, -1, 202, -1, 204, -1, 206, 207, 14, + 15, 16, 17, 18, -1, -1, -1, -1, -1, 24, + -1, 26, -1, -1, -1, 30, -1, -1, -1, -1, + -1, -1, -1, 38, -1, -1, -1, -1, -1, 44, + -1, -1, 47, -1, -1, 50, -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 67, 68, -1, 70, 71, 72, -1, 74, + 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, + 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, + -1, -1, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 137, -1, -1, -1, -1, -1, -1, -1, 145, - 146, 147, 148, 149, -1, 151, -1, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, -1, -1, -1, - -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, + -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 186, 187, 188, -1, 190, -1, -1, 193, 194, -1, - -1, -1, 4, 5, -1, -1, 202, -1, 204, -1, - 206, 207, 14, 15, 16, 17, 18, -1, -1, -1, - -1, -1, 24, -1, 26, -1, -1, -1, 30, -1, - -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, - -1, -1, 44, -1, -1, 47, -1, -1, 50, -1, - -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 67, 68, -1, 70, 71, - 72, -1, 74, 75, 76, 77, 78, 79, 80, 81, - 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, - 92, 93, 94, -1, -1, 97, 98, 99, 100, 101, - 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, + -1, -1, 137, -1, -1, -1, -1, -1, -1, -1, + 145, 146, 147, 148, 149, -1, 151, -1, 153, 154, + 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, + -1, -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 137, -1, -1, -1, -1, - -1, -1, -1, 145, 146, 147, 148, 149, -1, 151, - -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, -1, -1, -1, -1, 18, -1, 169, -1, -1, - -1, 24, -1, -1, -1, -1, -1, 30, -1, -1, - -1, -1, -1, -1, 186, 187, 188, 40, 190, -1, - -1, 193, 194, -1, -1, 48, -1, -1, -1, -1, - 202, -1, 204, -1, 206, 207, -1, -1, -1, -1, - 63, -1, -1, -1, -1, -1, -1, 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, - -1, -1, -1, 20, 21, -1, -1, 18, -1, -1, - -1, -1, -1, 24, -1, -1, -1, -1, -1, 30, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 40, - -1, -1, -1, -1, 137, -1, -1, 48, -1, 20, - 21, -1, -1, -1, -1, -1, -1, 150, -1, -1, - -1, -1, 63, -1, -1, -1, -1, -1, 161, 70, - 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, + -1, 186, 187, 188, -1, 190, -1, -1, 193, 194, + -1, -1, -1, 4, 5, -1, -1, 202, -1, 204, + -1, 206, 207, 14, 15, 16, 17, 18, -1, -1, + -1, -1, -1, 24, -1, 26, -1, -1, -1, 30, + -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, + -1, -1, -1, 44, -1, -1, 47, -1, -1, 50, + -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 67, 68, -1, 70, + 71, 72, -1, 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, -1, -1, -1, -1, -1, 114, 115, 116, - 117, 118, -1, 206, 121, 122, 123, 124, -1, 126, - 127, 128, 129, 130, -1, 132, 133, -1, -1, -1, - -1, 138, 139, 140, -1, -1, 137, 144, -1, -1, - -1, 20, 21, 114, 115, 116, 117, 118, -1, 150, - 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, - 161, 132, 133, -1, -1, -1, -1, 138, 139, 140, - -1, -1, 179, 144, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 201, 202, -1, -1, 205, -1, - -1, -1, -1, -1, -1, 206, -1, -1, 179, -1, - 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, + -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, + 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 201, 202, -1, -1, 205, 114, 115, 116, 117, 118, - 20, 21, 121, 122, 123, 124, -1, 126, 127, 128, - 129, 130, -1, 132, 133, -1, -1, -1, -1, 138, - 139, 140, -1, -1, -1, 144, -1, -1, -1, -1, - -1, 20, 21, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 137, -1, -1, -1, + -1, -1, -1, -1, 145, 146, 147, 148, 149, -1, + 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, + 161, 162, -1, -1, -1, -1, 18, -1, 169, -1, + -1, -1, 24, -1, -1, -1, -1, -1, 30, -1, + -1, -1, -1, -1, -1, 186, 187, 188, 40, 190, + -1, -1, 193, 194, -1, -1, 48, -1, -1, -1, + -1, 202, -1, 204, -1, 206, 207, -1, -1, -1, + -1, 63, -1, -1, -1, -1, -1, -1, 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, -1, -1, -1, 20, 21, -1, -1, 18, -1, + -1, -1, -1, -1, 24, -1, -1, -1, -1, -1, + 30, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 40, -1, -1, -1, -1, 137, -1, -1, 48, -1, + 20, 21, -1, -1, -1, -1, -1, -1, 150, -1, + -1, -1, -1, 63, -1, -1, -1, -1, -1, 161, + 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, -1, -1, -1, -1, -1, 114, 115, + 116, 117, 118, -1, 206, 121, 122, 123, 124, -1, + 126, 127, 128, 129, 130, -1, 132, 133, -1, -1, + -1, -1, 138, 139, 140, -1, -1, 137, 144, -1, + -1, -1, 20, 21, 114, 115, 116, 117, 118, -1, + 150, 121, 122, 123, 124, -1, 126, 127, 128, 129, + 130, 161, 132, 133, -1, -1, -1, -1, 138, 139, + 140, -1, -1, 179, 144, 181, 182, 183, 184, 185, + 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 201, 202, -1, -1, 205, + -1, -1, -1, -1, -1, -1, 206, -1, -1, 179, + -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 201, 202, -1, -1, 205, 114, 115, 116, 117, + 118, 20, 21, 121, 122, 123, 124, -1, 126, 127, + 128, 129, 130, -1, 132, 133, -1, -1, -1, -1, + 138, 139, 140, -1, -1, -1, 144, -1, -1, -1, + -1, -1, 20, 21, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 201, 202, -1, -1, 205, -1, -1, -1, - -1, -1, -1, -1, 114, 115, 116, 117, 118, -1, - -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, - 130, -1, 132, 133, -1, -1, -1, -1, 138, 139, - 140, -1, -1, -1, 144, 114, 115, 116, 117, 118, - 20, 21, 121, 122, 123, 124, -1, 126, 127, 128, + -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, + 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 201, 202, -1, -1, 205, -1, -1, + -1, -1, -1, -1, -1, 114, 115, 116, 117, 118, + -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, -1, -1, -1, -1, 138, - 139, 140, -1, -1, -1, 144, -1, -1, -1, 179, - -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, - 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 201, 202, -1, -1, 205, -1, -1, -1, -1, + 139, 140, -1, -1, -1, 144, 114, 115, 116, 117, + 118, 20, 21, 121, 122, 123, 124, -1, 126, 127, + 128, 129, 130, -1, 132, 133, -1, -1, -1, -1, + 138, 139, 140, -1, -1, -1, 144, -1, -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 201, 202, -1, -1, 205, -1, -1, -1, - -1, -1, 20, 21, 114, 115, 116, 117, 118, -1, - -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, - 130, -1, 132, 133, -1, -1, -1, -1, 138, 139, - 140, -1, -1, -1, 144, 20, 21, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 179, - -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, - 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 201, 202, -1, -1, 205, 114, 115, 116, 117, - 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, - 128, 129, 130, -1, 132, 133, -1, -1, -1, -1, - 138, 139, 140, -1, -1, -1, 144, 20, 21, 114, - 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, - -1, 126, 127, 128, 129, 130, -1, 132, 133, -1, - -1, -1, -1, 138, 139, 140, -1, -1, -1, 144, -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 201, 202, -1, -1, 205, -1, -1, - -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 201, 202, -1, -1, - 205, 114, 115, 116, 117, 118, 20, 21, 121, 122, - 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, - 133, -1, -1, -1, -1, 138, 139, 140, -1, -1, - -1, 144, -1, -1, -1, -1, -1, 20, 21, -1, + -1, -1, -1, 20, 21, 114, 115, 116, 117, 118, + -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, + 129, 130, -1, 132, 133, -1, -1, -1, -1, 138, + 139, 140, -1, -1, -1, 144, 20, 21, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 179, -1, 181, 182, - 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 201, 202, - -1, -1, 205, -1, -1, -1, -1, -1, -1, -1, - 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, - 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, - -1, -1, -1, -1, 138, 139, 140, -1, -1, -1, - 144, 114, 115, 116, 117, 118, 20, 21, 121, 122, - 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, - 133, -1, -1, -1, -1, 138, 139, 140, -1, -1, - -1, 144, -1, -1, -1, 179, -1, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 201, 202, -1, - -1, 205, -1, -1, -1, -1, 179, -1, 181, 182, - 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 201, 202, - -1, -1, 205, -1, -1, -1, -1, -1, 20, 21, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, + 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 201, 202, -1, -1, 205, 114, 115, 116, + 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, + 127, 128, 129, 130, -1, 132, 133, -1, -1, -1, + -1, 138, 139, 140, -1, -1, -1, 144, 20, 21, 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, -1, -1, -1, -1, 138, 139, 140, -1, -1, -1, - 144, 20, 21, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 144, -1, 179, -1, 181, 182, 183, 184, 185, 186, + 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 201, 202, -1, -1, 205, -1, -1, -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 201, 202, -1, - -1, 205, 114, 115, 116, 117, 118, -1, -1, 121, + -1, 205, 114, 115, 116, 117, 118, 20, 21, 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, -1, -1, -1, -1, 138, 139, 140, -1, - -1, -1, 144, 20, 21, 114, 115, 116, 117, 118, - -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, - 129, 130, -1, 132, 133, -1, -1, -1, -1, 138, - 139, 140, -1, -1, -1, 144, -1, 179, -1, 181, + -1, -1, 144, -1, -1, -1, -1, -1, 20, 21, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 201, 202, -1, -1, 205, -1, -1, -1, -1, -1, -1, - 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 201, 202, -1, -1, 205, 114, 115, 116, - 117, 118, 20, 21, 121, 122, 123, 124, -1, 126, - 127, 128, 129, 130, -1, 132, 133, -1, -1, -1, - -1, 138, 139, 140, -1, -1, -1, 144, -1, -1, - -1, -1, -1, 20, 21, -1, -1, -1, -1, -1, + -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, + 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, + 133, -1, -1, -1, -1, 138, 139, 140, -1, -1, + -1, 144, 114, 115, 116, 117, 118, 20, 21, 121, + 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, + 132, 133, -1, -1, -1, -1, 138, 139, 140, -1, + -1, -1, 144, -1, -1, -1, 179, -1, 181, 182, + 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 201, 202, + -1, -1, 205, -1, -1, -1, -1, 179, -1, 181, + 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 201, + 202, -1, -1, 205, -1, -1, -1, -1, -1, 20, + 21, 114, 115, 116, 117, 118, -1, -1, 121, 122, + 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, + 133, -1, -1, -1, -1, 138, 139, 140, -1, -1, + -1, 144, 20, 21, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 201, 202, -1, -1, 205, -1, - -1, -1, -1, -1, -1, -1, 114, 115, 116, 117, + -1, -1, -1, -1, -1, -1, 179, -1, 181, 182, + 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 201, 202, + -1, -1, 205, 114, 115, 116, 117, 118, -1, -1, + 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, + -1, 132, 133, -1, -1, -1, -1, 138, 139, 140, + -1, -1, -1, 144, 20, 21, 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, -1, -1, -1, -1, - 138, 139, 140, -1, -1, -1, 144, 114, 115, 116, - 117, 118, 20, 21, 121, 122, 123, 124, -1, 126, - 127, 128, 129, 130, -1, 132, 133, -1, -1, -1, - -1, 138, 139, 140, -1, -1, -1, 144, -1, -1, + 138, 139, 140, -1, -1, -1, 144, -1, 179, -1, + 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 201, 202, -1, -1, 205, -1, -1, -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 201, 202, -1, -1, 205, -1, -1, + -1, -1, -1, 201, 202, -1, -1, 205, 114, 115, + 116, 117, 118, 20, 21, 121, 122, 123, 124, -1, + 126, 127, 128, 129, 130, -1, 132, 133, -1, -1, + -1, -1, 138, 139, 140, -1, -1, -1, 144, -1, + -1, -1, -1, -1, 20, 21, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 179, -1, 181, 182, 183, 184, 185, + 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 201, 202, -1, -1, 205, + -1, -1, -1, -1, -1, -1, -1, 114, 115, 116, + 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, + 127, 128, 129, 130, -1, 132, 133, -1, -1, -1, + -1, 138, 139, 140, -1, -1, -1, 144, 114, 115, + 116, 117, 118, 20, 21, 121, 122, 123, 124, -1, + 126, 127, 128, 129, 130, -1, 132, 133, -1, -1, + -1, -1, 138, 139, 140, -1, -1, -1, 144, -1, -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 201, 202, -1, -1, 205, -1, - -1, -1, -1, -1, 20, 21, 114, 115, 116, 117, + -1, -1, -1, 179, -1, 181, 182, 183, 184, 185, + 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 201, 202, -1, -1, 205, + -1, -1, -1, -1, -1, 20, 21, 114, 115, 116, + 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, + 127, 128, 129, 130, -1, 132, 133, -1, -1, -1, + -1, 138, 139, 140, -1, -1, -1, 144, 20, 21, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, + 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 201, 202, -1, -1, 205, 114, + 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, + -1, 126, 127, 128, 129, 130, -1, 132, 133, -1, + -1, -1, -1, 138, 139, 140, -1, -1, -1, 144, + 20, 21, 114, 115, 116, 117, 118, -1, -1, 121, + 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, + 132, 133, -1, -1, -1, -1, 138, 139, 140, -1, + -1, -1, 144, -1, 179, -1, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 201, 202, -1, -1, + 205, -1, -1, -1, -1, -1, -1, 179, -1, 181, + 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 201, + 202, -1, -1, 205, 114, 115, 116, 117, 118, 20, + 21, 121, 122, 123, 124, -1, 126, 127, 128, 129, + 130, -1, 132, 133, -1, -1, -1, -1, 138, 139, + 140, -1, -1, -1, 144, -1, -1, -1, -1, -1, + 20, 21, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 179, + -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 201, 202, -1, -1, 205, -1, -1, -1, -1, + -1, -1, -1, 114, 115, 116, 117, 118, -1, -1, + 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, + -1, 132, 133, -1, -1, -1, -1, 138, 139, 140, + -1, -1, -1, 144, 114, 115, 116, 117, 118, 20, + 21, 121, 122, 123, 124, -1, 126, 127, 128, 129, + 130, -1, 132, 133, -1, -1, -1, -1, 138, 139, + 140, -1, -1, -1, 144, -1, -1, -1, 179, -1, + 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 201, 202, -1, -1, 205, -1, -1, -1, -1, 179, + -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 201, 202, -1, -1, 205, -1, -1, -1, -1, + -1, 20, 21, 114, 115, 116, 117, 118, -1, -1, + 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, + -1, 132, 133, -1, -1, -1, -1, 138, 139, 140, + -1, -1, -1, 144, 20, 21, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 179, -1, + 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 201, 202, -1, -1, 205, 114, 115, 116, 117, 118, + -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, + 129, 130, -1, 132, 133, -1, -1, -1, -1, 138, + 139, 140, -1, -1, -1, 144, 20, 21, 114, 115, + 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, + 126, 127, 128, 129, 130, -1, 132, 133, -1, -1, + -1, -1, 138, 139, 140, -1, -1, -1, 144, -1, + 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, + 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 201, 202, -1, -1, 205, -1, -1, -1, + -1, -1, -1, 179, -1, 181, 182, 183, 184, 185, + 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 201, 202, -1, -1, 205, + 114, 115, 116, 117, 118, 20, 21, 121, 122, 123, + 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, + -1, -1, -1, -1, 138, 139, 140, -1, -1, -1, + 144, -1, -1, -1, -1, -1, 20, 21, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 179, -1, 181, 182, 183, + 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 201, 202, -1, + -1, 205, -1, -1, -1, -1, -1, -1, -1, 114, + 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, + -1, 126, 127, 128, 129, 130, -1, 132, 133, -1, + -1, -1, -1, 138, 139, 140, -1, -1, -1, 144, + 114, 115, 116, 117, 118, 20, 21, 121, 122, 123, + 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, + -1, -1, -1, -1, 138, 139, 140, -1, -1, -1, + 144, -1, -1, -1, 179, -1, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 201, 202, -1, -1, + 205, -1, -1, -1, -1, 179, -1, 181, 182, 183, + 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 201, 202, -1, + -1, 205, -1, -1, -1, -1, -1, 20, 21, 114, + 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, + -1, 126, 127, 128, 129, 130, -1, 132, 133, -1, + -1, -1, -1, 138, 139, 140, -1, -1, -1, 144, + 20, 21, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 201, 202, -1, -1, + 205, 114, 115, 116, 117, 118, -1, -1, 121, 122, + 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, + 133, -1, -1, -1, -1, 138, 139, 140, -1, -1, + -1, 144, 20, 21, 114, 115, 116, 117, 118, -1, + -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, + 130, -1, 132, 133, -1, -1, -1, -1, 138, 139, + 140, -1, -1, -1, 144, -1, 179, -1, 181, 182, + 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 201, 202, + 203, -1, -1, -1, -1, -1, -1, -1, -1, 179, + -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 201, 202, 203, 20, 21, 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, -1, -1, -1, -1, 138, 139, 140, -1, -1, -1, 144, 20, 21, -1, @@ -3464,7 +3570,7 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 201, 202, -1, -1, 205, 114, 115, + -1, -1, -1, 201, 202, 203, -1, -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, -1, -1, -1, -1, 138, 139, 140, -1, -1, -1, 144, 20, @@ -3473,268 +3579,153 @@ static const yytype_int16 yycheck[] = 133, -1, -1, -1, -1, 138, 139, 140, -1, -1, -1, 144, -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 201, 202, -1, -1, 205, + -1, -1, -1, -1, -1, 201, 202, 203, -1, -1, -1, -1, -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 201, 202, - -1, -1, 205, 114, 115, 116, 117, 118, 20, 21, + 203, -1, -1, 114, 115, 116, 117, 118, 20, 21, 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, -1, -1, -1, -1, 138, 139, 140, - -1, -1, -1, 144, -1, -1, -1, -1, -1, 20, - 21, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 179, -1, - 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 201, 202, -1, -1, 205, -1, -1, -1, -1, -1, - -1, -1, 114, 115, 116, 117, 118, -1, -1, 121, - 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, - 132, 133, -1, -1, -1, -1, 138, 139, 140, -1, - -1, -1, 144, 114, 115, 116, 117, 118, 20, 21, - 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, - -1, 132, 133, -1, -1, -1, -1, 138, 139, 140, - -1, -1, -1, 144, -1, -1, -1, 179, -1, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 201, - 202, -1, -1, 205, -1, -1, -1, -1, 179, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 201, 202, -1, -1, 205, -1, -1, -1, -1, -1, - 20, 21, 114, 115, 116, 117, 118, -1, -1, 121, - 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, - 132, 133, -1, -1, -1, -1, 138, 139, 140, -1, - -1, -1, 144, 20, 21, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 179, -1, 181, + 201, 202, 203, -1, 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, 20, 21, 138, 139, 140, 141, + 142, 143, 144, -1, -1, -1, -1, -1, -1, -1, + -1, 37, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 20, 21, -1, -1, 171, + -1, -1, -1, -1, -1, -1, 178, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 201, - 202, -1, -1, 205, 114, 115, 116, 117, 118, -1, - -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, - 130, -1, 132, 133, -1, -1, -1, -1, 138, 139, - 140, -1, -1, -1, 144, 20, 21, 114, 115, 116, - 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, - 127, 128, 129, 130, -1, 132, 133, -1, -1, -1, - -1, 138, 139, 140, -1, -1, -1, 144, -1, 179, - -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, - 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 201, 202, -1, -1, 205, -1, -1, -1, -1, - -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 201, 202, -1, -1, 205, 114, - 115, 116, 117, 118, 20, 21, 121, 122, 123, 124, - -1, 126, 127, 128, 129, 130, -1, 132, 133, -1, - -1, -1, -1, 138, 139, 140, -1, -1, -1, 144, - -1, -1, -1, -1, -1, 20, 21, -1, -1, -1, + 202, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 201, 202, -1, -1, - 205, -1, -1, -1, -1, -1, -1, -1, 114, 115, - 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, - 126, 127, 128, 129, 130, -1, 132, 133, -1, -1, - -1, -1, 138, 139, 140, -1, -1, -1, 144, 114, + 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, + 116, 117, 118, 119, 120, 121, 122, 123, -1, -1, + 126, 127, 128, -1, -1, 131, 132, 133, 134, 135, + -1, -1, 138, 139, 140, 141, 142, 143, 144, 114, 115, 116, 117, 118, 20, 21, 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, -1, - -1, -1, -1, 138, 139, 140, -1, -1, -1, 144, + -1, 136, -1, 138, 139, 140, -1, -1, -1, 144, -1, -1, -1, 179, -1, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 201, 202, -1, -1, 205, + 186, 187, 188, 189, 190, -1, -1, 193, 194, -1, + -1, -1, -1, -1, -1, 201, 202, -1, -1, -1, -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 201, 202, -1, -1, - 205, -1, -1, -1, -1, -1, 20, 21, 114, 115, + -1, -1, -1, 20, 21, -1, -1, -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, -1, -1, -1, -1, 138, 139, 140, -1, -1, -1, 144, 20, 21, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 201, 202, -1, -1, 205, - 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, - 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, - -1, -1, -1, -1, 138, 139, 140, -1, -1, -1, - 144, 20, 21, 114, 115, 116, 117, 118, -1, -1, - 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, - -1, 132, 133, -1, -1, -1, -1, 138, 139, 140, - -1, -1, -1, 144, -1, 179, -1, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 201, 202, 203, - -1, -1, -1, -1, -1, -1, -1, -1, 179, -1, - 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 201, 202, 203, 20, 21, 114, 115, 116, 117, 118, - -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, - 129, 130, -1, 132, 133, -1, -1, -1, -1, 138, - 139, 140, -1, -1, -1, 144, 20, 21, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 201, 202, 203, -1, -1, 114, 115, 116, + -1, -1, -1, -1, -1, 201, 202, 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, -1, -1, -1, -1, 138, 139, 140, -1, -1, -1, 144, 20, 21, - 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, - 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, - -1, -1, -1, -1, 138, 139, 140, -1, -1, -1, - 144, -1, 179, -1, 181, 182, 183, 184, 185, 186, + -1, -1, -1, 114, 115, 116, 117, 118, -1, -1, + 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, + -1, 132, 133, -1, 171, -1, -1, 138, 139, 140, + -1, -1, 179, 144, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 201, 202, 203, -1, -1, -1, - -1, -1, -1, -1, -1, 179, -1, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 201, 202, 203, - -1, -1, 114, 115, 116, 117, 118, 20, 21, 121, + -1, -1, -1, -1, 201, 202, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 179, 180, + 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, + 20, 21, -1, -1, -1, -1, -1, -1, -1, -1, + 201, 202, 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, - 132, 133, -1, -1, -1, -1, 138, 139, 140, -1, + 132, 133, 20, 21, -1, -1, 138, 139, 140, -1, -1, -1, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 171, -1, -1, -1, -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 201, - 202, 203, -1, 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, 20, 21, 138, 139, 140, 141, 142, - 143, 144, -1, -1, -1, -1, -1, -1, -1, -1, - 37, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 20, 21, -1, -1, 171, -1, - -1, -1, -1, -1, -1, 178, 179, -1, 181, 182, - 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 201, 202, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, -1, -1, 126, - 127, 128, -1, -1, 131, 132, 133, 134, 135, -1, - -1, 138, 139, 140, 141, 142, 143, 144, 114, 115, - 116, 117, 118, 20, 21, 121, 122, 123, 124, -1, + -1, -1, -1, -1, 114, 115, 116, 117, 118, 201, + 202, 121, 122, 123, 124, -1, 126, 127, 128, 129, + 130, -1, 132, 133, 20, 21, -1, -1, 138, 139, + 140, -1, -1, -1, 144, -1, 114, 115, 116, 117, + 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, + 128, 129, 130, -1, 132, 133, -1, 167, 20, 21, + 138, 139, 140, -1, -1, -1, 144, -1, -1, 179, + -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 201, 202, 171, -1, -1, -1, -1, -1, -1, + -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, + 188, 189, 190, -1, -1, -1, -1, -1, 114, 115, + 116, 117, 118, 201, 202, 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, -1, -1, - 136, -1, 138, 139, 140, -1, -1, -1, 144, -1, - -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, -1, -1, 193, 194, -1, -1, - -1, -1, -1, -1, 201, 202, -1, -1, -1, -1, + 20, 21, 138, 139, 140, -1, -1, -1, 144, -1, + -1, -1, 114, 115, 116, 117, 118, -1, -1, 121, + 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, + 132, 133, 20, 21, -1, 171, 138, 139, 140, -1, + -1, -1, 144, 179, -1, 181, 182, 183, 184, 185, + 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 201, 202, -1, -1, 171, + -1, -1, -1, -1, -1, -1, -1, 179, -1, 181, + 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, + -1, -1, -1, -1, 114, 115, 116, 117, 118, 201, + 202, 121, 122, 123, 124, -1, 126, 127, 128, 129, + 130, -1, 132, 133, 20, 21, -1, -1, 138, 139, + 140, -1, -1, -1, 144, -1, 114, 115, 116, 117, + 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, + 128, 129, 130, -1, 132, 133, 20, 21, -1, -1, + 138, 139, 140, -1, -1, -1, 144, -1, -1, 179, + -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 201, 202, -1, -1, -1, -1, -1, -1, -1, + -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, + 188, 189, 190, -1, -1, -1, -1, -1, 114, 115, + 116, 117, 118, 201, 202, 121, 122, 123, 124, -1, + 126, 127, 128, 129, 130, -1, 132, 133, 20, 21, + -1, -1, 138, 139, 140, -1, -1, -1, -1, -1, + 114, 115, 116, 117, 118, -1, -1, 121, 122, 123, + 124, -1, 126, 127, 128, 129, 130, -1, 132, 133, + 20, 21, -1, -1, 138, -1, 140, -1, -1, -1, -1, -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 201, 202, -1, -1, -1, - -1, -1, 20, 21, -1, -1, -1, 114, 115, 116, - 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, - 127, 128, 129, 130, -1, 132, 133, -1, -1, -1, - -1, 138, 139, 140, -1, -1, -1, 144, 20, 21, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 201, 202, 114, 115, 116, 117, - 118, -1, -1, 121, 122, 123, 124, -1, 126, 127, - 128, 129, 130, -1, 132, 133, -1, -1, -1, -1, - 138, 139, 140, -1, -1, -1, 144, 20, 21, -1, - -1, -1, 114, 115, 116, 117, 118, -1, -1, 121, + -1, -1, -1, -1, -1, -1, -1, 181, 182, 183, + 184, 185, 186, 187, 188, 189, 190, -1, -1, -1, + -1, -1, 114, 115, 116, 117, 118, 201, 202, 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, -1, - 132, 133, -1, 171, -1, -1, 138, 139, 140, -1, - -1, 179, 144, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 201, 202, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, 20, - 21, -1, -1, -1, -1, -1, -1, -1, -1, 201, - 202, 114, 115, 116, 117, 118, -1, -1, 121, 122, - 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, - 133, 20, 21, -1, -1, 138, 139, 140, -1, -1, - -1, 144, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 171, -1, - -1, -1, -1, -1, -1, -1, 179, -1, 181, 182, - 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, - -1, -1, -1, 114, 115, 116, 117, 118, 201, 202, - 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, - -1, 132, 133, 20, 21, -1, -1, 138, 139, 140, - -1, -1, -1, 144, -1, 114, 115, 116, 117, 118, - -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, - 129, 130, -1, 132, 133, -1, 167, 20, 21, 138, - 139, 140, -1, -1, -1, 144, -1, -1, 179, -1, - 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 201, 202, 171, -1, -1, -1, -1, -1, -1, -1, - 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, -1, -1, -1, -1, -1, 114, 115, 116, - 117, 118, 201, 202, 121, 122, 123, 124, -1, 126, - 127, 128, 129, 130, -1, 132, 133, -1, -1, 20, - 21, 138, 139, 140, -1, -1, -1, 144, -1, -1, - -1, 114, 115, 116, 117, 118, -1, -1, 121, 122, - 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, - 133, 20, 21, -1, 171, 138, 139, 140, -1, -1, - -1, 144, 179, -1, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 201, 202, -1, -1, 171, -1, - -1, -1, -1, -1, -1, -1, 179, -1, 181, 182, - 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, - -1, -1, -1, 114, 115, 116, 117, 118, 201, 202, - 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, - -1, 132, 133, 20, 21, -1, -1, 138, 139, 140, - -1, -1, -1, 144, -1, 114, 115, 116, 117, 118, - -1, -1, 121, 122, 123, 124, -1, 126, 127, 128, - 129, 130, -1, 132, 133, 20, 21, -1, -1, 138, - 139, 140, -1, -1, -1, 144, -1, -1, 179, -1, - 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, + 132, 133, 20, 21, -1, -1, 138, -1, -1, -1, + -1, -1, -1, -1, 114, 115, 116, 117, 118, -1, + -1, 121, 122, 123, 124, -1, 126, 127, 128, 129, + 130, -1, 132, 133, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 181, + 182, 183, 184, 185, 186, 187, 188, 189, 190, -1, + -1, -1, -1, -1, 18, -1, -1, -1, -1, 201, + 202, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 190, -1, -1, -1, -1, -1, 114, 115, 116, 117, + 118, 201, 202, 121, 122, 123, 124, -1, 126, 127, + 128, 129, 130, -1, 132, 133, 70, 71, 72, -1, + 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, + 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, + 94, -1, -1, 97, 98, 99, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 201, 202, -1, -1, -1, -1, -1, -1, -1, -1, - 179, -1, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, -1, -1, -1, -1, -1, 114, 115, 116, - 117, 118, 201, 202, 121, 122, 123, 124, -1, 126, - 127, 128, 129, 130, -1, 132, 133, 20, 21, -1, - -1, 138, 139, 140, -1, -1, -1, -1, -1, 114, - 115, 116, 117, 118, -1, -1, 121, 122, 123, 124, - -1, 126, 127, 128, 129, 130, -1, 132, 133, 20, - 21, -1, -1, 138, -1, -1, -1, -1, -1, -1, - -1, -1, 179, -1, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 201, 202, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, - -1, 114, 115, 116, 117, 118, 201, 202, 121, 122, - 123, 124, -1, 126, 127, 128, 129, 130, -1, 132, - 133, 20, 21, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 114, 115, 116, 117, 118, -1, -1, - 121, 122, 123, 124, -1, 126, 127, 128, 129, 130, - -1, 132, 133, 20, 21, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 181, 182, - 183, 184, 185, 186, 187, 188, 189, 190, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 201, 202, + -1, -1, -1, -1, -1, 183, 184, 185, 186, 187, + 188, 189, 190, 34, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 201, 202, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 152, -1, + -1, -1, -1, -1, -1, -1, -1, 161, -1, 70, + -1, 72, -1, 74, 75, 76, 77, 78, -1, 80, + 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, + -1, 92, 93, 94, -1, -1, 97, 98, 99, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 182, 183, 184, 185, 186, 187, 188, 189, 190, - -1, -1, -1, -1, -1, 114, 115, 116, 117, 118, - 201, 202, 121, 122, 123, 124, -1, 126, 127, 128, - 129, 130, -1, 132, 133, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 114, 115, 116, - 117, 118, -1, -1, 121, 122, 123, 124, -1, 126, - 127, 128, 129, 130, -1, 132, 133, -1, -1, -1, + -1, -1, -1, -1, -1, 116, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 183, 184, 185, 186, 187, 188, - 189, 190, 18, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 201, 202, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 184, 185, 186, - 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 201, 202, -1, -1, -1, 34, - -1, -1, -1, -1, 70, 71, 72, -1, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, - 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, - -1, 97, 98, 99, 100, 70, -1, 72, -1, 74, - 75, 76, 77, 78, -1, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, - -1, -1, 97, 98, 99, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 116, 117, -1, -1, -1, 152, -1, -1, -1, - -1, -1, -1, -1, -1, 161, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 161 + 161 }; /* YYSTOS[STATE-NUM] -- The symbol kind of the accessing symbol of @@ -3743,143 +3734,143 @@ static const yytype_int16 yystos[] = { 0, 210, 0, 6, 29, 31, 33, 39, 49, 55, 79, 101, 102, 171, 190, 202, 211, 214, 220, 222, - 223, 227, 253, 257, 281, 355, 362, 366, 375, 420, - 424, 428, 18, 19, 161, 245, 246, 247, 154, 228, - 229, 161, 190, 224, 225, 56, 62, 359, 360, 161, - 206, 213, 359, 359, 359, 137, 161, 268, 33, 62, + 223, 227, 253, 257, 280, 354, 361, 365, 374, 419, + 423, 427, 18, 19, 161, 245, 246, 247, 154, 228, + 229, 161, 190, 224, 225, 56, 62, 358, 359, 161, + 206, 213, 358, 358, 358, 137, 161, 268, 33, 62, 130, 194, 204, 249, 250, 251, 252, 268, 171, 4, - 5, 7, 35, 372, 61, 353, 178, 177, 180, 177, - 224, 21, 56, 189, 201, 226, 161, 171, 353, 161, + 5, 7, 35, 371, 61, 352, 178, 177, 180, 177, + 224, 21, 56, 189, 201, 226, 161, 171, 352, 161, 161, 161, 161, 137, 221, 251, 251, 251, 204, 138, 139, 140, 177, 203, 56, 62, 258, 260, 56, 62, - 363, 56, 62, 373, 56, 62, 354, 14, 15, 154, + 362, 56, 62, 372, 56, 62, 353, 14, 15, 154, 159, 161, 162, 204, 216, 246, 154, 229, 161, 161, - 161, 361, 56, 62, 212, 429, 421, 425, 161, 163, - 219, 205, 247, 251, 251, 251, 251, 261, 161, 364, - 376, 169, 356, 163, 164, 215, 14, 15, 154, 159, + 161, 360, 56, 62, 212, 428, 420, 424, 161, 163, + 219, 205, 247, 251, 251, 251, 251, 261, 161, 363, + 375, 169, 355, 163, 164, 215, 14, 15, 154, 159, 161, 216, 243, 244, 226, 178, 169, 169, 169, 163, 205, 34, 70, 72, 74, 75, 76, 77, 78, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 92, 93, 94, 97, 98, 99, 100, 116, 117, 161, - 256, 259, 180, 365, 105, 370, 371, 351, 207, 248, - 327, 163, 164, 165, 177, 205, 18, 24, 30, 40, + 256, 259, 180, 364, 105, 369, 370, 350, 207, 248, + 326, 163, 164, 165, 177, 205, 18, 24, 30, 40, 48, 63, 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, 150, 206, 268, 379, 381, - 382, 385, 390, 391, 419, 430, 422, 426, 20, 21, + 98, 99, 100, 101, 102, 150, 206, 268, 378, 380, + 381, 384, 389, 390, 418, 429, 421, 425, 20, 21, 37, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 126, 127, 128, 131, 132, 133, 134, 135, 138, 139, 140, 141, 142, 143, 144, 179, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 193, 194, 201, 202, 34, 34, 204, 254, 169, 262, 74, 78, 92, 93, 97, - 98, 99, 100, 380, 169, 161, 377, 170, 352, 246, - 207, 146, 161, 349, 350, 243, 184, 184, 184, 204, + 98, 99, 100, 379, 169, 161, 376, 170, 351, 246, + 207, 146, 161, 348, 349, 243, 184, 184, 184, 204, 184, 184, 204, 184, 184, 184, 184, 184, 184, 204, 268, 32, 59, 60, 122, 126, 183, 186, 188, 202, - 208, 389, 181, 161, 384, 341, 344, 161, 161, 161, - 203, 21, 161, 203, 149, 205, 327, 337, 338, 180, - 255, 265, 367, 180, 369, 169, 374, 327, 246, 204, - 42, 177, 180, 183, 348, 392, 397, 399, 4, 5, + 208, 388, 181, 161, 383, 340, 343, 161, 161, 161, + 203, 21, 161, 203, 149, 205, 326, 336, 337, 180, + 255, 265, 366, 180, 368, 169, 373, 326, 246, 204, + 42, 177, 180, 183, 347, 391, 396, 398, 4, 5, 14, 15, 16, 17, 18, 24, 26, 30, 38, 44, 47, 50, 54, 67, 68, 79, 101, 102, 103, 116, 117, 145, 146, 147, 148, 149, 151, 153, 154, 155, 156, 157, 158, 159, 160, 162, 169, 186, 187, 188, 193, 194, 202, 204, 206, 207, 218, 220, 263, 268, - 273, 286, 293, 296, 299, 303, 305, 307, 308, 310, - 315, 318, 319, 326, 379, 432, 437, 447, 450, 462, - 465, 401, 395, 161, 386, 403, 405, 407, 409, 411, - 413, 415, 417, 319, 184, 204, 32, 183, 32, 183, - 202, 208, 203, 319, 202, 208, 390, 177, 464, 161, - 171, 339, 419, 423, 161, 171, 342, 427, 161, 131, - 204, 6, 49, 280, 171, 205, 419, 1, 8, 9, + 273, 285, 292, 295, 298, 302, 304, 306, 307, 309, + 314, 317, 318, 325, 378, 431, 436, 446, 449, 461, + 464, 400, 394, 161, 385, 402, 404, 406, 408, 410, + 412, 414, 416, 318, 184, 204, 32, 183, 32, 183, + 202, 208, 203, 318, 202, 208, 389, 177, 463, 161, + 171, 338, 418, 422, 161, 171, 341, 426, 161, 131, + 204, 6, 49, 279, 171, 205, 418, 1, 8, 9, 10, 12, 25, 27, 28, 37, 41, 43, 51, 53, 57, 58, 64, 104, 170, 171, 230, 231, 234, 236, 237, 238, 239, 240, 241, 242, 264, 269, 274, 275, - 276, 277, 278, 279, 281, 285, 306, 319, 161, 357, - 358, 268, 333, 350, 319, 161, 161, 390, 125, 131, - 178, 347, 419, 419, 388, 419, 184, 184, 184, 270, - 381, 432, 204, 184, 4, 101, 102, 184, 204, 184, - 204, 204, 184, 184, 204, 184, 184, 204, 184, 184, - 204, 184, 184, 319, 319, 204, 204, 204, 204, 204, - 204, 217, 12, 319, 446, 461, 319, 319, 319, 319, - 319, 12, 48, 297, 319, 297, 207, 204, 253, 169, - 207, 299, 304, 20, 21, 114, 115, 116, 117, 118, - 121, 122, 123, 124, 126, 127, 128, 129, 130, 132, - 133, 138, 139, 140, 144, 179, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 201, 202, 205, 204, - 419, 419, 205, 161, 383, 419, 254, 419, 254, 419, - 254, 339, 340, 342, 343, 205, 394, 266, 297, 203, - 203, 203, 319, 161, 431, 180, 171, 170, 180, 171, - 170, 319, 146, 161, 346, 378, 337, 319, 204, 125, - 319, 262, 60, 319, 319, 161, 171, 154, 57, 319, - 262, 125, 319, 36, 171, 171, 204, 9, 171, 171, - 171, 171, 171, 65, 282, 171, 106, 107, 108, 109, + 276, 277, 278, 280, 284, 305, 318, 161, 356, 357, + 268, 332, 349, 318, 161, 161, 389, 125, 131, 178, + 346, 418, 418, 387, 418, 184, 184, 184, 270, 380, + 431, 204, 184, 4, 101, 102, 184, 204, 184, 204, + 204, 184, 184, 204, 184, 184, 204, 184, 184, 204, + 184, 184, 318, 318, 204, 204, 204, 204, 204, 204, + 217, 12, 318, 445, 460, 318, 318, 318, 318, 318, + 12, 48, 296, 318, 296, 207, 204, 253, 169, 207, + 298, 303, 20, 21, 114, 115, 116, 117, 118, 121, + 122, 123, 124, 126, 127, 128, 129, 130, 132, 133, + 138, 139, 140, 144, 179, 181, 182, 183, 184, 185, + 186, 187, 188, 189, 190, 201, 202, 205, 204, 418, + 418, 205, 161, 382, 418, 254, 418, 254, 418, 254, + 338, 339, 341, 342, 205, 393, 266, 296, 203, 203, + 203, 318, 161, 430, 180, 171, 170, 180, 171, 170, + 318, 146, 161, 345, 377, 336, 318, 204, 125, 318, + 262, 60, 318, 318, 161, 171, 154, 57, 318, 262, + 125, 318, 36, 171, 171, 204, 9, 171, 171, 171, + 171, 171, 171, 65, 281, 171, 106, 107, 108, 109, 110, 111, 112, 113, 119, 120, 125, 131, 134, 135, - 141, 142, 143, 178, 178, 177, 464, 170, 253, 334, - 205, 42, 171, 347, 319, 185, 185, 185, 171, 438, - 440, 271, 204, 204, 268, 294, 184, 184, 184, 457, - 297, 390, 461, 319, 287, 289, 319, 291, 459, 297, - 444, 448, 297, 442, 390, 319, 319, 319, 319, 319, - 319, 165, 166, 215, 378, 136, 177, 464, 378, 12, - 177, 464, 464, 146, 151, 184, 268, 309, 152, 161, - 202, 205, 297, 433, 434, 202, 302, 265, 207, 253, - 18, 152, 161, 379, 18, 152, 161, 379, 319, 319, - 319, 319, 319, 319, 161, 319, 152, 161, 319, 319, - 319, 379, 319, 319, 319, 319, 319, 319, 21, 319, - 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, - 127, 128, 152, 161, 201, 202, 316, 319, 205, 297, + 141, 142, 143, 178, 178, 177, 463, 170, 253, 333, + 205, 42, 171, 346, 318, 185, 185, 185, 171, 437, + 439, 271, 204, 204, 268, 293, 184, 184, 184, 456, + 296, 389, 460, 318, 286, 288, 318, 290, 458, 296, + 443, 447, 296, 441, 389, 318, 318, 318, 318, 318, + 318, 165, 166, 215, 377, 136, 177, 463, 377, 12, + 177, 463, 463, 146, 151, 184, 268, 308, 152, 161, + 202, 205, 296, 432, 433, 202, 301, 265, 207, 253, + 18, 152, 161, 378, 18, 152, 161, 378, 318, 318, + 318, 318, 318, 318, 161, 318, 152, 161, 318, 318, + 318, 378, 318, 318, 318, 318, 318, 318, 21, 318, + 318, 318, 318, 318, 318, 318, 318, 318, 318, 318, + 127, 128, 152, 161, 201, 202, 315, 318, 205, 296, 185, 185, 171, 185, 185, 255, 185, 255, 185, 255, - 171, 185, 171, 185, 267, 419, 205, 177, 203, 170, - 419, 419, 205, 204, 42, 125, 177, 178, 180, 183, - 345, 262, 378, 319, 13, 319, 262, 178, 180, 154, - 319, 169, 319, 204, 204, 284, 350, 319, 319, 319, - 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, - 319, 319, 319, 319, 319, 319, 357, 368, 7, 327, - 332, 161, 319, 171, 393, 398, 400, 419, 390, 390, - 419, 69, 436, 266, 184, 319, 419, 451, 453, 455, - 390, 464, 171, 185, 464, 205, 390, 390, 205, 390, - 390, 464, 390, 390, 464, 390, 185, 205, 205, 205, - 205, 205, 205, 319, 19, 319, 446, 170, 19, 378, - 319, 203, 205, 204, 204, 311, 313, 204, 131, 345, - 433, 177, 205, 177, 205, 202, 254, 170, 302, 184, - 204, 184, 204, 204, 204, 203, 18, 152, 161, 379, - 180, 152, 161, 319, 204, 204, 152, 161, 319, 1, - 203, 205, 402, 396, 161, 387, 404, 185, 408, 185, - 412, 185, 339, 416, 342, 418, 171, 185, 319, 161, - 161, 419, 319, 19, 262, 319, 265, 205, 319, 161, - 283, 170, 56, 62, 330, 66, 331, 171, 171, 185, - 185, 185, 161, 205, 434, 205, 161, 205, 185, 390, - 390, 390, 185, 205, 390, 204, 205, 185, 185, 185, - 185, 205, 185, 185, 205, 185, 302, 204, 167, 297, - 297, 19, 319, 319, 390, 254, 319, 319, 319, 203, - 202, 152, 161, 125, 131, 178, 183, 300, 301, 255, - 254, 320, 319, 322, 319, 205, 297, 319, 184, 204, - 319, 204, 203, 319, 205, 297, 204, 203, 317, 406, - 410, 414, 419, 204, 205, 42, 345, 297, 170, 262, - 205, 177, 205, 46, 331, 45, 105, 328, 439, 441, - 272, 205, 171, 185, 295, 185, 185, 185, 458, 185, - 461, 288, 290, 292, 460, 445, 449, 443, 204, 205, - 297, 171, 171, 297, 205, 205, 185, 255, 205, 205, - 433, 204, 131, 345, 161, 161, 161, 161, 177, 203, - 136, 262, 298, 255, 390, 205, 419, 205, 205, 205, - 324, 319, 319, 205, 205, 319, 266, 161, 319, 205, - 11, 22, 23, 232, 233, 11, 235, 161, 180, 348, - 32, 329, 328, 330, 204, 204, 161, 319, 452, 454, - 456, 204, 204, 464, 319, 319, 319, 204, 436, 204, - 204, 205, 319, 205, 446, 319, 171, 312, 185, 131, - 345, 203, 319, 319, 319, 300, 203, 125, 319, 262, - 185, 185, 419, 205, 205, 205, 205, 262, 262, 204, - 236, 274, 275, 276, 277, 319, 171, 390, 347, 335, - 329, 346, 436, 436, 185, 205, 204, 204, 204, 297, - 461, 205, 297, 436, 433, 435, 205, 171, 463, 463, - 319, 309, 314, 319, 319, 205, 205, 319, 321, 323, - 185, 319, 347, 319, 259, 336, 435, 435, 319, 436, - 436, 435, 464, 464, 464, 435, 171, 205, 52, 170, - 203, 463, 309, 131, 345, 325, 205, 319, 171, 171, - 259, 205, 205, 205, 435, 435, 205, 205, 205, 205, - 205, 433, 319, 203, 319, 319, 262, 171, 262, 205, + 171, 185, 171, 185, 267, 418, 205, 177, 203, 170, + 418, 418, 205, 204, 42, 125, 177, 178, 180, 183, + 344, 262, 377, 318, 13, 318, 262, 178, 180, 154, + 318, 169, 318, 204, 204, 283, 349, 318, 318, 318, + 318, 318, 318, 318, 318, 318, 318, 318, 318, 318, + 318, 318, 318, 318, 318, 318, 356, 367, 7, 326, + 331, 161, 318, 171, 392, 397, 399, 418, 389, 389, + 418, 69, 435, 266, 184, 318, 418, 450, 452, 454, + 389, 463, 171, 185, 463, 205, 389, 389, 205, 389, + 389, 463, 389, 389, 463, 389, 185, 205, 205, 205, + 205, 205, 205, 318, 19, 318, 445, 170, 19, 377, + 318, 203, 205, 204, 204, 310, 312, 204, 131, 344, + 432, 177, 205, 177, 205, 202, 254, 170, 301, 184, + 204, 184, 204, 204, 204, 203, 18, 152, 161, 378, + 180, 152, 161, 318, 204, 204, 152, 161, 318, 1, + 203, 205, 401, 395, 161, 386, 403, 185, 407, 185, + 411, 185, 338, 415, 341, 417, 171, 185, 318, 161, + 161, 418, 318, 19, 262, 318, 265, 205, 318, 161, + 282, 170, 56, 62, 329, 66, 330, 171, 171, 185, + 185, 185, 161, 205, 433, 205, 161, 205, 185, 389, + 389, 389, 185, 205, 389, 204, 205, 185, 185, 185, + 185, 205, 185, 185, 205, 185, 301, 204, 167, 296, + 296, 19, 318, 318, 389, 254, 318, 318, 318, 203, + 202, 152, 161, 125, 131, 178, 183, 299, 300, 255, + 254, 319, 318, 321, 318, 205, 296, 318, 184, 204, + 318, 204, 203, 318, 205, 296, 204, 203, 316, 405, + 409, 413, 418, 204, 205, 42, 344, 296, 170, 262, + 205, 177, 205, 46, 330, 45, 105, 327, 438, 440, + 272, 205, 171, 185, 294, 185, 185, 185, 457, 185, + 460, 287, 289, 291, 459, 444, 448, 442, 204, 205, + 296, 171, 171, 296, 205, 205, 185, 255, 205, 205, + 432, 204, 131, 344, 161, 161, 161, 161, 177, 203, + 136, 262, 297, 255, 389, 205, 418, 205, 205, 205, + 323, 318, 318, 205, 205, 318, 266, 161, 318, 205, + 11, 22, 23, 232, 233, 11, 235, 161, 180, 347, + 32, 328, 327, 329, 204, 204, 161, 318, 451, 453, + 455, 204, 204, 463, 318, 318, 318, 204, 435, 204, + 204, 205, 318, 205, 445, 318, 171, 311, 185, 131, + 344, 203, 318, 318, 318, 299, 203, 125, 318, 262, + 185, 185, 418, 205, 205, 205, 205, 262, 262, 204, + 236, 274, 275, 276, 277, 318, 171, 389, 346, 334, + 328, 345, 435, 435, 185, 205, 204, 204, 204, 296, + 460, 205, 296, 435, 432, 434, 205, 171, 462, 462, + 318, 308, 313, 318, 318, 205, 205, 318, 320, 322, + 185, 318, 346, 318, 259, 335, 434, 434, 318, 435, + 435, 434, 463, 463, 463, 434, 171, 205, 52, 170, + 203, 462, 308, 131, 344, 324, 205, 318, 171, 171, + 259, 205, 205, 205, 434, 434, 205, 205, 205, 205, + 205, 432, 318, 203, 318, 318, 262, 171, 262, 205, 205, 233 }; @@ -3912,57 +3903,57 @@ static const yytype_int16 yyr1[] = 264, 264, 264, 265, 265, 265, 266, 266, 267, 267, 268, 268, 268, 269, 269, 271, 272, 270, 273, 273, 273, 273, 273, 274, 275, 276, 276, 276, 277, 277, - 278, 279, 280, 280, 280, 281, 281, 282, 282, 283, - 283, 284, 284, 285, 285, 287, 288, 286, 289, 290, - 286, 291, 292, 286, 294, 295, 293, 296, 296, 296, - 297, 297, 298, 298, 298, 299, 299, 299, 300, 300, - 300, 300, 301, 301, 302, 302, 303, 304, 304, 305, - 305, 305, 305, 305, 305, 305, 306, 306, 306, 306, - 306, 306, 306, 306, 306, 306, 306, 306, 306, 306, - 306, 306, 306, 306, 306, 307, 307, 308, 308, 309, - 309, 310, 311, 312, 310, 313, 314, 310, 315, 315, - 315, 315, 316, 317, 315, 318, 318, 318, 318, 318, - 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, - 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, - 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, - 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, - 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, - 319, 319, 319, 319, 319, 319, 320, 321, 319, 319, - 319, 319, 322, 323, 319, 319, 319, 324, 325, 319, - 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, - 319, 319, 326, 326, 326, 326, 326, 326, 326, 326, - 326, 326, 326, 326, 326, 326, 326, 326, 327, 327, - 328, 328, 328, 329, 329, 330, 330, 330, 331, 331, - 332, 333, 334, 333, 335, 333, 336, 333, 337, 337, - 338, 338, 339, 339, 340, 340, 341, 341, 341, 342, - 343, 343, 344, 344, 344, 345, 345, 346, 346, 346, - 346, 346, 347, 347, 347, 348, 348, 349, 349, 349, - 349, 349, 350, 350, 350, 351, 352, 351, 353, 353, - 354, 354, 354, 355, 356, 355, 357, 357, 358, 358, - 358, 359, 359, 359, 361, 360, 362, 363, 363, 363, - 364, 365, 365, 367, 368, 366, 369, 369, 370, 370, - 371, 372, 372, 373, 373, 373, 374, 374, 376, 377, - 375, 378, 378, 378, 378, 378, 379, 379, 379, 379, - 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, - 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, - 379, 379, 379, 380, 380, 380, 380, 380, 380, 380, - 380, 381, 382, 382, 382, 383, 383, 384, 384, 384, - 386, 387, 385, 388, 388, 389, 389, 389, 389, 390, - 390, 391, 391, 391, 391, 392, 393, 391, 391, 391, - 394, 391, 391, 391, 391, 391, 391, 391, 391, 391, - 391, 391, 391, 391, 395, 396, 391, 391, 397, 398, - 391, 399, 400, 391, 401, 402, 391, 391, 403, 404, - 391, 405, 406, 391, 391, 407, 408, 391, 409, 410, - 391, 391, 411, 412, 391, 413, 414, 391, 415, 416, - 391, 417, 418, 391, 419, 419, 419, 421, 422, 423, - 420, 425, 426, 427, 424, 429, 430, 431, 428, 432, - 432, 432, 432, 432, 433, 433, 433, 433, 433, 433, - 433, 433, 434, 435, 435, 436, 436, 438, 439, 437, - 440, 441, 437, 442, 443, 437, 444, 445, 437, 446, - 446, 447, 448, 449, 447, 450, 451, 452, 450, 453, - 454, 450, 455, 456, 450, 450, 457, 458, 450, 450, - 459, 460, 450, 461, 461, 462, 462, 462, 462, 463, - 463, 464, 464, 465, 465, 465 + 278, 279, 279, 279, 280, 280, 281, 281, 282, 282, + 283, 283, 284, 284, 286, 287, 285, 288, 289, 285, + 290, 291, 285, 293, 294, 292, 295, 295, 295, 296, + 296, 297, 297, 297, 298, 298, 298, 299, 299, 299, + 299, 300, 300, 301, 301, 302, 303, 303, 304, 304, + 304, 304, 304, 304, 304, 305, 305, 305, 305, 305, + 305, 305, 305, 305, 305, 305, 305, 305, 305, 305, + 305, 305, 305, 305, 306, 306, 307, 307, 308, 308, + 309, 310, 311, 309, 312, 313, 309, 314, 314, 314, + 314, 315, 316, 314, 317, 317, 317, 317, 317, 318, + 318, 318, 318, 318, 318, 318, 318, 318, 318, 318, + 318, 318, 318, 318, 318, 318, 318, 318, 318, 318, + 318, 318, 318, 318, 318, 318, 318, 318, 318, 318, + 318, 318, 318, 318, 318, 318, 318, 318, 318, 318, + 318, 318, 318, 318, 318, 318, 318, 318, 318, 318, + 318, 318, 318, 318, 318, 319, 320, 318, 318, 318, + 318, 321, 322, 318, 318, 318, 323, 324, 318, 318, + 318, 318, 318, 318, 318, 318, 318, 318, 318, 318, + 318, 325, 325, 325, 325, 325, 325, 325, 325, 325, + 325, 325, 325, 325, 325, 325, 325, 326, 326, 327, + 327, 327, 328, 328, 329, 329, 329, 330, 330, 331, + 332, 333, 332, 334, 332, 335, 332, 336, 336, 337, + 337, 338, 338, 339, 339, 340, 340, 340, 341, 342, + 342, 343, 343, 343, 344, 344, 345, 345, 345, 345, + 345, 346, 346, 346, 347, 347, 348, 348, 348, 348, + 348, 349, 349, 349, 350, 351, 350, 352, 352, 353, + 353, 353, 354, 355, 354, 356, 356, 357, 357, 357, + 358, 358, 358, 360, 359, 361, 362, 362, 362, 363, + 364, 364, 366, 367, 365, 368, 368, 369, 369, 370, + 371, 371, 372, 372, 372, 373, 373, 375, 376, 374, + 377, 377, 377, 377, 377, 378, 378, 378, 378, 378, + 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, + 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, + 378, 378, 379, 379, 379, 379, 379, 379, 379, 379, + 380, 381, 381, 381, 382, 382, 383, 383, 383, 385, + 386, 384, 387, 387, 388, 388, 388, 388, 389, 389, + 390, 390, 390, 390, 391, 392, 390, 390, 390, 393, + 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, + 390, 390, 390, 394, 395, 390, 390, 396, 397, 390, + 398, 399, 390, 400, 401, 390, 390, 402, 403, 390, + 404, 405, 390, 390, 406, 407, 390, 408, 409, 390, + 390, 410, 411, 390, 412, 413, 390, 414, 415, 390, + 416, 417, 390, 418, 418, 418, 420, 421, 422, 419, + 424, 425, 426, 423, 428, 429, 430, 427, 431, 431, + 431, 431, 431, 432, 432, 432, 432, 432, 432, 432, + 432, 433, 434, 434, 435, 435, 437, 438, 436, 439, + 440, 436, 441, 442, 436, 443, 444, 436, 445, 445, + 446, 447, 448, 446, 449, 450, 451, 449, 452, 453, + 449, 454, 455, 449, 449, 456, 457, 449, 449, 458, + 459, 449, 460, 460, 461, 461, 461, 461, 462, 462, + 463, 463, 464, 464, 464 }; /* YYR2[RULE-NUM] -- Number of symbols on the right-hand side of rule RULE-NUM. */ @@ -3990,61 +3981,61 @@ static const yytype_int8 yyr2[] = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 0, 1, 1, 3, 0, 4, 3, 7, 2, 1, 2, 2, 1, 1, - 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, + 1, 1, 2, 1, 2, 2, 2, 2, 1, 1, 2, 2, 2, 0, 2, 2, 0, 1, 1, 3, 1, 3, 2, 2, 3, 0, 0, 5, 2, 5, 5, 6, 2, 1, 1, 1, 2, 3, 2, 3, - 2, 4, 1, 1, 0, 1, 1, 1, 0, 1, - 3, 8, 7, 3, 3, 0, 0, 7, 0, 0, - 7, 0, 0, 7, 0, 0, 6, 5, 8, 10, - 1, 3, 1, 2, 3, 1, 1, 2, 2, 2, - 2, 2, 1, 3, 0, 5, 6, 6, 3, 1, - 1, 1, 1, 1, 1, 1, 1, 3, 3, 3, + 4, 1, 1, 0, 1, 1, 1, 0, 1, 3, + 8, 7, 3, 3, 0, 0, 7, 0, 0, 7, + 0, 0, 7, 0, 0, 6, 5, 8, 10, 1, + 3, 1, 2, 3, 1, 1, 2, 2, 2, 2, + 2, 1, 3, 0, 5, 6, 6, 3, 1, 1, + 1, 1, 1, 1, 1, 1, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 6, 8, 5, 6, 1, - 4, 3, 0, 0, 8, 0, 0, 9, 3, 4, - 5, 6, 0, 0, 5, 3, 4, 4, 3, 4, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 6, 8, 5, 6, 1, 4, + 3, 0, 0, 8, 0, 0, 9, 3, 4, 5, + 6, 0, 0, 5, 3, 4, 4, 3, 4, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, + 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, - 4, 4, 5, 4, 5, 3, 4, 1, 1, 2, - 4, 4, 7, 8, 3, 5, 0, 0, 8, 3, - 3, 3, 0, 0, 8, 3, 4, 0, 0, 9, - 4, 1, 1, 1, 1, 1, 1, 1, 3, 3, - 3, 1, 4, 4, 4, 4, 4, 1, 6, 7, - 6, 6, 7, 7, 6, 7, 6, 6, 0, 1, - 0, 1, 1, 0, 1, 0, 1, 1, 0, 1, - 5, 0, 0, 4, 0, 9, 0, 10, 3, 4, - 1, 3, 1, 3, 1, 3, 0, 2, 3, 3, - 1, 3, 0, 2, 3, 1, 1, 1, 2, 3, - 5, 3, 1, 1, 1, 0, 1, 1, 4, 3, - 3, 5, 4, 6, 5, 0, 0, 4, 0, 1, - 0, 1, 1, 6, 0, 6, 1, 3, 0, 1, - 3, 0, 1, 1, 0, 5, 3, 0, 1, 1, - 1, 0, 2, 0, 0, 11, 0, 2, 0, 1, - 3, 1, 1, 0, 1, 1, 0, 3, 0, 0, - 7, 1, 4, 3, 3, 5, 1, 1, 1, 1, + 3, 3, 3, 3, 3, 2, 2, 2, 2, 4, + 4, 5, 4, 5, 3, 4, 1, 1, 2, 4, + 4, 7, 8, 3, 5, 0, 0, 8, 3, 3, + 3, 0, 0, 8, 3, 4, 0, 0, 9, 4, + 1, 1, 1, 1, 1, 1, 1, 3, 3, 3, + 1, 4, 4, 4, 4, 4, 1, 6, 7, 6, + 6, 7, 7, 6, 7, 6, 6, 0, 1, 0, + 1, 1, 0, 1, 0, 1, 1, 0, 1, 5, + 0, 0, 4, 0, 9, 0, 10, 3, 4, 1, + 3, 1, 3, 1, 3, 0, 2, 3, 3, 1, + 3, 0, 2, 3, 1, 1, 1, 2, 3, 5, + 3, 1, 1, 1, 0, 1, 1, 4, 3, 3, + 5, 4, 6, 5, 0, 0, 4, 0, 1, 0, + 1, 1, 6, 0, 6, 1, 3, 0, 1, 3, + 0, 1, 1, 0, 5, 3, 0, 1, 1, 1, + 0, 2, 0, 0, 11, 0, 2, 0, 1, 3, + 1, 1, 0, 1, 1, 0, 3, 0, 0, 7, + 1, 4, 3, 3, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 4, 4, 1, 3, 0, 1, 3, - 0, 0, 6, 1, 3, 3, 2, 4, 3, 1, - 2, 1, 1, 1, 1, 0, 0, 6, 4, 5, - 0, 9, 4, 2, 2, 3, 2, 3, 2, 2, - 3, 3, 3, 2, 0, 0, 6, 2, 0, 0, - 6, 0, 0, 6, 0, 0, 6, 1, 0, 0, - 6, 0, 0, 7, 1, 0, 0, 6, 0, 0, - 7, 1, 0, 0, 6, 0, 0, 7, 0, 0, - 6, 0, 0, 6, 1, 3, 3, 0, 0, 0, - 9, 0, 0, 0, 9, 0, 0, 0, 10, 1, - 1, 1, 1, 1, 3, 3, 5, 5, 6, 6, - 8, 8, 1, 1, 3, 0, 1, 0, 0, 10, - 0, 0, 10, 0, 0, 9, 0, 0, 7, 3, - 1, 5, 0, 0, 10, 4, 0, 0, 11, 0, - 0, 11, 0, 0, 10, 5, 0, 0, 10, 5, - 0, 0, 10, 1, 3, 4, 5, 8, 10, 0, - 3, 0, 1, 9, 10, 9 + 1, 1, 4, 4, 1, 3, 0, 1, 3, 0, + 0, 6, 1, 3, 3, 2, 4, 3, 1, 2, + 1, 1, 1, 1, 0, 0, 6, 4, 5, 0, + 9, 4, 2, 2, 3, 2, 3, 2, 2, 3, + 3, 3, 2, 0, 0, 6, 2, 0, 0, 6, + 0, 0, 6, 0, 0, 6, 1, 0, 0, 6, + 0, 0, 7, 1, 0, 0, 6, 0, 0, 7, + 1, 0, 0, 6, 0, 0, 7, 0, 0, 6, + 0, 0, 6, 1, 3, 3, 0, 0, 0, 9, + 0, 0, 0, 9, 0, 0, 0, 10, 1, 1, + 1, 1, 1, 3, 3, 5, 5, 6, 6, 8, + 8, 1, 1, 3, 0, 1, 0, 0, 10, 0, + 0, 10, 0, 0, 9, 0, 0, 7, 3, 1, + 5, 0, 0, 10, 4, 0, 0, 11, 0, 0, + 11, 0, 0, 10, 5, 0, 0, 10, 5, 0, + 0, 10, 1, 3, 4, 5, 8, 10, 0, 3, + 0, 1, 9, 10, 9 }; @@ -4797,10 +4788,6 @@ yydestruct (const char *yymsg, { delete ((*yyvaluep).pExpression); } break; - case YYSYMBOL_expression_yield_no_pipe: /* expression_yield_no_pipe */ - { delete ((*yyvaluep).pExpression); } - break; - case YYSYMBOL_expression_yield: /* expression_yield */ { delete ((*yyvaluep).pExpression); } break; @@ -5731,7 +5718,7 @@ YYLTYPE yylloc = yyloc_default; { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 66: /* expression_if_one_liner: expression_yield_no_pipe */ + case 66: /* expression_if_one_liner: expression_yield */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; @@ -6531,8 +6518,8 @@ YYLTYPE yylloc = yyloc_default; { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 222: /* expression_any: expression_with_alias */ - { (yyval.pExpression) = (yyvsp[0].pExpression); } + case 222: /* expression_any: expression_with_alias "end of expression" */ + { (yyval.pExpression) = (yyvsp[-1].pExpression); } break; case 223: /* expression_any: expression_for_loop */ @@ -6551,8 +6538,8 @@ YYLTYPE yylloc = yyloc_default; { (yyval.pExpression) = (yyvsp[-1].pExpression); } break; - case 227: /* expression_any: expression_yield */ - { (yyval.pExpression) = (yyvsp[0].pExpression); } + case 227: /* expression_any: expression_yield "end of expression" */ + { (yyval.pExpression) = (yyvsp[-1].pExpression); } break; case 228: /* expression_any: expression_if_then_else */ @@ -6734,13 +6721,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 258: /* expression_yield_no_pipe: "yield" expr */ + case 258: /* expression_yield: "yield" expr */ { (yyval.pExpression) = new ExprYield(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 259: /* expression_yield_no_pipe: "yield" "<-" expr */ + case 259: /* expression_yield: "yield" "<-" expr */ { auto pRet = new ExprYield(tokAt(scanner,(yylsp[-2])),ExpressionPtr((yyvsp[0].pExpression))); pRet->moveSemantics = true; @@ -6748,47 +6735,41 @@ YYLTYPE yylloc = yyloc_default; } break; - case 260: /* expression_yield: expression_yield_no_pipe "end of expression" */ - { - (yyval.pExpression) = (yyvsp[-1].pExpression); - } - break; - - case 261: /* expression_try_catch: "try" expression_block "recover" expression_block */ + case 260: /* expression_try_catch: "try" expression_block "recover" expression_block */ { (yyval.pExpression) = new ExprTryCatch(tokAt(scanner,(yylsp[-3])),ExpressionPtr((yyvsp[-2].pExpression)),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 262: /* kwd_let_var_or_nothing: "let" */ + case 261: /* kwd_let_var_or_nothing: "let" */ { (yyval.b) = true; } break; - case 263: /* kwd_let_var_or_nothing: "var" */ + case 262: /* kwd_let_var_or_nothing: "var" */ { (yyval.b) = false; } break; - case 264: /* kwd_let_var_or_nothing: %empty */ + case 263: /* kwd_let_var_or_nothing: %empty */ { (yyval.b) = true; } break; - case 265: /* kwd_let: "let" */ + case 264: /* kwd_let: "let" */ { (yyval.b) = true; } break; - case 266: /* kwd_let: "var" */ + case 265: /* kwd_let: "var" */ { (yyval.b) = false; } break; - case 267: /* optional_in_scope: "inscope" */ + case 266: /* optional_in_scope: "inscope" */ { (yyval.b) = true; } break; - case 268: /* optional_in_scope: %empty */ + case 267: /* optional_in_scope: %empty */ { (yyval.b) = false; } break; - case 269: /* tuple_expansion: "name" */ + case 268: /* tuple_expansion: "name" */ { (yyval.pNameList) = new vector(); (yyval.pNameList)->push_back(*(yyvsp[0].s)); @@ -6796,7 +6777,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 270: /* tuple_expansion: tuple_expansion ',' "name" */ + case 269: /* tuple_expansion: tuple_expansion ',' "name" */ { (yyvsp[-2].pNameList)->push_back(*(yyvsp[0].s)); delete (yyvsp[0].s); @@ -6804,7 +6785,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 271: /* tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" */ + case 270: /* tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" */ { (yyval.pVarDecl) = new VariableDeclaration((yyvsp[-6].pNameList),tokAt(scanner,(yylsp[-6])),(yyvsp[-3].pTypeDecl),(yyvsp[-1].pExpression)); (yyval.pVarDecl)->init_via_move = ((yyvsp[-2].i) & CorM_MOVE) !=0; @@ -6813,7 +6794,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 272: /* tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" */ + case 271: /* tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" */ { auto typeDecl = new TypeDecl(Type::autoinfer); typeDecl->at = tokAt(scanner,(yylsp[-5])); @@ -6825,41 +6806,41 @@ YYLTYPE yylloc = yyloc_default; } break; - case 273: /* expression_let: kwd_let optional_in_scope let_variable_declaration */ + case 272: /* expression_let: kwd_let optional_in_scope let_variable_declaration */ { (yyval.pExpression) = ast_Let(scanner,(yyvsp[-2].b),(yyvsp[-1].b),(yyvsp[0].pVarDecl),tokAt(scanner,(yylsp[-2])),tokAt(scanner,(yylsp[0]))); } break; - case 274: /* expression_let: kwd_let optional_in_scope tuple_expansion_variable_declaration */ + case 273: /* expression_let: kwd_let optional_in_scope tuple_expansion_variable_declaration */ { (yyval.pExpression) = ast_Let(scanner,(yyvsp[-2].b),(yyvsp[-1].b),(yyvsp[0].pVarDecl),tokAt(scanner,(yylsp[-2])),tokAt(scanner,(yylsp[0]))); } break; - case 275: /* $@5: %empty */ + case 274: /* $@5: %empty */ { yyextra->das_arrow_depth ++; } break; - case 276: /* $@6: %empty */ + case 275: /* $@6: %empty */ { yyextra->das_arrow_depth --; } break; - case 277: /* expr_cast: "cast" '<' $@5 type_declaration_no_options '>' $@6 expr */ + case 276: /* expr_cast: "cast" '<' $@5 type_declaration_no_options '>' $@6 expr */ { (yyval.pExpression) = new ExprCast(tokAt(scanner,(yylsp[-6])),ExpressionPtr((yyvsp[0].pExpression)),TypeDeclPtr((yyvsp[-3].pTypeDecl))); } break; - case 278: /* $@7: %empty */ + case 277: /* $@7: %empty */ { yyextra->das_arrow_depth ++; } break; - case 279: /* $@8: %empty */ + case 278: /* $@8: %empty */ { yyextra->das_arrow_depth --; } break; - case 280: /* expr_cast: "upcast" '<' $@7 type_declaration_no_options '>' $@8 expr */ + case 279: /* expr_cast: "upcast" '<' $@7 type_declaration_no_options '>' $@8 expr */ { auto pCast = new ExprCast(tokAt(scanner,(yylsp[-6])),ExpressionPtr((yyvsp[0].pExpression)),TypeDeclPtr((yyvsp[-3].pTypeDecl))); pCast->upcast = true; @@ -6867,15 +6848,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 281: /* $@9: %empty */ + case 280: /* $@9: %empty */ { yyextra->das_arrow_depth ++; } break; - case 282: /* $@10: %empty */ + case 281: /* $@10: %empty */ { yyextra->das_arrow_depth --; } break; - case 283: /* expr_cast: "reinterpret" '<' $@9 type_declaration_no_options '>' $@10 expr */ + case 282: /* expr_cast: "reinterpret" '<' $@9 type_declaration_no_options '>' $@10 expr */ { auto pCast = new ExprCast(tokAt(scanner,(yylsp[-6])),ExpressionPtr((yyvsp[0].pExpression)),TypeDeclPtr((yyvsp[-3].pTypeDecl))); pCast->reinterpret = true; @@ -6883,21 +6864,21 @@ YYLTYPE yylloc = yyloc_default; } break; - case 284: /* $@11: %empty */ + case 283: /* $@11: %empty */ { yyextra->das_arrow_depth ++; } break; - case 285: /* $@12: %empty */ + case 284: /* $@12: %empty */ { yyextra->das_arrow_depth --; } break; - case 286: /* expr_type_decl: "type" '<' $@11 type_declaration '>' $@12 */ + case 285: /* expr_type_decl: "type" '<' $@11 type_declaration '>' $@12 */ { (yyval.pExpression) = new ExprTypeDecl(tokAt(scanner,(yylsp[-5])),TypeDeclPtr((yyvsp[-2].pTypeDecl))); } break; - case 287: /* expr_type_info: "typeinfo" '(' name_in_namespace expr ')' */ + case 286: /* expr_type_info: "typeinfo" '(' name_in_namespace expr ')' */ { if ( (yyvsp[-1].pExpression)->rtti_isTypeDecl() ) { auto ptd = (ExprTypeDecl *)(yyvsp[-1].pExpression); @@ -6910,7 +6891,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 288: /* expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' expr ')' */ + case 287: /* expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' expr ')' */ { if ( (yyvsp[-1].pExpression)->rtti_isTypeDecl() ) { auto ptd = (ExprTypeDecl *)(yyvsp[-1].pExpression); @@ -6924,7 +6905,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 289: /* expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' */ + case 288: /* expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' */ { if ( (yyvsp[-1].pExpression)->rtti_isTypeDecl() ) { auto ptd = (ExprTypeDecl *)(yyvsp[-1].pExpression); @@ -6939,23 +6920,23 @@ YYLTYPE yylloc = yyloc_default; } break; - case 290: /* expr_list: expr */ + case 289: /* expr_list: expr */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 291: /* expr_list: expr_list ',' expr */ + case 290: /* expr_list: expr_list ',' expr */ { (yyval.pExpression) = new ExprSequence(tokAt(scanner,(yylsp[-2])),ExpressionPtr((yyvsp[-2].pExpression)),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 292: /* block_or_simple_block: expression_block */ + case 291: /* block_or_simple_block: expression_block */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 293: /* block_or_simple_block: "=>" expr */ + case 292: /* block_or_simple_block: "=>" expr */ { auto retE = make_smart(tokAt(scanner,(yylsp[-1])), ExpressionPtr((yyvsp[0].pExpression))); auto blkE = new ExprBlock(); @@ -6965,7 +6946,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 294: /* block_or_simple_block: "=>" "<-" expr */ + case 293: /* block_or_simple_block: "=>" "<-" expr */ { auto retE = make_smart(tokAt(scanner,(yylsp[-2])), ExpressionPtr((yyvsp[0].pExpression))); retE->moveSemantics = true; @@ -6976,35 +6957,35 @@ YYLTYPE yylloc = yyloc_default; } break; - case 295: /* block_or_lambda: '$' */ + case 294: /* block_or_lambda: '$' */ { (yyval.i) = 0; /* block */ } break; - case 296: /* block_or_lambda: '@' */ + case 295: /* block_or_lambda: '@' */ { (yyval.i) = 1; /* lambda */ } break; - case 297: /* block_or_lambda: '@' '@' */ + case 296: /* block_or_lambda: '@' '@' */ { (yyval.i) = 2; /* local function */ } break; - case 298: /* capture_entry: '&' "name" */ + case 297: /* capture_entry: '&' "name" */ { (yyval.pCapt) = new CaptureEntry(*(yyvsp[0].s),CaptureMode::capture_by_reference); delete (yyvsp[0].s); } break; - case 299: /* capture_entry: '=' "name" */ + case 298: /* capture_entry: '=' "name" */ { (yyval.pCapt) = new CaptureEntry(*(yyvsp[0].s),CaptureMode::capture_by_copy); delete (yyvsp[0].s); } break; - case 300: /* capture_entry: "<-" "name" */ + case 299: /* capture_entry: "<-" "name" */ { (yyval.pCapt) = new CaptureEntry(*(yyvsp[0].s),CaptureMode::capture_by_move); delete (yyvsp[0].s); } break; - case 301: /* capture_entry: ":=" "name" */ + case 300: /* capture_entry: ":=" "name" */ { (yyval.pCapt) = new CaptureEntry(*(yyvsp[0].s),CaptureMode::capture_by_clone); delete (yyvsp[0].s); } break; - case 302: /* capture_list: capture_entry */ + case 301: /* capture_list: capture_entry */ { (yyval.pCaptList) = new vector(); (yyval.pCaptList)->push_back(*(yyvsp[0].pCapt)); @@ -7012,7 +6993,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 303: /* capture_list: capture_list ',' capture_entry */ + case 302: /* capture_list: capture_list ',' capture_entry */ { (yyvsp[-2].pCaptList)->push_back(*(yyvsp[0].pCapt)); delete (yyvsp[0].pCapt); @@ -7020,137 +7001,137 @@ YYLTYPE yylloc = yyloc_default; } break; - case 304: /* optional_capture_list: %empty */ + case 303: /* optional_capture_list: %empty */ { (yyval.pCaptList) = nullptr; } break; - case 305: /* optional_capture_list: '[' '[' capture_list ']' ']' */ + case 304: /* optional_capture_list: '[' '[' capture_list ']' ']' */ { (yyval.pCaptList) = (yyvsp[-2].pCaptList); } break; - case 306: /* expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block */ + case 305: /* expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block */ { (yyval.pExpression) = ast_makeBlock(scanner,(yyvsp[-5].i),(yyvsp[-4].faList),(yyvsp[-3].pCaptList),(yyvsp[-2].pVarDeclList),(yyvsp[-1].pTypeDecl),(yyvsp[0].pExpression),tokAt(scanner,(yylsp[0])),tokAt(scanner,(yylsp[-4]))); } break; - case 307: /* expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block */ + case 306: /* expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block */ { (yyval.pExpression) = ast_makeBlock(scanner,(yyvsp[-5].i),(yyvsp[-4].faList),(yyvsp[-3].pCaptList),(yyvsp[-2].pVarDeclList),(yyvsp[-1].pTypeDecl),(yyvsp[0].pExpression),tokAt(scanner,(yylsp[0])),tokAt(scanner,(yylsp[-4]))); } break; - case 308: /* expr_full_block_assumed_piped: "begin of code block" expressions "end of code block" */ + case 307: /* expr_full_block_assumed_piped: "begin of code block" expressions "end of code block" */ { (yyval.pExpression) = ast_makeBlock(scanner,0,nullptr,nullptr,nullptr,new TypeDecl(Type::autoinfer),(yyvsp[-1].pExpression),tokAt(scanner,(yylsp[-1])),tokAt(scanner,(yylsp[-1]))); } break; - case 309: /* expr_numeric_const: "integer constant" */ + case 308: /* expr_numeric_const: "integer constant" */ { (yyval.pExpression) = new ExprConstInt(tokAt(scanner,(yylsp[0])),(int32_t)(yyvsp[0].i)); } break; - case 310: /* expr_numeric_const: "unsigned integer constant" */ + case 309: /* expr_numeric_const: "unsigned integer constant" */ { (yyval.pExpression) = new ExprConstUInt(tokAt(scanner,(yylsp[0])),(uint32_t)(yyvsp[0].ui)); } break; - case 311: /* expr_numeric_const: "long integer constant" */ + case 310: /* expr_numeric_const: "long integer constant" */ { (yyval.pExpression) = new ExprConstInt64(tokAt(scanner,(yylsp[0])),(int64_t)(yyvsp[0].i64)); } break; - case 312: /* expr_numeric_const: "unsigned long integer constant" */ + case 311: /* expr_numeric_const: "unsigned long integer constant" */ { (yyval.pExpression) = new ExprConstUInt64(tokAt(scanner,(yylsp[0])),(uint64_t)(yyvsp[0].ui64)); } break; - case 313: /* expr_numeric_const: "unsigned int8 constant" */ + case 312: /* expr_numeric_const: "unsigned int8 constant" */ { (yyval.pExpression) = new ExprConstUInt8(tokAt(scanner,(yylsp[0])),(uint8_t)(yyvsp[0].ui)); } break; - case 314: /* expr_numeric_const: "floating point constant" */ + case 313: /* expr_numeric_const: "floating point constant" */ { (yyval.pExpression) = new ExprConstFloat(tokAt(scanner,(yylsp[0])),(float)(yyvsp[0].fd)); } break; - case 315: /* expr_numeric_const: "double constant" */ + case 314: /* expr_numeric_const: "double constant" */ { (yyval.pExpression) = new ExprConstDouble(tokAt(scanner,(yylsp[0])),(double)(yyvsp[0].d)); } break; - case 316: /* expr_assign: expr */ + case 315: /* expr_assign: expr */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 317: /* expr_assign: expr '=' expr */ + case 316: /* expr_assign: expr '=' expr */ { (yyval.pExpression) = new ExprCopy(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 318: /* expr_assign: expr "<-" expr */ + case 317: /* expr_assign: expr "<-" expr */ { (yyval.pExpression) = new ExprMove(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 319: /* expr_assign: expr ":=" expr */ + case 318: /* expr_assign: expr ":=" expr */ { (yyval.pExpression) = new ExprClone(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 320: /* expr_assign: expr "&=" expr */ + case 319: /* expr_assign: expr "&=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"&=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 321: /* expr_assign: expr "|=" expr */ + case 320: /* expr_assign: expr "|=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"|=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 322: /* expr_assign: expr "^=" expr */ + case 321: /* expr_assign: expr "^=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"^=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 323: /* expr_assign: expr "&&=" expr */ + case 322: /* expr_assign: expr "&&=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"&&=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 324: /* expr_assign: expr "||=" expr */ + case 323: /* expr_assign: expr "||=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"||=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 325: /* expr_assign: expr "^^=" expr */ + case 324: /* expr_assign: expr "^^=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"^^=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 326: /* expr_assign: expr "+=" expr */ + case 325: /* expr_assign: expr "+=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"+=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 327: /* expr_assign: expr "-=" expr */ + case 326: /* expr_assign: expr "-=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"-=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 328: /* expr_assign: expr "*=" expr */ + case 327: /* expr_assign: expr "*=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"*=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 329: /* expr_assign: expr "/=" expr */ + case 328: /* expr_assign: expr "/=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"/=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 330: /* expr_assign: expr "%=" expr */ + case 329: /* expr_assign: expr "%=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"%=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 331: /* expr_assign: expr "<<=" expr */ + case 330: /* expr_assign: expr "<<=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"<<=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 332: /* expr_assign: expr ">>=" expr */ + case 331: /* expr_assign: expr ">>=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),">>=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 333: /* expr_assign: expr "<<<=" expr */ + case 332: /* expr_assign: expr "<<<=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"<<<=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 334: /* expr_assign: expr ">>>=" expr */ + case 333: /* expr_assign: expr ">>>=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),">>>=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 335: /* expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' ')' */ + case 334: /* expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' ')' */ { auto nc = new ExprNamedCall(tokAt(scanner,(yylsp[-5])),*(yyvsp[-5].s)); nc->arguments = *(yyvsp[-2].pMakeStruct); @@ -7160,7 +7141,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 336: /* expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' ')' */ + case 335: /* expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' ')' */ { auto nc = new ExprNamedCall(tokAt(scanner,(yylsp[-7])),*(yyvsp[-7].s)); nc->nonNamedArguments = sequenceToList((yyvsp[-5].pExpression)); @@ -7171,7 +7152,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 337: /* expr_method_call: expr "->" "name" '(' ')' */ + case 336: /* expr_method_call: expr "->" "name" '(' ')' */ { auto pInvoke = makeInvokeMethod(tokAt(scanner,(yylsp[-3])), (yyvsp[-4].pExpression), *(yyvsp[-2].s)); delete (yyvsp[-2].s); @@ -7179,7 +7160,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 338: /* expr_method_call: expr "->" "name" '(' expr_list ')' */ + case 337: /* expr_method_call: expr "->" "name" '(' expr_list ')' */ { auto pInvoke = makeInvokeMethod(tokAt(scanner,(yylsp[-4])), (yyvsp[-5].pExpression), *(yyvsp[-3].s)); auto callArgs = sequenceToList((yyvsp[-1].pExpression)); @@ -7189,35 +7170,35 @@ YYLTYPE yylloc = yyloc_default; } break; - case 339: /* func_addr_name: name_in_namespace */ + case 338: /* func_addr_name: name_in_namespace */ { (yyval.pExpression) = new ExprAddr(tokAt(scanner,(yylsp[0])),*(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 340: /* func_addr_name: "$i" '(' expr ')' */ + case 339: /* func_addr_name: "$i" '(' expr ')' */ { auto expr = new ExprAddr(tokAt(scanner,(yylsp[-3])),"``MACRO``TAG``ADDR``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression), expr, "i"); } break; - case 341: /* func_addr_expr: '@' '@' func_addr_name */ + case 340: /* func_addr_expr: '@' '@' func_addr_name */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 342: /* $@13: %empty */ + case 341: /* $@13: %empty */ { yyextra->das_arrow_depth ++; } break; - case 343: /* $@14: %empty */ + case 342: /* $@14: %empty */ { yyextra->das_arrow_depth --; } break; - case 344: /* func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options '>' $@14 func_addr_name */ + case 343: /* func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options '>' $@14 func_addr_name */ { auto expr = (ExprAddr *) ((yyvsp[0].pExpression)->rtti_isAddr() ? (yyvsp[0].pExpression) : (((ExprTag *) (yyvsp[0].pExpression))->value.get())); expr->funcType = TypeDeclPtr((yyvsp[-3].pTypeDecl)); @@ -7225,15 +7206,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 345: /* $@15: %empty */ + case 344: /* $@15: %empty */ { yyextra->das_arrow_depth ++; } break; - case 346: /* $@16: %empty */ + case 345: /* $@16: %empty */ { yyextra->das_arrow_depth --; } break; - case 347: /* func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name */ + case 346: /* func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name */ { auto expr = (ExprAddr *) ((yyvsp[0].pExpression)->rtti_isAddr() ? (yyvsp[0].pExpression) : (((ExprTag *) (yyvsp[0].pExpression))->value.get())); expr->funcType = make_smart(Type::tFunction); @@ -7246,21 +7227,21 @@ YYLTYPE yylloc = yyloc_default; } break; - case 348: /* expr_field: expr '.' "name" */ + case 347: /* expr_field: expr '.' "name" */ { (yyval.pExpression) = new ExprField(tokAt(scanner,(yylsp[-1])), tokAt(scanner,(yylsp[0])), ExpressionPtr((yyvsp[-2].pExpression)), *(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 349: /* expr_field: expr '.' '.' "name" */ + case 348: /* expr_field: expr '.' '.' "name" */ { (yyval.pExpression) = new ExprField(tokAt(scanner,(yylsp[-1])), tokAt(scanner,(yylsp[0])), ExpressionPtr((yyvsp[-3].pExpression)), *(yyvsp[0].s), true); delete (yyvsp[0].s); } break; - case 350: /* expr_field: expr '.' "name" '(' ')' */ + case 349: /* expr_field: expr '.' "name" '(' ')' */ { auto pInvoke = makeInvokeMethod(tokAt(scanner,(yylsp[-3])), (yyvsp[-4].pExpression), *(yyvsp[-2].s)); delete (yyvsp[-2].s); @@ -7268,7 +7249,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 351: /* expr_field: expr '.' "name" '(' expr_list ')' */ + case 350: /* expr_field: expr '.' "name" '(' expr_list ')' */ { auto pInvoke = makeInvokeMethod(tokAt(scanner,(yylsp[-4])), (yyvsp[-5].pExpression), *(yyvsp[-3].s)); auto callArgs = sequenceToList((yyvsp[-1].pExpression)); @@ -7278,29 +7259,29 @@ YYLTYPE yylloc = yyloc_default; } break; - case 352: /* $@17: %empty */ + case 351: /* $@17: %empty */ { yyextra->das_suppress_errors=true; } break; - case 353: /* $@18: %empty */ + case 352: /* $@18: %empty */ { yyextra->das_suppress_errors=false; } break; - case 354: /* expr_field: expr '.' $@17 error $@18 */ + case 353: /* expr_field: expr '.' $@17 error $@18 */ { (yyval.pExpression) = new ExprField(tokAt(scanner,(yylsp[-3])), tokAt(scanner,(yylsp[-3])), ExpressionPtr((yyvsp[-4].pExpression)), ""); yyerrok; } break; - case 355: /* expr_call: name_in_namespace '(' ')' */ + case 354: /* expr_call: name_in_namespace '(' ')' */ { (yyval.pExpression) = yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-2])),tokAt(scanner,(yylsp[0])),*(yyvsp[-2].s)); delete (yyvsp[-2].s); } break; - case 356: /* expr_call: name_in_namespace '(' make_struct_single ')' */ + case 355: /* expr_call: name_in_namespace '(' make_struct_single ')' */ { ((ExprMakeStruct *)(yyvsp[-1].pExpression))->at = tokAt(scanner,(yylsp[-3])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = new TypeDecl(Type::alias); @@ -7312,166 +7293,166 @@ YYLTYPE yylloc = yyloc_default; } break; - case 357: /* expr_call: name_in_namespace '(' expr_list ')' */ + case 356: /* expr_call: name_in_namespace '(' expr_list ')' */ { (yyval.pExpression) = parseFunctionArguments(yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-3])),tokAt(scanner,(yylsp[0])),*(yyvsp[-3].s)),(yyvsp[-1].pExpression)); delete (yyvsp[-3].s); } break; - case 358: /* expr_call: basic_type_declaration '(' ')' */ + case 357: /* expr_call: basic_type_declaration '(' ')' */ { (yyval.pExpression) = yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-2])),tokAt(scanner,(yylsp[0])),das_to_string((yyvsp[-2].type))); } break; - case 359: /* expr_call: basic_type_declaration '(' expr_list ')' */ + case 358: /* expr_call: basic_type_declaration '(' expr_list ')' */ { (yyval.pExpression) = parseFunctionArguments(yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-3])),tokAt(scanner,(yylsp[0])),das_to_string((yyvsp[-3].type))),(yyvsp[-1].pExpression)); } break; - case 360: /* expr: "null" */ + case 359: /* expr: "null" */ { (yyval.pExpression) = new ExprConstPtr(tokAt(scanner,(yylsp[0])),nullptr); } break; - case 361: /* expr: name_in_namespace */ + case 360: /* expr: name_in_namespace */ { (yyval.pExpression) = new ExprVar(tokAt(scanner,(yylsp[0])),*(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 362: /* expr: expr_numeric_const */ + case 361: /* expr: expr_numeric_const */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 363: /* expr: expr_reader */ + case 362: /* expr: expr_reader */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 364: /* expr: string_builder */ + case 363: /* expr: string_builder */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 365: /* expr: make_decl */ + case 364: /* expr: make_decl */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 366: /* expr: "true" */ + case 365: /* expr: "true" */ { (yyval.pExpression) = new ExprConstBool(tokAt(scanner,(yylsp[0])),true); } break; - case 367: /* expr: "false" */ + case 366: /* expr: "false" */ { (yyval.pExpression) = new ExprConstBool(tokAt(scanner,(yylsp[0])),false); } break; - case 368: /* expr: expr_field */ + case 367: /* expr: expr_field */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 369: /* expr: expr_mtag */ + case 368: /* expr: expr_mtag */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 370: /* expr: '!' expr */ + case 369: /* expr: '!' expr */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[-1])),"!",ExpressionPtr((yyvsp[0].pExpression))); } break; - case 371: /* expr: '~' expr */ + case 370: /* expr: '~' expr */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[-1])),"~",ExpressionPtr((yyvsp[0].pExpression))); } break; - case 372: /* expr: '+' expr */ + case 371: /* expr: '+' expr */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[-1])),"+",ExpressionPtr((yyvsp[0].pExpression))); } break; - case 373: /* expr: '-' expr */ + case 372: /* expr: '-' expr */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[-1])),"-",ExpressionPtr((yyvsp[0].pExpression))); } break; - case 374: /* expr: expr "<<" expr */ + case 373: /* expr: expr "<<" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"<<", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 375: /* expr: expr ">>" expr */ + case 374: /* expr: expr ">>" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),">>", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 376: /* expr: expr "<<<" expr */ + case 375: /* expr: expr "<<<" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"<<<", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 377: /* expr: expr ">>>" expr */ + case 376: /* expr: expr ">>>" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),">>>", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 378: /* expr: expr '+' expr */ + case 377: /* expr: expr '+' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"+", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 379: /* expr: expr '-' expr */ + case 378: /* expr: expr '-' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"-", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 380: /* expr: expr '*' expr */ + case 379: /* expr: expr '*' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"*", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 381: /* expr: expr '/' expr */ + case 380: /* expr: expr '/' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"/", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 382: /* expr: expr '%' expr */ + case 381: /* expr: expr '%' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"%", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 383: /* expr: expr '<' expr */ + case 382: /* expr: expr '<' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"<", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 384: /* expr: expr '>' expr */ + case 383: /* expr: expr '>' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),">", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 385: /* expr: expr "==" expr */ + case 384: /* expr: expr "==" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"==", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 386: /* expr: expr "!=" expr */ + case 385: /* expr: expr "!=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"!=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 387: /* expr: expr "<=" expr */ + case 386: /* expr: expr "<=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"<=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 388: /* expr: expr ">=" expr */ + case 387: /* expr: expr ">=" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),">=", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 389: /* expr: expr '&' expr */ + case 388: /* expr: expr '&' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"&", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 390: /* expr: expr '|' expr */ + case 389: /* expr: expr '|' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"|", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 391: /* expr: expr '^' expr */ + case 390: /* expr: expr '^' expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"^", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 392: /* expr: expr "&&" expr */ + case 391: /* expr: expr "&&" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"&&", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 393: /* expr: expr "||" expr */ + case 392: /* expr: expr "||" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"||", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 394: /* expr: expr "^^" expr */ + case 393: /* expr: expr "^^" expr */ { (yyval.pExpression) = new ExprOp2(tokAt(scanner,(yylsp[-1])),"^^", ExpressionPtr((yyvsp[-2].pExpression)), ExpressionPtr((yyvsp[0].pExpression))); } break; - case 395: /* expr: expr ".." expr */ + case 394: /* expr: expr ".." expr */ { auto itv = yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-1])),"interval"); itv->arguments.push_back(ExpressionPtr((yyvsp[-2].pExpression))); @@ -7480,23 +7461,23 @@ YYLTYPE yylloc = yyloc_default; } break; - case 396: /* expr: "++" expr */ + case 395: /* expr: "++" expr */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[-1])),"++", ExpressionPtr((yyvsp[0].pExpression))); } break; - case 397: /* expr: "--" expr */ + case 396: /* expr: "--" expr */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[-1])),"--", ExpressionPtr((yyvsp[0].pExpression))); } break; - case 398: /* expr: expr "++" */ + case 397: /* expr: expr "++" */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[0])),"+++", ExpressionPtr((yyvsp[-1].pExpression))); } break; - case 399: /* expr: expr "--" */ + case 398: /* expr: expr "--" */ { (yyval.pExpression) = new ExprOp1(tokAt(scanner,(yylsp[0])),"---", ExpressionPtr((yyvsp[-1].pExpression))); } break; - case 400: /* expr: '(' expr_list optional_comma ')' */ + case 399: /* expr: '(' expr_list optional_comma ')' */ { if ( (yyvsp[-2].pExpression)->rtti_isSequence() ) { auto mkt = new ExprMakeTuple(tokAt(scanner,(yylsp[-2]))); @@ -7512,87 +7493,87 @@ YYLTYPE yylloc = yyloc_default; } break; - case 401: /* expr: expr '[' expr ']' */ + case 400: /* expr: expr '[' expr ']' */ { (yyval.pExpression) = new ExprAt(tokAt(scanner,(yylsp[-2])), ExpressionPtr((yyvsp[-3].pExpression)), ExpressionPtr((yyvsp[-1].pExpression))); } break; - case 402: /* expr: expr '.' '[' expr ']' */ + case 401: /* expr: expr '.' '[' expr ']' */ { (yyval.pExpression) = new ExprAt(tokAt(scanner,(yylsp[-2])), ExpressionPtr((yyvsp[-4].pExpression)), ExpressionPtr((yyvsp[-1].pExpression)), true); } break; - case 403: /* expr: expr "?[" expr ']' */ + case 402: /* expr: expr "?[" expr ']' */ { (yyval.pExpression) = new ExprSafeAt(tokAt(scanner,(yylsp[-2])), ExpressionPtr((yyvsp[-3].pExpression)), ExpressionPtr((yyvsp[-1].pExpression))); } break; - case 404: /* expr: expr '.' "?[" expr ']' */ + case 403: /* expr: expr '.' "?[" expr ']' */ { (yyval.pExpression) = new ExprSafeAt(tokAt(scanner,(yylsp[-2])), ExpressionPtr((yyvsp[-4].pExpression)), ExpressionPtr((yyvsp[-1].pExpression)), true); } break; - case 405: /* expr: expr "?." "name" */ + case 404: /* expr: expr "?." "name" */ { (yyval.pExpression) = new ExprSafeField(tokAt(scanner,(yylsp[-1])), tokAt(scanner,(yylsp[0])), ExpressionPtr((yyvsp[-2].pExpression)), *(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 406: /* expr: expr '.' "?." "name" */ + case 405: /* expr: expr '.' "?." "name" */ { (yyval.pExpression) = new ExprSafeField(tokAt(scanner,(yylsp[-1])), tokAt(scanner,(yylsp[0])), ExpressionPtr((yyvsp[-3].pExpression)), *(yyvsp[0].s), true); delete (yyvsp[0].s); } break; - case 407: /* expr: func_addr_expr */ + case 406: /* expr: func_addr_expr */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 408: /* expr: expr_call */ + case 407: /* expr: expr_call */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 409: /* expr: '*' expr */ + case 408: /* expr: '*' expr */ { (yyval.pExpression) = new ExprPtr2Ref(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 410: /* expr: "deref" '(' expr ')' */ + case 409: /* expr: "deref" '(' expr ')' */ { (yyval.pExpression) = new ExprPtr2Ref(tokAt(scanner,(yylsp[-3])),ExpressionPtr((yyvsp[-1].pExpression))); } break; - case 411: /* expr: "addr" '(' expr ')' */ + case 410: /* expr: "addr" '(' expr ')' */ { (yyval.pExpression) = new ExprRef2Ptr(tokAt(scanner,(yylsp[-3])),ExpressionPtr((yyvsp[-1].pExpression))); } break; - case 412: /* expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' ')' */ + case 411: /* expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' ')' */ { (yyval.pExpression) = ast_makeGenerator(scanner,(yyvsp[-4].pTypeDecl),(yyvsp[-2].pCaptList),nullptr,tokAt(scanner,(yylsp[-6]))); } break; - case 413: /* expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' */ + case 412: /* expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' */ { (yyval.pExpression) = ast_makeGenerator(scanner,(yyvsp[-5].pTypeDecl),(yyvsp[-3].pCaptList),(yyvsp[-1].pExpression),tokAt(scanner,(yylsp[-7]))); } break; - case 414: /* expr: expr "??" expr */ + case 413: /* expr: expr "??" expr */ { (yyval.pExpression) = new ExprNullCoalescing(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 415: /* expr: expr '?' expr ':' expr */ + case 414: /* expr: expr '?' expr ':' expr */ { (yyval.pExpression) = new ExprOp3(tokAt(scanner,(yylsp[-3])),"?",ExpressionPtr((yyvsp[-4].pExpression)),ExpressionPtr((yyvsp[-2].pExpression)),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 416: /* $@19: %empty */ + case 415: /* $@19: %empty */ { yyextra->das_arrow_depth ++; } break; - case 417: /* $@20: %empty */ + case 416: /* $@20: %empty */ { yyextra->das_arrow_depth --; } break; - case 418: /* expr: expr "is" "type" '<' $@19 type_declaration_no_options '>' $@20 */ + case 417: /* expr: expr "is" "type" '<' $@19 type_declaration_no_options '>' $@20 */ { (yyval.pExpression) = new ExprIs(tokAt(scanner,(yylsp[-6])),ExpressionPtr((yyvsp[-7].pExpression)),TypeDeclPtr((yyvsp[-2].pTypeDecl))); } break; - case 419: /* expr: expr "is" basic_type_declaration */ + case 418: /* expr: expr "is" basic_type_declaration */ { auto vdecl = new TypeDecl((yyvsp[0].type)); vdecl->at = tokAt(scanner,(yylsp[0])); @@ -7600,29 +7581,29 @@ YYLTYPE yylloc = yyloc_default; } break; - case 420: /* expr: expr "is" "name" */ + case 419: /* expr: expr "is" "name" */ { (yyval.pExpression) = new ExprIsVariant(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)),*(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 421: /* expr: expr "as" "name" */ + case 420: /* expr: expr "as" "name" */ { (yyval.pExpression) = new ExprAsVariant(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)),*(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 422: /* $@21: %empty */ + case 421: /* $@21: %empty */ { yyextra->das_arrow_depth ++; } break; - case 423: /* $@22: %empty */ + case 422: /* $@22: %empty */ { yyextra->das_arrow_depth --; } break; - case 424: /* expr: expr "as" "type" '<' $@21 type_declaration '>' $@22 */ + case 423: /* expr: expr "as" "type" '<' $@21 type_declaration '>' $@22 */ { auto vname = (yyvsp[-2].pTypeDecl)->describe(); (yyval.pExpression) = new ExprAsVariant(tokAt(scanner,(yylsp[-6])),ExpressionPtr((yyvsp[-7].pExpression)),vname); @@ -7630,28 +7611,28 @@ YYLTYPE yylloc = yyloc_default; } break; - case 425: /* expr: expr "as" basic_type_declaration */ + case 424: /* expr: expr "as" basic_type_declaration */ { (yyval.pExpression) = new ExprAsVariant(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-2].pExpression)),das_to_string((yyvsp[0].type))); } break; - case 426: /* expr: expr '?' "as" "name" */ + case 425: /* expr: expr '?' "as" "name" */ { (yyval.pExpression) = new ExprSafeAsVariant(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-3].pExpression)),*(yyvsp[0].s)); delete (yyvsp[0].s); } break; - case 427: /* $@23: %empty */ + case 426: /* $@23: %empty */ { yyextra->das_arrow_depth ++; } break; - case 428: /* $@24: %empty */ + case 427: /* $@24: %empty */ { yyextra->das_arrow_depth --; } break; - case 429: /* expr: expr '?' "as" "type" '<' $@23 type_declaration '>' $@24 */ + case 428: /* expr: expr '?' "as" "type" '<' $@23 type_declaration '>' $@24 */ { auto vname = (yyvsp[-2].pTypeDecl)->describe(); (yyval.pExpression) = new ExprSafeAsVariant(tokAt(scanner,(yylsp[-6])),ExpressionPtr((yyvsp[-8].pExpression)),vname); @@ -7659,202 +7640,202 @@ YYLTYPE yylloc = yyloc_default; } break; - case 430: /* expr: expr '?' "as" basic_type_declaration */ + case 429: /* expr: expr '?' "as" basic_type_declaration */ { (yyval.pExpression) = new ExprSafeAsVariant(tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-3].pExpression)),das_to_string((yyvsp[0].type))); } break; - case 431: /* expr: expr_type_info */ + case 430: /* expr: expr_type_info */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 432: /* expr: expr_type_decl */ + case 431: /* expr: expr_type_decl */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 433: /* expr: expr_cast */ + case 432: /* expr: expr_cast */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 434: /* expr: expr_new */ + case 433: /* expr: expr_new */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 435: /* expr: expr_method_call */ + case 434: /* expr: expr_method_call */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 436: /* expr: expr_named_call */ + case 435: /* expr: expr_named_call */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 437: /* expr: expr_full_block */ + case 436: /* expr: expr_full_block */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 438: /* expr: expr "<|" expr */ + case 437: /* expr: expr "<|" expr */ { (yyval.pExpression) = ast_lpipe(scanner,(yyvsp[-2].pExpression),(yyvsp[0].pExpression),tokAt(scanner,(yylsp[-1]))); } break; - case 439: /* expr: expr "|>" expr */ + case 438: /* expr: expr "|>" expr */ { (yyval.pExpression) = ast_rpipe(scanner,(yyvsp[-2].pExpression),(yyvsp[0].pExpression),tokAt(scanner,(yylsp[-1]))); } break; - case 440: /* expr: expr "|>" basic_type_declaration */ + case 439: /* expr: expr "|>" basic_type_declaration */ { auto fncall = yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[0])),tokAt(scanner,(yylsp[0])),das_to_string((yyvsp[0].type))); (yyval.pExpression) = ast_rpipe(scanner,(yyvsp[-2].pExpression),fncall,tokAt(scanner,(yylsp[-1]))); } break; - case 441: /* expr: expr_call_pipe */ + case 440: /* expr: expr_call_pipe */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 442: /* expr_mtag: "$$" '(' expr ')' */ + case 441: /* expr_mtag: "$$" '(' expr ')' */ { (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),"e"); } break; - case 443: /* expr_mtag: "$i" '(' expr ')' */ + case 442: /* expr_mtag: "$i" '(' expr ')' */ { (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),"i"); } break; - case 444: /* expr_mtag: "$v" '(' expr ')' */ + case 443: /* expr_mtag: "$v" '(' expr ')' */ { (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),"v"); } break; - case 445: /* expr_mtag: "$b" '(' expr ')' */ + case 444: /* expr_mtag: "$b" '(' expr ')' */ { (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),"b"); } break; - case 446: /* expr_mtag: "$a" '(' expr ')' */ + case 445: /* expr_mtag: "$a" '(' expr ')' */ { (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),"a"); } break; - case 447: /* expr_mtag: "..." */ + case 446: /* expr_mtag: "..." */ { (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[0])),nullptr,"..."); } break; - case 448: /* expr_mtag: "$c" '(' expr ')' '(' ')' */ + case 447: /* expr_mtag: "$c" '(' expr ')' '(' ')' */ { auto ccall = yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-5])),tokAt(scanner,(yylsp[0])),"``MACRO``TAG``CALL``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-5])),(yyvsp[-3].pExpression),ccall,"c"); } break; - case 449: /* expr_mtag: "$c" '(' expr ')' '(' expr_list ')' */ + case 448: /* expr_mtag: "$c" '(' expr ')' '(' expr_list ')' */ { auto ccall = parseFunctionArguments(yyextra->g_Program->makeCall(tokAt(scanner,(yylsp[-6])),tokAt(scanner,(yylsp[0])),"``MACRO``TAG``CALL``"),(yyvsp[-1].pExpression)); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-6])),(yyvsp[-4].pExpression),ccall,"c"); } break; - case 450: /* expr_mtag: expr '.' "$f" '(' expr ')' */ + case 449: /* expr_mtag: expr '.' "$f" '(' expr ')' */ { auto cfield = new ExprField(tokAt(scanner,(yylsp[-4])), tokAt(scanner,(yylsp[-1])), ExpressionPtr((yyvsp[-5].pExpression)), "``MACRO``TAG``FIELD``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 451: /* expr_mtag: expr "?." "$f" '(' expr ')' */ + case 450: /* expr_mtag: expr "?." "$f" '(' expr ')' */ { auto cfield = new ExprSafeField(tokAt(scanner,(yylsp[-4])), tokAt(scanner,(yylsp[-1])), ExpressionPtr((yyvsp[-5].pExpression)), "``MACRO``TAG``FIELD``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 452: /* expr_mtag: expr '.' '.' "$f" '(' expr ')' */ + case 451: /* expr_mtag: expr '.' '.' "$f" '(' expr ')' */ { auto cfield = new ExprField(tokAt(scanner,(yylsp[-4])), tokAt(scanner,(yylsp[-1])), ExpressionPtr((yyvsp[-6].pExpression)), "``MACRO``TAG``FIELD``", true); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 453: /* expr_mtag: expr '.' "?." "$f" '(' expr ')' */ + case 452: /* expr_mtag: expr '.' "?." "$f" '(' expr ')' */ { auto cfield = new ExprSafeField(tokAt(scanner,(yylsp[-4])), tokAt(scanner,(yylsp[-1])), ExpressionPtr((yyvsp[-6].pExpression)), "``MACRO``TAG``FIELD``", true); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 454: /* expr_mtag: expr "as" "$f" '(' expr ')' */ + case 453: /* expr_mtag: expr "as" "$f" '(' expr ')' */ { auto cfield = new ExprAsVariant(tokAt(scanner,(yylsp[-4])),ExpressionPtr((yyvsp[-5].pExpression)),"``MACRO``TAG``FIELD``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 455: /* expr_mtag: expr '?' "as" "$f" '(' expr ')' */ + case 454: /* expr_mtag: expr '?' "as" "$f" '(' expr ')' */ { auto cfield = new ExprSafeAsVariant(tokAt(scanner,(yylsp[-4])),ExpressionPtr((yyvsp[-6].pExpression)),"``MACRO``TAG``FIELD``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 456: /* expr_mtag: expr "is" "$f" '(' expr ')' */ + case 455: /* expr_mtag: expr "is" "$f" '(' expr ')' */ { auto cfield = new ExprIsVariant(tokAt(scanner,(yylsp[-4])),ExpressionPtr((yyvsp[-5].pExpression)),"``MACRO``TAG``FIELD``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression),cfield,"f"); } break; - case 457: /* expr_mtag: '@' '@' "$c" '(' expr ')' */ + case 456: /* expr_mtag: '@' '@' "$c" '(' expr ')' */ { auto ccall = new ExprAddr(tokAt(scanner,(yylsp[-4])),"``MACRO``TAG``ADDR``"); (yyval.pExpression) = new ExprTag(tokAt(scanner,(yylsp[-3])),(yyvsp[-1].pExpression),ccall,"c"); } break; - case 458: /* optional_field_annotation: %empty */ + case 457: /* optional_field_annotation: %empty */ { (yyval.aaList) = nullptr; } break; - case 459: /* optional_field_annotation: metadata_argument_list */ + case 458: /* optional_field_annotation: metadata_argument_list */ { (yyval.aaList) = (yyvsp[0].aaList); } break; - case 460: /* optional_override: %empty */ + case 459: /* optional_override: %empty */ { (yyval.i) = OVERRIDE_NONE; } break; - case 461: /* optional_override: "override" */ + case 460: /* optional_override: "override" */ { (yyval.i) = OVERRIDE_OVERRIDE; } break; - case 462: /* optional_override: "sealed" */ + case 461: /* optional_override: "sealed" */ { (yyval.i) = OVERRIDE_SEALED; } break; - case 463: /* optional_constant: %empty */ + case 462: /* optional_constant: %empty */ { (yyval.b) = false; } break; - case 464: /* optional_constant: "const" */ + case 463: /* optional_constant: "const" */ { (yyval.b) = true; } break; - case 465: /* optional_public_or_private_member_variable: %empty */ + case 464: /* optional_public_or_private_member_variable: %empty */ { (yyval.b) = false; } break; - case 466: /* optional_public_or_private_member_variable: "public" */ + case 465: /* optional_public_or_private_member_variable: "public" */ { (yyval.b) = false; } break; - case 467: /* optional_public_or_private_member_variable: "private" */ + case 466: /* optional_public_or_private_member_variable: "private" */ { (yyval.b) = true; } break; - case 468: /* optional_static_member_variable: %empty */ + case 467: /* optional_static_member_variable: %empty */ { (yyval.b) = false; } break; - case 469: /* optional_static_member_variable: "static" */ + case 468: /* optional_static_member_variable: "static" */ { (yyval.b) = true; } break; - case 470: /* structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration */ + case 469: /* structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration */ { (yyvsp[0].pVarDecl)->override = (yyvsp[-2].i) == OVERRIDE_OVERRIDE; (yyvsp[0].pVarDecl)->sealed = (yyvsp[-2].i) == OVERRIDE_SEALED; @@ -7865,13 +7846,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 471: /* struct_variable_declaration_list: %empty */ + case 470: /* struct_variable_declaration_list: %empty */ { (yyval.pVarDeclList) = new vector(); } break; - case 472: /* $@25: %empty */ + case 471: /* $@25: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -7880,7 +7861,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 473: /* struct_variable_declaration_list: struct_variable_declaration_list $@25 structure_variable_declaration "end of expression" */ + case 472: /* struct_variable_declaration_list: struct_variable_declaration_list $@25 structure_variable_declaration "end of expression" */ { (yyval.pVarDeclList) = (yyvsp[-3].pVarDeclList); if ( (yyvsp[-1].pVarDecl) ) (yyvsp[-3].pVarDeclList)->push_back((yyvsp[-1].pVarDecl)); @@ -7896,7 +7877,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 474: /* $@26: %empty */ + case 473: /* $@26: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[-2])); @@ -7905,7 +7886,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 475: /* struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" */ + case 474: /* struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[-1])); @@ -7915,7 +7896,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 476: /* $@27: %empty */ + case 475: /* $@27: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -7924,7 +7905,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 477: /* struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block */ + case 476: /* struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -7934,7 +7915,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 478: /* function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing variable_declaration */ + case 477: /* function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing variable_declaration */ { (yyval.pVarDecl) = (yyvsp[0].pVarDecl); if ( (yyvsp[-1].b) ) { @@ -7946,7 +7927,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 479: /* function_argument_declaration: "$a" '(' expr ')' */ + case 478: /* function_argument_declaration: "$a" '(' expr ')' */ { auto na = new vector(); na->push_back(VariableNameAndPosition{"``MACRO``TAG``","",tokAt(scanner,(yylsp[-1]))}); @@ -7956,21 +7937,21 @@ YYLTYPE yylloc = yyloc_default; } break; - case 480: /* function_argument_list: function_argument_declaration */ + case 479: /* function_argument_list: function_argument_declaration */ { (yyval.pVarDeclList) = new vector(); (yyval.pVarDeclList)->push_back((yyvsp[0].pVarDecl)); } break; - case 481: /* function_argument_list: function_argument_list "end of expression" function_argument_declaration */ + case 480: /* function_argument_list: function_argument_list "end of expression" function_argument_declaration */ { (yyval.pVarDeclList) = (yyvsp[-2].pVarDeclList); (yyvsp[-2].pVarDeclList)->push_back((yyvsp[0].pVarDecl)); } break; - case 482: /* tuple_type: type_declaration */ + case 481: /* tuple_type: type_declaration */ { (yyval.pVarDecl) = new VariableDeclaration(nullptr,(yyvsp[0].pTypeDecl),nullptr); } break; - case 483: /* tuple_type: "name" ':' type_declaration */ + case 482: /* tuple_type: "name" ':' type_declaration */ { auto na = new vector(); na->push_back(VariableNameAndPosition{*(yyvsp[-2].s),"",tokAt(scanner,(yylsp[-2]))}); @@ -7979,27 +7960,27 @@ YYLTYPE yylloc = yyloc_default; } break; - case 484: /* tuple_type_list: tuple_type */ + case 483: /* tuple_type_list: tuple_type */ { (yyval.pVarDeclList) = new vector(); (yyval.pVarDeclList)->push_back((yyvsp[0].pVarDecl)); } break; - case 485: /* tuple_type_list: tuple_type_list "end of expression" tuple_type */ + case 484: /* tuple_type_list: tuple_type_list "end of expression" tuple_type */ { (yyval.pVarDeclList) = (yyvsp[-2].pVarDeclList); (yyvsp[-2].pVarDeclList)->push_back((yyvsp[0].pVarDecl)); } break; - case 486: /* tuple_alias_type_list: %empty */ + case 485: /* tuple_alias_type_list: %empty */ { (yyval.pVarDeclList) = new vector(); } break; - case 487: /* tuple_alias_type_list: tuple_alias_type_list "end of expression" */ + case 486: /* tuple_alias_type_list: tuple_alias_type_list "end of expression" */ { (yyval.pVarDeclList) = (yyvsp[-1].pVarDeclList); } break; - case 488: /* tuple_alias_type_list: tuple_alias_type_list tuple_type "end of expression" */ + case 487: /* tuple_alias_type_list: tuple_alias_type_list tuple_type "end of expression" */ { (yyval.pVarDeclList) = (yyvsp[-2].pVarDeclList); (yyvsp[-2].pVarDeclList)->push_back((yyvsp[-1].pVarDecl)); /* @@ -8015,7 +7996,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 489: /* variant_type: "name" ':' type_declaration */ + case 488: /* variant_type: "name" ':' type_declaration */ { auto na = new vector(); na->push_back(VariableNameAndPosition{*(yyvsp[-2].s),"",tokAt(scanner,(yylsp[-2]))}); @@ -8024,27 +8005,27 @@ YYLTYPE yylloc = yyloc_default; } break; - case 490: /* variant_type_list: variant_type */ + case 489: /* variant_type_list: variant_type */ { (yyval.pVarDeclList) = new vector(); (yyval.pVarDeclList)->push_back((yyvsp[0].pVarDecl)); } break; - case 491: /* variant_type_list: variant_type_list "end of expression" variant_type */ + case 490: /* variant_type_list: variant_type_list "end of expression" variant_type */ { (yyval.pVarDeclList) = (yyvsp[-2].pVarDeclList); (yyvsp[-2].pVarDeclList)->push_back((yyvsp[0].pVarDecl)); } break; - case 492: /* variant_alias_type_list: %empty */ + case 491: /* variant_alias_type_list: %empty */ { (yyval.pVarDeclList) = new vector(); } break; - case 493: /* variant_alias_type_list: variant_alias_type_list "end of expression" */ + case 492: /* variant_alias_type_list: variant_alias_type_list "end of expression" */ { (yyval.pVarDeclList) = (yyvsp[-1].pVarDeclList); } break; - case 494: /* variant_alias_type_list: variant_alias_type_list variant_type "end of expression" */ + case 493: /* variant_alias_type_list: variant_alias_type_list variant_type "end of expression" */ { (yyval.pVarDeclList) = (yyvsp[-2].pVarDeclList); (yyvsp[-2].pVarDeclList)->push_back((yyvsp[-1].pVarDecl)); if ( !yyextra->g_CommentReaders.empty() ) { @@ -8058,15 +8039,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 495: /* copy_or_move: '=' */ + case 494: /* copy_or_move: '=' */ { (yyval.b) = false; } break; - case 496: /* copy_or_move: "<-" */ + case 495: /* copy_or_move: "<-" */ { (yyval.b) = true; } break; - case 497: /* variable_declaration: variable_name_with_pos_list */ + case 496: /* variable_declaration: variable_name_with_pos_list */ { auto autoT = new TypeDecl(Type::autoinfer); autoT->at = tokAt(scanner,(yylsp[0])); @@ -8075,7 +8056,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 498: /* variable_declaration: variable_name_with_pos_list '&' */ + case 497: /* variable_declaration: variable_name_with_pos_list '&' */ { auto autoT = new TypeDecl(Type::autoinfer); autoT->at = tokAt(scanner,(yylsp[-1])); @@ -8084,20 +8065,20 @@ YYLTYPE yylloc = yyloc_default; } break; - case 499: /* variable_declaration: variable_name_with_pos_list ':' type_declaration */ + case 498: /* variable_declaration: variable_name_with_pos_list ':' type_declaration */ { (yyval.pVarDecl) = new VariableDeclaration((yyvsp[-2].pNameWithPosList),(yyvsp[0].pTypeDecl),nullptr); } break; - case 500: /* variable_declaration: variable_name_with_pos_list ':' type_declaration copy_or_move expr */ + case 499: /* variable_declaration: variable_name_with_pos_list ':' type_declaration copy_or_move expr */ { (yyval.pVarDecl) = new VariableDeclaration((yyvsp[-4].pNameWithPosList),(yyvsp[-2].pTypeDecl),(yyvsp[0].pExpression)); (yyval.pVarDecl)->init_via_move = (yyvsp[-1].b); } break; - case 501: /* variable_declaration: variable_name_with_pos_list copy_or_move expr */ + case 500: /* variable_declaration: variable_name_with_pos_list copy_or_move expr */ { auto typeDecl = new TypeDecl(Type::autoinfer); typeDecl->at = tokAt(scanner,(yylsp[-2])); @@ -8106,27 +8087,27 @@ YYLTYPE yylloc = yyloc_default; } break; - case 502: /* copy_or_move_or_clone: '=' */ + case 501: /* copy_or_move_or_clone: '=' */ { (yyval.i) = CorM_COPY; } break; - case 503: /* copy_or_move_or_clone: "<-" */ + case 502: /* copy_or_move_or_clone: "<-" */ { (yyval.i) = CorM_MOVE; } break; - case 504: /* copy_or_move_or_clone: ":=" */ + case 503: /* copy_or_move_or_clone: ":=" */ { (yyval.i) = CorM_CLONE; } break; - case 505: /* optional_ref: %empty */ + case 504: /* optional_ref: %empty */ { (yyval.b) = false; } break; - case 506: /* optional_ref: '&' */ + case 505: /* optional_ref: '&' */ { (yyval.b) = true; } break; - case 507: /* let_variable_name_with_pos_list: "name" */ + case 506: /* let_variable_name_with_pos_list: "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); auto pSL = new vector(); @@ -8136,7 +8117,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 508: /* let_variable_name_with_pos_list: "$i" '(' expr ')' */ + case 507: /* let_variable_name_with_pos_list: "$i" '(' expr ')' */ { auto pSL = new vector(); pSL->push_back(VariableNameAndPosition{"``MACRO``TAG``","",tokAt(scanner,(yylsp[-1])),ExpressionPtr((yyvsp[-1].pExpression))}); @@ -8144,7 +8125,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 509: /* let_variable_name_with_pos_list: "name" "aka" "name" */ + case 508: /* let_variable_name_with_pos_list: "name" "aka" "name" */ { das_checkName(scanner,*(yyvsp[-2].s),tokAt(scanner,(yylsp[-2]))); das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); @@ -8156,7 +8137,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 510: /* let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" */ + case 509: /* let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); (yyvsp[-2].pNameWithPosList)->push_back(VariableNameAndPosition{*(yyvsp[0].s),"",tokAt(scanner,(yylsp[0]))}); @@ -8165,7 +8146,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 511: /* let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" "aka" "name" */ + case 510: /* let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" "aka" "name" */ { das_checkName(scanner,*(yyvsp[-2].s),tokAt(scanner,(yylsp[-2]))); das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); @@ -8176,13 +8157,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 512: /* let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" */ + case 511: /* let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" */ { (yyval.pVarDecl) = new VariableDeclaration((yyvsp[-3].pNameWithPosList),(yyvsp[-1].pTypeDecl),nullptr); } break; - case 513: /* let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" */ + case 512: /* let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" */ { (yyval.pVarDecl) = new VariableDeclaration((yyvsp[-5].pNameWithPosList),(yyvsp[-3].pTypeDecl),(yyvsp[-1].pExpression)); (yyval.pVarDecl)->init_via_move = ((yyvsp[-2].i) & CorM_MOVE) !=0; @@ -8190,7 +8171,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 514: /* let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr "end of expression" */ + case 513: /* let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr "end of expression" */ { auto typeDecl = new TypeDecl(Type::autoinfer); typeDecl->at = tokAt(scanner,(yylsp[-4])); @@ -8201,13 +8182,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 515: /* global_variable_declaration_list: %empty */ + case 514: /* global_variable_declaration_list: %empty */ { (yyval.pVarDeclList) = new vector(); } break; - case 516: /* $@28: %empty */ + case 515: /* $@28: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -8216,7 +8197,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 517: /* global_variable_declaration_list: global_variable_declaration_list $@28 optional_field_annotation let_variable_declaration */ + case 516: /* global_variable_declaration_list: global_variable_declaration_list $@28 optional_field_annotation let_variable_declaration */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -8231,33 +8212,33 @@ YYLTYPE yylloc = yyloc_default; } break; - case 518: /* optional_shared: %empty */ + case 517: /* optional_shared: %empty */ { (yyval.b) = false; } break; - case 519: /* optional_shared: "shared" */ + case 518: /* optional_shared: "shared" */ { (yyval.b) = true; } break; - case 520: /* optional_public_or_private_variable: %empty */ + case 519: /* optional_public_or_private_variable: %empty */ { (yyval.b) = yyextra->g_Program->thisModule->isPublic; } break; - case 521: /* optional_public_or_private_variable: "private" */ + case 520: /* optional_public_or_private_variable: "private" */ { (yyval.b) = false; } break; - case 522: /* optional_public_or_private_variable: "public" */ + case 521: /* optional_public_or_private_variable: "public" */ { (yyval.b) = true; } break; - case 523: /* global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" */ + case 522: /* global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" */ { ast_globalLetList(scanner,(yyvsp[-5].b),(yyvsp[-4].b),(yyvsp[-3].b),(yyvsp[-1].pVarDeclList)); } break; - case 524: /* $@29: %empty */ + case 523: /* $@29: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -8266,7 +8247,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 525: /* global_let: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration */ + case 524: /* global_let: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[0])); @@ -8279,27 +8260,27 @@ YYLTYPE yylloc = yyloc_default; } break; - case 526: /* enum_expression: "name" */ + case 525: /* enum_expression: "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); (yyval.pEnumPair) = new EnumPair((yyvsp[0].s),tokAt(scanner,(yylsp[0]))); } break; - case 527: /* enum_expression: "name" '=' expr */ + case 526: /* enum_expression: "name" '=' expr */ { das_checkName(scanner,*(yyvsp[-2].s),tokAt(scanner,(yylsp[-2]))); (yyval.pEnumPair) = new EnumPair((yyvsp[-2].s),(yyvsp[0].pExpression),tokAt(scanner,(yylsp[-2]))); } break; - case 528: /* enum_list: %empty */ + case 527: /* enum_list: %empty */ { (yyval.pEnum) = new Enumeration(); } break; - case 529: /* enum_list: enum_expression */ + case 528: /* enum_list: enum_expression */ { (yyval.pEnum) = new Enumeration(); if ( !(yyval.pEnum)->add((yyvsp[0].pEnumPair)->name,(yyvsp[0].pEnumPair)->expr,(yyvsp[0].pEnumPair)->at) ) { @@ -8315,7 +8296,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 530: /* enum_list: enum_list ',' enum_expression */ + case 529: /* enum_list: enum_list ',' enum_expression */ { if ( !(yyvsp[-2].pEnum)->add((yyvsp[0].pEnumPair)->name,(yyvsp[0].pEnumPair)->expr,(yyvsp[0].pEnumPair)->at) ) { das2_yyerror(scanner,"enumeration already declared " + (yyvsp[0].pEnumPair)->name, (yyvsp[0].pEnumPair)->at, @@ -8331,19 +8312,19 @@ YYLTYPE yylloc = yyloc_default; } break; - case 531: /* optional_public_or_private_alias: %empty */ + case 530: /* optional_public_or_private_alias: %empty */ { (yyval.b) = yyextra->g_Program->thisModule->isPublic; } break; - case 532: /* optional_public_or_private_alias: "private" */ + case 531: /* optional_public_or_private_alias: "private" */ { (yyval.b) = false; } break; - case 533: /* optional_public_or_private_alias: "public" */ + case 532: /* optional_public_or_private_alias: "public" */ { (yyval.b) = true; } break; - case 534: /* $@30: %empty */ + case 533: /* $@30: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto pubename = tokAt(scanner,(yylsp[0])); @@ -8352,7 +8333,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 535: /* single_alias: optional_public_or_private_alias "name" $@30 '=' type_declaration */ + case 534: /* single_alias: optional_public_or_private_alias "name" $@30 '=' type_declaration */ { das_checkName(scanner,*(yyvsp[-3].s),tokAt(scanner,(yylsp[-3]))); (yyvsp[0].pTypeDecl)->isPrivateAlias = !(yyvsp[-4].b); @@ -8373,19 +8354,19 @@ YYLTYPE yylloc = yyloc_default; } break; - case 537: /* optional_public_or_private_enum: %empty */ + case 536: /* optional_public_or_private_enum: %empty */ { (yyval.b) = yyextra->g_Program->thisModule->isPublic; } break; - case 538: /* optional_public_or_private_enum: "private" */ + case 537: /* optional_public_or_private_enum: "private" */ { (yyval.b) = false; } break; - case 539: /* optional_public_or_private_enum: "public" */ + case 538: /* optional_public_or_private_enum: "public" */ { (yyval.b) = true; } break; - case 540: /* enum_name: "name" */ + case 539: /* enum_name: "name" */ { if ( !yyextra->g_CommentReaders.empty() ) { auto pubename = tokAt(scanner,(yylsp[0])); @@ -8395,19 +8376,19 @@ YYLTYPE yylloc = yyloc_default; } break; - case 541: /* optional_enum_basic_type_declaration: %empty */ + case 540: /* optional_enum_basic_type_declaration: %empty */ { (yyval.type) = Type::tInt; } break; - case 542: /* optional_enum_basic_type_declaration: ':' enum_basic_type_declaration */ + case 541: /* optional_enum_basic_type_declaration: ':' enum_basic_type_declaration */ { (yyval.type) = (yyvsp[0].type); } break; - case 543: /* $@31: %empty */ + case 542: /* $@31: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[-2])); @@ -8416,7 +8397,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 544: /* $@32: %empty */ + case 543: /* $@32: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[-1])); @@ -8425,7 +8406,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 545: /* enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" */ + case 544: /* enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" */ { if ( !yyextra->g_CommentReaders.empty() ) { auto pubename = tokAt(scanner,(yylsp[-3])); @@ -8435,61 +8416,61 @@ YYLTYPE yylloc = yyloc_default; } break; - case 546: /* optional_structure_parent: %empty */ + case 545: /* optional_structure_parent: %empty */ { (yyval.s) = nullptr; } break; - case 547: /* optional_structure_parent: ':' name_in_namespace */ + case 546: /* optional_structure_parent: ':' name_in_namespace */ { (yyval.s) = (yyvsp[0].s); } break; - case 548: /* optional_sealed: %empty */ + case 547: /* optional_sealed: %empty */ { (yyval.b) = false; } break; - case 549: /* optional_sealed: "sealed" */ + case 548: /* optional_sealed: "sealed" */ { (yyval.b) = true; } break; - case 550: /* structure_name: optional_sealed "name" optional_structure_parent */ + case 549: /* structure_name: optional_sealed "name" optional_structure_parent */ { (yyval.pStructure) = ast_structureName(scanner,(yyvsp[-2].b),(yyvsp[-1].s),tokAt(scanner,(yylsp[-1])),(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); } break; - case 551: /* class_or_struct: "class" */ + case 550: /* class_or_struct: "class" */ { (yyval.b) = true; } break; - case 552: /* class_or_struct: "struct" */ + case 551: /* class_or_struct: "struct" */ { (yyval.b) = false; } break; - case 553: /* optional_public_or_private_structure: %empty */ + case 552: /* optional_public_or_private_structure: %empty */ { (yyval.b) = yyextra->g_Program->thisModule->isPublic; } break; - case 554: /* optional_public_or_private_structure: "private" */ + case 553: /* optional_public_or_private_structure: "private" */ { (yyval.b) = false; } break; - case 555: /* optional_public_or_private_structure: "public" */ + case 554: /* optional_public_or_private_structure: "public" */ { (yyval.b) = true; } break; - case 556: /* optional_struct_variable_declaration_list: %empty */ + case 555: /* optional_struct_variable_declaration_list: %empty */ { (yyval.pVarDeclList) = new vector(); } break; - case 557: /* optional_struct_variable_declaration_list: "begin of code block" struct_variable_declaration_list "end of code block" */ + case 556: /* optional_struct_variable_declaration_list: "begin of code block" struct_variable_declaration_list "end of code block" */ { (yyval.pVarDeclList) = (yyvsp[-1].pVarDeclList); } break; - case 558: /* $@33: %empty */ + case 557: /* $@33: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto tak = tokAt(scanner,(yylsp[-1])); @@ -8498,11 +8479,11 @@ YYLTYPE yylloc = yyloc_default; } break; - case 559: /* $@34: %empty */ + case 558: /* $@34: %empty */ { if ( (yyvsp[0].pStructure) ) { (yyvsp[0].pStructure)->isClass = (yyvsp[-3].b); (yyvsp[0].pStructure)->privateStructure = !(yyvsp[-2].b); } } break; - case 560: /* structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 structure_name $@34 optional_struct_variable_declaration_list */ + case 559: /* structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 structure_name $@34 optional_struct_variable_declaration_list */ { if ( (yyvsp[-2].pStructure) ) { ast_structureDeclaration ( scanner, (yyvsp[-6].faList), tokAt(scanner,(yylsp[-5])), (yyvsp[-2].pStructure), tokAt(scanner,(yylsp[-2])), (yyvsp[0].pVarDeclList) ); @@ -8516,7 +8497,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 561: /* variable_name_with_pos_list: "name" */ + case 560: /* variable_name_with_pos_list: "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); auto pSL = new vector(); @@ -8526,7 +8507,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 562: /* variable_name_with_pos_list: "$i" '(' expr ')' */ + case 561: /* variable_name_with_pos_list: "$i" '(' expr ')' */ { auto pSL = new vector(); pSL->push_back(VariableNameAndPosition{"``MACRO``TAG``","",tokAt(scanner,(yylsp[-1])),(yyvsp[-1].pExpression)}); @@ -8534,7 +8515,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 563: /* variable_name_with_pos_list: "name" "aka" "name" */ + case 562: /* variable_name_with_pos_list: "name" "aka" "name" */ { das_checkName(scanner,*(yyvsp[-2].s),tokAt(scanner,(yylsp[-2]))); das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); @@ -8546,7 +8527,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 564: /* variable_name_with_pos_list: variable_name_with_pos_list ',' "name" */ + case 563: /* variable_name_with_pos_list: variable_name_with_pos_list ',' "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); (yyvsp[-2].pNameWithPosList)->push_back(VariableNameAndPosition{*(yyvsp[0].s),"",tokAt(scanner,(yylsp[0]))}); @@ -8555,7 +8536,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 565: /* variable_name_with_pos_list: variable_name_with_pos_list ',' "name" "aka" "name" */ + case 564: /* variable_name_with_pos_list: variable_name_with_pos_list ',' "name" "aka" "name" */ { das_checkName(scanner,*(yyvsp[-2].s),tokAt(scanner,(yylsp[-2]))); das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); @@ -8566,147 +8547,147 @@ YYLTYPE yylloc = yyloc_default; } break; - case 566: /* basic_type_declaration: "bool" */ + case 565: /* basic_type_declaration: "bool" */ { (yyval.type) = Type::tBool; } break; - case 567: /* basic_type_declaration: "string" */ + case 566: /* basic_type_declaration: "string" */ { (yyval.type) = Type::tString; } break; - case 568: /* basic_type_declaration: "int" */ + case 567: /* basic_type_declaration: "int" */ { (yyval.type) = Type::tInt; } break; - case 569: /* basic_type_declaration: "int8" */ + case 568: /* basic_type_declaration: "int8" */ { (yyval.type) = Type::tInt8; } break; - case 570: /* basic_type_declaration: "int16" */ + case 569: /* basic_type_declaration: "int16" */ { (yyval.type) = Type::tInt16; } break; - case 571: /* basic_type_declaration: "int64" */ + case 570: /* basic_type_declaration: "int64" */ { (yyval.type) = Type::tInt64; } break; - case 572: /* basic_type_declaration: "int2" */ + case 571: /* basic_type_declaration: "int2" */ { (yyval.type) = Type::tInt2; } break; - case 573: /* basic_type_declaration: "int3" */ + case 572: /* basic_type_declaration: "int3" */ { (yyval.type) = Type::tInt3; } break; - case 574: /* basic_type_declaration: "int4" */ + case 573: /* basic_type_declaration: "int4" */ { (yyval.type) = Type::tInt4; } break; - case 575: /* basic_type_declaration: "uint" */ + case 574: /* basic_type_declaration: "uint" */ { (yyval.type) = Type::tUInt; } break; - case 576: /* basic_type_declaration: "uint8" */ + case 575: /* basic_type_declaration: "uint8" */ { (yyval.type) = Type::tUInt8; } break; - case 577: /* basic_type_declaration: "uint16" */ + case 576: /* basic_type_declaration: "uint16" */ { (yyval.type) = Type::tUInt16; } break; - case 578: /* basic_type_declaration: "uint64" */ + case 577: /* basic_type_declaration: "uint64" */ { (yyval.type) = Type::tUInt64; } break; - case 579: /* basic_type_declaration: "uint2" */ + case 578: /* basic_type_declaration: "uint2" */ { (yyval.type) = Type::tUInt2; } break; - case 580: /* basic_type_declaration: "uint3" */ + case 579: /* basic_type_declaration: "uint3" */ { (yyval.type) = Type::tUInt3; } break; - case 581: /* basic_type_declaration: "uint4" */ + case 580: /* basic_type_declaration: "uint4" */ { (yyval.type) = Type::tUInt4; } break; - case 582: /* basic_type_declaration: "float" */ + case 581: /* basic_type_declaration: "float" */ { (yyval.type) = Type::tFloat; } break; - case 583: /* basic_type_declaration: "float2" */ + case 582: /* basic_type_declaration: "float2" */ { (yyval.type) = Type::tFloat2; } break; - case 584: /* basic_type_declaration: "float3" */ + case 583: /* basic_type_declaration: "float3" */ { (yyval.type) = Type::tFloat3; } break; - case 585: /* basic_type_declaration: "float4" */ + case 584: /* basic_type_declaration: "float4" */ { (yyval.type) = Type::tFloat4; } break; - case 586: /* basic_type_declaration: "void" */ + case 585: /* basic_type_declaration: "void" */ { (yyval.type) = Type::tVoid; } break; - case 587: /* basic_type_declaration: "range" */ + case 586: /* basic_type_declaration: "range" */ { (yyval.type) = Type::tRange; } break; - case 588: /* basic_type_declaration: "urange" */ + case 587: /* basic_type_declaration: "urange" */ { (yyval.type) = Type::tURange; } break; - case 589: /* basic_type_declaration: "range64" */ + case 588: /* basic_type_declaration: "range64" */ { (yyval.type) = Type::tRange64; } break; - case 590: /* basic_type_declaration: "urange64" */ + case 589: /* basic_type_declaration: "urange64" */ { (yyval.type) = Type::tURange64; } break; - case 591: /* basic_type_declaration: "double" */ + case 590: /* basic_type_declaration: "double" */ { (yyval.type) = Type::tDouble; } break; - case 592: /* basic_type_declaration: "bitfield" */ + case 591: /* basic_type_declaration: "bitfield" */ { (yyval.type) = Type::tBitfield; } break; - case 593: /* enum_basic_type_declaration: "int" */ + case 592: /* enum_basic_type_declaration: "int" */ { (yyval.type) = Type::tInt; } break; - case 594: /* enum_basic_type_declaration: "int8" */ + case 593: /* enum_basic_type_declaration: "int8" */ { (yyval.type) = Type::tInt8; } break; - case 595: /* enum_basic_type_declaration: "int16" */ + case 594: /* enum_basic_type_declaration: "int16" */ { (yyval.type) = Type::tInt16; } break; - case 596: /* enum_basic_type_declaration: "uint" */ + case 595: /* enum_basic_type_declaration: "uint" */ { (yyval.type) = Type::tUInt; } break; - case 597: /* enum_basic_type_declaration: "uint8" */ + case 596: /* enum_basic_type_declaration: "uint8" */ { (yyval.type) = Type::tUInt8; } break; - case 598: /* enum_basic_type_declaration: "uint16" */ + case 597: /* enum_basic_type_declaration: "uint16" */ { (yyval.type) = Type::tUInt16; } break; - case 599: /* enum_basic_type_declaration: "int64" */ + case 598: /* enum_basic_type_declaration: "int64" */ { (yyval.type) = Type::tInt64; } break; - case 600: /* enum_basic_type_declaration: "uint64" */ + case 599: /* enum_basic_type_declaration: "uint64" */ { (yyval.type) = Type::tUInt64; } break; - case 601: /* structure_type_declaration: name_in_namespace */ + case 600: /* structure_type_declaration: name_in_namespace */ { (yyval.pTypeDecl) = yyextra->g_Program->makeTypeDeclaration(tokAt(scanner,(yylsp[0])),*(yyvsp[0].s)); if ( !(yyval.pTypeDecl) ) { @@ -8717,14 +8698,14 @@ YYLTYPE yylloc = yyloc_default; } break; - case 602: /* auto_type_declaration: "auto" */ + case 601: /* auto_type_declaration: "auto" */ { (yyval.pTypeDecl) = new TypeDecl(Type::autoinfer); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[0])); } break; - case 603: /* auto_type_declaration: "auto" '(' "name" ')' */ + case 602: /* auto_type_declaration: "auto" '(' "name" ')' */ { das_checkName(scanner,*(yyvsp[-1].s),tokAt(scanner,(yylsp[-1]))); (yyval.pTypeDecl) = new TypeDecl(Type::autoinfer); @@ -8734,7 +8715,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 604: /* auto_type_declaration: "$t" '(' expr ')' */ + case 603: /* auto_type_declaration: "$t" '(' expr ')' */ { (yyval.pTypeDecl) = new TypeDecl(Type::alias); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-3])); @@ -8746,7 +8727,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 605: /* bitfield_bits: "name" */ + case 604: /* bitfield_bits: "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); auto pSL = new vector(); @@ -8756,7 +8737,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 606: /* bitfield_bits: bitfield_bits "end of expression" "name" */ + case 605: /* bitfield_bits: bitfield_bits "end of expression" "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); (yyvsp[-2].pNameList)->push_back(*(yyvsp[0].s)); @@ -8765,7 +8746,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 607: /* bitfield_alias_bits: %empty */ + case 606: /* bitfield_alias_bits: %empty */ { auto pSL = new vector(); (yyval.pNameList) = pSL; @@ -8773,7 +8754,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 608: /* bitfield_alias_bits: "name" */ + case 607: /* bitfield_alias_bits: "name" */ { (yyval.pNameList) = new vector(); das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); @@ -8786,7 +8767,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 609: /* bitfield_alias_bits: bitfield_alias_bits ',' "name" */ + case 608: /* bitfield_alias_bits: bitfield_alias_bits ',' "name" */ { das_checkName(scanner,*(yyvsp[0].s),tokAt(scanner,(yylsp[0]))); (yyvsp[-2].pNameList)->push_back(*(yyvsp[0].s)); @@ -8799,15 +8780,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 610: /* $@35: %empty */ + case 609: /* $@35: %empty */ { yyextra->das_arrow_depth ++; } break; - case 611: /* $@36: %empty */ + case 610: /* $@36: %empty */ { yyextra->das_arrow_depth --; } break; - case 612: /* bitfield_type_declaration: "bitfield" '<' $@35 bitfield_bits '>' $@36 */ + case 611: /* bitfield_type_declaration: "bitfield" '<' $@35 bitfield_bits '>' $@36 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tBitfield); (yyval.pTypeDecl)->argNames = *(yyvsp[-2].pNameList); @@ -8820,55 +8801,55 @@ YYLTYPE yylloc = yyloc_default; } break; - case 613: /* table_type_pair: type_declaration */ + case 612: /* table_type_pair: type_declaration */ { (yyval.aTypePair).firstType = (yyvsp[0].pTypeDecl); (yyval.aTypePair).secondType = new TypeDecl(Type::tVoid); } break; - case 614: /* table_type_pair: type_declaration "end of expression" type_declaration */ + case 613: /* table_type_pair: type_declaration "end of expression" type_declaration */ { (yyval.aTypePair).firstType = (yyvsp[-2].pTypeDecl); (yyval.aTypePair).secondType = (yyvsp[0].pTypeDecl); } break; - case 615: /* dim_list: '[' expr ']' */ + case 614: /* dim_list: '[' expr ']' */ { (yyval.pTypeDecl) = new TypeDecl(Type::autoinfer); appendDimExpr((yyval.pTypeDecl), (yyvsp[-1].pExpression)); } break; - case 616: /* dim_list: '[' ']' */ + case 615: /* dim_list: '[' ']' */ { (yyval.pTypeDecl) = new TypeDecl(Type::autoinfer); appendDimExpr((yyval.pTypeDecl), nullptr); } break; - case 617: /* dim_list: dim_list '[' expr ']' */ + case 616: /* dim_list: dim_list '[' expr ']' */ { (yyval.pTypeDecl) = (yyvsp[-3].pTypeDecl); appendDimExpr((yyval.pTypeDecl), (yyvsp[-1].pExpression)); } break; - case 618: /* dim_list: dim_list '[' ']' */ + case 617: /* dim_list: dim_list '[' ']' */ { (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); appendDimExpr((yyval.pTypeDecl), nullptr); } break; - case 619: /* type_declaration_no_options: type_declaration_no_options_no_dim */ + case 618: /* type_declaration_no_options: type_declaration_no_options_no_dim */ { (yyval.pTypeDecl) = (yyvsp[0].pTypeDecl); } break; - case 620: /* type_declaration_no_options: type_declaration_no_options_no_dim dim_list */ + case 619: /* type_declaration_no_options: type_declaration_no_options_no_dim dim_list */ { if ( (yyvsp[-1].pTypeDecl)->baseType==Type::typeDecl ) { das2_yyerror(scanner,"type declaration can`t be used as array base type",tokAt(scanner,(yylsp[-1])), @@ -8886,38 +8867,38 @@ YYLTYPE yylloc = yyloc_default; } break; - case 621: /* type_declaration_no_options_no_dim: basic_type_declaration */ + case 620: /* type_declaration_no_options_no_dim: basic_type_declaration */ { (yyval.pTypeDecl) = new TypeDecl((yyvsp[0].type)); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[0])); } break; - case 622: /* type_declaration_no_options_no_dim: auto_type_declaration */ + case 621: /* type_declaration_no_options_no_dim: auto_type_declaration */ { (yyval.pTypeDecl) = (yyvsp[0].pTypeDecl); } break; - case 623: /* type_declaration_no_options_no_dim: bitfield_type_declaration */ + case 622: /* type_declaration_no_options_no_dim: bitfield_type_declaration */ { (yyval.pTypeDecl) = (yyvsp[0].pTypeDecl); } break; - case 624: /* type_declaration_no_options_no_dim: structure_type_declaration */ + case 623: /* type_declaration_no_options_no_dim: structure_type_declaration */ { (yyval.pTypeDecl) = (yyvsp[0].pTypeDecl); } break; - case 625: /* $@37: %empty */ + case 624: /* $@37: %empty */ { yyextra->das_arrow_depth ++; } break; - case 626: /* $@38: %empty */ + case 625: /* $@38: %empty */ { yyextra->das_arrow_depth --; } break; - case 627: /* type_declaration_no_options_no_dim: "type" '<' $@37 type_declaration '>' $@38 */ + case 626: /* type_declaration_no_options_no_dim: "type" '<' $@37 type_declaration '>' $@38 */ { (yyvsp[-2].pTypeDecl)->autoToAlias = true; (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); } break; - case 628: /* type_declaration_no_options_no_dim: "typedecl" '(' expr ')' */ + case 627: /* type_declaration_no_options_no_dim: "typedecl" '(' expr ')' */ { (yyval.pTypeDecl) = new TypeDecl(Type::typeDecl); (yyval.pTypeDecl)->at = tokRangeAt(scanner,(yylsp[-3]),(yylsp[-1])); @@ -8925,7 +8906,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 629: /* type_declaration_no_options_no_dim: '$' name_in_namespace '(' optional_expr_list ')' */ + case 628: /* type_declaration_no_options_no_dim: '$' name_in_namespace '(' optional_expr_list ')' */ { (yyval.pTypeDecl) = new TypeDecl(Type::typeMacro); (yyval.pTypeDecl)->at = tokRangeAt(scanner,(yylsp[-3]), (yylsp[-1])); @@ -8935,11 +8916,11 @@ YYLTYPE yylloc = yyloc_default; } break; - case 630: /* $@39: %empty */ + case 629: /* $@39: %empty */ { yyextra->das_arrow_depth ++; } break; - case 631: /* type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' */ + case 630: /* type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' */ { (yyval.pTypeDecl) = new TypeDecl(Type::typeMacro); (yyval.pTypeDecl)->at = tokRangeAt(scanner,(yylsp[-7]), (yylsp[-1])); @@ -8949,21 +8930,21 @@ YYLTYPE yylloc = yyloc_default; } break; - case 632: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '[' ']' */ + case 631: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '[' ']' */ { (yyvsp[-3].pTypeDecl)->removeDim = true; (yyval.pTypeDecl) = (yyvsp[-3].pTypeDecl); } break; - case 633: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "explicit" */ + case 632: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "explicit" */ { (yyvsp[-1].pTypeDecl)->isExplicit = true; (yyval.pTypeDecl) = (yyvsp[-1].pTypeDecl); } break; - case 634: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "const" */ + case 633: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "const" */ { (yyvsp[-1].pTypeDecl)->constant = true; (yyvsp[-1].pTypeDecl)->removeConstant = false; @@ -8971,7 +8952,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 635: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' "const" */ + case 634: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' "const" */ { (yyvsp[-2].pTypeDecl)->constant = false; (yyvsp[-2].pTypeDecl)->removeConstant = true; @@ -8979,7 +8960,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 636: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '&' */ + case 635: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '&' */ { (yyvsp[-1].pTypeDecl)->ref = true; (yyvsp[-1].pTypeDecl)->removeRef = false; @@ -8987,7 +8968,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 637: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '&' */ + case 636: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '&' */ { (yyvsp[-2].pTypeDecl)->ref = false; (yyvsp[-2].pTypeDecl)->removeRef = true; @@ -8995,21 +8976,21 @@ YYLTYPE yylloc = yyloc_default; } break; - case 638: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '#' */ + case 637: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '#' */ { (yyval.pTypeDecl) = (yyvsp[-1].pTypeDecl); (yyval.pTypeDecl)->temporary = true; } break; - case 639: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "implicit" */ + case 638: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "implicit" */ { (yyval.pTypeDecl) = (yyvsp[-1].pTypeDecl); (yyval.pTypeDecl)->implicit = true; } break; - case 640: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '#' */ + case 639: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '#' */ { (yyvsp[-2].pTypeDecl)->temporary = false; (yyvsp[-2].pTypeDecl)->removeTemporary = true; @@ -9017,21 +8998,21 @@ YYLTYPE yylloc = yyloc_default; } break; - case 641: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "==" "const" */ + case 640: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "==" "const" */ { (yyvsp[-2].pTypeDecl)->explicitConst = true; (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); } break; - case 642: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "==" '&' */ + case 641: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "==" '&' */ { (yyvsp[-2].pTypeDecl)->explicitRef = true; (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); } break; - case 643: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '*' */ + case 642: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '*' */ { (yyval.pTypeDecl) = new TypeDecl(Type::tPointer); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-1])); @@ -9039,15 +9020,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 644: /* $@40: %empty */ + case 643: /* $@40: %empty */ { yyextra->das_arrow_depth ++; } break; - case 645: /* $@41: %empty */ + case 644: /* $@41: %empty */ { yyextra->das_arrow_depth --; } break; - case 646: /* type_declaration_no_options_no_dim: "smart_ptr" '<' $@40 type_declaration '>' $@41 */ + case 645: /* type_declaration_no_options_no_dim: "smart_ptr" '<' $@40 type_declaration '>' $@41 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tPointer); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -9056,7 +9037,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 647: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "??" */ + case 646: /* type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "??" */ { (yyval.pTypeDecl) = new TypeDecl(Type::tPointer); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-1])); @@ -9066,15 +9047,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 648: /* $@42: %empty */ + case 647: /* $@42: %empty */ { yyextra->das_arrow_depth ++; } break; - case 649: /* $@43: %empty */ + case 648: /* $@43: %empty */ { yyextra->das_arrow_depth --; } break; - case 650: /* type_declaration_no_options_no_dim: "array" '<' $@42 type_declaration '>' $@43 */ + case 649: /* type_declaration_no_options_no_dim: "array" '<' $@42 type_declaration '>' $@43 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tArray); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -9082,15 +9063,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 651: /* $@44: %empty */ + case 650: /* $@44: %empty */ { yyextra->das_arrow_depth ++; } break; - case 652: /* $@45: %empty */ + case 651: /* $@45: %empty */ { yyextra->das_arrow_depth --; } break; - case 653: /* type_declaration_no_options_no_dim: "table" '<' $@44 table_type_pair '>' $@45 */ + case 652: /* type_declaration_no_options_no_dim: "table" '<' $@44 table_type_pair '>' $@45 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tTable); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -9099,15 +9080,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 654: /* $@46: %empty */ + case 653: /* $@46: %empty */ { yyextra->das_arrow_depth ++; } break; - case 655: /* $@47: %empty */ + case 654: /* $@47: %empty */ { yyextra->das_arrow_depth --; } break; - case 656: /* type_declaration_no_options_no_dim: "iterator" '<' $@46 type_declaration '>' $@47 */ + case 655: /* type_declaration_no_options_no_dim: "iterator" '<' $@46 type_declaration '>' $@47 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tIterator); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -9115,22 +9096,22 @@ YYLTYPE yylloc = yyloc_default; } break; - case 657: /* type_declaration_no_options_no_dim: "block" */ + case 656: /* type_declaration_no_options_no_dim: "block" */ { (yyval.pTypeDecl) = new TypeDecl(Type::tBlock); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[0])); } break; - case 658: /* $@48: %empty */ + case 657: /* $@48: %empty */ { yyextra->das_arrow_depth ++; } break; - case 659: /* $@49: %empty */ + case 658: /* $@49: %empty */ { yyextra->das_arrow_depth --; } break; - case 660: /* type_declaration_no_options_no_dim: "block" '<' $@48 type_declaration '>' $@49 */ + case 659: /* type_declaration_no_options_no_dim: "block" '<' $@48 type_declaration '>' $@49 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tBlock); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -9138,15 +9119,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 661: /* $@50: %empty */ + case 660: /* $@50: %empty */ { yyextra->das_arrow_depth ++; } break; - case 662: /* $@51: %empty */ + case 661: /* $@51: %empty */ { yyextra->das_arrow_depth --; } break; - case 663: /* type_declaration_no_options_no_dim: "block" '<' $@50 optional_function_argument_list optional_function_type '>' $@51 */ + case 662: /* type_declaration_no_options_no_dim: "block" '<' $@50 optional_function_argument_list optional_function_type '>' $@51 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tBlock); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-6])); @@ -9158,22 +9139,22 @@ YYLTYPE yylloc = yyloc_default; } break; - case 664: /* type_declaration_no_options_no_dim: "function" */ + case 663: /* type_declaration_no_options_no_dim: "function" */ { (yyval.pTypeDecl) = new TypeDecl(Type::tFunction); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[0])); } break; - case 665: /* $@52: %empty */ + case 664: /* $@52: %empty */ { yyextra->das_arrow_depth ++; } break; - case 666: /* $@53: %empty */ + case 665: /* $@53: %empty */ { yyextra->das_arrow_depth --; } break; - case 667: /* type_declaration_no_options_no_dim: "function" '<' $@52 type_declaration '>' $@53 */ + case 666: /* type_declaration_no_options_no_dim: "function" '<' $@52 type_declaration '>' $@53 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tFunction); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -9181,15 +9162,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 668: /* $@54: %empty */ + case 667: /* $@54: %empty */ { yyextra->das_arrow_depth ++; } break; - case 669: /* $@55: %empty */ + case 668: /* $@55: %empty */ { yyextra->das_arrow_depth --; } break; - case 670: /* type_declaration_no_options_no_dim: "function" '<' $@54 optional_function_argument_list optional_function_type '>' $@55 */ + case 669: /* type_declaration_no_options_no_dim: "function" '<' $@54 optional_function_argument_list optional_function_type '>' $@55 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tFunction); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-6])); @@ -9201,22 +9182,22 @@ YYLTYPE yylloc = yyloc_default; } break; - case 671: /* type_declaration_no_options_no_dim: "lambda" */ + case 670: /* type_declaration_no_options_no_dim: "lambda" */ { (yyval.pTypeDecl) = new TypeDecl(Type::tLambda); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[0])); } break; - case 672: /* $@56: %empty */ + case 671: /* $@56: %empty */ { yyextra->das_arrow_depth ++; } break; - case 673: /* $@57: %empty */ + case 672: /* $@57: %empty */ { yyextra->das_arrow_depth --; } break; - case 674: /* type_declaration_no_options_no_dim: "lambda" '<' $@56 type_declaration '>' $@57 */ + case 673: /* type_declaration_no_options_no_dim: "lambda" '<' $@56 type_declaration '>' $@57 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tLambda); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -9224,15 +9205,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 675: /* $@58: %empty */ + case 674: /* $@58: %empty */ { yyextra->das_arrow_depth ++; } break; - case 676: /* $@59: %empty */ + case 675: /* $@59: %empty */ { yyextra->das_arrow_depth --; } break; - case 677: /* type_declaration_no_options_no_dim: "lambda" '<' $@58 optional_function_argument_list optional_function_type '>' $@59 */ + case 676: /* type_declaration_no_options_no_dim: "lambda" '<' $@58 optional_function_argument_list optional_function_type '>' $@59 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tLambda); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-6])); @@ -9244,15 +9225,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 678: /* $@60: %empty */ + case 677: /* $@60: %empty */ { yyextra->das_arrow_depth ++; } break; - case 679: /* $@61: %empty */ + case 678: /* $@61: %empty */ { yyextra->das_arrow_depth --; } break; - case 680: /* type_declaration_no_options_no_dim: "tuple" '<' $@60 tuple_type_list '>' $@61 */ + case 679: /* type_declaration_no_options_no_dim: "tuple" '<' $@60 tuple_type_list '>' $@61 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tTuple); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -9261,15 +9242,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 681: /* $@62: %empty */ + case 680: /* $@62: %empty */ { yyextra->das_arrow_depth ++; } break; - case 682: /* $@63: %empty */ + case 681: /* $@63: %empty */ { yyextra->das_arrow_depth --; } break; - case 683: /* type_declaration_no_options_no_dim: "variant" '<' $@62 variant_type_list '>' $@63 */ + case 682: /* type_declaration_no_options_no_dim: "variant" '<' $@62 variant_type_list '>' $@63 */ { (yyval.pTypeDecl) = new TypeDecl(Type::tVariant); (yyval.pTypeDecl)->at = tokAt(scanner,(yylsp[-5])); @@ -9278,13 +9259,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 684: /* type_declaration: type_declaration_no_options */ + case 683: /* type_declaration: type_declaration_no_options */ { (yyval.pTypeDecl) = (yyvsp[0].pTypeDecl); } break; - case 685: /* type_declaration: type_declaration '|' type_declaration_no_options */ + case 684: /* type_declaration: type_declaration '|' type_declaration_no_options */ { if ( (yyvsp[-2].pTypeDecl)->baseType==Type::option ) { (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); @@ -9298,7 +9279,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 686: /* type_declaration: type_declaration '|' '#' */ + case 685: /* type_declaration: type_declaration '|' '#' */ { if ( (yyvsp[-2].pTypeDecl)->baseType==Type::option ) { (yyval.pTypeDecl) = (yyvsp[-2].pTypeDecl); @@ -9314,7 +9295,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 687: /* $@64: %empty */ + case 686: /* $@64: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[0])); @@ -9323,7 +9304,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 688: /* $@65: %empty */ + case 687: /* $@65: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[-2])); @@ -9332,7 +9313,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 689: /* $@66: %empty */ + case 688: /* $@66: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[-4])); @@ -9341,7 +9322,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 690: /* tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" */ + case 689: /* tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" */ { auto vtype = make_smart(Type::tTuple); vtype->alias = *(yyvsp[-6].s); @@ -9361,7 +9342,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 691: /* $@67: %empty */ + case 690: /* $@67: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[0])); @@ -9370,7 +9351,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 692: /* $@68: %empty */ + case 691: /* $@68: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[-2])); @@ -9380,7 +9361,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 693: /* $@69: %empty */ + case 692: /* $@69: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[-4])); @@ -9389,7 +9370,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 694: /* variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" */ + case 693: /* variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" */ { auto vtype = make_smart(Type::tVariant); vtype->alias = *(yyvsp[-6].s); @@ -9409,7 +9390,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 695: /* $@70: %empty */ + case 694: /* $@70: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[0])); @@ -9418,7 +9399,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 696: /* $@71: %empty */ + case 695: /* $@71: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[-2])); @@ -9427,7 +9408,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 697: /* $@72: %empty */ + case 696: /* $@72: %empty */ { if ( !yyextra->g_CommentReaders.empty() ) { auto atvname = tokAt(scanner,(yylsp[-5])); @@ -9436,7 +9417,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 698: /* bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" */ + case 697: /* bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" */ { auto btype = make_smart(Type::tBitfield); btype->alias = *(yyvsp[-7].s); @@ -9460,27 +9441,27 @@ YYLTYPE yylloc = yyloc_default; } break; - case 699: /* make_decl: make_struct_decl */ + case 698: /* make_decl: make_struct_decl */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 700: /* make_decl: make_dim_decl */ + case 699: /* make_decl: make_dim_decl */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 701: /* make_decl: make_table_decl */ + case 700: /* make_decl: make_table_decl */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 702: /* make_decl: array_comprehension */ + case 701: /* make_decl: array_comprehension */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 703: /* make_decl: make_tuple_call */ + case 702: /* make_decl: make_tuple_call */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 704: /* make_struct_fields: "name" copy_or_move expr */ + case 703: /* make_struct_fields: "name" copy_or_move expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-2])),*(yyvsp[-2].s),ExpressionPtr((yyvsp[0].pExpression)),(yyvsp[-1].b),false); delete (yyvsp[-2].s); @@ -9490,7 +9471,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 705: /* make_struct_fields: "name" ":=" expr */ + case 704: /* make_struct_fields: "name" ":=" expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-2])),*(yyvsp[-2].s),ExpressionPtr((yyvsp[0].pExpression)),false,true); delete (yyvsp[-2].s); @@ -9500,7 +9481,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 706: /* make_struct_fields: make_struct_fields ',' "name" copy_or_move expr */ + case 705: /* make_struct_fields: make_struct_fields ',' "name" copy_or_move expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-2])),*(yyvsp[-2].s),ExpressionPtr((yyvsp[0].pExpression)),(yyvsp[-1].b),false); delete (yyvsp[-2].s); @@ -9509,7 +9490,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 707: /* make_struct_fields: make_struct_fields ',' "name" ":=" expr */ + case 706: /* make_struct_fields: make_struct_fields ',' "name" ":=" expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-2])),*(yyvsp[-2].s),ExpressionPtr((yyvsp[0].pExpression)),false,true); delete (yyvsp[-2].s); @@ -9518,7 +9499,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 708: /* make_struct_fields: "$f" '(' expr ')' copy_or_move expr */ + case 707: /* make_struct_fields: "$f" '(' expr ')' copy_or_move expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-3])),"``MACRO``TAG``FIELD``",ExpressionPtr((yyvsp[0].pExpression)),(yyvsp[-1].b),false); mfd->tag = ExpressionPtr((yyvsp[-3].pExpression)); @@ -9528,7 +9509,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 709: /* make_struct_fields: "$f" '(' expr ')' ":=" expr */ + case 708: /* make_struct_fields: "$f" '(' expr ')' ":=" expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-3])),"``MACRO``TAG``FIELD``",ExpressionPtr((yyvsp[0].pExpression)),false,true); mfd->tag = ExpressionPtr((yyvsp[-3].pExpression)); @@ -9538,7 +9519,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 710: /* make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' copy_or_move expr */ + case 709: /* make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' copy_or_move expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-3])),"``MACRO``TAG``FIELD``",ExpressionPtr((yyvsp[0].pExpression)),(yyvsp[-1].b),false); mfd->tag = ExpressionPtr((yyvsp[-3].pExpression)); @@ -9547,7 +9528,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 711: /* make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' ":=" expr */ + case 710: /* make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' ":=" expr */ { auto mfd = make_smart(tokAt(scanner,(yylsp[-3])),"``MACRO``TAG``FIELD``",ExpressionPtr((yyvsp[0].pExpression)),false,true); mfd->tag = ExpressionPtr((yyvsp[-3].pExpression)); @@ -9556,7 +9537,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 712: /* make_struct_single: make_struct_fields */ + case 711: /* make_struct_single: make_struct_fields */ { auto msd = new ExprMakeStruct(); msd->structs.push_back(MakeStructPtr((yyvsp[0].pMakeStruct))); @@ -9564,7 +9545,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 713: /* make_struct_dim: make_struct_fields */ + case 712: /* make_struct_dim: make_struct_fields */ { auto msd = new ExprMakeStruct(); msd->structs.push_back(MakeStructPtr((yyvsp[0].pMakeStruct))); @@ -9572,30 +9553,30 @@ YYLTYPE yylloc = yyloc_default; } break; - case 714: /* make_struct_dim: make_struct_dim "end of expression" make_struct_fields */ + case 713: /* make_struct_dim: make_struct_dim "end of expression" make_struct_fields */ { ((ExprMakeStruct *) (yyvsp[-2].pExpression))->structs.push_back(MakeStructPtr((yyvsp[0].pMakeStruct))); (yyval.pExpression) = (yyvsp[-2].pExpression); } break; - case 715: /* use_initializer: %empty */ + case 714: /* use_initializer: %empty */ { (yyval.b) = true; } break; - case 716: /* use_initializer: "uninitialized" */ + case 715: /* use_initializer: "uninitialized" */ { (yyval.b) = false; } break; - case 717: /* $@73: %empty */ + case 716: /* $@73: %empty */ { yyextra->das_arrow_depth ++; } break; - case 718: /* $@74: %empty */ + case 717: /* $@74: %empty */ { yyextra->das_arrow_depth --; } break; - case 719: /* make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' */ + case 718: /* make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-9])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-6].pTypeDecl)); @@ -9606,15 +9587,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 720: /* $@75: %empty */ + case 719: /* $@75: %empty */ { yyextra->das_arrow_depth ++; } break; - case 721: /* $@76: %empty */ + case 720: /* $@76: %empty */ { yyextra->das_arrow_depth --; } break; - case 722: /* make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' */ + case 721: /* make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-9])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-6].pTypeDecl)); @@ -9624,15 +9605,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 723: /* $@77: %empty */ + case 722: /* $@77: %empty */ { yyextra->das_arrow_depth ++; } break; - case 724: /* $@78: %empty */ + case 723: /* $@78: %empty */ { yyextra->das_arrow_depth --; } break; - case 725: /* make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim ')' */ + case 724: /* make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-8])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-5].pTypeDecl)); @@ -9642,15 +9623,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 726: /* $@79: %empty */ + case 725: /* $@79: %empty */ { yyextra->das_arrow_depth ++; } break; - case 727: /* $@80: %empty */ + case 726: /* $@80: %empty */ { yyextra->das_arrow_depth --; } break; - case 728: /* make_struct_decl: "default" '<' $@79 type_declaration_no_options '>' $@80 use_initializer */ + case 727: /* make_struct_decl: "default" '<' $@79 type_declaration_no_options '>' $@80 use_initializer */ { auto msd = new ExprMakeStruct(); msd->at = tokAt(scanner,(yylsp[-6])); @@ -9661,7 +9642,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 729: /* make_map_tuple: expr "=>" expr */ + case 728: /* make_map_tuple: expr "=>" expr */ { ExprMakeTuple * mt = new ExprMakeTuple(tokAt(scanner,(yylsp[-1]))); mt->values.push_back(ExpressionPtr((yyvsp[-2].pExpression))); @@ -9670,13 +9651,13 @@ YYLTYPE yylloc = yyloc_default; } break; - case 730: /* make_map_tuple: expr */ + case 729: /* make_map_tuple: expr */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 731: /* make_tuple_call: "tuple" '(' expr_list optional_comma ')' */ + case 730: /* make_tuple_call: "tuple" '(' expr_list optional_comma ')' */ { auto mkt = new ExprMakeTuple(tokAt(scanner,(yylsp[-4]))); mkt->values = sequenceToList((yyvsp[-2].pExpression)); @@ -9685,15 +9666,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 732: /* $@81: %empty */ + case 731: /* $@81: %empty */ { yyextra->das_arrow_depth ++; } break; - case 733: /* $@82: %empty */ + case 732: /* $@82: %empty */ { yyextra->das_arrow_depth --; } break; - case 734: /* make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' */ + case 733: /* make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-9])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-6].pTypeDecl)); @@ -9703,7 +9684,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 735: /* make_dim_decl: '[' expr_list optional_comma ']' */ + case 734: /* make_dim_decl: '[' expr_list optional_comma ']' */ { auto mka = make_smart(tokAt(scanner,(yylsp[-3]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -9714,15 +9695,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 736: /* $@83: %empty */ + case 735: /* $@83: %empty */ { yyextra->das_arrow_depth ++; } break; - case 737: /* $@84: %empty */ + case 736: /* $@84: %empty */ { yyextra->das_arrow_depth --; } break; - case 738: /* make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' */ + case 737: /* make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-10])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-6].pTypeDecl)); @@ -9735,15 +9716,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 739: /* $@85: %empty */ + case 738: /* $@85: %empty */ { yyextra->das_arrow_depth ++; } break; - case 740: /* $@86: %empty */ + case 739: /* $@86: %empty */ { yyextra->das_arrow_depth --; } break; - case 741: /* make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' */ + case 740: /* make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-10])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-6].pTypeDecl)); @@ -9756,15 +9737,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 742: /* $@87: %empty */ + case 741: /* $@87: %empty */ { yyextra->das_arrow_depth ++; } break; - case 743: /* $@88: %empty */ + case 742: /* $@88: %empty */ { yyextra->das_arrow_depth --; } break; - case 744: /* make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' */ + case 743: /* make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' */ { (yyvsp[-1].pExpression)->at = tokAt(scanner,(yylsp[-9])); ((ExprMakeStruct *)(yyvsp[-1].pExpression))->makeType = TypeDeclPtr((yyvsp[-5].pTypeDecl)); @@ -9777,7 +9758,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 745: /* make_dim_decl: "array" '(' expr_list optional_comma ')' */ + case 744: /* make_dim_decl: "array" '(' expr_list optional_comma ')' */ { auto mka = make_smart(tokAt(scanner,(yylsp[-4]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -9788,15 +9769,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 746: /* $@89: %empty */ + case 745: /* $@89: %empty */ { yyextra->das_arrow_depth ++; } break; - case 747: /* $@90: %empty */ + case 746: /* $@90: %empty */ { yyextra->das_arrow_depth --; } break; - case 748: /* make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' */ + case 747: /* make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' */ { auto mka = make_smart(tokAt(scanner,(yylsp[-9]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -9807,7 +9788,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 749: /* make_dim_decl: "fixed_array" '(' expr_list optional_comma ')' */ + case 748: /* make_dim_decl: "fixed_array" '(' expr_list optional_comma ')' */ { auto mka = new ExprMakeArray(tokAt(scanner,(yylsp[-4]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -9817,15 +9798,15 @@ YYLTYPE yylloc = yyloc_default; } break; - case 750: /* $@91: %empty */ + case 749: /* $@91: %empty */ { yyextra->das_arrow_depth ++; } break; - case 751: /* $@92: %empty */ + case 750: /* $@92: %empty */ { yyextra->das_arrow_depth --; } break; - case 752: /* make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' */ + case 751: /* make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' */ { auto mka = new ExprMakeArray(tokAt(scanner,(yylsp[-9]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -9835,19 +9816,19 @@ YYLTYPE yylloc = yyloc_default; } break; - case 753: /* expr_map_tuple_list: make_map_tuple */ + case 752: /* expr_map_tuple_list: make_map_tuple */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 754: /* expr_map_tuple_list: expr_map_tuple_list ',' make_map_tuple */ + case 753: /* expr_map_tuple_list: expr_map_tuple_list ',' make_map_tuple */ { (yyval.pExpression) = new ExprSequence(tokAt(scanner,(yylsp[-2])),ExpressionPtr((yyvsp[-2].pExpression)),ExpressionPtr((yyvsp[0].pExpression))); } break; - case 755: /* make_table_decl: "begin of code block" expr_map_tuple_list optional_comma "end of code block" */ + case 754: /* make_table_decl: "begin of code block" expr_map_tuple_list optional_comma "end of code block" */ { auto mka = make_smart(tokAt(scanner,(yylsp[-3]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -9858,7 +9839,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 756: /* make_table_decl: "table" '(' expr_map_tuple_list optional_comma ')' */ + case 755: /* make_table_decl: "table" '(' expr_map_tuple_list optional_comma ')' */ { auto mka = make_smart(tokAt(scanner,(yylsp[-4]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -9869,7 +9850,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 757: /* make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' */ + case 756: /* make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' */ { auto mka = make_smart(tokAt(scanner,(yylsp[-7]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -9880,7 +9861,7 @@ YYLTYPE yylloc = yyloc_default; } break; - case 758: /* make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' */ + case 757: /* make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' */ { auto mka = make_smart(tokAt(scanner,(yylsp[-9]))); mka->values = sequenceToList((yyvsp[-2].pExpression)); @@ -9893,35 +9874,35 @@ YYLTYPE yylloc = yyloc_default; } break; - case 759: /* array_comprehension_where: %empty */ + case 758: /* array_comprehension_where: %empty */ { (yyval.pExpression) = nullptr; } break; - case 760: /* array_comprehension_where: "end of expression" "where" expr */ + case 759: /* array_comprehension_where: "end of expression" "where" expr */ { (yyval.pExpression) = (yyvsp[0].pExpression); } break; - case 761: /* optional_comma: %empty */ + case 760: /* optional_comma: %empty */ { (yyval.b) = false; } break; - case 762: /* optional_comma: ',' */ + case 761: /* optional_comma: ',' */ { (yyval.b) = true; } break; - case 763: /* array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' */ + case 762: /* array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' */ { (yyval.pExpression) = ast_arrayComprehension(scanner,tokAt(scanner,(yylsp[-7])),(yyvsp[-6].pNameWithPosList),(yyvsp[-4].pExpression),(yyvsp[-2].pExpression),(yyvsp[-1].pExpression),tokRangeAt(scanner,(yylsp[-2]),(yylsp[0])),false,false); } break; - case 764: /* array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' */ + case 763: /* array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' */ { (yyval.pExpression) = ast_arrayComprehension(scanner,tokAt(scanner,(yylsp[-7])),(yyvsp[-6].pNameWithPosList),(yyvsp[-4].pExpression),(yyvsp[-2].pExpression),(yyvsp[-1].pExpression),tokRangeAt(scanner,(yylsp[-2]),(yylsp[0])),true,false); } break; - case 765: /* array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" */ + case 764: /* array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" */ { (yyval.pExpression) = ast_arrayComprehension(scanner,tokAt(scanner,(yylsp[-7])),(yyvsp[-6].pNameWithPosList),(yyvsp[-4].pExpression),(yyvsp[-2].pExpression),(yyvsp[-1].pExpression),tokRangeAt(scanner,(yylsp[-2]),(yylsp[0])),false,true); } diff --git a/src/parser/ds2_parser.output b/src/parser/ds2_parser.output index 86f068135..9649efcd4 100644 --- a/src/parser/ds2_parser.output +++ b/src/parser/ds2_parser.output @@ -11,13 +11,10 @@ Terminals unused in grammar State 56 conflicts: 1 shift/reduce -State 459 conflicts: 1 shift/reduce State 464 conflicts: 1 shift/reduce -State 471 conflicts: 3 shift/reduce -State 590 conflicts: 1 shift/reduce -State 641 conflicts: 1 shift/reduce +State 471 conflicts: 1 shift/reduce +State 640 conflicts: 1 shift/reduce State 813 conflicts: 2 shift/reduce -State 883 conflicts: 1 shift/reduce Grammar @@ -114,7 +111,7 @@ Grammar 63 expression_if_one_liner: expr 64 | expression_return - 65 | expression_yield_no_pipe + 65 | expression_yield 66 | expression_break 67 | expression_continue @@ -298,12 +295,12 @@ Grammar 218 | expression_while_loop 219 | expression_unsafe 220 | expression_with - 221 | expression_with_alias + 221 | expression_with_alias "end of expression" 222 | expression_for_loop 223 | expression_break "end of expression" 224 | expression_continue "end of expression" 225 | expression_return "end of expression" - 226 | expression_yield + 226 | expression_yield "end of expression" 227 | expression_if_then_else 228 | expression_try_catch 229 | expression_label "end of expression" @@ -347,930 +344,928 @@ Grammar 255 | "return" expr 256 | "return" "<-" expr - 257 expression_yield_no_pipe: "yield" expr - 258 | "yield" "<-" expr + 257 expression_yield: "yield" expr + 258 | "yield" "<-" expr - 259 expression_yield: expression_yield_no_pipe "end of expression" + 259 expression_try_catch: "try" expression_block "recover" expression_block - 260 expression_try_catch: "try" expression_block "recover" expression_block + 260 kwd_let_var_or_nothing: "let" + 261 | "var" + 262 | %empty - 261 kwd_let_var_or_nothing: "let" - 262 | "var" - 263 | %empty + 263 kwd_let: "let" + 264 | "var" - 264 kwd_let: "let" - 265 | "var" + 265 optional_in_scope: "inscope" + 266 | %empty - 266 optional_in_scope: "inscope" - 267 | %empty + 267 tuple_expansion: "name" + 268 | tuple_expansion ',' "name" - 268 tuple_expansion: "name" - 269 | tuple_expansion ',' "name" + 269 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 270 | '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" - 270 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 271 | '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" + 271 expression_let: kwd_let optional_in_scope let_variable_declaration + 272 | kwd_let optional_in_scope tuple_expansion_variable_declaration - 272 expression_let: kwd_let optional_in_scope let_variable_declaration - 273 | kwd_let optional_in_scope tuple_expansion_variable_declaration + 273 $@5: %empty - 274 $@5: %empty + 274 $@6: %empty - 275 $@6: %empty + 275 expr_cast: "cast" '<' $@5 type_declaration_no_options '>' $@6 expr - 276 expr_cast: "cast" '<' $@5 type_declaration_no_options '>' $@6 expr + 276 $@7: %empty - 277 $@7: %empty + 277 $@8: %empty - 278 $@8: %empty + 278 expr_cast: "upcast" '<' $@7 type_declaration_no_options '>' $@8 expr - 279 expr_cast: "upcast" '<' $@7 type_declaration_no_options '>' $@8 expr + 279 $@9: %empty - 280 $@9: %empty + 280 $@10: %empty - 281 $@10: %empty + 281 expr_cast: "reinterpret" '<' $@9 type_declaration_no_options '>' $@10 expr - 282 expr_cast: "reinterpret" '<' $@9 type_declaration_no_options '>' $@10 expr + 282 $@11: %empty - 283 $@11: %empty + 283 $@12: %empty - 284 $@12: %empty + 284 expr_type_decl: "type" '<' $@11 type_declaration '>' $@12 - 285 expr_type_decl: "type" '<' $@11 type_declaration '>' $@12 + 285 expr_type_info: "typeinfo" '(' name_in_namespace expr ')' + 286 | "typeinfo" '(' name_in_namespace '<' "name" '>' expr ')' + 287 | "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' - 286 expr_type_info: "typeinfo" '(' name_in_namespace expr ')' - 287 | "typeinfo" '(' name_in_namespace '<' "name" '>' expr ')' - 288 | "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' + 288 expr_list: expr + 289 | expr_list ',' expr - 289 expr_list: expr - 290 | expr_list ',' expr + 290 block_or_simple_block: expression_block + 291 | "=>" expr + 292 | "=>" "<-" expr - 291 block_or_simple_block: expression_block - 292 | "=>" expr - 293 | "=>" "<-" expr + 293 block_or_lambda: '$' + 294 | '@' + 295 | '@' '@' - 294 block_or_lambda: '$' - 295 | '@' - 296 | '@' '@' + 296 capture_entry: '&' "name" + 297 | '=' "name" + 298 | "<-" "name" + 299 | ":=" "name" - 297 capture_entry: '&' "name" - 298 | '=' "name" - 299 | "<-" "name" - 300 | ":=" "name" + 300 capture_list: capture_entry + 301 | capture_list ',' capture_entry - 301 capture_list: capture_entry - 302 | capture_list ',' capture_entry + 302 optional_capture_list: %empty + 303 | '[' '[' capture_list ']' ']' - 303 optional_capture_list: %empty - 304 | '[' '[' capture_list ']' ']' + 304 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block - 305 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block + 305 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block + 306 | "begin of code block" expressions "end of code block" - 306 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block - 307 | "begin of code block" expressions "end of code block" + 307 expr_numeric_const: "integer constant" + 308 | "unsigned integer constant" + 309 | "long integer constant" + 310 | "unsigned long integer constant" + 311 | "unsigned int8 constant" + 312 | "floating point constant" + 313 | "double constant" - 308 expr_numeric_const: "integer constant" - 309 | "unsigned integer constant" - 310 | "long integer constant" - 311 | "unsigned long integer constant" - 312 | "unsigned int8 constant" - 313 | "floating point constant" - 314 | "double constant" + 314 expr_assign: expr + 315 | expr '=' expr + 316 | expr "<-" expr + 317 | expr ":=" expr + 318 | expr "&=" expr + 319 | expr "|=" expr + 320 | expr "^=" expr + 321 | expr "&&=" expr + 322 | expr "||=" expr + 323 | expr "^^=" expr + 324 | expr "+=" expr + 325 | expr "-=" expr + 326 | expr "*=" expr + 327 | expr "/=" expr + 328 | expr "%=" expr + 329 | expr "<<=" expr + 330 | expr ">>=" expr + 331 | expr "<<<=" expr + 332 | expr ">>>=" expr + + 333 expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' ')' + 334 | name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' ')' + + 335 expr_method_call: expr "->" "name" '(' ')' + 336 | expr "->" "name" '(' expr_list ')' + + 337 func_addr_name: name_in_namespace + 338 | "$i" '(' expr ')' + + 339 func_addr_expr: '@' '@' func_addr_name + + 340 $@13: %empty + + 341 $@14: %empty + + 342 func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options '>' $@14 func_addr_name + + 343 $@15: %empty + + 344 $@16: %empty + + 345 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name + + 346 expr_field: expr '.' "name" + 347 | expr '.' '.' "name" + 348 | expr '.' "name" '(' ')' + 349 | expr '.' "name" '(' expr_list ')' + + 350 $@17: %empty + + 351 $@18: %empty + + 352 expr_field: expr '.' $@17 error $@18 + + 353 expr_call: name_in_namespace '(' ')' + 354 | name_in_namespace '(' make_struct_single ')' + 355 | name_in_namespace '(' expr_list ')' + 356 | basic_type_declaration '(' ')' + 357 | basic_type_declaration '(' expr_list ')' + + 358 expr: "null" + 359 | name_in_namespace + 360 | expr_numeric_const + 361 | expr_reader + 362 | string_builder + 363 | make_decl + 364 | "true" + 365 | "false" + 366 | expr_field + 367 | expr_mtag + 368 | '!' expr + 369 | '~' expr + 370 | '+' expr + 371 | '-' expr + 372 | expr "<<" expr + 373 | expr ">>" expr + 374 | expr "<<<" expr + 375 | expr ">>>" expr + 376 | expr '+' expr + 377 | expr '-' expr + 378 | expr '*' expr + 379 | expr '/' expr + 380 | expr '%' expr + 381 | expr '<' expr + 382 | expr '>' expr + 383 | expr "==" expr + 384 | expr "!=" expr + 385 | expr "<=" expr + 386 | expr ">=" expr + 387 | expr '&' expr + 388 | expr '|' expr + 389 | expr '^' expr + 390 | expr "&&" expr + 391 | expr "||" expr + 392 | expr "^^" expr + 393 | expr ".." expr + 394 | "++" expr + 395 | "--" expr + 396 | expr "++" + 397 | expr "--" + 398 | '(' expr_list optional_comma ')' + 399 | expr '[' expr ']' + 400 | expr '.' '[' expr ']' + 401 | expr "?[" expr ']' + 402 | expr '.' "?[" expr ']' + 403 | expr "?." "name" + 404 | expr '.' "?." "name" + 405 | func_addr_expr + 406 | expr_call + 407 | '*' expr + 408 | "deref" '(' expr ')' + 409 | "addr" '(' expr ')' + 410 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' ')' + 411 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' + 412 | expr "??" expr + 413 | expr '?' expr ':' expr + + 414 $@19: %empty + + 415 $@20: %empty + + 416 expr: expr "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr "is" basic_type_declaration + 418 | expr "is" "name" + 419 | expr "as" "name" + + 420 $@21: %empty + + 421 $@22: %empty + + 422 expr: expr "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr "as" basic_type_declaration + 424 | expr '?' "as" "name" + + 425 $@23: %empty + + 426 $@24: %empty + + 427 expr: expr '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr '?' "as" basic_type_declaration + 429 | expr_type_info + 430 | expr_type_decl + 431 | expr_cast + 432 | expr_new + 433 | expr_method_call + 434 | expr_named_call + 435 | expr_full_block + 436 | expr "<|" expr + 437 | expr "|>" expr + 438 | expr "|>" basic_type_declaration + 439 | expr_call_pipe + + 440 expr_mtag: "$$" '(' expr ')' + 441 | "$i" '(' expr ')' + 442 | "$v" '(' expr ')' + 443 | "$b" '(' expr ')' + 444 | "$a" '(' expr ')' + 445 | "..." + 446 | "$c" '(' expr ')' '(' ')' + 447 | "$c" '(' expr ')' '(' expr_list ')' + 448 | expr '.' "$f" '(' expr ')' + 449 | expr "?." "$f" '(' expr ')' + 450 | expr '.' '.' "$f" '(' expr ')' + 451 | expr '.' "?." "$f" '(' expr ')' + 452 | expr "as" "$f" '(' expr ')' + 453 | expr '?' "as" "$f" '(' expr ')' + 454 | expr "is" "$f" '(' expr ')' + 455 | '@' '@' "$c" '(' expr ')' + + 456 optional_field_annotation: %empty + 457 | metadata_argument_list + + 458 optional_override: %empty + 459 | "override" + 460 | "sealed" + + 461 optional_constant: %empty + 462 | "const" + + 463 optional_public_or_private_member_variable: %empty + 464 | "public" + 465 | "private" + + 466 optional_static_member_variable: %empty + 467 | "static" - 315 expr_assign: expr - 316 | expr '=' expr - 317 | expr "<-" expr - 318 | expr ":=" expr - 319 | expr "&=" expr - 320 | expr "|=" expr - 321 | expr "^=" expr - 322 | expr "&&=" expr - 323 | expr "||=" expr - 324 | expr "^^=" expr - 325 | expr "+=" expr - 326 | expr "-=" expr - 327 | expr "*=" expr - 328 | expr "/=" expr - 329 | expr "%=" expr - 330 | expr "<<=" expr - 331 | expr ">>=" expr - 332 | expr "<<<=" expr - 333 | expr ">>>=" expr - - 334 expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' ')' - 335 | name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' ')' - - 336 expr_method_call: expr "->" "name" '(' ')' - 337 | expr "->" "name" '(' expr_list ')' - - 338 func_addr_name: name_in_namespace - 339 | "$i" '(' expr ')' - - 340 func_addr_expr: '@' '@' func_addr_name - - 341 $@13: %empty - - 342 $@14: %empty - - 343 func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options '>' $@14 func_addr_name - - 344 $@15: %empty - - 345 $@16: %empty - - 346 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name - - 347 expr_field: expr '.' "name" - 348 | expr '.' '.' "name" - 349 | expr '.' "name" '(' ')' - 350 | expr '.' "name" '(' expr_list ')' - - 351 $@17: %empty - - 352 $@18: %empty - - 353 expr_field: expr '.' $@17 error $@18 - - 354 expr_call: name_in_namespace '(' ')' - 355 | name_in_namespace '(' make_struct_single ')' - 356 | name_in_namespace '(' expr_list ')' - 357 | basic_type_declaration '(' ')' - 358 | basic_type_declaration '(' expr_list ')' - - 359 expr: "null" - 360 | name_in_namespace - 361 | expr_numeric_const - 362 | expr_reader - 363 | string_builder - 364 | make_decl - 365 | "true" - 366 | "false" - 367 | expr_field - 368 | expr_mtag - 369 | '!' expr - 370 | '~' expr - 371 | '+' expr - 372 | '-' expr - 373 | expr "<<" expr - 374 | expr ">>" expr - 375 | expr "<<<" expr - 376 | expr ">>>" expr - 377 | expr '+' expr - 378 | expr '-' expr - 379 | expr '*' expr - 380 | expr '/' expr - 381 | expr '%' expr - 382 | expr '<' expr - 383 | expr '>' expr - 384 | expr "==" expr - 385 | expr "!=" expr - 386 | expr "<=" expr - 387 | expr ">=" expr - 388 | expr '&' expr - 389 | expr '|' expr - 390 | expr '^' expr - 391 | expr "&&" expr - 392 | expr "||" expr - 393 | expr "^^" expr - 394 | expr ".." expr - 395 | "++" expr - 396 | "--" expr - 397 | expr "++" - 398 | expr "--" - 399 | '(' expr_list optional_comma ')' - 400 | expr '[' expr ']' - 401 | expr '.' '[' expr ']' - 402 | expr "?[" expr ']' - 403 | expr '.' "?[" expr ']' - 404 | expr "?." "name" - 405 | expr '.' "?." "name" - 406 | func_addr_expr - 407 | expr_call - 408 | '*' expr - 409 | "deref" '(' expr ')' - 410 | "addr" '(' expr ')' - 411 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' ')' - 412 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' - 413 | expr "??" expr - 414 | expr '?' expr ':' expr - - 415 $@19: %empty - - 416 $@20: %empty - - 417 expr: expr "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr "is" basic_type_declaration - 419 | expr "is" "name" - 420 | expr "as" "name" - - 421 $@21: %empty - - 422 $@22: %empty - - 423 expr: expr "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr "as" basic_type_declaration - 425 | expr '?' "as" "name" - - 426 $@23: %empty - - 427 $@24: %empty - - 428 expr: expr '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr '?' "as" basic_type_declaration - 430 | expr_type_info - 431 | expr_type_decl - 432 | expr_cast - 433 | expr_new - 434 | expr_method_call - 435 | expr_named_call - 436 | expr_full_block - 437 | expr "<|" expr - 438 | expr "|>" expr - 439 | expr "|>" basic_type_declaration - 440 | expr_call_pipe - - 441 expr_mtag: "$$" '(' expr ')' - 442 | "$i" '(' expr ')' - 443 | "$v" '(' expr ')' - 444 | "$b" '(' expr ')' - 445 | "$a" '(' expr ')' - 446 | "..." - 447 | "$c" '(' expr ')' '(' ')' - 448 | "$c" '(' expr ')' '(' expr_list ')' - 449 | expr '.' "$f" '(' expr ')' - 450 | expr "?." "$f" '(' expr ')' - 451 | expr '.' '.' "$f" '(' expr ')' - 452 | expr '.' "?." "$f" '(' expr ')' - 453 | expr "as" "$f" '(' expr ')' - 454 | expr '?' "as" "$f" '(' expr ')' - 455 | expr "is" "$f" '(' expr ')' - 456 | '@' '@' "$c" '(' expr ')' - - 457 optional_field_annotation: %empty - 458 | metadata_argument_list - - 459 optional_override: %empty - 460 | "override" - 461 | "sealed" - - 462 optional_constant: %empty - 463 | "const" - - 464 optional_public_or_private_member_variable: %empty - 465 | "public" - 466 | "private" - - 467 optional_static_member_variable: %empty - 468 | "static" + 468 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration - 469 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration + 469 struct_variable_declaration_list: %empty - 470 struct_variable_declaration_list: %empty + 470 $@25: %empty - 471 $@25: %empty + 471 struct_variable_declaration_list: struct_variable_declaration_list $@25 structure_variable_declaration "end of expression" - 472 struct_variable_declaration_list: struct_variable_declaration_list $@25 structure_variable_declaration "end of expression" + 472 $@26: %empty - 473 $@26: %empty + 473 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" - 474 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" + 474 $@27: %empty - 475 $@27: %empty + 475 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block - 476 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block + 476 function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing variable_declaration + 477 | "$a" '(' expr ')' - 477 function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing variable_declaration - 478 | "$a" '(' expr ')' + 478 function_argument_list: function_argument_declaration + 479 | function_argument_list "end of expression" function_argument_declaration - 479 function_argument_list: function_argument_declaration - 480 | function_argument_list "end of expression" function_argument_declaration + 480 tuple_type: type_declaration + 481 | "name" ':' type_declaration - 481 tuple_type: type_declaration - 482 | "name" ':' type_declaration + 482 tuple_type_list: tuple_type + 483 | tuple_type_list "end of expression" tuple_type - 483 tuple_type_list: tuple_type - 484 | tuple_type_list "end of expression" tuple_type + 484 tuple_alias_type_list: %empty + 485 | tuple_alias_type_list "end of expression" + 486 | tuple_alias_type_list tuple_type "end of expression" - 485 tuple_alias_type_list: %empty - 486 | tuple_alias_type_list "end of expression" - 487 | tuple_alias_type_list tuple_type "end of expression" + 487 variant_type: "name" ':' type_declaration - 488 variant_type: "name" ':' type_declaration + 488 variant_type_list: variant_type + 489 | variant_type_list "end of expression" variant_type - 489 variant_type_list: variant_type - 490 | variant_type_list "end of expression" variant_type + 490 variant_alias_type_list: %empty + 491 | variant_alias_type_list "end of expression" + 492 | variant_alias_type_list variant_type "end of expression" - 491 variant_alias_type_list: %empty - 492 | variant_alias_type_list "end of expression" - 493 | variant_alias_type_list variant_type "end of expression" + 493 copy_or_move: '=' + 494 | "<-" - 494 copy_or_move: '=' - 495 | "<-" + 495 variable_declaration: variable_name_with_pos_list + 496 | variable_name_with_pos_list '&' + 497 | variable_name_with_pos_list ':' type_declaration + 498 | variable_name_with_pos_list ':' type_declaration copy_or_move expr + 499 | variable_name_with_pos_list copy_or_move expr - 496 variable_declaration: variable_name_with_pos_list - 497 | variable_name_with_pos_list '&' - 498 | variable_name_with_pos_list ':' type_declaration - 499 | variable_name_with_pos_list ':' type_declaration copy_or_move expr - 500 | variable_name_with_pos_list copy_or_move expr + 500 copy_or_move_or_clone: '=' + 501 | "<-" + 502 | ":=" - 501 copy_or_move_or_clone: '=' - 502 | "<-" - 503 | ":=" + 503 optional_ref: %empty + 504 | '&' - 504 optional_ref: %empty - 505 | '&' + 505 let_variable_name_with_pos_list: "name" + 506 | "$i" '(' expr ')' + 507 | "name" "aka" "name" + 508 | let_variable_name_with_pos_list ',' "name" + 509 | let_variable_name_with_pos_list ',' "name" "aka" "name" - 506 let_variable_name_with_pos_list: "name" - 507 | "$i" '(' expr ')' - 508 | "name" "aka" "name" - 509 | let_variable_name_with_pos_list ',' "name" - 510 | let_variable_name_with_pos_list ',' "name" "aka" "name" + 510 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" + 511 | let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 512 | let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr "end of expression" - 511 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" - 512 | let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 513 | let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr "end of expression" + 513 global_variable_declaration_list: %empty - 514 global_variable_declaration_list: %empty + 514 $@28: %empty - 515 $@28: %empty + 515 global_variable_declaration_list: global_variable_declaration_list $@28 optional_field_annotation let_variable_declaration - 516 global_variable_declaration_list: global_variable_declaration_list $@28 optional_field_annotation let_variable_declaration + 516 optional_shared: %empty + 517 | "shared" - 517 optional_shared: %empty - 518 | "shared" + 518 optional_public_or_private_variable: %empty + 519 | "private" + 520 | "public" - 519 optional_public_or_private_variable: %empty - 520 | "private" - 521 | "public" + 521 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" - 522 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" + 522 $@29: %empty - 523 $@29: %empty + 523 global_let: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration - 524 global_let: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration + 524 enum_expression: "name" + 525 | "name" '=' expr - 525 enum_expression: "name" - 526 | "name" '=' expr + 526 enum_list: %empty + 527 | enum_expression + 528 | enum_list ',' enum_expression - 527 enum_list: %empty - 528 | enum_expression - 529 | enum_list ',' enum_expression + 529 optional_public_or_private_alias: %empty + 530 | "private" + 531 | "public" - 530 optional_public_or_private_alias: %empty - 531 | "private" - 532 | "public" + 532 $@30: %empty - 533 $@30: %empty + 533 single_alias: optional_public_or_private_alias "name" $@30 '=' type_declaration - 534 single_alias: optional_public_or_private_alias "name" $@30 '=' type_declaration + 534 alias_declaration: "typedef" single_alias "end of expression" - 535 alias_declaration: "typedef" single_alias "end of expression" + 535 optional_public_or_private_enum: %empty + 536 | "private" + 537 | "public" - 536 optional_public_or_private_enum: %empty - 537 | "private" - 538 | "public" + 538 enum_name: "name" - 539 enum_name: "name" + 539 optional_enum_basic_type_declaration: %empty + 540 | ':' enum_basic_type_declaration - 540 optional_enum_basic_type_declaration: %empty - 541 | ':' enum_basic_type_declaration + 541 $@31: %empty - 542 $@31: %empty + 542 $@32: %empty - 543 $@32: %empty + 543 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" - 544 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" + 544 optional_structure_parent: %empty + 545 | ':' name_in_namespace - 545 optional_structure_parent: %empty - 546 | ':' name_in_namespace + 546 optional_sealed: %empty + 547 | "sealed" - 547 optional_sealed: %empty - 548 | "sealed" + 548 structure_name: optional_sealed "name" optional_structure_parent - 549 structure_name: optional_sealed "name" optional_structure_parent + 549 class_or_struct: "class" + 550 | "struct" - 550 class_or_struct: "class" - 551 | "struct" + 551 optional_public_or_private_structure: %empty + 552 | "private" + 553 | "public" - 552 optional_public_or_private_structure: %empty - 553 | "private" - 554 | "public" + 554 optional_struct_variable_declaration_list: %empty + 555 | "begin of code block" struct_variable_declaration_list "end of code block" - 555 optional_struct_variable_declaration_list: %empty - 556 | "begin of code block" struct_variable_declaration_list "end of code block" + 556 $@33: %empty - 557 $@33: %empty + 557 $@34: %empty - 558 $@34: %empty + 558 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 structure_name $@34 optional_struct_variable_declaration_list - 559 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 structure_name $@34 optional_struct_variable_declaration_list + 559 variable_name_with_pos_list: "name" + 560 | "$i" '(' expr ')' + 561 | "name" "aka" "name" + 562 | variable_name_with_pos_list ',' "name" + 563 | variable_name_with_pos_list ',' "name" "aka" "name" - 560 variable_name_with_pos_list: "name" - 561 | "$i" '(' expr ')' - 562 | "name" "aka" "name" - 563 | variable_name_with_pos_list ',' "name" - 564 | variable_name_with_pos_list ',' "name" "aka" "name" + 564 basic_type_declaration: "bool" + 565 | "string" + 566 | "int" + 567 | "int8" + 568 | "int16" + 569 | "int64" + 570 | "int2" + 571 | "int3" + 572 | "int4" + 573 | "uint" + 574 | "uint8" + 575 | "uint16" + 576 | "uint64" + 577 | "uint2" + 578 | "uint3" + 579 | "uint4" + 580 | "float" + 581 | "float2" + 582 | "float3" + 583 | "float4" + 584 | "void" + 585 | "range" + 586 | "urange" + 587 | "range64" + 588 | "urange64" + 589 | "double" + 590 | "bitfield" - 565 basic_type_declaration: "bool" - 566 | "string" - 567 | "int" - 568 | "int8" - 569 | "int16" - 570 | "int64" - 571 | "int2" - 572 | "int3" - 573 | "int4" - 574 | "uint" - 575 | "uint8" - 576 | "uint16" - 577 | "uint64" - 578 | "uint2" - 579 | "uint3" - 580 | "uint4" - 581 | "float" - 582 | "float2" - 583 | "float3" - 584 | "float4" - 585 | "void" - 586 | "range" - 587 | "urange" - 588 | "range64" - 589 | "urange64" - 590 | "double" - 591 | "bitfield" + 591 enum_basic_type_declaration: "int" + 592 | "int8" + 593 | "int16" + 594 | "uint" + 595 | "uint8" + 596 | "uint16" + 597 | "int64" + 598 | "uint64" - 592 enum_basic_type_declaration: "int" - 593 | "int8" - 594 | "int16" - 595 | "uint" - 596 | "uint8" - 597 | "uint16" - 598 | "int64" - 599 | "uint64" + 599 structure_type_declaration: name_in_namespace - 600 structure_type_declaration: name_in_namespace + 600 auto_type_declaration: "auto" + 601 | "auto" '(' "name" ')' + 602 | "$t" '(' expr ')' - 601 auto_type_declaration: "auto" - 602 | "auto" '(' "name" ')' - 603 | "$t" '(' expr ')' + 603 bitfield_bits: "name" + 604 | bitfield_bits "end of expression" "name" - 604 bitfield_bits: "name" - 605 | bitfield_bits "end of expression" "name" + 605 bitfield_alias_bits: %empty + 606 | "name" + 607 | bitfield_alias_bits ',' "name" - 606 bitfield_alias_bits: %empty - 607 | "name" - 608 | bitfield_alias_bits ',' "name" + 608 $@35: %empty - 609 $@35: %empty + 609 $@36: %empty - 610 $@36: %empty + 610 bitfield_type_declaration: "bitfield" '<' $@35 bitfield_bits '>' $@36 - 611 bitfield_type_declaration: "bitfield" '<' $@35 bitfield_bits '>' $@36 + 611 table_type_pair: type_declaration + 612 | type_declaration "end of expression" type_declaration - 612 table_type_pair: type_declaration - 613 | type_declaration "end of expression" type_declaration + 613 dim_list: '[' expr ']' + 614 | '[' ']' + 615 | dim_list '[' expr ']' + 616 | dim_list '[' ']' - 614 dim_list: '[' expr ']' - 615 | '[' ']' - 616 | dim_list '[' expr ']' - 617 | dim_list '[' ']' + 617 type_declaration_no_options: type_declaration_no_options_no_dim + 618 | type_declaration_no_options_no_dim dim_list - 618 type_declaration_no_options: type_declaration_no_options_no_dim - 619 | type_declaration_no_options_no_dim dim_list + 619 type_declaration_no_options_no_dim: basic_type_declaration + 620 | auto_type_declaration + 621 | bitfield_type_declaration + 622 | structure_type_declaration - 620 type_declaration_no_options_no_dim: basic_type_declaration - 621 | auto_type_declaration - 622 | bitfield_type_declaration - 623 | structure_type_declaration + 623 $@37: %empty - 624 $@37: %empty + 624 $@38: %empty - 625 $@38: %empty + 625 type_declaration_no_options_no_dim: "type" '<' $@37 type_declaration '>' $@38 + 626 | "typedecl" '(' expr ')' + 627 | '$' name_in_namespace '(' optional_expr_list ')' - 626 type_declaration_no_options_no_dim: "type" '<' $@37 type_declaration '>' $@38 - 627 | "typedecl" '(' expr ')' - 628 | '$' name_in_namespace '(' optional_expr_list ')' + 628 $@39: %empty - 629 $@39: %empty + 629 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' + 630 | type_declaration_no_options_no_dim '-' '[' ']' + 631 | type_declaration_no_options_no_dim "explicit" + 632 | type_declaration_no_options_no_dim "const" + 633 | type_declaration_no_options_no_dim '-' "const" + 634 | type_declaration_no_options_no_dim '&' + 635 | type_declaration_no_options_no_dim '-' '&' + 636 | type_declaration_no_options_no_dim '#' + 637 | type_declaration_no_options_no_dim "implicit" + 638 | type_declaration_no_options_no_dim '-' '#' + 639 | type_declaration_no_options_no_dim "==" "const" + 640 | type_declaration_no_options_no_dim "==" '&' + 641 | type_declaration_no_options_no_dim '*' - 630 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' - 631 | type_declaration_no_options_no_dim '-' '[' ']' - 632 | type_declaration_no_options_no_dim "explicit" - 633 | type_declaration_no_options_no_dim "const" - 634 | type_declaration_no_options_no_dim '-' "const" - 635 | type_declaration_no_options_no_dim '&' - 636 | type_declaration_no_options_no_dim '-' '&' - 637 | type_declaration_no_options_no_dim '#' - 638 | type_declaration_no_options_no_dim "implicit" - 639 | type_declaration_no_options_no_dim '-' '#' - 640 | type_declaration_no_options_no_dim "==" "const" - 641 | type_declaration_no_options_no_dim "==" '&' - 642 | type_declaration_no_options_no_dim '*' + 642 $@40: %empty - 643 $@40: %empty + 643 $@41: %empty - 644 $@41: %empty + 644 type_declaration_no_options_no_dim: "smart_ptr" '<' $@40 type_declaration '>' $@41 + 645 | type_declaration_no_options_no_dim "??" - 645 type_declaration_no_options_no_dim: "smart_ptr" '<' $@40 type_declaration '>' $@41 - 646 | type_declaration_no_options_no_dim "??" + 646 $@42: %empty - 647 $@42: %empty + 647 $@43: %empty - 648 $@43: %empty + 648 type_declaration_no_options_no_dim: "array" '<' $@42 type_declaration '>' $@43 - 649 type_declaration_no_options_no_dim: "array" '<' $@42 type_declaration '>' $@43 + 649 $@44: %empty - 650 $@44: %empty + 650 $@45: %empty - 651 $@45: %empty + 651 type_declaration_no_options_no_dim: "table" '<' $@44 table_type_pair '>' $@45 - 652 type_declaration_no_options_no_dim: "table" '<' $@44 table_type_pair '>' $@45 + 652 $@46: %empty - 653 $@46: %empty + 653 $@47: %empty - 654 $@47: %empty + 654 type_declaration_no_options_no_dim: "iterator" '<' $@46 type_declaration '>' $@47 + 655 | "block" - 655 type_declaration_no_options_no_dim: "iterator" '<' $@46 type_declaration '>' $@47 - 656 | "block" + 656 $@48: %empty - 657 $@48: %empty + 657 $@49: %empty - 658 $@49: %empty + 658 type_declaration_no_options_no_dim: "block" '<' $@48 type_declaration '>' $@49 - 659 type_declaration_no_options_no_dim: "block" '<' $@48 type_declaration '>' $@49 + 659 $@50: %empty - 660 $@50: %empty + 660 $@51: %empty - 661 $@51: %empty + 661 type_declaration_no_options_no_dim: "block" '<' $@50 optional_function_argument_list optional_function_type '>' $@51 + 662 | "function" - 662 type_declaration_no_options_no_dim: "block" '<' $@50 optional_function_argument_list optional_function_type '>' $@51 - 663 | "function" + 663 $@52: %empty - 664 $@52: %empty + 664 $@53: %empty - 665 $@53: %empty + 665 type_declaration_no_options_no_dim: "function" '<' $@52 type_declaration '>' $@53 - 666 type_declaration_no_options_no_dim: "function" '<' $@52 type_declaration '>' $@53 + 666 $@54: %empty - 667 $@54: %empty + 667 $@55: %empty - 668 $@55: %empty + 668 type_declaration_no_options_no_dim: "function" '<' $@54 optional_function_argument_list optional_function_type '>' $@55 + 669 | "lambda" - 669 type_declaration_no_options_no_dim: "function" '<' $@54 optional_function_argument_list optional_function_type '>' $@55 - 670 | "lambda" + 670 $@56: %empty - 671 $@56: %empty + 671 $@57: %empty - 672 $@57: %empty + 672 type_declaration_no_options_no_dim: "lambda" '<' $@56 type_declaration '>' $@57 - 673 type_declaration_no_options_no_dim: "lambda" '<' $@56 type_declaration '>' $@57 + 673 $@58: %empty - 674 $@58: %empty + 674 $@59: %empty - 675 $@59: %empty + 675 type_declaration_no_options_no_dim: "lambda" '<' $@58 optional_function_argument_list optional_function_type '>' $@59 - 676 type_declaration_no_options_no_dim: "lambda" '<' $@58 optional_function_argument_list optional_function_type '>' $@59 + 676 $@60: %empty - 677 $@60: %empty + 677 $@61: %empty - 678 $@61: %empty + 678 type_declaration_no_options_no_dim: "tuple" '<' $@60 tuple_type_list '>' $@61 - 679 type_declaration_no_options_no_dim: "tuple" '<' $@60 tuple_type_list '>' $@61 + 679 $@62: %empty - 680 $@62: %empty + 680 $@63: %empty - 681 $@63: %empty + 681 type_declaration_no_options_no_dim: "variant" '<' $@62 variant_type_list '>' $@63 - 682 type_declaration_no_options_no_dim: "variant" '<' $@62 variant_type_list '>' $@63 + 682 type_declaration: type_declaration_no_options + 683 | type_declaration '|' type_declaration_no_options + 684 | type_declaration '|' '#' - 683 type_declaration: type_declaration_no_options - 684 | type_declaration '|' type_declaration_no_options - 685 | type_declaration '|' '#' + 685 $@64: %empty - 686 $@64: %empty + 686 $@65: %empty - 687 $@65: %empty + 687 $@66: %empty - 688 $@66: %empty + 688 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" - 689 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" + 689 $@67: %empty - 690 $@67: %empty + 690 $@68: %empty - 691 $@68: %empty + 691 $@69: %empty - 692 $@69: %empty + 692 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" - 693 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" + 693 $@70: %empty - 694 $@70: %empty + 694 $@71: %empty - 695 $@71: %empty + 695 $@72: %empty - 696 $@72: %empty + 696 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" - 697 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" + 697 make_decl: make_struct_decl + 698 | make_dim_decl + 699 | make_table_decl + 700 | array_comprehension + 701 | make_tuple_call - 698 make_decl: make_struct_decl - 699 | make_dim_decl - 700 | make_table_decl - 701 | array_comprehension - 702 | make_tuple_call + 702 make_struct_fields: "name" copy_or_move expr + 703 | "name" ":=" expr + 704 | make_struct_fields ',' "name" copy_or_move expr + 705 | make_struct_fields ',' "name" ":=" expr + 706 | "$f" '(' expr ')' copy_or_move expr + 707 | "$f" '(' expr ')' ":=" expr + 708 | make_struct_fields ',' "$f" '(' expr ')' copy_or_move expr + 709 | make_struct_fields ',' "$f" '(' expr ')' ":=" expr - 703 make_struct_fields: "name" copy_or_move expr - 704 | "name" ":=" expr - 705 | make_struct_fields ',' "name" copy_or_move expr - 706 | make_struct_fields ',' "name" ":=" expr - 707 | "$f" '(' expr ')' copy_or_move expr - 708 | "$f" '(' expr ')' ":=" expr - 709 | make_struct_fields ',' "$f" '(' expr ')' copy_or_move expr - 710 | make_struct_fields ',' "$f" '(' expr ')' ":=" expr + 710 make_struct_single: make_struct_fields - 711 make_struct_single: make_struct_fields + 711 make_struct_dim: make_struct_fields + 712 | make_struct_dim "end of expression" make_struct_fields - 712 make_struct_dim: make_struct_fields - 713 | make_struct_dim "end of expression" make_struct_fields + 713 use_initializer: %empty + 714 | "uninitialized" - 714 use_initializer: %empty - 715 | "uninitialized" + 715 $@73: %empty - 716 $@73: %empty + 716 $@74: %empty - 717 $@74: %empty + 717 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' - 718 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' + 718 $@75: %empty - 719 $@75: %empty + 719 $@76: %empty - 720 $@76: %empty + 720 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' - 721 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' + 721 $@77: %empty - 722 $@77: %empty + 722 $@78: %empty - 723 $@78: %empty + 723 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim ')' - 724 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim ')' + 724 $@79: %empty - 725 $@79: %empty + 725 $@80: %empty - 726 $@80: %empty + 726 make_struct_decl: "default" '<' $@79 type_declaration_no_options '>' $@80 use_initializer - 727 make_struct_decl: "default" '<' $@79 type_declaration_no_options '>' $@80 use_initializer + 727 make_map_tuple: expr "=>" expr + 728 | expr - 728 make_map_tuple: expr "=>" expr - 729 | expr + 729 make_tuple_call: "tuple" '(' expr_list optional_comma ')' - 730 make_tuple_call: "tuple" '(' expr_list optional_comma ')' + 730 $@81: %empty - 731 $@81: %empty + 731 $@82: %empty - 732 $@82: %empty + 732 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' - 733 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' + 733 make_dim_decl: '[' expr_list optional_comma ']' - 734 make_dim_decl: '[' expr_list optional_comma ']' + 734 $@83: %empty - 735 $@83: %empty + 735 $@84: %empty - 736 $@84: %empty + 736 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' - 737 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' + 737 $@85: %empty - 738 $@85: %empty + 738 $@86: %empty - 739 $@86: %empty + 739 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' - 740 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' + 740 $@87: %empty - 741 $@87: %empty + 741 $@88: %empty - 742 $@88: %empty + 742 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' + 743 | "array" '(' expr_list optional_comma ')' - 743 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' - 744 | "array" '(' expr_list optional_comma ')' + 744 $@89: %empty - 745 $@89: %empty + 745 $@90: %empty - 746 $@90: %empty + 746 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' + 747 | "fixed_array" '(' expr_list optional_comma ')' - 747 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' - 748 | "fixed_array" '(' expr_list optional_comma ')' + 748 $@91: %empty - 749 $@91: %empty + 749 $@92: %empty - 750 $@92: %empty + 750 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' - 751 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' + 751 expr_map_tuple_list: make_map_tuple + 752 | expr_map_tuple_list ',' make_map_tuple - 752 expr_map_tuple_list: make_map_tuple - 753 | expr_map_tuple_list ',' make_map_tuple + 753 make_table_decl: "begin of code block" expr_map_tuple_list optional_comma "end of code block" + 754 | "table" '(' expr_map_tuple_list optional_comma ')' + 755 | "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + 756 | "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - 754 make_table_decl: "begin of code block" expr_map_tuple_list optional_comma "end of code block" - 755 | "table" '(' expr_map_tuple_list optional_comma ')' - 756 | "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - 757 | "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + 757 array_comprehension_where: %empty + 758 | "end of expression" "where" expr - 758 array_comprehension_where: %empty - 759 | "end of expression" "where" expr + 759 optional_comma: %empty + 760 | ',' - 760 optional_comma: %empty - 761 | ',' - - 762 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - 763 | '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - 764 | "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" + 761 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 762 | '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 763 | "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" Terminals, with rules where they appear $end (0) 0 - '!' (33) 104 120 369 - '#' (35) 637 639 685 - '$' (36) 20 294 628 630 - '%' (37) 35 39 140 381 - '&' (38) 148 297 388 497 505 635 636 641 - '(' (40) 58 68 69 70 93 102 108 115 116 248 249 250 270 271 286 287 288 334 335 336 337 339 349 350 354 355 356 357 358 399 409 410 411 412 441 442 443 444 445 447 448 449 450 451 452 453 454 455 456 478 507 561 602 603 627 628 630 707 708 709 710 718 721 724 730 733 737 740 743 744 747 748 751 755 756 757 - ')' (41) 58 68 69 70 93 102 108 115 116 248 249 250 270 271 286 287 288 334 335 336 337 339 349 350 354 355 356 357 358 399 409 410 411 412 441 442 443 444 445 447 448 449 450 451 452 453 454 455 456 478 507 561 602 603 627 628 630 707 708 709 710 718 721 724 730 733 737 740 743 744 747 748 751 755 756 757 - '*' (42) 138 379 408 642 - '+' (43) 136 371 377 - ',' (44) 48 82 95 111 269 290 302 335 509 510 529 563 564 608 705 706 709 710 753 761 - '-' (45) 137 372 378 631 634 636 639 - '.' (46) 40 165 167 168 347 348 349 350 353 401 403 405 449 451 452 - '/' (47) 41 139 380 - ':' (58) 50 51 118 270 414 482 488 498 499 511 512 541 546 - "end of expression" (59) 15 16 69 214 215 216 223 224 225 229 230 231 238 259 270 271 288 472 474 480 484 486 487 490 492 493 511 512 513 535 605 613 713 757 759 762 763 764 - '<' (60) 141 246 276 279 282 285 287 288 343 346 382 411 412 417 423 428 611 626 630 645 649 652 655 659 662 666 669 673 676 679 682 718 721 724 727 733 737 740 743 747 751 756 757 - '=' (61) 74 86 87 88 89 90 91 93 298 316 494 501 526 534 - '>' (62) 142 246 276 279 282 285 287 288 343 346 383 411 412 417 423 428 611 626 630 645 649 652 655 659 662 666 669 673 676 679 682 718 721 724 727 733 737 740 743 747 751 756 757 - '?' (63) 177 178 414 425 428 429 454 - '@' (64) 96 97 295 296 340 343 346 456 - '[' (91) 113 163 304 334 335 400 401 614 615 616 617 631 734 762 763 - ']' (93) 113 163 164 304 334 335 400 401 402 403 614 615 616 617 631 734 762 763 - '^' (94) 150 390 - "begin of code block" (123) 211 212 307 522 544 556 689 693 697 754 764 - '|' (124) 149 389 684 685 - "end of code block" (125) 211 212 307 522 544 556 689 693 697 754 764 - '~' (126) 121 370 - error (256) 234 353 + '!' (33) 104 120 368 + '#' (35) 636 638 684 + '$' (36) 20 293 627 629 + '%' (37) 35 39 140 380 + '&' (38) 148 296 387 496 504 634 635 640 + '(' (40) 58 68 69 70 93 102 108 115 116 248 249 250 269 270 285 286 287 333 334 335 336 338 348 349 353 354 355 356 357 398 408 409 410 411 440 441 442 443 444 446 447 448 449 450 451 452 453 454 455 477 506 560 601 602 626 627 629 706 707 708 709 717 720 723 729 732 736 739 742 743 746 747 750 754 755 756 + ')' (41) 58 68 69 70 93 102 108 115 116 248 249 250 269 270 285 286 287 333 334 335 336 338 348 349 353 354 355 356 357 398 408 409 410 411 440 441 442 443 444 446 447 448 449 450 451 452 453 454 455 477 506 560 601 602 626 627 629 706 707 708 709 717 720 723 729 732 736 739 742 743 746 747 750 754 755 756 + '*' (42) 138 378 407 641 + '+' (43) 136 370 376 + ',' (44) 48 82 95 111 268 289 301 334 508 509 528 562 563 607 704 705 708 709 752 760 + '-' (45) 137 371 377 630 633 635 638 + '.' (46) 40 165 167 168 346 347 348 349 352 400 402 404 448 450 451 + '/' (47) 41 139 379 + ':' (58) 50 51 118 269 413 481 487 497 498 510 511 540 545 + "end of expression" (59) 15 16 69 214 215 216 221 223 224 225 226 229 230 231 238 269 270 287 471 473 479 483 485 486 489 491 492 510 511 512 534 604 612 712 756 758 761 762 763 + '<' (60) 141 246 275 278 281 284 286 287 342 345 381 410 411 416 422 427 610 625 629 644 648 651 654 658 661 665 668 672 675 678 681 717 720 723 726 732 736 739 742 746 750 755 756 + '=' (61) 74 86 87 88 89 90 91 93 297 315 493 500 525 533 + '>' (62) 142 246 275 278 281 284 286 287 342 345 382 410 411 416 422 427 610 625 629 644 648 651 654 658 661 665 668 672 675 678 681 717 720 723 726 732 736 739 742 746 750 755 756 + '?' (63) 177 178 413 424 427 428 453 + '@' (64) 96 97 294 295 339 342 345 455 + '[' (91) 113 163 303 333 334 399 400 613 614 615 616 630 733 761 762 + ']' (93) 113 163 164 303 333 334 399 400 401 402 613 614 615 616 630 733 761 762 + '^' (94) 150 389 + "begin of code block" (123) 211 212 306 521 543 555 688 692 696 753 763 + '|' (124) 149 388 683 684 + "end of code block" (125) 211 212 306 521 543 555 688 692 696 753 763 + '~' (126) 121 369 + error (256) 234 352 "lexer error" (258) - "struct" (259) 551 718 737 - "class" (260) 550 721 - "let" (261) 261 264 - "def" (262) 204 474 476 + "struct" (259) 550 717 736 + "class" (260) 549 720 + "let" (261) 260 263 + "def" (262) 204 473 475 "while" (263) 72 "if" (264) 59 69 "static_if" (265) 60 "else" (266) 57 62 - "for" (267) 70 762 763 764 - "recover" (268) 260 - "true" (269) 79 90 365 - "false" (270) 80 91 366 + "for" (267) 70 761 762 763 + "recover" (268) 259 + "true" (269) 79 90 364 + "false" (270) 80 91 365 "new" (271) 247 248 249 250 251 - "typeinfo" (272) 286 287 288 - "type" (273) 84 285 417 423 428 626 - "in" (274) 70 85 762 763 764 - "is" (275) 173 175 417 418 419 455 - "as" (276) 43 174 176 177 178 420 423 424 425 428 429 453 454 + "typeinfo" (272) 285 286 287 + "type" (273) 84 284 416 422 427 625 + "in" (274) 70 85 761 762 763 + "is" (275) 173 175 416 417 418 454 + "as" (276) 43 174 176 177 178 419 422 423 424 427 428 452 453 "elif" (277) 54 "static_elif" (278) 55 - "array" (279) 649 737 740 743 744 747 + "array" (279) 648 736 739 742 743 746 "return" (280) 254 255 256 - "null" (281) 359 + "null" (281) 358 "break" (282) 252 - "try" (283) 260 + "try" (283) 259 "options" (284) 36 - "table" (285) 652 755 756 757 + "table" (285) 651 754 755 756 "expect" (286) 46 - "const" (287) 463 633 634 640 + "const" (287) 462 632 633 639 "require" (288) 37 99 "operator" (289) 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 - "enum" (290) 544 + "enum" (290) 543 "finally" (291) 212 "delete" (292) 171 242 243 - "deref" (293) 409 - "typedef" (294) 535 - "typedecl" (295) 627 + "deref" (293) 408 + "typedef" (294) 534 + "typedecl" (295) 626 "with" (296) 73 - "aka" (297) 508 510 562 564 + "aka" (297) 507 509 561 563 "assume" (298) 74 - "cast" (299) 276 - "override" (300) 460 - "abstract" (301) 474 - "upcast" (302) 279 - "iterator" (303) 655 763 - "var" (304) 262 265 - "addr" (305) 410 + "cast" (299) 275 + "override" (300) 459 + "abstract" (301) 473 + "upcast" (302) 278 + "iterator" (303) 654 762 + "var" (304) 261 264 + "addr" (305) 409 "continue" (306) 253 - "where" (307) 759 + "where" (307) 758 "pass" (308) 231 - "reinterpret" (309) 282 + "reinterpret" (309) 281 "module" (310) 22 - "public" (311) 18 45 207 465 521 532 538 554 + "public" (311) 18 45 207 464 520 531 537 553 "label" (312) 51 52 "goto" (313) 52 53 - "implicit" (314) 638 - "explicit" (315) 243 632 - "shared" (316) 518 - "private" (317) 19 100 206 466 520 531 537 553 - "smart_ptr" (318) 645 + "implicit" (314) 637 + "explicit" (315) 243 631 + "shared" (316) 517 + "private" (317) 19 100 206 465 519 530 536 552 + "smart_ptr" (318) 644 "unsafe" (319) 71 - "inscope" (320) 266 - "static" (321) 468 - "fixed_array" (322) 748 751 - "default" (323) 727 - "uninitialized" (324) 715 - "bool" (325) 179 565 - "void" (326) 585 - "string" (327) 180 566 - "auto" (328) 601 602 - "int" (329) 181 567 592 - "int2" (330) 182 571 - "int3" (331) 183 572 - "int4" (332) 184 573 - "uint" (333) 185 574 595 - "bitfield" (334) 591 611 697 - "uint2" (335) 186 578 - "uint3" (336) 187 579 - "uint4" (337) 188 580 - "float" (338) 189 581 - "float2" (339) 190 582 - "float3" (340) 191 583 - "float4" (341) 192 584 - "range" (342) 193 586 - "urange" (343) 194 587 - "range64" (344) 195 588 - "urange64" (345) 196 589 - "block" (346) 656 659 662 - "int64" (347) 197 570 598 - "uint64" (348) 198 577 599 - "double" (349) 199 590 - "function" (350) 663 666 669 - "lambda" (351) 670 673 676 - "int8" (352) 200 568 593 - "uint8" (353) 201 575 596 - "int16" (354) 202 569 594 - "uint16" (355) 203 576 597 - "tuple" (356) 679 689 730 733 740 - "variant" (357) 682 693 724 743 - "generator" (358) 411 412 + "inscope" (320) 265 + "static" (321) 467 + "fixed_array" (322) 747 750 + "default" (323) 726 + "uninitialized" (324) 714 + "bool" (325) 179 564 + "void" (326) 584 + "string" (327) 180 565 + "auto" (328) 600 601 + "int" (329) 181 566 591 + "int2" (330) 182 570 + "int3" (331) 183 571 + "int4" (332) 184 572 + "uint" (333) 185 573 594 + "bitfield" (334) 590 610 696 + "uint2" (335) 186 577 + "uint3" (336) 187 578 + "uint4" (337) 188 579 + "float" (338) 189 580 + "float2" (339) 190 581 + "float3" (340) 191 582 + "float4" (341) 192 583 + "range" (342) 193 585 + "urange" (343) 194 586 + "range64" (344) 195 587 + "urange64" (345) 196 588 + "block" (346) 655 658 661 + "int64" (347) 197 569 597 + "uint64" (348) 198 576 598 + "double" (349) 199 589 + "function" (350) 662 665 668 + "lambda" (351) 669 672 675 + "int8" (352) 200 567 592 + "uint8" (353) 201 574 595 + "int16" (354) 202 568 593 + "uint16" (355) 203 575 596 + "tuple" (356) 678 688 729 732 739 + "variant" (357) 681 692 723 742 + "generator" (358) 410 411 "yield" (359) 257 258 - "sealed" (360) 461 548 - "+=" (361) 122 325 - "-=" (362) 123 326 - "/=" (363) 125 328 - "*=" (364) 124 327 - "%=" (365) 126 329 - "&=" (366) 127 319 - "|=" (367) 128 320 - "^=" (368) 129 321 - "<<" (369) 155 373 - ">>" (370) 156 374 - "++" (371) 151 153 395 397 - "--" (372) 152 154 396 398 - "<=" (373) 146 386 - "<<=" (374) 157 330 - ">>=" (375) 158 331 - ">=" (376) 147 387 - "==" (377) 144 384 640 641 - "!=" (378) 145 385 - "->" (379) 336 337 - "<-" (380) 256 258 293 299 317 495 502 - "??" (381) 172 413 646 - "?." (382) 166 169 404 405 450 452 - "?[" (383) 164 402 403 - "<|" (384) 437 - "|>" (385) 109 438 439 - ":=" (386) 168 170 300 318 503 704 706 708 710 - "<<<" (387) 159 375 - ">>>" (388) 160 376 - "<<<=" (389) 161 332 - ">>>=" (390) 162 333 - "=>" (391) 292 293 728 + "sealed" (360) 460 547 + "+=" (361) 122 324 + "-=" (362) 123 325 + "/=" (363) 125 327 + "*=" (364) 124 326 + "%=" (365) 126 328 + "&=" (366) 127 318 + "|=" (367) 128 319 + "^=" (368) 129 320 + "<<" (369) 155 372 + ">>" (370) 156 373 + "++" (371) 151 153 394 396 + "--" (372) 152 154 395 397 + "<=" (373) 146 385 + "<<=" (374) 157 329 + ">>=" (375) 158 330 + ">=" (376) 147 386 + "==" (377) 144 383 639 640 + "!=" (378) 145 384 + "->" (379) 335 336 + "<-" (380) 256 258 292 298 316 494 501 + "??" (381) 172 412 645 + "?." (382) 166 169 403 404 449 451 + "?[" (383) 164 401 402 + "<|" (384) 436 + "|>" (385) 109 437 438 + ":=" (386) 168 170 299 317 502 703 705 707 709 + "<<<" (387) 159 374 + ">>>" (388) 160 375 + "<<<=" (389) 161 331 + ">>>=" (390) 162 332 + "=>" (391) 291 292 727 "::" (392) 240 241 - "&&" (393) 105 133 391 - "||" (394) 106 134 392 - "^^" (395) 107 135 393 - "&&=" (396) 130 322 - "||=" (397) 131 323 - "^^=" (398) 132 324 - ".." (399) 143 394 - "$$" (400) 441 - "$i" (401) 339 442 507 561 - "$v" (402) 443 - "$b" (403) 444 - "$a" (404) 445 478 - "$t" (405) 603 - "$c" (406) 447 448 456 - "$f" (407) 449 450 451 452 453 454 455 707 708 709 710 - "..." (408) 446 - "integer constant" (409) 49 50 51 52 77 88 308 - "long integer constant" (410) 310 - "unsigned integer constant" (411) 309 - "unsigned long integer constant" (412) 311 - "unsigned int8 constant" (413) 312 - "floating point constant" (414) 78 89 313 - "double constant" (415) 314 - "name" (416) 21 38 40 41 43 74 76 83 87 119 167 168 169 175 176 178 239 240 241 268 269 287 288 297 298 299 300 336 337 347 348 349 350 404 405 419 420 425 482 488 506 508 509 510 525 526 534 539 549 560 562 563 564 602 604 605 607 608 689 693 697 703 704 705 706 + "&&" (393) 105 133 390 + "||" (394) 106 134 391 + "^^" (395) 107 135 392 + "&&=" (396) 130 321 + "||=" (397) 131 322 + "^^=" (398) 132 323 + ".." (399) 143 393 + "$$" (400) 440 + "$i" (401) 338 441 506 560 + "$v" (402) 442 + "$b" (403) 443 + "$a" (404) 444 477 + "$t" (405) 602 + "$c" (406) 446 447 455 + "$f" (407) 448 449 450 451 452 453 454 706 707 708 709 + "..." (408) 445 + "integer constant" (409) 49 50 51 52 77 88 307 + "long integer constant" (410) 309 + "unsigned integer constant" (411) 308 + "unsigned long integer constant" (412) 310 + "unsigned int8 constant" (413) 311 + "floating point constant" (414) 78 89 312 + "double constant" (415) 313 + "name" (416) 21 38 40 41 43 74 76 83 87 119 167 168 169 175 176 178 239 240 241 267 268 286 287 296 297 298 299 335 336 346 347 348 349 403 404 418 419 424 481 487 505 507 508 509 524 525 533 538 548 559 561 562 563 601 603 604 606 607 688 692 696 702 703 704 705 "start of the string" (417) 27 31 STRING_CHARACTER (418) 23 25 32 33 STRING_CHARACTER_ESC (419) 24 26 @@ -1323,13 +1318,13 @@ Nonterminals, with rules where they appear on right: 29 30 31 string_builder (218) on left: 31 - on right: 363 + on right: 362 reader_character_sequence (219) on left: 32 33 on right: 33 35 expr_reader (220) on left: 35 - on right: 16 362 + on right: 16 361 $@1 (221) on left: 34 on right: 35 @@ -1413,7 +1408,7 @@ Nonterminals, with rules where they appear on right: 36 95 102 metadata_argument_list (248) on left: 96 97 - on right: 97 458 + on right: 97 457 annotation_declaration_name (249) on left: 98 99 100 on right: 101 102 @@ -1428,13 +1423,13 @@ Nonterminals, with rules where they appear on right: 111 113 optional_annotation_list (253) on left: 112 113 - on right: 204 305 306 474 476 544 559 + on right: 204 304 305 473 475 543 558 optional_function_argument_list (254) on left: 114 115 116 - on right: 208 305 306 346 662 669 676 + on right: 208 304 305 345 661 668 675 optional_function_type (255) on left: 117 118 - on right: 208 305 306 346 662 669 676 + on right: 208 304 305 345 661 668 675 function_name (256) on left: 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 on right: 208 @@ -1446,7 +1441,7 @@ Nonterminals, with rules where they appear on right: 210 function_declaration_header (259) on left: 208 - on right: 210 474 476 + on right: 210 473 475 function_declaration (260) on left: 210 on right: 204 @@ -1455,25 +1450,25 @@ Nonterminals, with rules where they appear on right: 210 expression_block (262) on left: 211 212 - on right: 57 58 68 70 71 72 73 210 260 291 306 476 + on right: 57 58 68 70 71 72 73 210 259 290 305 475 expr_call_pipe (263) on left: 213 - on right: 440 + on right: 439 expression_any (264) on left: 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 on right: 233 expressions (265) on left: 232 233 234 - on right: 211 212 233 234 307 + on right: 211 212 233 234 306 optional_expr_list (266) on left: 235 236 - on right: 248 628 630 + on right: 248 627 629 type_declaration_no_options_list (267) on left: 237 238 - on right: 238 630 + on right: 238 629 name_in_namespace (268) on left: 239 240 241 - on right: 35 98 286 287 288 334 335 338 354 355 356 360 546 600 628 630 + on right: 35 98 285 286 287 333 334 337 353 354 355 359 545 599 627 629 expression_delete (269) on left: 242 243 on right: 216 @@ -1488,7 +1483,7 @@ Nonterminals, with rules where they appear on right: 246 expr_new (273) on left: 247 248 249 250 251 - on right: 433 + on right: 432 expression_break (274) on left: 252 on right: 66 223 @@ -1498,573 +1493,570 @@ Nonterminals, with rules where they appear expression_return (276) on left: 254 255 256 on right: 64 225 - expression_yield_no_pipe (277) + expression_yield (277) on left: 257 258 - on right: 65 259 - expression_yield (278) + on right: 65 226 + expression_try_catch (278) on left: 259 - on right: 226 - expression_try_catch (279) - on left: 260 on right: 228 - kwd_let_var_or_nothing (280) - on left: 261 262 263 - on right: 477 - kwd_let (281) - on left: 264 265 - on right: 272 273 522 524 - optional_in_scope (282) - on left: 266 267 - on right: 272 273 - tuple_expansion (283) - on left: 268 269 - on right: 269 270 271 - tuple_expansion_variable_declaration (284) - on left: 270 271 - on right: 273 - expression_let (285) - on left: 272 273 + kwd_let_var_or_nothing (279) + on left: 260 261 262 + on right: 476 + kwd_let (280) + on left: 263 264 + on right: 271 272 521 523 + optional_in_scope (281) + on left: 265 266 + on right: 271 272 + tuple_expansion (282) + on left: 267 268 + on right: 268 269 270 + tuple_expansion_variable_declaration (283) + on left: 269 270 + on right: 272 + expression_let (284) + on left: 271 272 on right: 217 - expr_cast (286) - on left: 276 279 282 - on right: 432 - $@5 (287) + expr_cast (285) + on left: 275 278 281 + on right: 431 + $@5 (286) + on left: 273 + on right: 275 + $@6 (287) on left: 274 - on right: 276 - $@6 (288) - on left: 275 - on right: 276 - $@7 (289) + on right: 275 + $@7 (288) + on left: 276 + on right: 278 + $@8 (289) on left: 277 - on right: 279 - $@8 (290) - on left: 278 - on right: 279 - $@9 (291) + on right: 278 + $@9 (290) + on left: 279 + on right: 281 + $@10 (291) on left: 280 - on right: 282 - $@10 (292) - on left: 281 - on right: 282 - expr_type_decl (293) - on left: 285 - on right: 431 - $@11 (294) - on left: 283 - on right: 285 - $@12 (295) + on right: 281 + expr_type_decl (292) on left: 284 - on right: 285 - expr_type_info (296) - on left: 286 287 288 on right: 430 - expr_list (297) - on left: 289 290 - on right: 70 236 290 335 337 350 356 358 399 448 730 734 744 747 748 751 762 763 764 - block_or_simple_block (298) - on left: 291 292 293 - on right: 305 - block_or_lambda (299) - on left: 294 295 296 - on right: 305 306 - capture_entry (300) - on left: 297 298 299 300 - on right: 301 302 - capture_list (301) - on left: 301 302 - on right: 302 304 - optional_capture_list (302) - on left: 303 304 - on right: 305 306 411 412 - expr_full_block (303) - on left: 305 - on right: 436 - expr_full_block_assumed_piped (304) - on left: 306 307 + $@11 (293) + on left: 282 + on right: 284 + $@12 (294) + on left: 283 + on right: 284 + expr_type_info (295) + on left: 285 286 287 + on right: 429 + expr_list (296) + on left: 288 289 + on right: 70 236 289 334 336 349 355 357 398 447 729 733 743 746 747 750 761 762 763 + block_or_simple_block (297) + on left: 290 291 292 + on right: 304 + block_or_lambda (298) + on left: 293 294 295 + on right: 304 305 + capture_entry (299) + on left: 296 297 298 299 + on right: 300 301 + capture_list (300) + on left: 300 301 + on right: 301 303 + optional_capture_list (301) + on left: 302 303 + on right: 304 305 410 411 + expr_full_block (302) + on left: 304 + on right: 435 + expr_full_block_assumed_piped (303) + on left: 305 306 on right: 213 - expr_numeric_const (305) - on left: 308 309 310 311 312 313 314 - on right: 361 - expr_assign (306) - on left: 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 + expr_numeric_const (304) + on left: 307 308 309 310 311 312 313 + on right: 360 + expr_assign (305) + on left: 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 on right: 215 - expr_named_call (307) - on left: 334 335 - on right: 435 - expr_method_call (308) - on left: 336 337 + expr_named_call (306) + on left: 333 334 on right: 434 - func_addr_name (309) - on left: 338 339 - on right: 340 343 346 - func_addr_expr (310) - on left: 340 343 346 - on right: 406 - $@13 (311) + expr_method_call (307) + on left: 335 336 + on right: 433 + func_addr_name (308) + on left: 337 338 + on right: 339 342 345 + func_addr_expr (309) + on left: 339 342 345 + on right: 405 + $@13 (310) + on left: 340 + on right: 342 + $@14 (311) on left: 341 - on right: 343 - $@14 (312) - on left: 342 - on right: 343 - $@15 (313) + on right: 342 + $@15 (312) + on left: 343 + on right: 345 + $@16 (313) on left: 344 - on right: 346 - $@16 (314) - on left: 345 - on right: 346 - expr_field (315) - on left: 347 348 349 350 353 - on right: 367 - $@17 (316) + on right: 345 + expr_field (314) + on left: 346 347 348 349 352 + on right: 366 + $@17 (315) + on left: 350 + on right: 352 + $@18 (316) on left: 351 - on right: 353 - $@18 (317) - on left: 352 - on right: 353 - expr_call (318) - on left: 354 355 356 357 358 - on right: 213 407 - expr (319) - on left: 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 417 418 419 420 423 424 425 428 429 430 431 432 433 434 435 436 437 438 439 440 - on right: 30 53 58 63 68 69 72 73 74 242 243 255 256 257 258 270 271 276 279 282 286 287 288 289 290 292 293 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 336 337 339 347 348 349 350 353 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 400 401 402 403 404 405 408 409 410 412 413 414 417 418 419 420 423 424 425 428 429 437 438 439 441 442 443 444 445 447 448 449 450 451 452 453 454 455 456 478 499 500 507 512 513 526 561 603 614 616 627 703 704 705 706 707 708 709 710 728 729 759 762 763 - $@19 (320) + on right: 352 + expr_call (317) + on left: 353 354 355 356 357 + on right: 213 406 + expr (318) + on left: 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 416 417 418 419 422 423 424 427 428 429 430 431 432 433 434 435 436 437 438 439 + on right: 30 53 58 63 68 69 72 73 74 242 243 255 256 257 258 269 270 275 278 281 285 286 287 288 289 291 292 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 335 336 338 346 347 348 349 352 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 399 400 401 402 403 404 407 408 409 411 412 413 416 417 418 419 422 423 424 427 428 436 437 438 440 441 442 443 444 446 447 448 449 450 451 452 453 454 455 477 498 499 506 511 512 525 560 602 613 615 626 702 703 704 705 706 707 708 709 727 728 758 761 762 + $@19 (319) + on left: 414 + on right: 416 + $@20 (320) on left: 415 - on right: 417 - $@20 (321) - on left: 416 - on right: 417 - $@21 (322) + on right: 416 + $@21 (321) + on left: 420 + on right: 422 + $@22 (322) on left: 421 - on right: 423 - $@22 (323) - on left: 422 - on right: 423 - $@23 (324) + on right: 422 + $@23 (323) + on left: 425 + on right: 427 + $@24 (324) on left: 426 - on right: 428 - $@24 (325) - on left: 427 - on right: 428 - expr_mtag (326) - on left: 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 - on right: 368 - optional_field_annotation (327) - on left: 457 458 - on right: 469 477 516 524 - optional_override (328) - on left: 459 460 461 - on right: 469 476 - optional_constant (329) - on left: 462 463 - on right: 474 476 - optional_public_or_private_member_variable (330) - on left: 464 465 466 - on right: 469 474 476 - optional_static_member_variable (331) - on left: 467 468 - on right: 469 476 - structure_variable_declaration (332) - on left: 469 - on right: 472 - struct_variable_declaration_list (333) - on left: 470 472 474 476 - on right: 472 474 476 556 - $@25 (334) - on left: 471 - on right: 472 - $@26 (335) - on left: 473 - on right: 474 - $@27 (336) - on left: 475 - on right: 476 - function_argument_declaration (337) - on left: 477 478 - on right: 479 480 - function_argument_list (338) - on left: 479 480 - on right: 116 480 - tuple_type (339) - on left: 481 482 - on right: 483 484 487 - tuple_type_list (340) - on left: 483 484 - on right: 484 679 - tuple_alias_type_list (341) - on left: 485 486 487 - on right: 486 487 689 - variant_type (342) - on left: 488 - on right: 489 490 493 - variant_type_list (343) - on left: 489 490 - on right: 490 682 - variant_alias_type_list (344) - on left: 491 492 493 - on right: 492 493 693 - copy_or_move (345) - on left: 494 495 - on right: 499 500 703 705 707 709 - variable_declaration (346) - on left: 496 497 498 499 500 - on right: 469 477 - copy_or_move_or_clone (347) - on left: 501 502 503 - on right: 270 271 512 513 - optional_ref (348) - on left: 504 505 - on right: 271 513 - let_variable_name_with_pos_list (349) - on left: 506 507 508 509 510 - on right: 509 510 511 512 513 - let_variable_declaration (350) - on left: 511 512 513 - on right: 272 516 524 - global_variable_declaration_list (351) - on left: 514 516 - on right: 516 522 - $@28 (352) - on left: 515 - on right: 516 - optional_shared (353) - on left: 517 518 - on right: 22 522 524 - optional_public_or_private_variable (354) - on left: 519 520 521 - on right: 522 524 - global_let (355) - on left: 522 524 + on right: 427 + expr_mtag (325) + on left: 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 + on right: 367 + optional_field_annotation (326) + on left: 456 457 + on right: 468 476 515 523 + optional_override (327) + on left: 458 459 460 + on right: 468 475 + optional_constant (328) + on left: 461 462 + on right: 473 475 + optional_public_or_private_member_variable (329) + on left: 463 464 465 + on right: 468 473 475 + optional_static_member_variable (330) + on left: 466 467 + on right: 468 475 + structure_variable_declaration (331) + on left: 468 + on right: 471 + struct_variable_declaration_list (332) + on left: 469 471 473 475 + on right: 471 473 475 555 + $@25 (333) + on left: 470 + on right: 471 + $@26 (334) + on left: 472 + on right: 473 + $@27 (335) + on left: 474 + on right: 475 + function_argument_declaration (336) + on left: 476 477 + on right: 478 479 + function_argument_list (337) + on left: 478 479 + on right: 116 479 + tuple_type (338) + on left: 480 481 + on right: 482 483 486 + tuple_type_list (339) + on left: 482 483 + on right: 483 678 + tuple_alias_type_list (340) + on left: 484 485 486 + on right: 485 486 688 + variant_type (341) + on left: 487 + on right: 488 489 492 + variant_type_list (342) + on left: 488 489 + on right: 489 681 + variant_alias_type_list (343) + on left: 490 491 492 + on right: 491 492 692 + copy_or_move (344) + on left: 493 494 + on right: 498 499 702 704 706 708 + variable_declaration (345) + on left: 495 496 497 498 499 + on right: 468 476 + copy_or_move_or_clone (346) + on left: 500 501 502 + on right: 269 270 511 512 + optional_ref (347) + on left: 503 504 + on right: 270 512 + let_variable_name_with_pos_list (348) + on left: 505 506 507 508 509 + on right: 508 509 510 511 512 + let_variable_declaration (349) + on left: 510 511 512 + on right: 271 515 523 + global_variable_declaration_list (350) + on left: 513 515 + on right: 515 521 + $@28 (351) + on left: 514 + on right: 515 + optional_shared (352) + on left: 516 517 + on right: 22 521 523 + optional_public_or_private_variable (353) + on left: 518 519 520 + on right: 521 523 + global_let (354) + on left: 521 523 on right: 5 - $@29 (356) - on left: 523 - on right: 524 - enum_expression (357) - on left: 525 526 - on right: 528 529 - enum_list (358) - on left: 527 528 529 - on right: 529 544 - optional_public_or_private_alias (359) - on left: 530 531 532 - on right: 534 689 693 697 - single_alias (360) - on left: 534 - on right: 535 - $@30 (361) + $@29 (355) + on left: 522 + on right: 523 + enum_expression (356) + on left: 524 525 + on right: 527 528 + enum_list (357) + on left: 526 527 528 + on right: 528 543 + optional_public_or_private_alias (358) + on left: 529 530 531 + on right: 533 688 692 696 + single_alias (359) on left: 533 on right: 534 - alias_declaration (362) - on left: 535 + $@30 (360) + on left: 532 + on right: 533 + alias_declaration (361) + on left: 534 on right: 10 - optional_public_or_private_enum (363) - on left: 536 537 538 - on right: 544 - enum_name (364) - on left: 539 - on right: 544 - optional_enum_basic_type_declaration (365) - on left: 540 541 - on right: 544 - enum_declaration (366) - on left: 544 + optional_public_or_private_enum (362) + on left: 535 536 537 + on right: 543 + enum_name (363) + on left: 538 + on right: 543 + optional_enum_basic_type_declaration (364) + on left: 539 540 + on right: 543 + enum_declaration (365) + on left: 543 on right: 4 - $@31 (367) + $@31 (366) + on left: 541 + on right: 543 + $@32 (367) on left: 542 - on right: 544 - $@32 (368) - on left: 543 - on right: 544 - optional_structure_parent (369) - on left: 545 546 - on right: 549 - optional_sealed (370) - on left: 547 548 - on right: 549 - structure_name (371) - on left: 549 - on right: 559 - class_or_struct (372) - on left: 550 551 - on right: 559 - optional_public_or_private_structure (373) - on left: 552 553 554 - on right: 559 - optional_struct_variable_declaration_list (374) - on left: 555 556 - on right: 559 - structure_declaration (375) - on left: 559 + on right: 543 + optional_structure_parent (368) + on left: 544 545 + on right: 548 + optional_sealed (369) + on left: 546 547 + on right: 548 + structure_name (370) + on left: 548 + on right: 558 + class_or_struct (371) + on left: 549 550 + on right: 558 + optional_public_or_private_structure (372) + on left: 551 552 553 + on right: 558 + optional_struct_variable_declaration_list (373) + on left: 554 555 + on right: 558 + structure_declaration (374) + on left: 558 on right: 3 - $@33 (376) + $@33 (375) + on left: 556 + on right: 558 + $@34 (376) on left: 557 - on right: 559 - $@34 (377) - on left: 558 - on right: 559 - variable_name_with_pos_list (378) - on left: 560 561 562 563 564 - on right: 70 496 497 498 499 500 563 564 762 763 764 - basic_type_declaration (379) - on left: 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 - on right: 357 358 418 424 429 439 620 - enum_basic_type_declaration (380) - on left: 592 593 594 595 596 597 598 599 - on right: 541 - structure_type_declaration (381) - on left: 600 - on right: 247 248 623 - auto_type_declaration (382) - on left: 601 602 603 + on right: 558 + variable_name_with_pos_list (377) + on left: 559 560 561 562 563 + on right: 70 495 496 497 498 499 562 563 761 762 763 + basic_type_declaration (378) + on left: 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 + on right: 356 357 417 423 428 438 619 + enum_basic_type_declaration (379) + on left: 591 592 593 594 595 596 597 598 + on right: 540 + structure_type_declaration (380) + on left: 599 + on right: 247 248 622 + auto_type_declaration (381) + on left: 600 601 602 + on right: 620 + bitfield_bits (382) + on left: 603 604 + on right: 604 610 + bitfield_alias_bits (383) + on left: 605 606 607 + on right: 607 696 + bitfield_type_declaration (384) + on left: 610 on right: 621 - bitfield_bits (383) - on left: 604 605 - on right: 605 611 - bitfield_alias_bits (384) - on left: 606 607 608 - on right: 608 697 - bitfield_type_declaration (385) - on left: 611 - on right: 622 - $@35 (386) + $@35 (385) + on left: 608 + on right: 610 + $@36 (386) on left: 609 - on right: 611 - $@36 (387) - on left: 610 - on right: 611 - table_type_pair (388) - on left: 612 613 - on right: 652 - dim_list (389) - on left: 614 615 616 617 - on right: 616 617 619 - type_declaration_no_options (390) - on left: 618 619 - on right: 270 276 279 282 343 411 412 417 511 512 683 684 718 721 724 727 733 737 740 743 747 751 756 757 - type_declaration_no_options_no_dim (391) - on left: 620 621 622 623 626 627 628 630 631 632 633 634 635 636 637 638 639 640 641 642 645 646 649 652 655 656 659 662 663 666 669 670 673 676 679 682 - on right: 618 619 631 632 633 634 635 636 637 638 639 640 641 642 646 - $@37 (392) + on right: 610 + table_type_pair (387) + on left: 611 612 + on right: 651 + dim_list (388) + on left: 613 614 615 616 + on right: 615 616 618 + type_declaration_no_options (389) + on left: 617 618 + on right: 269 275 278 281 342 410 411 416 510 511 682 683 717 720 723 726 732 736 739 742 746 750 755 756 + type_declaration_no_options_no_dim (390) + on left: 619 620 621 622 625 626 627 629 630 631 632 633 634 635 636 637 638 639 640 641 644 645 648 651 654 655 658 661 662 665 668 669 672 675 678 681 + on right: 617 618 630 631 632 633 634 635 636 637 638 639 640 641 645 + $@37 (391) + on left: 623 + on right: 625 + $@38 (392) on left: 624 - on right: 626 - $@38 (393) - on left: 625 - on right: 626 - $@39 (394) - on left: 629 - on right: 630 - $@40 (395) + on right: 625 + $@39 (393) + on left: 628 + on right: 629 + $@40 (394) + on left: 642 + on right: 644 + $@41 (395) on left: 643 - on right: 645 - $@41 (396) - on left: 644 - on right: 645 - $@42 (397) + on right: 644 + $@42 (396) + on left: 646 + on right: 648 + $@43 (397) on left: 647 - on right: 649 - $@43 (398) - on left: 648 - on right: 649 - $@44 (399) + on right: 648 + $@44 (398) + on left: 649 + on right: 651 + $@45 (399) on left: 650 - on right: 652 - $@45 (400) - on left: 651 - on right: 652 - $@46 (401) + on right: 651 + $@46 (400) + on left: 652 + on right: 654 + $@47 (401) on left: 653 - on right: 655 - $@47 (402) - on left: 654 - on right: 655 - $@48 (403) + on right: 654 + $@48 (402) + on left: 656 + on right: 658 + $@49 (403) on left: 657 - on right: 659 - $@49 (404) - on left: 658 - on right: 659 - $@50 (405) + on right: 658 + $@50 (404) + on left: 659 + on right: 661 + $@51 (405) on left: 660 - on right: 662 - $@51 (406) - on left: 661 - on right: 662 - $@52 (407) + on right: 661 + $@52 (406) + on left: 663 + on right: 665 + $@53 (407) on left: 664 - on right: 666 - $@53 (408) - on left: 665 - on right: 666 - $@54 (409) + on right: 665 + $@54 (408) + on left: 666 + on right: 668 + $@55 (409) on left: 667 - on right: 669 - $@55 (410) - on left: 668 - on right: 669 - $@56 (411) + on right: 668 + $@56 (410) + on left: 670 + on right: 672 + $@57 (411) on left: 671 - on right: 673 - $@57 (412) - on left: 672 - on right: 673 - $@58 (413) + on right: 672 + $@58 (412) + on left: 673 + on right: 675 + $@59 (413) on left: 674 - on right: 676 - $@59 (414) - on left: 675 - on right: 676 - $@60 (415) + on right: 675 + $@60 (414) + on left: 676 + on right: 678 + $@61 (415) on left: 677 - on right: 679 - $@61 (416) - on left: 678 - on right: 679 - $@62 (417) + on right: 678 + $@62 (416) + on left: 679 + on right: 681 + $@63 (417) on left: 680 - on right: 682 - $@63 (418) - on left: 681 - on right: 682 - type_declaration (419) - on left: 683 684 685 - on right: 118 237 238 246 285 423 428 481 482 488 498 499 534 612 613 626 645 649 655 659 666 673 684 685 - tuple_alias_declaration (420) - on left: 689 + on right: 681 + type_declaration (418) + on left: 682 683 684 + on right: 118 237 238 246 284 422 427 480 481 487 497 498 533 611 612 625 644 648 654 658 665 672 683 684 + tuple_alias_declaration (419) + on left: 688 on right: 12 - $@64 (421) + $@64 (420) + on left: 685 + on right: 688 + $@65 (421) on left: 686 - on right: 689 - $@65 (422) + on right: 688 + $@66 (422) on left: 687 - on right: 689 - $@66 (423) - on left: 688 - on right: 689 - variant_alias_declaration (424) - on left: 693 + on right: 688 + variant_alias_declaration (423) + on left: 692 on right: 11 - $@67 (425) + $@67 (424) + on left: 689 + on right: 692 + $@68 (425) on left: 690 - on right: 693 - $@68 (426) + on right: 692 + $@69 (426) on left: 691 - on right: 693 - $@69 (427) - on left: 692 - on right: 693 - bitfield_alias_declaration (428) - on left: 697 + on right: 692 + bitfield_alias_declaration (427) + on left: 696 on right: 13 - $@70 (429) + $@70 (428) + on left: 693 + on right: 696 + $@71 (429) on left: 694 - on right: 697 - $@71 (430) + on right: 696 + $@72 (430) on left: 695 + on right: 696 + make_decl (431) + on left: 697 698 699 700 701 + on right: 251 363 + make_struct_fields (432) + on left: 702 703 704 705 706 707 708 709 + on right: 333 334 704 705 708 709 710 711 712 + make_struct_single (433) + on left: 710 + on right: 250 354 + make_struct_dim (434) + on left: 711 712 + on right: 712 717 720 723 732 736 739 742 + use_initializer (435) + on left: 713 714 + on right: 249 250 717 720 726 732 736 739 + make_struct_decl (436) + on left: 717 720 723 726 on right: 697 - $@72 (431) - on left: 696 - on right: 697 - make_decl (432) - on left: 698 699 700 701 702 - on right: 251 364 - make_struct_fields (433) - on left: 703 704 705 706 707 708 709 710 - on right: 334 335 705 706 709 710 711 712 713 - make_struct_single (434) - on left: 711 - on right: 250 355 - make_struct_dim (435) - on left: 712 713 - on right: 713 718 721 724 733 737 740 743 - use_initializer (436) - on left: 714 715 - on right: 249 250 718 721 727 733 737 740 - make_struct_decl (437) - on left: 718 721 724 727 - on right: 698 - $@73 (438) + $@73 (437) + on left: 715 + on right: 717 + $@74 (438) on left: 716 - on right: 718 - $@74 (439) - on left: 717 - on right: 718 - $@75 (440) + on right: 717 + $@75 (439) + on left: 718 + on right: 720 + $@76 (440) on left: 719 - on right: 721 - $@76 (441) - on left: 720 - on right: 721 - $@77 (442) + on right: 720 + $@77 (441) + on left: 721 + on right: 723 + $@78 (442) on left: 722 - on right: 724 - $@78 (443) - on left: 723 - on right: 724 - $@79 (444) + on right: 723 + $@79 (443) + on left: 724 + on right: 726 + $@80 (444) on left: 725 - on right: 727 - $@80 (445) - on left: 726 - on right: 727 - make_map_tuple (446) - on left: 728 729 - on right: 752 753 764 - make_tuple_call (447) - on left: 730 733 - on right: 702 - $@81 (448) + on right: 726 + make_map_tuple (445) + on left: 727 728 + on right: 751 752 763 + make_tuple_call (446) + on left: 729 732 + on right: 701 + $@81 (447) + on left: 730 + on right: 732 + $@82 (448) on left: 731 - on right: 733 - $@82 (449) - on left: 732 - on right: 733 - make_dim_decl (450) - on left: 734 737 740 743 744 747 748 751 - on right: 699 - $@83 (451) + on right: 732 + make_dim_decl (449) + on left: 733 736 739 742 743 746 747 750 + on right: 698 + $@83 (450) + on left: 734 + on right: 736 + $@84 (451) on left: 735 - on right: 737 - $@84 (452) - on left: 736 - on right: 737 - $@85 (453) + on right: 736 + $@85 (452) + on left: 737 + on right: 739 + $@86 (453) on left: 738 - on right: 740 - $@86 (454) - on left: 739 - on right: 740 - $@87 (455) + on right: 739 + $@87 (454) + on left: 740 + on right: 742 + $@88 (455) on left: 741 - on right: 743 - $@88 (456) - on left: 742 - on right: 743 - $@89 (457) + on right: 742 + $@89 (456) + on left: 744 + on right: 746 + $@90 (457) on left: 745 - on right: 747 - $@90 (458) - on left: 746 - on right: 747 - $@91 (459) + on right: 746 + $@91 (458) + on left: 748 + on right: 750 + $@92 (459) on left: 749 - on right: 751 - $@92 (460) - on left: 750 - on right: 751 - expr_map_tuple_list (461) - on left: 752 753 - on right: 753 754 755 756 757 - make_table_decl (462) - on left: 754 755 756 757 + on right: 750 + expr_map_tuple_list (460) + on left: 751 752 + on right: 752 753 754 755 756 + make_table_decl (461) + on left: 753 754 755 756 + on right: 699 + array_comprehension_where (462) + on left: 757 758 + on right: 761 762 763 + optional_comma (463) + on left: 759 760 + on right: 398 543 696 729 733 743 746 747 750 753 754 755 756 + array_comprehension (464) + on left: 761 762 763 on right: 700 - array_comprehension_where (463) - on left: 758 759 - on right: 762 763 764 - optional_comma (464) - on left: 760 761 - on right: 399 544 697 730 734 744 747 748 751 754 755 756 757 - array_comprehension (465) - on left: 762 763 764 - on right: 701 State 0 @@ -2138,9 +2130,9 @@ State 2 State 3 - 264 kwd_let: "let" . + 263 kwd_let: "let" . - $default reduce using rule 264 (kwd_let) + $default reduce using rule 263 (kwd_let) State 4 @@ -2179,12 +2171,12 @@ State 6 State 7 - 535 alias_declaration: "typedef" . single_alias "end of expression" + 534 alias_declaration: "typedef" . single_alias "end of expression" "public" shift, and go to state 45 "private" shift, and go to state 46 - $default reduce using rule 530 (optional_public_or_private_alias) + $default reduce using rule 529 (optional_public_or_private_alias) optional_public_or_private_alias go to state 47 single_alias go to state 48 @@ -2192,9 +2184,9 @@ State 7 State 8 - 265 kwd_let: "var" . + 264 kwd_let: "var" . - $default reduce using rule 265 (kwd_let) + $default reduce using rule 264 (kwd_let) State 9 @@ -2209,36 +2201,36 @@ State 9 State 10 - 697 bitfield_alias_declaration: "bitfield" . optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" + 696 bitfield_alias_declaration: "bitfield" . optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" "public" shift, and go to state 45 "private" shift, and go to state 46 - $default reduce using rule 530 (optional_public_or_private_alias) + $default reduce using rule 529 (optional_public_or_private_alias) optional_public_or_private_alias go to state 52 State 11 - 689 tuple_alias_declaration: "tuple" . optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" + 688 tuple_alias_declaration: "tuple" . optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" "public" shift, and go to state 45 "private" shift, and go to state 46 - $default reduce using rule 530 (optional_public_or_private_alias) + $default reduce using rule 529 (optional_public_or_private_alias) optional_public_or_private_alias go to state 53 State 12 - 693 variant_alias_declaration: "variant" . optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" + 692 variant_alias_declaration: "variant" . optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" "public" shift, and go to state 45 "private" shift, and go to state 46 - $default reduce using rule 530 (optional_public_or_private_alias) + $default reduce using rule 529 (optional_public_or_private_alias) optional_public_or_private_alias go to state 54 @@ -2324,8 +2316,8 @@ State 21 State 22 204 global_function_declaration: optional_annotation_list . "def" function_declaration - 544 enum_declaration: optional_annotation_list . "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" - 559 structure_declaration: optional_annotation_list . class_or_struct optional_public_or_private_structure $@33 structure_name $@34 optional_struct_variable_declaration_list + 543 enum_declaration: optional_annotation_list . "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" + 558 structure_declaration: optional_annotation_list . class_or_struct optional_public_or_private_structure $@33 structure_name $@34 optional_struct_variable_declaration_list "struct" shift, and go to state 69 "class" shift, and go to state 70 @@ -2344,12 +2336,12 @@ State 23 State 24 - 522 global_let: kwd_let . optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" - 524 | kwd_let . optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration + 521 global_let: kwd_let . optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" + 523 | kwd_let . optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration "shared" shift, and go to state 74 - $default reduce using rule 517 (optional_shared) + $default reduce using rule 516 (optional_shared) optional_shared go to state 75 @@ -2527,28 +2519,28 @@ State 44 State 45 - 532 optional_public_or_private_alias: "public" . + 531 optional_public_or_private_alias: "public" . - $default reduce using rule 532 (optional_public_or_private_alias) + $default reduce using rule 531 (optional_public_or_private_alias) State 46 - 531 optional_public_or_private_alias: "private" . + 530 optional_public_or_private_alias: "private" . - $default reduce using rule 531 (optional_public_or_private_alias) + $default reduce using rule 530 (optional_public_or_private_alias) State 47 - 534 single_alias: optional_public_or_private_alias . "name" $@30 '=' type_declaration + 533 single_alias: optional_public_or_private_alias . "name" $@30 '=' type_declaration "name" shift, and go to state 86 State 48 - 535 alias_declaration: "typedef" single_alias . "end of expression" + 534 alias_declaration: "typedef" single_alias . "end of expression" "end of expression" shift, and go to state 87 @@ -2573,28 +2565,28 @@ State 51 "shared" shift, and go to state 74 - $default reduce using rule 517 (optional_shared) + $default reduce using rule 516 (optional_shared) optional_shared go to state 88 State 52 - 697 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias . "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" + 696 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias . "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" "name" shift, and go to state 89 State 53 - 689 tuple_alias_declaration: "tuple" optional_public_or_private_alias . "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" + 688 tuple_alias_declaration: "tuple" optional_public_or_private_alias . "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" "name" shift, and go to state 90 State 54 - 693 variant_alias_declaration: "variant" optional_public_or_private_alias . "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" + 692 variant_alias_declaration: "variant" optional_public_or_private_alias . "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" "name" shift, and go to state 91 @@ -2616,33 +2608,6 @@ State 56 "::" [reduce using rule 239 (name_in_namespace)] $default reduce using rule 239 (name_in_namespace) - shift/reduce conflict on token "::": - 239 name_in_namespace: "name" . - 240 name_in_namespace: "name" . "::" "name" - First example: program kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation "$i" '(' "typeinfo" '(' "name" . "::" "name" expr ')' ')' ':' type_declaration_no_options "end of expression" $end - Shift derivation - $accept - `-> 0: program $end - `-> 5: program global_let - `-> 524: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration - `-> 511: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" - `-> 507: "$i" '(' expr_type_info ')' - `-> 286: "typeinfo" '(' name_in_namespace expr ')' - `-> 240: "name" . "::" "name" - Second example: program kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation "$i" '(' "typeinfo" '(' "name" . "::" "name" ')' ')' ':' type_declaration_no_options "end of expression" $end - Reduce derivation - $accept - `-> 0: program $end - `-> 5: program global_let - `-> 524: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration - `-> 511: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" - `-> 507: "$i" '(' expr ')' - `-> 430: expr_type_info - `-> 286: "typeinfo" '(' name_in_namespace expr ')' - `-> 239: "name" . `-> 360: name_in_namespace - `-> 241: "::" "name" - - State 57 @@ -2777,16 +2742,16 @@ State 68 State 69 - 551 class_or_struct: "struct" . + 550 class_or_struct: "struct" . - $default reduce using rule 551 (class_or_struct) + $default reduce using rule 550 (class_or_struct) State 70 - 550 class_or_struct: "class" . + 549 class_or_struct: "class" . - $default reduce using rule 550 (class_or_struct) + $default reduce using rule 549 (class_or_struct) State 71 @@ -2804,44 +2769,44 @@ State 71 State 72 - 544 enum_declaration: optional_annotation_list "enum" . optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" + 543 enum_declaration: optional_annotation_list "enum" . optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" "public" shift, and go to state 108 "private" shift, and go to state 109 - $default reduce using rule 536 (optional_public_or_private_enum) + $default reduce using rule 535 (optional_public_or_private_enum) optional_public_or_private_enum go to state 110 State 73 - 559 structure_declaration: optional_annotation_list class_or_struct . optional_public_or_private_structure $@33 structure_name $@34 optional_struct_variable_declaration_list + 558 structure_declaration: optional_annotation_list class_or_struct . optional_public_or_private_structure $@33 structure_name $@34 optional_struct_variable_declaration_list "public" shift, and go to state 111 "private" shift, and go to state 112 - $default reduce using rule 552 (optional_public_or_private_structure) + $default reduce using rule 551 (optional_public_or_private_structure) optional_public_or_private_structure go to state 113 State 74 - 518 optional_shared: "shared" . + 517 optional_shared: "shared" . - $default reduce using rule 518 (optional_shared) + $default reduce using rule 517 (optional_shared) State 75 - 522 global_let: kwd_let optional_shared . optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" - 524 | kwd_let optional_shared . optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration + 521 global_let: kwd_let optional_shared . optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" + 523 | kwd_let optional_shared . optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration "public" shift, and go to state 114 "private" shift, and go to state 115 - $default reduce using rule 519 (optional_public_or_private_variable) + $default reduce using rule 518 (optional_public_or_private_variable) optional_public_or_private_variable go to state 116 @@ -2943,18 +2908,18 @@ State 85 State 86 - 534 single_alias: optional_public_or_private_alias "name" . $@30 '=' type_declaration + 533 single_alias: optional_public_or_private_alias "name" . $@30 '=' type_declaration - $default reduce using rule 533 ($@30) + $default reduce using rule 532 ($@30) $@30 go to state 131 State 87 - 535 alias_declaration: "typedef" single_alias "end of expression" . + 534 alias_declaration: "typedef" single_alias "end of expression" . - $default reduce using rule 535 (alias_declaration) + $default reduce using rule 534 (alias_declaration) State 88 @@ -2971,27 +2936,27 @@ State 88 State 89 - 697 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" . $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" + 696 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" . $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" - $default reduce using rule 694 ($@70) + $default reduce using rule 693 ($@70) $@70 go to state 135 State 90 - 689 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" . $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" + 688 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" . $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" - $default reduce using rule 686 ($@64) + $default reduce using rule 685 ($@64) $@64 go to state 136 State 91 - 693 variant_alias_declaration: "variant" optional_public_or_private_alias "name" . $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" + 692 variant_alias_declaration: "variant" optional_public_or_private_alias "name" . $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" - $default reduce using rule 690 ($@67) + $default reduce using rule 689 ($@67) $@67 go to state 137 @@ -3176,21 +3141,21 @@ State 107 State 108 - 538 optional_public_or_private_enum: "public" . + 537 optional_public_or_private_enum: "public" . - $default reduce using rule 538 (optional_public_or_private_enum) + $default reduce using rule 537 (optional_public_or_private_enum) State 109 - 537 optional_public_or_private_enum: "private" . + 536 optional_public_or_private_enum: "private" . - $default reduce using rule 537 (optional_public_or_private_enum) + $default reduce using rule 536 (optional_public_or_private_enum) State 110 - 544 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum . enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" + 543 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum . enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" "name" shift, and go to state 148 @@ -3199,49 +3164,49 @@ State 110 State 111 - 554 optional_public_or_private_structure: "public" . + 553 optional_public_or_private_structure: "public" . - $default reduce using rule 554 (optional_public_or_private_structure) + $default reduce using rule 553 (optional_public_or_private_structure) State 112 - 553 optional_public_or_private_structure: "private" . + 552 optional_public_or_private_structure: "private" . - $default reduce using rule 553 (optional_public_or_private_structure) + $default reduce using rule 552 (optional_public_or_private_structure) State 113 - 559 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure . $@33 structure_name $@34 optional_struct_variable_declaration_list + 558 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure . $@33 structure_name $@34 optional_struct_variable_declaration_list - $default reduce using rule 557 ($@33) + $default reduce using rule 556 ($@33) $@33 go to state 150 State 114 - 521 optional_public_or_private_variable: "public" . + 520 optional_public_or_private_variable: "public" . - $default reduce using rule 521 (optional_public_or_private_variable) + $default reduce using rule 520 (optional_public_or_private_variable) State 115 - 520 optional_public_or_private_variable: "private" . + 519 optional_public_or_private_variable: "private" . - $default reduce using rule 520 (optional_public_or_private_variable) + $default reduce using rule 519 (optional_public_or_private_variable) State 116 - 522 global_let: kwd_let optional_shared optional_public_or_private_variable . "begin of code block" global_variable_declaration_list "end of code block" - 524 | kwd_let optional_shared optional_public_or_private_variable . $@29 optional_field_annotation let_variable_declaration + 521 global_let: kwd_let optional_shared optional_public_or_private_variable . "begin of code block" global_variable_declaration_list "end of code block" + 523 | kwd_let optional_shared optional_public_or_private_variable . $@29 optional_field_annotation let_variable_declaration "begin of code block" shift, and go to state 151 - $default reduce using rule 523 ($@29) + $default reduce using rule 522 ($@29) $@29 go to state 152 @@ -3362,7 +3327,7 @@ State 130 State 131 - 534 single_alias: optional_public_or_private_alias "name" $@30 . '=' type_declaration + 533 single_alias: optional_public_or_private_alias "name" $@30 . '=' type_declaration '=' shift, and go to state 165 @@ -3390,21 +3355,21 @@ State 134 State 135 - 697 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 . "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" + 696 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 . "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" "begin of code block" shift, and go to state 166 State 136 - 689 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 . "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" + 688 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 . "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" "begin of code block" shift, and go to state 167 State 137 - 693 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 . "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" + 692 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 . "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" "begin of code block" shift, and go to state 168 @@ -3538,29 +3503,29 @@ State 147 State 148 - 539 enum_name: "name" . + 538 enum_name: "name" . - $default reduce using rule 539 (enum_name) + $default reduce using rule 538 (enum_name) State 149 - 544 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name . optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" + 543 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name . optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" ':' shift, and go to state 202 - $default reduce using rule 540 (optional_enum_basic_type_declaration) + $default reduce using rule 539 (optional_enum_basic_type_declaration) optional_enum_basic_type_declaration go to state 203 State 150 - 559 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 . structure_name $@34 optional_struct_variable_declaration_list + 558 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 . structure_name $@34 optional_struct_variable_declaration_list "sealed" shift, and go to state 204 - $default reduce using rule 547 (optional_sealed) + $default reduce using rule 546 (optional_sealed) optional_sealed go to state 205 structure_name go to state 206 @@ -3568,20 +3533,20 @@ State 150 State 151 - 522 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" . global_variable_declaration_list "end of code block" + 521 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" . global_variable_declaration_list "end of code block" - $default reduce using rule 514 (global_variable_declaration_list) + $default reduce using rule 513 (global_variable_declaration_list) global_variable_declaration_list go to state 207 State 152 - 524 global_let: kwd_let optional_shared optional_public_or_private_variable $@29 . optional_field_annotation let_variable_declaration + 523 global_let: kwd_let optional_shared optional_public_or_private_variable $@29 . optional_field_annotation let_variable_declaration '@' shift, and go to state 208 - $default reduce using rule 457 (optional_field_annotation) + $default reduce using rule 456 (optional_field_annotation) metadata_argument_list go to state 209 optional_field_annotation go to state 210 @@ -3679,7 +3644,7 @@ State 164 State 165 - 534 single_alias: optional_public_or_private_alias "name" $@30 '=' . type_declaration + 533 single_alias: optional_public_or_private_alias "name" $@30 '=' . type_declaration "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -3737,27 +3702,27 @@ State 165 State 166 - 697 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" . $@71 bitfield_alias_bits optional_comma $@72 "end of code block" + 696 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" . $@71 bitfield_alias_bits optional_comma $@72 "end of code block" - $default reduce using rule 695 ($@71) + $default reduce using rule 694 ($@71) $@71 go to state 265 State 167 - 689 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" . $@65 tuple_alias_type_list $@66 "end of code block" + 688 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" . $@65 tuple_alias_type_list $@66 "end of code block" - $default reduce using rule 687 ($@65) + $default reduce using rule 686 ($@65) $@65 go to state 266 State 168 - 693 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" . $@68 variant_alias_type_list $@69 "end of code block" + 692 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" . $@68 variant_alias_type_list $@69 "end of code block" - $default reduce using rule 691 ($@68) + $default reduce using rule 690 ($@68) $@68 go to state 267 @@ -4107,7 +4072,7 @@ State 201 State 202 - 541 optional_enum_basic_type_declaration: ':' . enum_basic_type_declaration + 540 optional_enum_basic_type_declaration: ':' . enum_basic_type_declaration "int" shift, and go to state 325 "uint" shift, and go to state 326 @@ -4123,42 +4088,42 @@ State 202 State 203 - 544 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration . "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" + 543 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration . "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" "begin of code block" shift, and go to state 334 State 204 - 548 optional_sealed: "sealed" . + 547 optional_sealed: "sealed" . - $default reduce using rule 548 (optional_sealed) + $default reduce using rule 547 (optional_sealed) State 205 - 549 structure_name: optional_sealed . "name" optional_structure_parent + 548 structure_name: optional_sealed . "name" optional_structure_parent "name" shift, and go to state 335 State 206 - 559 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 structure_name . $@34 optional_struct_variable_declaration_list + 558 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 structure_name . $@34 optional_struct_variable_declaration_list - $default reduce using rule 558 ($@34) + $default reduce using rule 557 ($@34) $@34 go to state 336 State 207 - 516 global_variable_declaration_list: global_variable_declaration_list . $@28 optional_field_annotation let_variable_declaration - 522 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list . "end of code block" + 515 global_variable_declaration_list: global_variable_declaration_list . $@28 optional_field_annotation let_variable_declaration + 521 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list . "end of code block" "end of code block" shift, and go to state 337 - $default reduce using rule 515 ($@28) + $default reduce using rule 514 ($@28) $@28 go to state 338 @@ -4178,16 +4143,16 @@ State 208 State 209 97 metadata_argument_list: metadata_argument_list . '@' annotation_argument - 458 optional_field_annotation: metadata_argument_list . + 457 optional_field_annotation: metadata_argument_list . '@' shift, and go to state 340 - $default reduce using rule 458 (optional_field_annotation) + $default reduce using rule 457 (optional_field_annotation) State 210 - 524 global_let: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation . let_variable_declaration + 523 global_let: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation . let_variable_declaration "$i" shift, and go to state 341 "name" shift, and go to state 342 @@ -4241,306 +4206,306 @@ State 215 State 216 - 626 type_declaration_no_options_no_dim: "type" . '<' $@37 type_declaration '>' $@38 + 625 type_declaration_no_options_no_dim: "type" . '<' $@37 type_declaration '>' $@38 '<' shift, and go to state 346 State 217 - 649 type_declaration_no_options_no_dim: "array" . '<' $@42 type_declaration '>' $@43 + 648 type_declaration_no_options_no_dim: "array" . '<' $@42 type_declaration '>' $@43 '<' shift, and go to state 347 State 218 - 652 type_declaration_no_options_no_dim: "table" . '<' $@44 table_type_pair '>' $@45 + 651 type_declaration_no_options_no_dim: "table" . '<' $@44 table_type_pair '>' $@45 '<' shift, and go to state 348 State 219 - 627 type_declaration_no_options_no_dim: "typedecl" . '(' expr ')' + 626 type_declaration_no_options_no_dim: "typedecl" . '(' expr ')' '(' shift, and go to state 349 State 220 - 655 type_declaration_no_options_no_dim: "iterator" . '<' $@46 type_declaration '>' $@47 + 654 type_declaration_no_options_no_dim: "iterator" . '<' $@46 type_declaration '>' $@47 '<' shift, and go to state 350 State 221 - 645 type_declaration_no_options_no_dim: "smart_ptr" . '<' $@40 type_declaration '>' $@41 + 644 type_declaration_no_options_no_dim: "smart_ptr" . '<' $@40 type_declaration '>' $@41 '<' shift, and go to state 351 State 222 - 565 basic_type_declaration: "bool" . + 564 basic_type_declaration: "bool" . - $default reduce using rule 565 (basic_type_declaration) + $default reduce using rule 564 (basic_type_declaration) State 223 - 585 basic_type_declaration: "void" . + 584 basic_type_declaration: "void" . - $default reduce using rule 585 (basic_type_declaration) + $default reduce using rule 584 (basic_type_declaration) State 224 - 566 basic_type_declaration: "string" . + 565 basic_type_declaration: "string" . - $default reduce using rule 566 (basic_type_declaration) + $default reduce using rule 565 (basic_type_declaration) State 225 - 601 auto_type_declaration: "auto" . - 602 | "auto" . '(' "name" ')' + 600 auto_type_declaration: "auto" . + 601 | "auto" . '(' "name" ')' '(' shift, and go to state 352 - $default reduce using rule 601 (auto_type_declaration) + $default reduce using rule 600 (auto_type_declaration) State 226 - 567 basic_type_declaration: "int" . + 566 basic_type_declaration: "int" . - $default reduce using rule 567 (basic_type_declaration) + $default reduce using rule 566 (basic_type_declaration) State 227 - 571 basic_type_declaration: "int2" . + 570 basic_type_declaration: "int2" . - $default reduce using rule 571 (basic_type_declaration) + $default reduce using rule 570 (basic_type_declaration) State 228 - 572 basic_type_declaration: "int3" . + 571 basic_type_declaration: "int3" . - $default reduce using rule 572 (basic_type_declaration) + $default reduce using rule 571 (basic_type_declaration) State 229 - 573 basic_type_declaration: "int4" . + 572 basic_type_declaration: "int4" . - $default reduce using rule 573 (basic_type_declaration) + $default reduce using rule 572 (basic_type_declaration) State 230 - 574 basic_type_declaration: "uint" . + 573 basic_type_declaration: "uint" . - $default reduce using rule 574 (basic_type_declaration) + $default reduce using rule 573 (basic_type_declaration) State 231 - 591 basic_type_declaration: "bitfield" . - 611 bitfield_type_declaration: "bitfield" . '<' $@35 bitfield_bits '>' $@36 + 590 basic_type_declaration: "bitfield" . + 610 bitfield_type_declaration: "bitfield" . '<' $@35 bitfield_bits '>' $@36 '<' shift, and go to state 353 - $default reduce using rule 591 (basic_type_declaration) + $default reduce using rule 590 (basic_type_declaration) State 232 - 578 basic_type_declaration: "uint2" . + 577 basic_type_declaration: "uint2" . - $default reduce using rule 578 (basic_type_declaration) + $default reduce using rule 577 (basic_type_declaration) State 233 - 579 basic_type_declaration: "uint3" . + 578 basic_type_declaration: "uint3" . - $default reduce using rule 579 (basic_type_declaration) + $default reduce using rule 578 (basic_type_declaration) State 234 - 580 basic_type_declaration: "uint4" . + 579 basic_type_declaration: "uint4" . - $default reduce using rule 580 (basic_type_declaration) + $default reduce using rule 579 (basic_type_declaration) State 235 - 581 basic_type_declaration: "float" . + 580 basic_type_declaration: "float" . - $default reduce using rule 581 (basic_type_declaration) + $default reduce using rule 580 (basic_type_declaration) State 236 - 582 basic_type_declaration: "float2" . + 581 basic_type_declaration: "float2" . - $default reduce using rule 582 (basic_type_declaration) + $default reduce using rule 581 (basic_type_declaration) State 237 - 583 basic_type_declaration: "float3" . + 582 basic_type_declaration: "float3" . - $default reduce using rule 583 (basic_type_declaration) + $default reduce using rule 582 (basic_type_declaration) State 238 - 584 basic_type_declaration: "float4" . + 583 basic_type_declaration: "float4" . - $default reduce using rule 584 (basic_type_declaration) + $default reduce using rule 583 (basic_type_declaration) State 239 - 586 basic_type_declaration: "range" . + 585 basic_type_declaration: "range" . - $default reduce using rule 586 (basic_type_declaration) + $default reduce using rule 585 (basic_type_declaration) State 240 - 587 basic_type_declaration: "urange" . + 586 basic_type_declaration: "urange" . - $default reduce using rule 587 (basic_type_declaration) + $default reduce using rule 586 (basic_type_declaration) State 241 - 588 basic_type_declaration: "range64" . + 587 basic_type_declaration: "range64" . - $default reduce using rule 588 (basic_type_declaration) + $default reduce using rule 587 (basic_type_declaration) State 242 - 589 basic_type_declaration: "urange64" . + 588 basic_type_declaration: "urange64" . - $default reduce using rule 589 (basic_type_declaration) + $default reduce using rule 588 (basic_type_declaration) State 243 - 656 type_declaration_no_options_no_dim: "block" . - 659 | "block" . '<' $@48 type_declaration '>' $@49 - 662 | "block" . '<' $@50 optional_function_argument_list optional_function_type '>' $@51 + 655 type_declaration_no_options_no_dim: "block" . + 658 | "block" . '<' $@48 type_declaration '>' $@49 + 661 | "block" . '<' $@50 optional_function_argument_list optional_function_type '>' $@51 '<' shift, and go to state 354 - $default reduce using rule 656 (type_declaration_no_options_no_dim) + $default reduce using rule 655 (type_declaration_no_options_no_dim) State 244 - 570 basic_type_declaration: "int64" . + 569 basic_type_declaration: "int64" . - $default reduce using rule 570 (basic_type_declaration) + $default reduce using rule 569 (basic_type_declaration) State 245 - 577 basic_type_declaration: "uint64" . + 576 basic_type_declaration: "uint64" . - $default reduce using rule 577 (basic_type_declaration) + $default reduce using rule 576 (basic_type_declaration) State 246 - 590 basic_type_declaration: "double" . + 589 basic_type_declaration: "double" . - $default reduce using rule 590 (basic_type_declaration) + $default reduce using rule 589 (basic_type_declaration) State 247 - 663 type_declaration_no_options_no_dim: "function" . - 666 | "function" . '<' $@52 type_declaration '>' $@53 - 669 | "function" . '<' $@54 optional_function_argument_list optional_function_type '>' $@55 + 662 type_declaration_no_options_no_dim: "function" . + 665 | "function" . '<' $@52 type_declaration '>' $@53 + 668 | "function" . '<' $@54 optional_function_argument_list optional_function_type '>' $@55 '<' shift, and go to state 355 - $default reduce using rule 663 (type_declaration_no_options_no_dim) + $default reduce using rule 662 (type_declaration_no_options_no_dim) State 248 - 670 type_declaration_no_options_no_dim: "lambda" . - 673 | "lambda" . '<' $@56 type_declaration '>' $@57 - 676 | "lambda" . '<' $@58 optional_function_argument_list optional_function_type '>' $@59 + 669 type_declaration_no_options_no_dim: "lambda" . + 672 | "lambda" . '<' $@56 type_declaration '>' $@57 + 675 | "lambda" . '<' $@58 optional_function_argument_list optional_function_type '>' $@59 '<' shift, and go to state 356 - $default reduce using rule 670 (type_declaration_no_options_no_dim) + $default reduce using rule 669 (type_declaration_no_options_no_dim) State 249 - 568 basic_type_declaration: "int8" . + 567 basic_type_declaration: "int8" . - $default reduce using rule 568 (basic_type_declaration) + $default reduce using rule 567 (basic_type_declaration) State 250 - 575 basic_type_declaration: "uint8" . + 574 basic_type_declaration: "uint8" . - $default reduce using rule 575 (basic_type_declaration) + $default reduce using rule 574 (basic_type_declaration) State 251 - 569 basic_type_declaration: "int16" . + 568 basic_type_declaration: "int16" . - $default reduce using rule 569 (basic_type_declaration) + $default reduce using rule 568 (basic_type_declaration) State 252 - 576 basic_type_declaration: "uint16" . + 575 basic_type_declaration: "uint16" . - $default reduce using rule 576 (basic_type_declaration) + $default reduce using rule 575 (basic_type_declaration) State 253 - 679 type_declaration_no_options_no_dim: "tuple" . '<' $@60 tuple_type_list '>' $@61 + 678 type_declaration_no_options_no_dim: "tuple" . '<' $@60 tuple_type_list '>' $@61 '<' shift, and go to state 357 State 254 - 682 type_declaration_no_options_no_dim: "variant" . '<' $@62 variant_type_list '>' $@63 + 681 type_declaration_no_options_no_dim: "variant" . '<' $@62 variant_type_list '>' $@63 '<' shift, and go to state 358 State 255 - 603 auto_type_declaration: "$t" . '(' expr ')' + 602 auto_type_declaration: "$t" . '(' expr ')' '(' shift, and go to state 359 State 256 - 628 type_declaration_no_options_no_dim: '$' . name_in_namespace '(' optional_expr_list ')' - 630 | '$' . name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' + 627 type_declaration_no_options_no_dim: '$' . name_in_namespace '(' optional_expr_list ')' + 629 | '$' . name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' "::" shift, and go to state 55 "name" shift, and go to state 56 @@ -4550,63 +4515,63 @@ State 256 State 257 - 600 structure_type_declaration: name_in_namespace . + 599 structure_type_declaration: name_in_namespace . - $default reduce using rule 600 (structure_type_declaration) + $default reduce using rule 599 (structure_type_declaration) State 258 - 620 type_declaration_no_options_no_dim: basic_type_declaration . + 619 type_declaration_no_options_no_dim: basic_type_declaration . - $default reduce using rule 620 (type_declaration_no_options_no_dim) + $default reduce using rule 619 (type_declaration_no_options_no_dim) State 259 - 623 type_declaration_no_options_no_dim: structure_type_declaration . + 622 type_declaration_no_options_no_dim: structure_type_declaration . - $default reduce using rule 623 (type_declaration_no_options_no_dim) + $default reduce using rule 622 (type_declaration_no_options_no_dim) State 260 - 621 type_declaration_no_options_no_dim: auto_type_declaration . + 620 type_declaration_no_options_no_dim: auto_type_declaration . - $default reduce using rule 621 (type_declaration_no_options_no_dim) + $default reduce using rule 620 (type_declaration_no_options_no_dim) State 261 - 622 type_declaration_no_options_no_dim: bitfield_type_declaration . + 621 type_declaration_no_options_no_dim: bitfield_type_declaration . - $default reduce using rule 622 (type_declaration_no_options_no_dim) + $default reduce using rule 621 (type_declaration_no_options_no_dim) State 262 - 683 type_declaration: type_declaration_no_options . + 682 type_declaration: type_declaration_no_options . - $default reduce using rule 683 (type_declaration) + $default reduce using rule 682 (type_declaration) State 263 - 618 type_declaration_no_options: type_declaration_no_options_no_dim . - 619 | type_declaration_no_options_no_dim . dim_list - 631 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim . '-' '[' ']' - 632 | type_declaration_no_options_no_dim . "explicit" - 633 | type_declaration_no_options_no_dim . "const" - 634 | type_declaration_no_options_no_dim . '-' "const" - 635 | type_declaration_no_options_no_dim . '&' - 636 | type_declaration_no_options_no_dim . '-' '&' - 637 | type_declaration_no_options_no_dim . '#' - 638 | type_declaration_no_options_no_dim . "implicit" - 639 | type_declaration_no_options_no_dim . '-' '#' - 640 | type_declaration_no_options_no_dim . "==" "const" - 641 | type_declaration_no_options_no_dim . "==" '&' - 642 | type_declaration_no_options_no_dim . '*' - 646 | type_declaration_no_options_no_dim . "??" + 617 type_declaration_no_options: type_declaration_no_options_no_dim . + 618 | type_declaration_no_options_no_dim . dim_list + 630 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim . '-' '[' ']' + 631 | type_declaration_no_options_no_dim . "explicit" + 632 | type_declaration_no_options_no_dim . "const" + 633 | type_declaration_no_options_no_dim . '-' "const" + 634 | type_declaration_no_options_no_dim . '&' + 635 | type_declaration_no_options_no_dim . '-' '&' + 636 | type_declaration_no_options_no_dim . '#' + 637 | type_declaration_no_options_no_dim . "implicit" + 638 | type_declaration_no_options_no_dim . '-' '#' + 639 | type_declaration_no_options_no_dim . "==" "const" + 640 | type_declaration_no_options_no_dim . "==" '&' + 641 | type_declaration_no_options_no_dim . '*' + 645 | type_declaration_no_options_no_dim . "??" "const" shift, and go to state 361 "implicit" shift, and go to state 362 @@ -4619,47 +4584,47 @@ State 263 '[' shift, and go to state 369 '#' shift, and go to state 370 - $default reduce using rule 618 (type_declaration_no_options) + $default reduce using rule 617 (type_declaration_no_options) dim_list go to state 371 State 264 - 534 single_alias: optional_public_or_private_alias "name" $@30 '=' type_declaration . - 684 type_declaration: type_declaration . '|' type_declaration_no_options - 685 | type_declaration . '|' '#' + 533 single_alias: optional_public_or_private_alias "name" $@30 '=' type_declaration . + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' '|' shift, and go to state 372 - $default reduce using rule 534 (single_alias) + $default reduce using rule 533 (single_alias) State 265 - 697 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 . bitfield_alias_bits optional_comma $@72 "end of code block" + 696 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 . bitfield_alias_bits optional_comma $@72 "end of code block" "name" shift, and go to state 373 - $default reduce using rule 606 (bitfield_alias_bits) + $default reduce using rule 605 (bitfield_alias_bits) bitfield_alias_bits go to state 374 State 266 - 689 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 . tuple_alias_type_list $@66 "end of code block" + 688 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 . tuple_alias_type_list $@66 "end of code block" - $default reduce using rule 485 (tuple_alias_type_list) + $default reduce using rule 484 (tuple_alias_type_list) tuple_alias_type_list go to state 375 State 267 - 693 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 . variant_alias_type_list $@69 "end of code block" + 692 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 . variant_alias_type_list $@69 "end of code block" - $default reduce using rule 491 (variant_alias_type_list) + $default reduce using rule 490 (variant_alias_type_list) variant_alias_type_list go to state 376 @@ -5058,7 +5023,7 @@ State 321 ')' shift, and go to state 385 '@' shift, and go to state 208 - $default reduce using rule 457 (optional_field_annotation) + $default reduce using rule 456 (optional_field_annotation) metadata_argument_list go to state 209 optional_field_annotation go to state 386 @@ -5096,112 +5061,112 @@ State 324 State 325 - 592 enum_basic_type_declaration: "int" . + 591 enum_basic_type_declaration: "int" . - $default reduce using rule 592 (enum_basic_type_declaration) + $default reduce using rule 591 (enum_basic_type_declaration) State 326 - 595 enum_basic_type_declaration: "uint" . + 594 enum_basic_type_declaration: "uint" . - $default reduce using rule 595 (enum_basic_type_declaration) + $default reduce using rule 594 (enum_basic_type_declaration) State 327 - 598 enum_basic_type_declaration: "int64" . + 597 enum_basic_type_declaration: "int64" . - $default reduce using rule 598 (enum_basic_type_declaration) + $default reduce using rule 597 (enum_basic_type_declaration) State 328 - 599 enum_basic_type_declaration: "uint64" . + 598 enum_basic_type_declaration: "uint64" . - $default reduce using rule 599 (enum_basic_type_declaration) + $default reduce using rule 598 (enum_basic_type_declaration) State 329 - 593 enum_basic_type_declaration: "int8" . + 592 enum_basic_type_declaration: "int8" . - $default reduce using rule 593 (enum_basic_type_declaration) + $default reduce using rule 592 (enum_basic_type_declaration) State 330 - 596 enum_basic_type_declaration: "uint8" . + 595 enum_basic_type_declaration: "uint8" . - $default reduce using rule 596 (enum_basic_type_declaration) + $default reduce using rule 595 (enum_basic_type_declaration) State 331 - 594 enum_basic_type_declaration: "int16" . + 593 enum_basic_type_declaration: "int16" . - $default reduce using rule 594 (enum_basic_type_declaration) + $default reduce using rule 593 (enum_basic_type_declaration) State 332 - 597 enum_basic_type_declaration: "uint16" . + 596 enum_basic_type_declaration: "uint16" . - $default reduce using rule 597 (enum_basic_type_declaration) + $default reduce using rule 596 (enum_basic_type_declaration) State 333 - 541 optional_enum_basic_type_declaration: ':' enum_basic_type_declaration . + 540 optional_enum_basic_type_declaration: ':' enum_basic_type_declaration . - $default reduce using rule 541 (optional_enum_basic_type_declaration) + $default reduce using rule 540 (optional_enum_basic_type_declaration) State 334 - 544 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" . $@31 enum_list optional_comma $@32 "end of code block" + 543 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" . $@31 enum_list optional_comma $@32 "end of code block" - $default reduce using rule 542 ($@31) + $default reduce using rule 541 ($@31) $@31 go to state 392 State 335 - 549 structure_name: optional_sealed "name" . optional_structure_parent + 548 structure_name: optional_sealed "name" . optional_structure_parent ':' shift, and go to state 393 - $default reduce using rule 545 (optional_structure_parent) + $default reduce using rule 544 (optional_structure_parent) optional_structure_parent go to state 394 State 336 - 559 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 structure_name $@34 . optional_struct_variable_declaration_list + 558 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 structure_name $@34 . optional_struct_variable_declaration_list "begin of code block" shift, and go to state 395 - $default reduce using rule 555 (optional_struct_variable_declaration_list) + $default reduce using rule 554 (optional_struct_variable_declaration_list) optional_struct_variable_declaration_list go to state 396 State 337 - 522 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" . + 521 global_let: kwd_let optional_shared optional_public_or_private_variable "begin of code block" global_variable_declaration_list "end of code block" . - $default reduce using rule 522 (global_let) + $default reduce using rule 521 (global_let) State 338 - 516 global_variable_declaration_list: global_variable_declaration_list $@28 . optional_field_annotation let_variable_declaration + 515 global_variable_declaration_list: global_variable_declaration_list $@28 . optional_field_annotation let_variable_declaration '@' shift, and go to state 208 - $default reduce using rule 457 (optional_field_annotation) + $default reduce using rule 456 (optional_field_annotation) metadata_argument_list go to state 209 optional_field_annotation go to state 397 @@ -5228,43 +5193,43 @@ State 340 State 341 - 507 let_variable_name_with_pos_list: "$i" . '(' expr ')' + 506 let_variable_name_with_pos_list: "$i" . '(' expr ')' '(' shift, and go to state 399 State 342 - 506 let_variable_name_with_pos_list: "name" . - 508 | "name" . "aka" "name" + 505 let_variable_name_with_pos_list: "name" . + 507 | "name" . "aka" "name" "aka" shift, and go to state 400 - $default reduce using rule 506 (let_variable_name_with_pos_list) + $default reduce using rule 505 (let_variable_name_with_pos_list) State 343 - 509 let_variable_name_with_pos_list: let_variable_name_with_pos_list . ',' "name" - 510 | let_variable_name_with_pos_list . ',' "name" "aka" "name" - 511 let_variable_declaration: let_variable_name_with_pos_list . ':' type_declaration_no_options "end of expression" - 512 | let_variable_name_with_pos_list . ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 513 | let_variable_name_with_pos_list . optional_ref copy_or_move_or_clone expr "end of expression" + 508 let_variable_name_with_pos_list: let_variable_name_with_pos_list . ',' "name" + 509 | let_variable_name_with_pos_list . ',' "name" "aka" "name" + 510 let_variable_declaration: let_variable_name_with_pos_list . ':' type_declaration_no_options "end of expression" + 511 | let_variable_name_with_pos_list . ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 512 | let_variable_name_with_pos_list . optional_ref copy_or_move_or_clone expr "end of expression" ',' shift, and go to state 401 ':' shift, and go to state 402 '&' shift, and go to state 403 - $default reduce using rule 504 (optional_ref) + $default reduce using rule 503 (optional_ref) optional_ref go to state 404 State 344 - 524 global_let: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration . + 523 global_let: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration . - $default reduce using rule 524 (global_let) + $default reduce using rule 523 (global_let) State 345 @@ -5276,34 +5241,34 @@ State 345 State 346 - 626 type_declaration_no_options_no_dim: "type" '<' . $@37 type_declaration '>' $@38 + 625 type_declaration_no_options_no_dim: "type" '<' . $@37 type_declaration '>' $@38 - $default reduce using rule 624 ($@37) + $default reduce using rule 623 ($@37) $@37 go to state 405 State 347 - 649 type_declaration_no_options_no_dim: "array" '<' . $@42 type_declaration '>' $@43 + 648 type_declaration_no_options_no_dim: "array" '<' . $@42 type_declaration '>' $@43 - $default reduce using rule 647 ($@42) + $default reduce using rule 646 ($@42) $@42 go to state 406 State 348 - 652 type_declaration_no_options_no_dim: "table" '<' . $@44 table_type_pair '>' $@45 + 651 type_declaration_no_options_no_dim: "table" '<' . $@44 table_type_pair '>' $@45 - $default reduce using rule 650 ($@44) + $default reduce using rule 649 ($@44) $@44 go to state 407 State 349 - 627 type_declaration_no_options_no_dim: "typedecl" '(' . expr ')' + 626 type_declaration_no_options_no_dim: "typedecl" '(' . expr ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -5412,47 +5377,47 @@ State 349 State 350 - 655 type_declaration_no_options_no_dim: "iterator" '<' . $@46 type_declaration '>' $@47 + 654 type_declaration_no_options_no_dim: "iterator" '<' . $@46 type_declaration '>' $@47 - $default reduce using rule 653 ($@46) + $default reduce using rule 652 ($@46) $@46 go to state 481 State 351 - 645 type_declaration_no_options_no_dim: "smart_ptr" '<' . $@40 type_declaration '>' $@41 + 644 type_declaration_no_options_no_dim: "smart_ptr" '<' . $@40 type_declaration '>' $@41 - $default reduce using rule 643 ($@40) + $default reduce using rule 642 ($@40) $@40 go to state 482 State 352 - 602 auto_type_declaration: "auto" '(' . "name" ')' + 601 auto_type_declaration: "auto" '(' . "name" ')' "name" shift, and go to state 483 State 353 - 611 bitfield_type_declaration: "bitfield" '<' . $@35 bitfield_bits '>' $@36 + 610 bitfield_type_declaration: "bitfield" '<' . $@35 bitfield_bits '>' $@36 - $default reduce using rule 609 ($@35) + $default reduce using rule 608 ($@35) $@35 go to state 484 State 354 - 659 type_declaration_no_options_no_dim: "block" '<' . $@48 type_declaration '>' $@49 - 662 | "block" '<' . $@50 optional_function_argument_list optional_function_type '>' $@51 + 658 type_declaration_no_options_no_dim: "block" '<' . $@48 type_declaration '>' $@49 + 661 | "block" '<' . $@50 optional_function_argument_list optional_function_type '>' $@51 - ':' reduce using rule 660 ($@50) - '>' reduce using rule 660 ($@50) - '(' reduce using rule 660 ($@50) - $default reduce using rule 657 ($@48) + ':' reduce using rule 659 ($@50) + '>' reduce using rule 659 ($@50) + '(' reduce using rule 659 ($@50) + $default reduce using rule 656 ($@48) $@48 go to state 485 $@50 go to state 486 @@ -5460,13 +5425,13 @@ State 354 State 355 - 666 type_declaration_no_options_no_dim: "function" '<' . $@52 type_declaration '>' $@53 - 669 | "function" '<' . $@54 optional_function_argument_list optional_function_type '>' $@55 + 665 type_declaration_no_options_no_dim: "function" '<' . $@52 type_declaration '>' $@53 + 668 | "function" '<' . $@54 optional_function_argument_list optional_function_type '>' $@55 - ':' reduce using rule 667 ($@54) - '>' reduce using rule 667 ($@54) - '(' reduce using rule 667 ($@54) - $default reduce using rule 664 ($@52) + ':' reduce using rule 666 ($@54) + '>' reduce using rule 666 ($@54) + '(' reduce using rule 666 ($@54) + $default reduce using rule 663 ($@52) $@52 go to state 487 $@54 go to state 488 @@ -5474,13 +5439,13 @@ State 355 State 356 - 673 type_declaration_no_options_no_dim: "lambda" '<' . $@56 type_declaration '>' $@57 - 676 | "lambda" '<' . $@58 optional_function_argument_list optional_function_type '>' $@59 + 672 type_declaration_no_options_no_dim: "lambda" '<' . $@56 type_declaration '>' $@57 + 675 | "lambda" '<' . $@58 optional_function_argument_list optional_function_type '>' $@59 - ':' reduce using rule 674 ($@58) - '>' reduce using rule 674 ($@58) - '(' reduce using rule 674 ($@58) - $default reduce using rule 671 ($@56) + ':' reduce using rule 673 ($@58) + '>' reduce using rule 673 ($@58) + '(' reduce using rule 673 ($@58) + $default reduce using rule 670 ($@56) $@56 go to state 489 $@58 go to state 490 @@ -5488,25 +5453,25 @@ State 356 State 357 - 679 type_declaration_no_options_no_dim: "tuple" '<' . $@60 tuple_type_list '>' $@61 + 678 type_declaration_no_options_no_dim: "tuple" '<' . $@60 tuple_type_list '>' $@61 - $default reduce using rule 677 ($@60) + $default reduce using rule 676 ($@60) $@60 go to state 491 State 358 - 682 type_declaration_no_options_no_dim: "variant" '<' . $@62 variant_type_list '>' $@63 + 681 type_declaration_no_options_no_dim: "variant" '<' . $@62 variant_type_list '>' $@63 - $default reduce using rule 680 ($@62) + $default reduce using rule 679 ($@62) $@62 go to state 492 State 359 - 603 auto_type_declaration: "$t" '(' . expr ')' + 602 auto_type_declaration: "$t" '(' . expr ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -5615,8 +5580,8 @@ State 359 State 360 - 628 type_declaration_no_options_no_dim: '$' name_in_namespace . '(' optional_expr_list ')' - 630 | '$' name_in_namespace . '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' + 627 type_declaration_no_options_no_dim: '$' name_in_namespace . '(' optional_expr_list ')' + 629 | '$' name_in_namespace . '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' '<' shift, and go to state 494 '(' shift, and go to state 495 @@ -5624,29 +5589,29 @@ State 360 State 361 - 633 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "const" . + 632 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "const" . - $default reduce using rule 633 (type_declaration_no_options_no_dim) + $default reduce using rule 632 (type_declaration_no_options_no_dim) State 362 - 638 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "implicit" . + 637 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "implicit" . - $default reduce using rule 638 (type_declaration_no_options_no_dim) + $default reduce using rule 637 (type_declaration_no_options_no_dim) State 363 - 632 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "explicit" . + 631 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "explicit" . - $default reduce using rule 632 (type_declaration_no_options_no_dim) + $default reduce using rule 631 (type_declaration_no_options_no_dim) State 364 - 640 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "==" . "const" - 641 | type_declaration_no_options_no_dim "==" . '&' + 639 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "==" . "const" + 640 | type_declaration_no_options_no_dim "==" . '&' "const" shift, and go to state 496 '&' shift, and go to state 497 @@ -5654,24 +5619,24 @@ State 364 State 365 - 646 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "??" . + 645 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "??" . - $default reduce using rule 646 (type_declaration_no_options_no_dim) + $default reduce using rule 645 (type_declaration_no_options_no_dim) State 366 - 635 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '&' . + 634 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '&' . - $default reduce using rule 635 (type_declaration_no_options_no_dim) + $default reduce using rule 634 (type_declaration_no_options_no_dim) State 367 - 631 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' . '[' ']' - 634 | type_declaration_no_options_no_dim '-' . "const" - 636 | type_declaration_no_options_no_dim '-' . '&' - 639 | type_declaration_no_options_no_dim '-' . '#' + 630 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' . '[' ']' + 633 | type_declaration_no_options_no_dim '-' . "const" + 635 | type_declaration_no_options_no_dim '-' . '&' + 638 | type_declaration_no_options_no_dim '-' . '#' "const" shift, and go to state 498 '&' shift, and go to state 499 @@ -5681,15 +5646,15 @@ State 367 State 368 - 642 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '*' . + 641 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '*' . - $default reduce using rule 642 (type_declaration_no_options_no_dim) + $default reduce using rule 641 (type_declaration_no_options_no_dim) State 369 - 614 dim_list: '[' . expr ']' - 615 | '[' . ']' + 613 dim_list: '[' . expr ']' + 614 | '[' . ']' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -5799,26 +5764,26 @@ State 369 State 370 - 637 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '#' . + 636 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '#' . - $default reduce using rule 637 (type_declaration_no_options_no_dim) + $default reduce using rule 636 (type_declaration_no_options_no_dim) State 371 - 616 dim_list: dim_list . '[' expr ']' - 617 | dim_list . '[' ']' - 619 type_declaration_no_options: type_declaration_no_options_no_dim dim_list . + 615 dim_list: dim_list . '[' expr ']' + 616 | dim_list . '[' ']' + 618 type_declaration_no_options: type_declaration_no_options_no_dim dim_list . '[' shift, and go to state 504 - $default reduce using rule 619 (type_declaration_no_options) + $default reduce using rule 618 (type_declaration_no_options) State 372 - 684 type_declaration: type_declaration '|' . type_declaration_no_options - 685 | type_declaration '|' . '#' + 683 type_declaration: type_declaration '|' . type_declaration_no_options + 684 | type_declaration '|' . '#' "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -5876,28 +5841,28 @@ State 372 State 373 - 607 bitfield_alias_bits: "name" . + 606 bitfield_alias_bits: "name" . - $default reduce using rule 607 (bitfield_alias_bits) + $default reduce using rule 606 (bitfield_alias_bits) State 374 - 608 bitfield_alias_bits: bitfield_alias_bits . ',' "name" - 697 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits . optional_comma $@72 "end of code block" + 607 bitfield_alias_bits: bitfield_alias_bits . ',' "name" + 696 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits . optional_comma $@72 "end of code block" ',' shift, and go to state 507 - $default reduce using rule 760 (optional_comma) + $default reduce using rule 759 (optional_comma) optional_comma go to state 508 State 375 - 486 tuple_alias_type_list: tuple_alias_type_list . "end of expression" - 487 | tuple_alias_type_list . tuple_type "end of expression" - 689 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list . $@66 "end of code block" + 485 tuple_alias_type_list: tuple_alias_type_list . "end of expression" + 486 | tuple_alias_type_list . tuple_type "end of expression" + 688 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list . $@66 "end of code block" "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -5944,7 +5909,7 @@ State 375 "end of expression" shift, and go to state 510 '$' shift, and go to state 256 - $default reduce using rule 688 ($@66) + $default reduce using rule 687 ($@66) name_in_namespace go to state 257 tuple_type go to state 511 @@ -5960,14 +5925,14 @@ State 375 State 376 - 492 variant_alias_type_list: variant_alias_type_list . "end of expression" - 493 | variant_alias_type_list . variant_type "end of expression" - 693 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list . $@69 "end of code block" + 491 variant_alias_type_list: variant_alias_type_list . "end of expression" + 492 | variant_alias_type_list . variant_type "end of expression" + 692 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list . $@69 "end of code block" "name" shift, and go to state 514 "end of expression" shift, and go to state 515 - $default reduce using rule 692 ($@69) + $default reduce using rule 691 ($@69) variant_type go to state 516 $@69 go to state 517 @@ -6030,7 +5995,7 @@ State 383 State 384 - 478 function_argument_declaration: "$a" . '(' expr ')' + 477 function_argument_declaration: "$a" . '(' expr ')' '(' shift, and go to state 520 @@ -6044,27 +6009,27 @@ State 385 State 386 - 477 function_argument_declaration: optional_field_annotation . kwd_let_var_or_nothing variable_declaration + 476 function_argument_declaration: optional_field_annotation . kwd_let_var_or_nothing variable_declaration "let" shift, and go to state 521 "var" shift, and go to state 522 - $default reduce using rule 263 (kwd_let_var_or_nothing) + $default reduce using rule 262 (kwd_let_var_or_nothing) kwd_let_var_or_nothing go to state 523 State 387 - 479 function_argument_list: function_argument_declaration . + 478 function_argument_list: function_argument_declaration . - $default reduce using rule 479 (function_argument_list) + $default reduce using rule 478 (function_argument_list) State 388 116 optional_function_argument_list: '(' function_argument_list . ')' - 480 function_argument_list: function_argument_list . "end of expression" function_argument_declaration + 479 function_argument_list: function_argument_list . "end of expression" function_argument_declaration "end of expression" shift, and go to state 524 ')' shift, and go to state 525 @@ -6241,108 +6206,107 @@ State 391 '$' shift, and go to state 454 '@' shift, and go to state 455 - string_builder go to state 456 - expr_reader go to state 457 - expression_label go to state 546 - expression_goto go to state 547 - if_or_static_if go to state 548 - expression_if_one_liner go to state 549 - expression_if_then_else go to state 550 - expression_for_loop go to state 551 - expression_unsafe go to state 552 - expression_while_loop go to state 553 - expression_with go to state 554 - expression_with_alias go to state 555 - expr_call_pipe go to state 458 - expression_any go to state 556 - name_in_namespace go to state 459 - expression_delete go to state 557 - expr_new go to state 460 - expression_break go to state 558 - expression_continue go to state 559 - expression_return go to state 560 - expression_yield_no_pipe go to state 561 - expression_yield go to state 562 - expression_try_catch go to state 563 - kwd_let go to state 564 - expression_let go to state 565 - expr_cast go to state 461 - expr_type_decl go to state 462 - expr_type_info go to state 463 - block_or_lambda go to state 464 - expr_full_block go to state 465 - expr_numeric_const go to state 466 - expr_assign go to state 566 - expr_named_call go to state 467 - expr_method_call go to state 468 - func_addr_expr go to state 469 - expr_field go to state 470 - expr_call go to state 471 - expr go to state 567 - expr_mtag go to state 473 - basic_type_declaration go to state 474 - make_decl go to state 475 - make_struct_decl go to state 476 - make_tuple_call go to state 477 - make_dim_decl go to state 478 - make_table_decl go to state 479 - array_comprehension go to state 480 + string_builder go to state 456 + expr_reader go to state 457 + expression_label go to state 546 + expression_goto go to state 547 + if_or_static_if go to state 548 + expression_if_one_liner go to state 549 + expression_if_then_else go to state 550 + expression_for_loop go to state 551 + expression_unsafe go to state 552 + expression_while_loop go to state 553 + expression_with go to state 554 + expression_with_alias go to state 555 + expr_call_pipe go to state 458 + expression_any go to state 556 + name_in_namespace go to state 459 + expression_delete go to state 557 + expr_new go to state 460 + expression_break go to state 558 + expression_continue go to state 559 + expression_return go to state 560 + expression_yield go to state 561 + expression_try_catch go to state 562 + kwd_let go to state 563 + expression_let go to state 564 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_assign go to state 565 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 566 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 392 - 544 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 . enum_list optional_comma $@32 "end of code block" + 543 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 . enum_list optional_comma $@32 "end of code block" - "name" shift, and go to state 568 + "name" shift, and go to state 567 - $default reduce using rule 527 (enum_list) + $default reduce using rule 526 (enum_list) - enum_expression go to state 569 - enum_list go to state 570 + enum_expression go to state 568 + enum_list go to state 569 State 393 - 546 optional_structure_parent: ':' . name_in_namespace + 545 optional_structure_parent: ':' . name_in_namespace "::" shift, and go to state 55 "name" shift, and go to state 56 - name_in_namespace go to state 571 + name_in_namespace go to state 570 State 394 - 549 structure_name: optional_sealed "name" optional_structure_parent . + 548 structure_name: optional_sealed "name" optional_structure_parent . - $default reduce using rule 549 (structure_name) + $default reduce using rule 548 (structure_name) State 395 - 556 optional_struct_variable_declaration_list: "begin of code block" . struct_variable_declaration_list "end of code block" + 555 optional_struct_variable_declaration_list: "begin of code block" . struct_variable_declaration_list "end of code block" - $default reduce using rule 470 (struct_variable_declaration_list) + $default reduce using rule 469 (struct_variable_declaration_list) - struct_variable_declaration_list go to state 572 + struct_variable_declaration_list go to state 571 State 396 - 559 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 structure_name $@34 optional_struct_variable_declaration_list . + 558 structure_declaration: optional_annotation_list class_or_struct optional_public_or_private_structure $@33 structure_name $@34 optional_struct_variable_declaration_list . - $default reduce using rule 559 (structure_declaration) + $default reduce using rule 558 (structure_declaration) State 397 - 516 global_variable_declaration_list: global_variable_declaration_list $@28 optional_field_annotation . let_variable_declaration + 515 global_variable_declaration_list: global_variable_declaration_list $@28 optional_field_annotation . let_variable_declaration "$i" shift, and go to state 341 "name" shift, and go to state 342 let_variable_name_with_pos_list go to state 343 - let_variable_declaration go to state 573 + let_variable_declaration go to state 572 State 398 @@ -6354,7 +6318,7 @@ State 398 State 399 - 507 let_variable_name_with_pos_list: "$i" '(' . expr ')' + 506 let_variable_name_with_pos_list: "$i" '(' . expr ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -6450,7 +6414,7 @@ State 399 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 574 + expr go to state 573 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -6463,23 +6427,23 @@ State 399 State 400 - 508 let_variable_name_with_pos_list: "name" "aka" . "name" + 507 let_variable_name_with_pos_list: "name" "aka" . "name" - "name" shift, and go to state 575 + "name" shift, and go to state 574 State 401 - 509 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' . "name" - 510 | let_variable_name_with_pos_list ',' . "name" "aka" "name" + 508 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' . "name" + 509 | let_variable_name_with_pos_list ',' . "name" "aka" "name" - "name" shift, and go to state 576 + "name" shift, and go to state 575 State 402 - 511 let_variable_declaration: let_variable_name_with_pos_list ':' . type_declaration_no_options "end of expression" - 512 | let_variable_name_with_pos_list ':' . type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 510 let_variable_declaration: let_variable_name_with_pos_list ':' . type_declaration_no_options "end of expression" + 511 | let_variable_name_with_pos_list ':' . type_declaration_no_options copy_or_move_or_clone expr "end of expression" "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -6530,31 +6494,31 @@ State 402 structure_type_declaration go to state 259 auto_type_declaration go to state 260 bitfield_type_declaration go to state 261 - type_declaration_no_options go to state 577 + type_declaration_no_options go to state 576 type_declaration_no_options_no_dim go to state 263 State 403 - 505 optional_ref: '&' . + 504 optional_ref: '&' . - $default reduce using rule 505 (optional_ref) + $default reduce using rule 504 (optional_ref) State 404 - 513 let_variable_declaration: let_variable_name_with_pos_list optional_ref . copy_or_move_or_clone expr "end of expression" + 512 let_variable_declaration: let_variable_name_with_pos_list optional_ref . copy_or_move_or_clone expr "end of expression" - "<-" shift, and go to state 578 - ":=" shift, and go to state 579 - '=' shift, and go to state 580 + "<-" shift, and go to state 577 + ":=" shift, and go to state 578 + '=' shift, and go to state 579 - copy_or_move_or_clone go to state 581 + copy_or_move_or_clone go to state 580 State 405 - 626 type_declaration_no_options_no_dim: "type" '<' $@37 . type_declaration '>' $@38 + 625 type_declaration_no_options_no_dim: "type" '<' $@37 . type_declaration '>' $@38 "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -6607,12 +6571,12 @@ State 405 bitfield_type_declaration go to state 261 type_declaration_no_options go to state 262 type_declaration_no_options_no_dim go to state 263 - type_declaration go to state 582 + type_declaration go to state 581 State 406 - 649 type_declaration_no_options_no_dim: "array" '<' $@42 . type_declaration '>' $@43 + 648 type_declaration_no_options_no_dim: "array" '<' $@42 . type_declaration '>' $@43 "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -6665,12 +6629,12 @@ State 406 bitfield_type_declaration go to state 261 type_declaration_no_options go to state 262 type_declaration_no_options_no_dim go to state 263 - type_declaration go to state 583 + type_declaration go to state 582 State 407 - 652 type_declaration_no_options_no_dim: "table" '<' $@44 . table_type_pair '>' $@45 + 651 type_declaration_no_options_no_dim: "table" '<' $@44 . table_type_pair '>' $@45 "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -6721,38 +6685,38 @@ State 407 structure_type_declaration go to state 259 auto_type_declaration go to state 260 bitfield_type_declaration go to state 261 - table_type_pair go to state 584 + table_type_pair go to state 583 type_declaration_no_options go to state 262 type_declaration_no_options_no_dim go to state 263 - type_declaration go to state 585 + type_declaration go to state 584 State 408 - 718 make_struct_decl: "struct" . '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' + 717 make_struct_decl: "struct" . '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' - '<' shift, and go to state 586 + '<' shift, and go to state 585 State 409 - 721 make_struct_decl: "class" . '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' + 720 make_struct_decl: "class" . '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' - '<' shift, and go to state 587 + '<' shift, and go to state 586 State 410 - 365 expr: "true" . + 364 expr: "true" . - $default reduce using rule 365 (expr) + $default reduce using rule 364 (expr) State 411 - 366 expr: "false" . + 365 expr: "false" . - $default reduce using rule 366 (expr) + $default reduce using rule 365 (expr) State 412 @@ -6774,13 +6738,13 @@ State 412 "::" shift, and go to state 55 "name" shift, and go to state 56 "begin of code block" shift, and go to state 446 - '<' shift, and go to state 588 + '<' shift, and go to state 587 '[' shift, and go to state 452 name_in_namespace go to state 257 - new_type_declaration go to state 589 - structure_type_declaration go to state 590 - make_decl go to state 591 + new_type_declaration go to state 588 + structure_type_declaration go to state 589 + make_decl go to state 590 make_struct_decl go to state 476 make_tuple_call go to state 477 make_dim_decl go to state 478 @@ -6790,137 +6754,137 @@ State 412 State 413 - 286 expr_type_info: "typeinfo" . '(' name_in_namespace expr ')' - 287 | "typeinfo" . '(' name_in_namespace '<' "name" '>' expr ')' - 288 | "typeinfo" . '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' + 285 expr_type_info: "typeinfo" . '(' name_in_namespace expr ')' + 286 | "typeinfo" . '(' name_in_namespace '<' "name" '>' expr ')' + 287 | "typeinfo" . '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' - '(' shift, and go to state 592 + '(' shift, and go to state 591 State 414 - 285 expr_type_decl: "type" . '<' $@11 type_declaration '>' $@12 + 284 expr_type_decl: "type" . '<' $@11 type_declaration '>' $@12 - '<' shift, and go to state 593 + '<' shift, and go to state 592 State 415 - 737 make_dim_decl: "array" . "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' - 740 | "array" . "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' - 743 | "array" . "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' - 744 | "array" . '(' expr_list optional_comma ')' - 747 | "array" . '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' + 736 make_dim_decl: "array" . "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' + 739 | "array" . "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' + 742 | "array" . "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' + 743 | "array" . '(' expr_list optional_comma ')' + 746 | "array" . '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' - "struct" shift, and go to state 594 - "tuple" shift, and go to state 595 - "variant" shift, and go to state 596 - '<' shift, and go to state 597 - '(' shift, and go to state 598 + "struct" shift, and go to state 593 + "tuple" shift, and go to state 594 + "variant" shift, and go to state 595 + '<' shift, and go to state 596 + '(' shift, and go to state 597 State 416 - 359 expr: "null" . + 358 expr: "null" . - $default reduce using rule 359 (expr) + $default reduce using rule 358 (expr) State 417 - 755 make_table_decl: "table" . '(' expr_map_tuple_list optional_comma ')' - 756 | "table" . '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - 757 | "table" . '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + 754 make_table_decl: "table" . '(' expr_map_tuple_list optional_comma ')' + 755 | "table" . '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + 756 | "table" . '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - '<' shift, and go to state 599 - '(' shift, and go to state 600 + '<' shift, and go to state 598 + '(' shift, and go to state 599 State 418 - 409 expr: "deref" . '(' expr ')' + 408 expr: "deref" . '(' expr ')' - '(' shift, and go to state 601 + '(' shift, and go to state 600 State 419 - 276 expr_cast: "cast" . '<' $@5 type_declaration_no_options '>' $@6 expr + 275 expr_cast: "cast" . '<' $@5 type_declaration_no_options '>' $@6 expr - '<' shift, and go to state 602 + '<' shift, and go to state 601 State 420 - 279 expr_cast: "upcast" . '<' $@7 type_declaration_no_options '>' $@8 expr + 278 expr_cast: "upcast" . '<' $@7 type_declaration_no_options '>' $@8 expr - '<' shift, and go to state 603 + '<' shift, and go to state 602 State 421 - 410 expr: "addr" . '(' expr ')' + 409 expr: "addr" . '(' expr ')' - '(' shift, and go to state 604 + '(' shift, and go to state 603 State 422 - 282 expr_cast: "reinterpret" . '<' $@9 type_declaration_no_options '>' $@10 expr + 281 expr_cast: "reinterpret" . '<' $@9 type_declaration_no_options '>' $@10 expr - '<' shift, and go to state 605 + '<' shift, and go to state 604 State 423 - 748 make_dim_decl: "fixed_array" . '(' expr_list optional_comma ')' - 751 | "fixed_array" . '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' + 747 make_dim_decl: "fixed_array" . '(' expr_list optional_comma ')' + 750 | "fixed_array" . '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' - '<' shift, and go to state 606 - '(' shift, and go to state 607 + '<' shift, and go to state 605 + '(' shift, and go to state 606 State 424 - 727 make_struct_decl: "default" . '<' $@79 type_declaration_no_options '>' $@80 use_initializer + 726 make_struct_decl: "default" . '<' $@79 type_declaration_no_options '>' $@80 use_initializer - '<' shift, and go to state 608 + '<' shift, and go to state 607 State 425 - 591 basic_type_declaration: "bitfield" . + 590 basic_type_declaration: "bitfield" . - $default reduce using rule 591 (basic_type_declaration) + $default reduce using rule 590 (basic_type_declaration) State 426 - 730 make_tuple_call: "tuple" . '(' expr_list optional_comma ')' - 733 | "tuple" . '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' + 729 make_tuple_call: "tuple" . '(' expr_list optional_comma ')' + 732 | "tuple" . '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' - '<' shift, and go to state 609 - '(' shift, and go to state 610 + '<' shift, and go to state 608 + '(' shift, and go to state 609 State 427 - 724 make_struct_decl: "variant" . '<' $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim ')' + 723 make_struct_decl: "variant" . '<' $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim ')' - '<' shift, and go to state 611 + '<' shift, and go to state 610 State 428 - 411 expr: "generator" . '<' type_declaration_no_options '>' optional_capture_list '(' ')' - 412 | "generator" . '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' + 410 expr: "generator" . '<' type_declaration_no_options '>' optional_capture_list '(' ')' + 411 | "generator" . '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' - '<' shift, and go to state 612 + '<' shift, and go to state 611 State 429 - 395 expr: "++" . expr + 394 expr: "++" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -7016,7 +6980,7 @@ State 429 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 613 + expr go to state 612 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -7029,7 +6993,7 @@ State 429 State 430 - 396 expr: "--" . expr + 395 expr: "--" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -7125,7 +7089,7 @@ State 430 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 614 + expr go to state 613 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -7138,101 +7102,101 @@ State 430 State 431 - 441 expr_mtag: "$$" . '(' expr ')' + 440 expr_mtag: "$$" . '(' expr ')' - '(' shift, and go to state 615 + '(' shift, and go to state 614 State 432 - 442 expr_mtag: "$i" . '(' expr ')' + 441 expr_mtag: "$i" . '(' expr ')' - '(' shift, and go to state 616 + '(' shift, and go to state 615 State 433 - 443 expr_mtag: "$v" . '(' expr ')' + 442 expr_mtag: "$v" . '(' expr ')' - '(' shift, and go to state 617 + '(' shift, and go to state 616 State 434 - 444 expr_mtag: "$b" . '(' expr ')' + 443 expr_mtag: "$b" . '(' expr ')' - '(' shift, and go to state 618 + '(' shift, and go to state 617 State 435 - 445 expr_mtag: "$a" . '(' expr ')' + 444 expr_mtag: "$a" . '(' expr ')' - '(' shift, and go to state 619 + '(' shift, and go to state 618 State 436 - 447 expr_mtag: "$c" . '(' expr ')' '(' ')' - 448 | "$c" . '(' expr ')' '(' expr_list ')' + 446 expr_mtag: "$c" . '(' expr ')' '(' ')' + 447 | "$c" . '(' expr ')' '(' expr_list ')' - '(' shift, and go to state 620 + '(' shift, and go to state 619 State 437 - 446 expr_mtag: "..." . + 445 expr_mtag: "..." . - $default reduce using rule 446 (expr_mtag) + $default reduce using rule 445 (expr_mtag) State 438 - 308 expr_numeric_const: "integer constant" . + 307 expr_numeric_const: "integer constant" . - $default reduce using rule 308 (expr_numeric_const) + $default reduce using rule 307 (expr_numeric_const) State 439 - 310 expr_numeric_const: "long integer constant" . + 309 expr_numeric_const: "long integer constant" . - $default reduce using rule 310 (expr_numeric_const) + $default reduce using rule 309 (expr_numeric_const) State 440 - 309 expr_numeric_const: "unsigned integer constant" . + 308 expr_numeric_const: "unsigned integer constant" . - $default reduce using rule 309 (expr_numeric_const) + $default reduce using rule 308 (expr_numeric_const) State 441 - 311 expr_numeric_const: "unsigned long integer constant" . + 310 expr_numeric_const: "unsigned long integer constant" . - $default reduce using rule 311 (expr_numeric_const) + $default reduce using rule 310 (expr_numeric_const) State 442 - 312 expr_numeric_const: "unsigned int8 constant" . + 311 expr_numeric_const: "unsigned int8 constant" . - $default reduce using rule 312 (expr_numeric_const) + $default reduce using rule 311 (expr_numeric_const) State 443 - 313 expr_numeric_const: "floating point constant" . + 312 expr_numeric_const: "floating point constant" . - $default reduce using rule 313 (expr_numeric_const) + $default reduce using rule 312 (expr_numeric_const) State 444 - 314 expr_numeric_const: "double constant" . + 313 expr_numeric_const: "double constant" . - $default reduce using rule 314 (expr_numeric_const) + $default reduce using rule 313 (expr_numeric_const) State 445 @@ -7241,17 +7205,17 @@ State 445 $default reduce using rule 28 (string_builder_body) - string_builder_body go to state 621 + string_builder_body go to state 620 State 446 - 754 make_table_decl: "begin of code block" . expr_map_tuple_list optional_comma "end of code block" - 764 array_comprehension: "begin of code block" . "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" + 753 make_table_decl: "begin of code block" . expr_map_tuple_list optional_comma "end of code block" + 763 array_comprehension: "begin of code block" . "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" "struct" shift, and go to state 408 "class" shift, and go to state 409 - "for" shift, and go to state 622 + "for" shift, and go to state 621 "true" shift, and go to state 410 "false" shift, and go to state 411 "new" shift, and go to state 412 @@ -7344,22 +7308,22 @@ State 446 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 623 + expr go to state 622 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 make_struct_decl go to state 476 - make_map_tuple go to state 624 + make_map_tuple go to state 623 make_tuple_call go to state 477 make_dim_decl go to state 478 - expr_map_tuple_list go to state 625 + expr_map_tuple_list go to state 624 make_table_decl go to state 479 array_comprehension go to state 480 State 447 - 372 expr: '-' . expr + 371 expr: '-' . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -7455,7 +7419,7 @@ State 447 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 626 + expr go to state 625 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -7468,7 +7432,7 @@ State 447 State 448 - 371 expr: '+' . expr + 370 expr: '+' . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -7564,7 +7528,7 @@ State 448 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 627 + expr go to state 626 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -7577,7 +7541,7 @@ State 448 State 449 - 408 expr: '*' . expr + 407 expr: '*' . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -7673,7 +7637,7 @@ State 449 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 628 + expr go to state 627 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -7686,7 +7650,7 @@ State 449 State 450 - 370 expr: '~' . expr + 369 expr: '~' . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -7782,7 +7746,7 @@ State 450 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 629 + expr go to state 628 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -7795,7 +7759,7 @@ State 450 State 451 - 369 expr: '!' . expr + 368 expr: '!' . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -7891,7 +7855,7 @@ State 451 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 630 + expr go to state 629 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -7904,13 +7868,13 @@ State 451 State 452 - 734 make_dim_decl: '[' . expr_list optional_comma ']' - 762 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - 763 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 733 make_dim_decl: '[' . expr_list optional_comma ']' + 761 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 762 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' "struct" shift, and go to state 408 "class" shift, and go to state 409 - "for" shift, and go to state 631 + "for" shift, and go to state 630 "true" shift, and go to state 410 "false" shift, and go to state 411 "new" shift, and go to state 412 @@ -7922,7 +7886,7 @@ State 452 "deref" shift, and go to state 418 "cast" shift, and go to state 419 "upcast" shift, and go to state 420 - "iterator" shift, and go to state 632 + "iterator" shift, and go to state 631 "addr" shift, and go to state 421 "reinterpret" shift, and go to state 422 "fixed_array" shift, and go to state 423 @@ -7996,7 +7960,7 @@ State 452 expr_cast go to state 461 expr_type_decl go to state 462 expr_type_info go to state 463 - expr_list go to state 633 + expr_list go to state 632 block_or_lambda go to state 464 expr_full_block go to state 465 expr_numeric_const go to state 466 @@ -8005,7 +7969,7 @@ State 452 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 634 + expr go to state 633 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -8018,7 +7982,7 @@ State 452 State 453 - 399 expr: '(' . expr_list optional_comma ')' + 398 expr: '(' . expr_list optional_comma ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -8106,7 +8070,7 @@ State 453 expr_cast go to state 461 expr_type_decl go to state 462 expr_type_info go to state 463 - expr_list go to state 635 + expr_list go to state 634 block_or_lambda go to state 464 expr_full_block go to state 465 expr_numeric_const go to state 466 @@ -8115,7 +8079,7 @@ State 453 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 634 + expr go to state 633 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -8128,625 +8092,318 @@ State 453 State 454 - 294 block_or_lambda: '$' . + 293 block_or_lambda: '$' . - $default reduce using rule 294 (block_or_lambda) + $default reduce using rule 293 (block_or_lambda) State 455 - 295 block_or_lambda: '@' . - 296 | '@' . '@' - 340 func_addr_expr: '@' . '@' func_addr_name - 343 | '@' . '@' '<' $@13 type_declaration_no_options '>' $@14 func_addr_name - 346 | '@' . '@' '<' $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name - 456 expr_mtag: '@' . '@' "$c" '(' expr ')' + 294 block_or_lambda: '@' . + 295 | '@' . '@' + 339 func_addr_expr: '@' . '@' func_addr_name + 342 | '@' . '@' '<' $@13 type_declaration_no_options '>' $@14 func_addr_name + 345 | '@' . '@' '<' $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name + 455 expr_mtag: '@' . '@' "$c" '(' expr ')' - '@' shift, and go to state 636 + '@' shift, and go to state 635 - $default reduce using rule 295 (block_or_lambda) + $default reduce using rule 294 (block_or_lambda) State 456 - 363 expr: string_builder . + 362 expr: string_builder . - $default reduce using rule 363 (expr) + $default reduce using rule 362 (expr) State 457 - 362 expr: expr_reader . + 361 expr: expr_reader . - $default reduce using rule 362 (expr) + $default reduce using rule 361 (expr) State 458 - 440 expr: expr_call_pipe . + 439 expr: expr_call_pipe . - $default reduce using rule 440 (expr) + $default reduce using rule 439 (expr) State 459 - 334 expr_named_call: name_in_namespace . '(' '[' make_struct_fields ']' ')' - 335 | name_in_namespace . '(' expr_list ',' '[' make_struct_fields ']' ')' - 354 expr_call: name_in_namespace . '(' ')' - 355 | name_in_namespace . '(' make_struct_single ')' - 356 | name_in_namespace . '(' expr_list ')' - 360 expr: name_in_namespace . - - '(' shift, and go to state 637 - - '(' [reduce using rule 360 (expr)] - $default reduce using rule 360 (expr) + 333 expr_named_call: name_in_namespace . '(' '[' make_struct_fields ']' ')' + 334 | name_in_namespace . '(' expr_list ',' '[' make_struct_fields ']' ')' + 353 expr_call: name_in_namespace . '(' ')' + 354 | name_in_namespace . '(' make_struct_single ')' + 355 | name_in_namespace . '(' expr_list ')' + 359 expr: name_in_namespace . - shift/reduce conflict on token '(': - 360 expr: name_in_namespace . - 334 expr_named_call: name_in_namespace . '(' '[' make_struct_fields ']' ')' - First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' name_in_namespace . '(' '[' make_struct_fields ']' ')' expression_any "end of code block" $end - Shift derivation - $accept - `-> 0: program $end - `-> 6: program global_function_declaration - `-> 204: optional_annotation_list "def" function_declaration - `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block - `-> 211: "begin of code block" expressions "end of code block" - `-> 233: expressions expression_any - `-> 233: expressions expression_with_alias - `-> 74: "assume" "name" '=' expr - `-> 435: expr_named_call - `-> 334: name_in_namespace . '(' '[' make_struct_fields ']' ')' - Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' name_in_namespace . '(' expr_list optional_comma ')' "end of expression" "end of code block" $end - Reduce derivation - $accept - `-> 0: program $end - `-> 6: program global_function_declaration - `-> 204: optional_annotation_list "def" function_declaration - `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block - `-> 211: "begin of code block" expressions "end of code block" - `-> 233: expressions expression_any - `-> 233: expressions expression_any `-> 215: expr_assign "end of expression" - `-> 221: expression_with_alias `-> 315: expr - `-> 74: "assume" "name" '=' expr `-> 399: '(' expr_list optional_comma ')' - `-> 360: name_in_namespace . - - shift/reduce conflict on token '(': - 360 expr: name_in_namespace . - 335 expr_named_call: name_in_namespace . '(' expr_list ',' '[' make_struct_fields ']' ')' - First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' name_in_namespace . '(' expr_list ',' '[' make_struct_fields ']' ')' expression_any "end of code block" $end - Shift derivation - $accept - `-> 0: program $end - `-> 6: program global_function_declaration - `-> 204: optional_annotation_list "def" function_declaration - `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block - `-> 211: "begin of code block" expressions "end of code block" - `-> 233: expressions expression_any - `-> 233: expressions expression_with_alias - `-> 74: "assume" "name" '=' expr - `-> 435: expr_named_call - `-> 335: name_in_namespace . '(' expr_list ',' '[' make_struct_fields ']' ')' - Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' name_in_namespace . '(' expr_list optional_comma ')' "end of expression" "end of code block" $end - Reduce derivation - $accept - `-> 0: program $end - `-> 6: program global_function_declaration - `-> 204: optional_annotation_list "def" function_declaration - `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block - `-> 211: "begin of code block" expressions "end of code block" - `-> 233: expressions expression_any - `-> 233: expressions expression_any `-> 215: expr_assign "end of expression" - `-> 221: expression_with_alias `-> 315: expr - `-> 74: "assume" "name" '=' expr `-> 399: '(' expr_list optional_comma ')' - `-> 360: name_in_namespace . - - shift/reduce conflict on token '(': - 360 expr: name_in_namespace . - 354 expr_call: name_in_namespace . '(' ')' - First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' name_in_namespace . '(' ')' expression_any "end of code block" $end - Shift derivation - $accept - `-> 0: program $end - `-> 6: program global_function_declaration - `-> 204: optional_annotation_list "def" function_declaration - `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block - `-> 211: "begin of code block" expressions "end of code block" - `-> 233: expressions expression_any - `-> 233: expressions expression_with_alias - `-> 74: "assume" "name" '=' expr - `-> 407: expr_call - `-> 354: name_in_namespace . '(' ')' - Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' name_in_namespace . '(' expr_list optional_comma ')' "end of expression" "end of code block" $end - Reduce derivation - $accept - `-> 0: program $end - `-> 6: program global_function_declaration - `-> 204: optional_annotation_list "def" function_declaration - `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block - `-> 211: "begin of code block" expressions "end of code block" - `-> 233: expressions expression_any - `-> 233: expressions expression_any `-> 215: expr_assign "end of expression" - `-> 221: expression_with_alias `-> 315: expr - `-> 74: "assume" "name" '=' expr `-> 399: '(' expr_list optional_comma ')' - `-> 360: name_in_namespace . - - shift/reduce conflict on token '(': - 360 expr: name_in_namespace . - 355 expr_call: name_in_namespace . '(' make_struct_single ')' - First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' name_in_namespace . '(' make_struct_single ')' expression_any "end of code block" $end - Shift derivation - $accept - `-> 0: program $end - `-> 6: program global_function_declaration - `-> 204: optional_annotation_list "def" function_declaration - `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block - `-> 211: "begin of code block" expressions "end of code block" - `-> 233: expressions expression_any - `-> 233: expressions expression_with_alias - `-> 74: "assume" "name" '=' expr - `-> 407: expr_call - `-> 355: name_in_namespace . '(' make_struct_single ')' - Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' name_in_namespace . '(' expr_list optional_comma ')' "end of expression" "end of code block" $end - Reduce derivation - $accept - `-> 0: program $end - `-> 6: program global_function_declaration - `-> 204: optional_annotation_list "def" function_declaration - `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block - `-> 211: "begin of code block" expressions "end of code block" - `-> 233: expressions expression_any - `-> 233: expressions expression_any `-> 215: expr_assign "end of expression" - `-> 221: expression_with_alias `-> 315: expr - `-> 74: "assume" "name" '=' expr `-> 399: '(' expr_list optional_comma ')' - `-> 360: name_in_namespace . - - shift/reduce conflict on token '(': - 360 expr: name_in_namespace . - 356 expr_call: name_in_namespace . '(' expr_list ')' - First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' name_in_namespace . '(' expr_list ')' expression_any "end of code block" $end - Shift derivation - $accept - `-> 0: program $end - `-> 6: program global_function_declaration - `-> 204: optional_annotation_list "def" function_declaration - `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block - `-> 211: "begin of code block" expressions "end of code block" - `-> 233: expressions expression_any - `-> 233: expressions expression_with_alias - `-> 74: "assume" "name" '=' expr - `-> 407: expr_call - `-> 356: name_in_namespace . '(' expr_list ')' - Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' name_in_namespace . '(' expr_list optional_comma ')' "end of expression" "end of code block" $end - Reduce derivation - $accept - `-> 0: program $end - `-> 6: program global_function_declaration - `-> 204: optional_annotation_list "def" function_declaration - `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block - `-> 211: "begin of code block" expressions "end of code block" - `-> 233: expressions expression_any - `-> 233: expressions expression_any `-> 215: expr_assign "end of expression" - `-> 221: expression_with_alias `-> 315: expr - `-> 74: "assume" "name" '=' expr `-> 399: '(' expr_list optional_comma ')' - `-> 360: name_in_namespace . + '(' shift, and go to state 636 + $default reduce using rule 359 (expr) State 460 - 433 expr: expr_new . + 432 expr: expr_new . - $default reduce using rule 433 (expr) + $default reduce using rule 432 (expr) State 461 - 432 expr: expr_cast . + 431 expr: expr_cast . - $default reduce using rule 432 (expr) + $default reduce using rule 431 (expr) State 462 - 431 expr: expr_type_decl . + 430 expr: expr_type_decl . - $default reduce using rule 431 (expr) + $default reduce using rule 430 (expr) State 463 - 430 expr: expr_type_info . + 429 expr: expr_type_info . - $default reduce using rule 430 (expr) + $default reduce using rule 429 (expr) State 464 - 305 expr_full_block: block_or_lambda . optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block + 304 expr_full_block: block_or_lambda . optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block '[' shift, and go to state 15 '[' [reduce using rule 112 (optional_annotation_list)] $default reduce using rule 112 (optional_annotation_list) - optional_annotation_list go to state 638 - - shift/reduce conflict on token '[': - 112 optional_annotation_list: %empty . - 113 optional_annotation_list: . '[' annotation_list ']' - First example: program kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation "$i" '(' block_or_lambda . '[' annotation_list ']' optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block ')' ':' type_declaration_no_options "end of expression" $end - Shift derivation - $accept - `-> 0: program $end - `-> 5: program global_let - `-> 524: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration - `-> 511: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" - `-> 507: "$i" '(' expr_full_block ')' - `-> 305: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block - `-> 113: . '[' annotation_list ']' - Second example: program kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation "$i" '(' block_or_lambda . '[' '[' capture_list ']' ']' optional_function_argument_list optional_function_type block_or_simple_block ')' ':' type_declaration_no_options "end of expression" $end - Reduce derivation - $accept - `-> 0: program $end - `-> 5: program global_let - `-> 524: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration - `-> 511: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" - `-> 507: "$i" '(' expr ')' - `-> 436: expr_full_block - `-> 305: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block - `-> 112: %empty . `-> 304: '[' '[' capture_list ']' ']' - + optional_annotation_list go to state 637 State 465 - 436 expr: expr_full_block . + 435 expr: expr_full_block . - $default reduce using rule 436 (expr) + $default reduce using rule 435 (expr) State 466 - 361 expr: expr_numeric_const . + 360 expr: expr_numeric_const . - $default reduce using rule 361 (expr) + $default reduce using rule 360 (expr) State 467 - 435 expr: expr_named_call . + 434 expr: expr_named_call . - $default reduce using rule 435 (expr) + $default reduce using rule 434 (expr) State 468 - 434 expr: expr_method_call . + 433 expr: expr_method_call . - $default reduce using rule 434 (expr) + $default reduce using rule 433 (expr) State 469 - 406 expr: func_addr_expr . + 405 expr: func_addr_expr . - $default reduce using rule 406 (expr) + $default reduce using rule 405 (expr) State 470 - 367 expr: expr_field . + 366 expr: expr_field . - $default reduce using rule 367 (expr) + $default reduce using rule 366 (expr) State 471 213 expr_call_pipe: expr_call . expr_full_block_assumed_piped - 407 expr: expr_call . + 406 expr: expr_call . - "begin of code block" shift, and go to state 639 + "begin of code block" shift, and go to state 638 '$' shift, and go to state 454 - '@' shift, and go to state 640 - - "begin of code block" [reduce using rule 407 (expr)] - '$' [reduce using rule 407 (expr)] - '@' [reduce using rule 407 (expr)] - $default reduce using rule 407 (expr) - - block_or_lambda go to state 641 - expr_full_block_assumed_piped go to state 642 - - shift/reduce conflict on token '$': - 407 expr: expr_call . - 294 block_or_lambda: . '$' - First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' expr_call . '$' optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block expression_any "end of code block" $end - Shift derivation - $accept - `-> 0: program $end - `-> 6: program global_function_declaration - `-> 204: optional_annotation_list "def" function_declaration - `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block - `-> 211: "begin of code block" expressions "end of code block" - `-> 233: expressions expression_any - `-> 233: expressions expression_with_alias - `-> 74: "assume" "name" '=' expr - `-> 440: expr_call_pipe - `-> 213: expr_call expr_full_block_assumed_piped - `-> 306: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block - `-> 294: . '$' - Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' expr_call . '$' optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block "end of expression" "end of code block" $end - Reduce derivation - $accept - `-> 0: program $end - `-> 6: program global_function_declaration - `-> 204: optional_annotation_list "def" function_declaration - `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block - `-> 211: "begin of code block" expressions "end of code block" - `-> 233: expressions expression_any - `-> 233: expressions expression_any `-> 215: expr_assign "end of expression" - `-> 221: expression_with_alias `-> 315: expr - `-> 74: "assume" "name" '=' expr `-> 436: expr_full_block - `-> 407: expr_call . `-> 305: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block - `-> 294: '$' - - shift/reduce conflict on token '@': - 407 expr: expr_call . - 295 block_or_lambda: . '@' - First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' expr_call . '@' optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block expression_any "end of code block" $end - Shift derivation - $accept - `-> 0: program $end - `-> 6: program global_function_declaration - `-> 204: optional_annotation_list "def" function_declaration - `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block - `-> 211: "begin of code block" expressions "end of code block" - `-> 233: expressions expression_any - `-> 233: expressions expression_with_alias - `-> 74: "assume" "name" '=' expr - `-> 440: expr_call_pipe - `-> 213: expr_call expr_full_block_assumed_piped - `-> 306: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block - `-> 295: . '@' - Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' expr_call . '@' '@' "$c" '(' expr ')' "end of expression" "end of code block" $end - Reduce derivation - $accept - `-> 0: program $end - `-> 6: program global_function_declaration - `-> 204: optional_annotation_list "def" function_declaration - `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block - `-> 211: "begin of code block" expressions "end of code block" - `-> 233: expressions expression_any - `-> 233: expressions expression_any `-> 215: expr_assign "end of expression" - `-> 221: expression_with_alias `-> 315: expr - `-> 74: "assume" "name" '=' expr `-> 368: expr_mtag - `-> 407: expr_call . `-> 456: '@' '@' "$c" '(' expr ')' - - shift/reduce conflict on token '@': - 407 expr: expr_call . - 296 block_or_lambda: . '@' '@' - First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' expr_call . '@' '@' optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block expression_any "end of code block" $end - Shift derivation - $accept - `-> 0: program $end - `-> 6: program global_function_declaration - `-> 204: optional_annotation_list "def" function_declaration - `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block - `-> 211: "begin of code block" expressions "end of code block" - `-> 233: expressions expression_any - `-> 233: expressions expression_with_alias - `-> 74: "assume" "name" '=' expr - `-> 440: expr_call_pipe - `-> 213: expr_call expr_full_block_assumed_piped - `-> 306: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block - `-> 296: . '@' '@' - Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' expr_call . '@' '@' "$c" '(' expr ')' "end of expression" "end of code block" $end - Reduce derivation - $accept - `-> 0: program $end - `-> 6: program global_function_declaration - `-> 204: optional_annotation_list "def" function_declaration - `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block - `-> 211: "begin of code block" expressions "end of code block" - `-> 233: expressions expression_any - `-> 233: expressions expression_any `-> 215: expr_assign "end of expression" - `-> 221: expression_with_alias `-> 315: expr - `-> 74: "assume" "name" '=' expr `-> 368: expr_mtag - `-> 407: expr_call . `-> 456: '@' '@' "$c" '(' expr ')' - - shift/reduce conflict on token "begin of code block": - 407 expr: expr_call . - 307 expr_full_block_assumed_piped: . "begin of code block" expressions "end of code block" - First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "while" expr_call . "begin of code block" expressions "end of code block" expression_block "end of code block" $end - Shift derivation - $accept - `-> 0: program $end - `-> 6: program global_function_declaration - `-> 204: optional_annotation_list "def" function_declaration - `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block - `-> 211: "begin of code block" expressions "end of code block" - `-> 233: expressions expression_while_loop - `-> 72: "while" expr expression_block - `-> 440: expr_call_pipe - `-> 213: expr_call expr_full_block_assumed_piped - `-> 307: . "begin of code block" expressions "end of code block" - Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "while" expr_call . "begin of code block" expressions "end of code block" "end of code block" $end - Reduce derivation - $accept - `-> 0: program $end - `-> 6: program global_function_declaration - `-> 204: optional_annotation_list "def" function_declaration - `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block - `-> 211: "begin of code block" expressions "end of code block" - `-> 233: expressions expression_any - `-> 218: expression_while_loop - `-> 72: "while" expr expression_block - `-> 407: expr_call . `-> 211: "begin of code block" expressions "end of code block" + '@' shift, and go to state 639 + + "begin of code block" [reduce using rule 406 (expr)] + $default reduce using rule 406 (expr) + block_or_lambda go to state 640 + expr_full_block_assumed_piped go to state 641 State 472 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 627 type_declaration_no_options_no_dim: "typedecl" '(' expr . ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 - ')' shift, and go to state 678 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 626 type_declaration_no_options_no_dim: "typedecl" '(' expr . ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 + ')' shift, and go to state 677 State 473 - 368 expr: expr_mtag . + 367 expr: expr_mtag . - $default reduce using rule 368 (expr) + $default reduce using rule 367 (expr) State 474 - 357 expr_call: basic_type_declaration . '(' ')' - 358 | basic_type_declaration . '(' expr_list ')' + 356 expr_call: basic_type_declaration . '(' ')' + 357 | basic_type_declaration . '(' expr_list ')' - '(' shift, and go to state 679 + '(' shift, and go to state 678 State 475 - 364 expr: make_decl . + 363 expr: make_decl . - $default reduce using rule 364 (expr) + $default reduce using rule 363 (expr) State 476 - 698 make_decl: make_struct_decl . + 697 make_decl: make_struct_decl . - $default reduce using rule 698 (make_decl) + $default reduce using rule 697 (make_decl) State 477 - 702 make_decl: make_tuple_call . + 701 make_decl: make_tuple_call . - $default reduce using rule 702 (make_decl) + $default reduce using rule 701 (make_decl) State 478 - 699 make_decl: make_dim_decl . + 698 make_decl: make_dim_decl . - $default reduce using rule 699 (make_decl) + $default reduce using rule 698 (make_decl) State 479 - 700 make_decl: make_table_decl . + 699 make_decl: make_table_decl . - $default reduce using rule 700 (make_decl) + $default reduce using rule 699 (make_decl) State 480 - 701 make_decl: array_comprehension . + 700 make_decl: array_comprehension . - $default reduce using rule 701 (make_decl) + $default reduce using rule 700 (make_decl) State 481 - 655 type_declaration_no_options_no_dim: "iterator" '<' $@46 . type_declaration '>' $@47 + 654 type_declaration_no_options_no_dim: "iterator" '<' $@46 . type_declaration '>' $@47 "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -8799,12 +8456,12 @@ State 481 bitfield_type_declaration go to state 261 type_declaration_no_options go to state 262 type_declaration_no_options_no_dim go to state 263 - type_declaration go to state 680 + type_declaration go to state 679 State 482 - 645 type_declaration_no_options_no_dim: "smart_ptr" '<' $@40 . type_declaration '>' $@41 + 644 type_declaration_no_options_no_dim: "smart_ptr" '<' $@40 . type_declaration '>' $@41 "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -8857,28 +8514,28 @@ State 482 bitfield_type_declaration go to state 261 type_declaration_no_options go to state 262 type_declaration_no_options_no_dim go to state 263 - type_declaration go to state 681 + type_declaration go to state 680 State 483 - 602 auto_type_declaration: "auto" '(' "name" . ')' + 601 auto_type_declaration: "auto" '(' "name" . ')' - ')' shift, and go to state 682 + ')' shift, and go to state 681 State 484 - 611 bitfield_type_declaration: "bitfield" '<' $@35 . bitfield_bits '>' $@36 + 610 bitfield_type_declaration: "bitfield" '<' $@35 . bitfield_bits '>' $@36 - "name" shift, and go to state 683 + "name" shift, and go to state 682 - bitfield_bits go to state 684 + bitfield_bits go to state 683 State 485 - 659 type_declaration_no_options_no_dim: "block" '<' $@48 . type_declaration '>' $@49 + 658 type_declaration_no_options_no_dim: "block" '<' $@48 . type_declaration '>' $@49 "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -8931,23 +8588,23 @@ State 485 bitfield_type_declaration go to state 261 type_declaration_no_options go to state 262 type_declaration_no_options_no_dim go to state 263 - type_declaration go to state 685 + type_declaration go to state 684 State 486 - 662 type_declaration_no_options_no_dim: "block" '<' $@50 . optional_function_argument_list optional_function_type '>' $@51 + 661 type_declaration_no_options_no_dim: "block" '<' $@50 . optional_function_argument_list optional_function_type '>' $@51 '(' shift, and go to state 321 $default reduce using rule 114 (optional_function_argument_list) - optional_function_argument_list go to state 686 + optional_function_argument_list go to state 685 State 487 - 666 type_declaration_no_options_no_dim: "function" '<' $@52 . type_declaration '>' $@53 + 665 type_declaration_no_options_no_dim: "function" '<' $@52 . type_declaration '>' $@53 "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -9000,23 +8657,23 @@ State 487 bitfield_type_declaration go to state 261 type_declaration_no_options go to state 262 type_declaration_no_options_no_dim go to state 263 - type_declaration go to state 687 + type_declaration go to state 686 State 488 - 669 type_declaration_no_options_no_dim: "function" '<' $@54 . optional_function_argument_list optional_function_type '>' $@55 + 668 type_declaration_no_options_no_dim: "function" '<' $@54 . optional_function_argument_list optional_function_type '>' $@55 '(' shift, and go to state 321 $default reduce using rule 114 (optional_function_argument_list) - optional_function_argument_list go to state 688 + optional_function_argument_list go to state 687 State 489 - 673 type_declaration_no_options_no_dim: "lambda" '<' $@56 . type_declaration '>' $@57 + 672 type_declaration_no_options_no_dim: "lambda" '<' $@56 . type_declaration '>' $@57 "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -9069,23 +8726,23 @@ State 489 bitfield_type_declaration go to state 261 type_declaration_no_options go to state 262 type_declaration_no_options_no_dim go to state 263 - type_declaration go to state 689 + type_declaration go to state 688 State 490 - 676 type_declaration_no_options_no_dim: "lambda" '<' $@58 . optional_function_argument_list optional_function_type '>' $@59 + 675 type_declaration_no_options_no_dim: "lambda" '<' $@58 . optional_function_argument_list optional_function_type '>' $@59 '(' shift, and go to state 321 $default reduce using rule 114 (optional_function_argument_list) - optional_function_argument_list go to state 690 + optional_function_argument_list go to state 689 State 491 - 679 type_declaration_no_options_no_dim: "tuple" '<' $@60 . tuple_type_list '>' $@61 + 678 type_declaration_no_options_no_dim: "tuple" '<' $@60 . tuple_type_list '>' $@61 "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -9132,8 +8789,8 @@ State 491 '$' shift, and go to state 256 name_in_namespace go to state 257 - tuple_type go to state 691 - tuple_type_list go to state 692 + tuple_type go to state 690 + tuple_type_list go to state 691 basic_type_declaration go to state 258 structure_type_declaration go to state 259 auto_type_declaration go to state 260 @@ -9145,126 +8802,126 @@ State 491 State 492 - 682 type_declaration_no_options_no_dim: "variant" '<' $@62 . variant_type_list '>' $@63 + 681 type_declaration_no_options_no_dim: "variant" '<' $@62 . variant_type_list '>' $@63 "name" shift, and go to state 514 - variant_type go to state 693 - variant_type_list go to state 694 + variant_type go to state 692 + variant_type_list go to state 693 State 493 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 603 auto_type_declaration: "$t" '(' expr . ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 - ')' shift, and go to state 695 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 602 auto_type_declaration: "$t" '(' expr . ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 + ')' shift, and go to state 694 State 494 - 630 type_declaration_no_options_no_dim: '$' name_in_namespace '<' . $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' + 629 type_declaration_no_options_no_dim: '$' name_in_namespace '<' . $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' - $default reduce using rule 629 ($@39) + $default reduce using rule 628 ($@39) - $@39 go to state 696 + $@39 go to state 695 State 495 - 628 type_declaration_no_options_no_dim: '$' name_in_namespace '(' . optional_expr_list ')' + 627 type_declaration_no_options_no_dim: '$' name_in_namespace '(' . optional_expr_list ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -9349,13 +9006,13 @@ State 495 string_builder go to state 456 expr_reader go to state 457 expr_call_pipe go to state 458 - optional_expr_list go to state 697 + optional_expr_list go to state 696 name_in_namespace go to state 459 expr_new go to state 460 expr_cast go to state 461 expr_type_decl go to state 462 expr_type_info go to state 463 - expr_list go to state 698 + expr_list go to state 697 block_or_lambda go to state 464 expr_full_block go to state 465 expr_numeric_const go to state 466 @@ -9364,7 +9021,7 @@ State 495 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 634 + expr go to state 633 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -9377,157 +9034,157 @@ State 495 State 496 - 640 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "==" "const" . + 639 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "==" "const" . - $default reduce using rule 640 (type_declaration_no_options_no_dim) + $default reduce using rule 639 (type_declaration_no_options_no_dim) State 497 - 641 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "==" '&' . + 640 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim "==" '&' . - $default reduce using rule 641 (type_declaration_no_options_no_dim) + $default reduce using rule 640 (type_declaration_no_options_no_dim) State 498 - 634 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' "const" . + 633 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' "const" . - $default reduce using rule 634 (type_declaration_no_options_no_dim) + $default reduce using rule 633 (type_declaration_no_options_no_dim) State 499 - 636 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '&' . + 635 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '&' . - $default reduce using rule 636 (type_declaration_no_options_no_dim) + $default reduce using rule 635 (type_declaration_no_options_no_dim) State 500 - 631 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '[' . ']' + 630 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '[' . ']' - ']' shift, and go to state 699 + ']' shift, and go to state 698 State 501 - 639 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '#' . + 638 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '#' . - $default reduce using rule 639 (type_declaration_no_options_no_dim) + $default reduce using rule 638 (type_declaration_no_options_no_dim) State 502 - 615 dim_list: '[' ']' . + 614 dim_list: '[' ']' . - $default reduce using rule 615 (dim_list) + $default reduce using rule 614 (dim_list) State 503 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 614 dim_list: '[' expr . ']' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 - ']' shift, and go to state 700 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 613 dim_list: '[' expr . ']' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 + ']' shift, and go to state 699 State 504 - 616 dim_list: dim_list '[' . expr ']' - 617 | dim_list '[' . ']' + 615 dim_list: dim_list '[' . expr ']' + 616 | dim_list '[' . ']' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -9603,7 +9260,7 @@ State 504 '~' shift, and go to state 450 '!' shift, and go to state 451 '[' shift, and go to state 452 - ']' shift, and go to state 701 + ']' shift, and go to state 700 '(' shift, and go to state 453 '$' shift, and go to state 454 '@' shift, and go to state 455 @@ -9624,7 +9281,7 @@ State 504 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 702 + expr go to state 701 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -9637,107 +9294,107 @@ State 504 State 505 - 685 type_declaration: type_declaration '|' '#' . + 684 type_declaration: type_declaration '|' '#' . - $default reduce using rule 685 (type_declaration) + $default reduce using rule 684 (type_declaration) State 506 - 684 type_declaration: type_declaration '|' type_declaration_no_options . + 683 type_declaration: type_declaration '|' type_declaration_no_options . - $default reduce using rule 684 (type_declaration) + $default reduce using rule 683 (type_declaration) State 507 - 608 bitfield_alias_bits: bitfield_alias_bits ',' . "name" - 761 optional_comma: ',' . + 607 bitfield_alias_bits: bitfield_alias_bits ',' . "name" + 760 optional_comma: ',' . - "name" shift, and go to state 703 + "name" shift, and go to state 702 - $default reduce using rule 761 (optional_comma) + $default reduce using rule 760 (optional_comma) State 508 - 697 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma . $@72 "end of code block" + 696 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma . $@72 "end of code block" - $default reduce using rule 696 ($@72) + $default reduce using rule 695 ($@72) - $@72 go to state 704 + $@72 go to state 703 State 509 239 name_in_namespace: "name" . 240 | "name" . "::" "name" - 482 tuple_type: "name" . ':' type_declaration + 481 tuple_type: "name" . ':' type_declaration "::" shift, and go to state 93 - ':' shift, and go to state 705 + ':' shift, and go to state 704 $default reduce using rule 239 (name_in_namespace) State 510 - 486 tuple_alias_type_list: tuple_alias_type_list "end of expression" . + 485 tuple_alias_type_list: tuple_alias_type_list "end of expression" . - $default reduce using rule 486 (tuple_alias_type_list) + $default reduce using rule 485 (tuple_alias_type_list) State 511 - 487 tuple_alias_type_list: tuple_alias_type_list tuple_type . "end of expression" + 486 tuple_alias_type_list: tuple_alias_type_list tuple_type . "end of expression" - "end of expression" shift, and go to state 706 + "end of expression" shift, and go to state 705 State 512 - 481 tuple_type: type_declaration . - 684 type_declaration: type_declaration . '|' type_declaration_no_options - 685 | type_declaration . '|' '#' + 480 tuple_type: type_declaration . + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' '|' shift, and go to state 372 - $default reduce using rule 481 (tuple_type) + $default reduce using rule 480 (tuple_type) State 513 - 689 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 . "end of code block" + 688 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 . "end of code block" - "end of code block" shift, and go to state 707 + "end of code block" shift, and go to state 706 State 514 - 488 variant_type: "name" . ':' type_declaration + 487 variant_type: "name" . ':' type_declaration - ':' shift, and go to state 708 + ':' shift, and go to state 707 State 515 - 492 variant_alias_type_list: variant_alias_type_list "end of expression" . + 491 variant_alias_type_list: variant_alias_type_list "end of expression" . - $default reduce using rule 492 (variant_alias_type_list) + $default reduce using rule 491 (variant_alias_type_list) State 516 - 493 variant_alias_type_list: variant_alias_type_list variant_type . "end of expression" + 492 variant_alias_type_list: variant_alias_type_list variant_type . "end of expression" - "end of expression" shift, and go to state 709 + "end of expression" shift, and go to state 708 State 517 - 693 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 . "end of code block" + 692 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 . "end of code block" - "end of code block" shift, and go to state 710 + "end of code block" shift, and go to state 709 State 518 @@ -9756,7 +9413,7 @@ State 519 State 520 - 478 function_argument_declaration: "$a" '(' . expr ')' + 477 function_argument_declaration: "$a" '(' . expr ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -9852,7 +9509,7 @@ State 520 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 711 + expr go to state 710 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -9865,41 +9522,41 @@ State 520 State 521 - 261 kwd_let_var_or_nothing: "let" . + 260 kwd_let_var_or_nothing: "let" . - $default reduce using rule 261 (kwd_let_var_or_nothing) + $default reduce using rule 260 (kwd_let_var_or_nothing) State 522 - 262 kwd_let_var_or_nothing: "var" . + 261 kwd_let_var_or_nothing: "var" . - $default reduce using rule 262 (kwd_let_var_or_nothing) + $default reduce using rule 261 (kwd_let_var_or_nothing) State 523 - 477 function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing . variable_declaration + 476 function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing . variable_declaration - "$i" shift, and go to state 712 - "name" shift, and go to state 713 + "$i" shift, and go to state 711 + "name" shift, and go to state 712 - variable_declaration go to state 714 - variable_name_with_pos_list go to state 715 + variable_declaration go to state 713 + variable_name_with_pos_list go to state 714 State 524 - 480 function_argument_list: function_argument_list "end of expression" . function_argument_declaration + 479 function_argument_list: function_argument_list "end of expression" . function_argument_declaration "$a" shift, and go to state 384 '@' shift, and go to state 208 - $default reduce using rule 457 (optional_field_annotation) + $default reduce using rule 456 (optional_field_annotation) metadata_argument_list go to state 209 optional_field_annotation go to state 386 - function_argument_declaration go to state 716 + function_argument_declaration go to state 715 State 525 @@ -9912,8 +9569,8 @@ State 525 State 526 118 optional_function_type: ':' type_declaration . - 684 type_declaration: type_declaration . '|' type_declaration_no_options - 685 | type_declaration . '|' '#' + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' '|' shift, and go to state 372 @@ -10025,7 +9682,7 @@ State 528 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 717 + expr go to state 716 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -10054,7 +9711,7 @@ State 531 70 expression_for_loop: "for" . '(' variable_name_with_pos_list "in" expr_list ')' expression_block - '(' shift, and go to state 718 + '(' shift, and go to state 717 State 532 @@ -10112,7 +9769,7 @@ State 532 "generator" shift, and go to state 428 "++" shift, and go to state 429 "--" shift, and go to state 430 - "<-" shift, and go to state 719 + "<-" shift, and go to state 718 "::" shift, and go to state 55 "$$" shift, and go to state 431 "$i" shift, and go to state 432 @@ -10160,7 +9817,7 @@ State 532 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 720 + expr go to state 719 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -10180,11 +9837,11 @@ State 533 State 534 - 260 expression_try_catch: "try" . expression_block "recover" expression_block + 259 expression_try_catch: "try" . expression_block "recover" expression_block "begin of code block" shift, and go to state 323 - expression_block go to state 721 + expression_block go to state 720 State 535 @@ -10207,7 +9864,7 @@ State 535 "upcast" shift, and go to state 420 "addr" shift, and go to state 421 "reinterpret" shift, and go to state 422 - "explicit" shift, and go to state 722 + "explicit" shift, and go to state 721 "fixed_array" shift, and go to state 423 "default" shift, and go to state 424 "bool" shift, and go to state 222 @@ -10287,7 +9944,7 @@ State 535 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 723 + expr go to state 722 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -10396,7 +10053,7 @@ State 536 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 724 + expr go to state 723 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -10411,7 +10068,7 @@ State 537 74 expression_with_alias: "assume" . "name" '=' expr - "name" shift, and go to state 725 + "name" shift, and go to state 724 State 538 @@ -10425,14 +10082,14 @@ State 539 231 expression_any: "pass" . "end of expression" - "end of expression" shift, and go to state 726 + "end of expression" shift, and go to state 725 State 540 51 expression_label: "label" . "integer constant" ':' - "integer constant" shift, and go to state 727 + "integer constant" shift, and go to state 726 State 541 @@ -10455,7 +10112,7 @@ State 541 "upcast" shift, and go to state 420 "addr" shift, and go to state 421 "reinterpret" shift, and go to state 422 - "label" shift, and go to state 728 + "label" shift, and go to state 727 "fixed_array" shift, and go to state 423 "default" shift, and go to state 424 "bool" shift, and go to state 222 @@ -10535,7 +10192,7 @@ State 541 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 729 + expr go to state 728 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -10552,13 +10209,13 @@ State 542 "begin of code block" shift, and go to state 323 - expression_block go to state 730 + expression_block go to state 729 State 543 - 257 expression_yield_no_pipe: "yield" . expr - 258 | "yield" . "<-" expr + 257 expression_yield: "yield" . expr + 258 | "yield" . "<-" expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -10609,7 +10266,7 @@ State 543 "generator" shift, and go to state 428 "++" shift, and go to state 429 "--" shift, and go to state 430 - "<-" shift, and go to state 731 + "<-" shift, and go to state 730 "::" shift, and go to state 55 "$$" shift, and go to state 431 "$i" shift, and go to state 432 @@ -10655,7 +10312,7 @@ State 543 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 732 + expr go to state 731 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -10671,7 +10328,7 @@ State 544 211 expression_block: "begin of code block" expressions "end of code block" . 212 | "begin of code block" expressions "end of code block" . "finally" "begin of code block" expressions "end of code block" - "finally" shift, and go to state 733 + "finally" shift, and go to state 732 $default reduce using rule 211 (expression_block) @@ -10687,28 +10344,28 @@ State 546 229 expression_any: expression_label . "end of expression" - "end of expression" shift, and go to state 734 + "end of expression" shift, and go to state 733 State 547 230 expression_any: expression_goto . "end of expression" - "end of expression" shift, and go to state 735 + "end of expression" shift, and go to state 734 State 548 68 expression_if_then_else: if_or_static_if . '(' expr ')' expression_block expression_else - '(' shift, and go to state 736 + '(' shift, and go to state 735 State 549 69 expression_if_then_else: expression_if_one_liner . "if" '(' expr ')' expression_else_one_liner "end of expression" - "if" shift, and go to state 737 + "if" shift, and go to state 736 State 550 @@ -10748,9 +10405,9 @@ State 554 State 555 - 221 expression_any: expression_with_alias . + 221 expression_any: expression_with_alias . "end of expression" - $default reduce using rule 221 (expression_any) + "end of expression" shift, and go to state 737 State 556 @@ -10799,8 +10456,8 @@ State 560 State 561 - 65 expression_if_one_liner: expression_yield_no_pipe . - 259 expression_yield: expression_yield_no_pipe . "end of expression" + 65 expression_if_one_liner: expression_yield . + 226 expression_any: expression_yield . "end of expression" "end of expression" shift, and go to state 742 @@ -10809,127 +10466,120 @@ State 561 State 562 - 226 expression_any: expression_yield . - - $default reduce using rule 226 (expression_any) - - -State 563 - 228 expression_any: expression_try_catch . $default reduce using rule 228 (expression_any) -State 564 +State 563 - 272 expression_let: kwd_let . optional_in_scope let_variable_declaration - 273 | kwd_let . optional_in_scope tuple_expansion_variable_declaration + 271 expression_let: kwd_let . optional_in_scope let_variable_declaration + 272 | kwd_let . optional_in_scope tuple_expansion_variable_declaration "inscope" shift, and go to state 743 - $default reduce using rule 267 (optional_in_scope) + $default reduce using rule 266 (optional_in_scope) optional_in_scope go to state 744 -State 565 +State 564 217 expression_any: expression_let . $default reduce using rule 217 (expression_any) -State 566 +State 565 215 expression_any: expr_assign . "end of expression" "end of expression" shift, and go to state 745 -State 567 +State 566 63 expression_if_one_liner: expr . - 315 expr_assign: expr . - 316 | expr . '=' expr - 317 | expr . "<-" expr - 318 | expr . ":=" expr - 319 | expr . "&=" expr - 320 | expr . "|=" expr - 321 | expr . "^=" expr - 322 | expr . "&&=" expr - 323 | expr . "||=" expr - 324 | expr . "^^=" expr - 325 | expr . "+=" expr - 326 | expr . "-=" expr - 327 | expr . "*=" expr - 328 | expr . "/=" expr - 329 | expr . "%=" expr - 330 | expr . "<<=" expr - 331 | expr . ">>=" expr - 332 | expr . "<<<=" expr - 333 | expr . ">>>=" expr - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 + 314 expr_assign: expr . + 315 | expr . '=' expr + 316 | expr . "<-" expr + 317 | expr . ":=" expr + 318 | expr . "&=" expr + 319 | expr . "|=" expr + 320 | expr . "^=" expr + 321 | expr . "&&=" expr + 322 | expr . "||=" expr + 323 | expr . "^^=" expr + 324 | expr . "+=" expr + 325 | expr . "-=" expr + 326 | expr . "*=" expr + 327 | expr . "/=" expr + 328 | expr . "%=" expr + 329 | expr . "<<=" expr + 330 | expr . ">>=" expr + 331 | expr . "<<<=" expr + 332 | expr . ">>>=" expr + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 "+=" shift, and go to state 746 "-=" shift, and go to state 747 "/=" shift, and go to state 748 @@ -10938,268 +10588,268 @@ State 567 "&=" shift, and go to state 751 "|=" shift, and go to state 752 "^=" shift, and go to state 753 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 "<<=" shift, and go to state 754 ">>=" shift, and go to state 755 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 "<-" shift, and go to state 756 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 ":=" shift, and go to state 757 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 "<<<=" shift, and go to state 758 ">>>=" shift, and go to state 759 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 "&&=" shift, and go to state 760 "||=" shift, and go to state 761 "^^=" shift, and go to state 762 - ".." shift, and go to state 664 + ".." shift, and go to state 663 '=' shift, and go to state 763 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 - - "end of expression" reduce using rule 315 (expr_assign) + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 + + "end of expression" reduce using rule 314 (expr_assign) $default reduce using rule 63 (expression_if_one_liner) -State 568 +State 567 - 525 enum_expression: "name" . - 526 | "name" . '=' expr + 524 enum_expression: "name" . + 525 | "name" . '=' expr '=' shift, and go to state 764 - $default reduce using rule 525 (enum_expression) + $default reduce using rule 524 (enum_expression) -State 569 +State 568 - 528 enum_list: enum_expression . + 527 enum_list: enum_expression . - $default reduce using rule 528 (enum_list) + $default reduce using rule 527 (enum_list) -State 570 +State 569 - 529 enum_list: enum_list . ',' enum_expression - 544 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list . optional_comma $@32 "end of code block" + 528 enum_list: enum_list . ',' enum_expression + 543 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list . optional_comma $@32 "end of code block" ',' shift, and go to state 765 - $default reduce using rule 760 (optional_comma) + $default reduce using rule 759 (optional_comma) optional_comma go to state 766 -State 571 +State 570 - 546 optional_structure_parent: ':' name_in_namespace . + 545 optional_structure_parent: ':' name_in_namespace . - $default reduce using rule 546 (optional_structure_parent) + $default reduce using rule 545 (optional_structure_parent) -State 572 +State 571 - 472 struct_variable_declaration_list: struct_variable_declaration_list . $@25 structure_variable_declaration "end of expression" - 474 | struct_variable_declaration_list . optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" - 476 | struct_variable_declaration_list . optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block - 556 optional_struct_variable_declaration_list: "begin of code block" struct_variable_declaration_list . "end of code block" + 471 struct_variable_declaration_list: struct_variable_declaration_list . $@25 structure_variable_declaration "end of expression" + 473 | struct_variable_declaration_list . optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" + 475 | struct_variable_declaration_list . optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block + 555 optional_struct_variable_declaration_list: "begin of code block" struct_variable_declaration_list . "end of code block" "end of code block" shift, and go to state 767 '[' shift, and go to state 15 "def" reduce using rule 112 (optional_annotation_list) - $default reduce using rule 471 ($@25) + $default reduce using rule 470 ($@25) optional_annotation_list go to state 768 $@25 go to state 769 -State 573 +State 572 - 516 global_variable_declaration_list: global_variable_declaration_list $@28 optional_field_annotation let_variable_declaration . + 515 global_variable_declaration_list: global_variable_declaration_list $@28 optional_field_annotation let_variable_declaration . - $default reduce using rule 516 (global_variable_declaration_list) + $default reduce using rule 515 (global_variable_declaration_list) -State 574 +State 573 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 507 let_variable_name_with_pos_list: "$i" '(' expr . ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 506 let_variable_name_with_pos_list: "$i" '(' expr . ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ')' shift, and go to state 770 -State 575 +State 574 - 508 let_variable_name_with_pos_list: "name" "aka" "name" . + 507 let_variable_name_with_pos_list: "name" "aka" "name" . - $default reduce using rule 508 (let_variable_name_with_pos_list) + $default reduce using rule 507 (let_variable_name_with_pos_list) -State 576 +State 575 - 509 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" . - 510 | let_variable_name_with_pos_list ',' "name" . "aka" "name" + 508 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" . + 509 | let_variable_name_with_pos_list ',' "name" . "aka" "name" "aka" shift, and go to state 771 - $default reduce using rule 509 (let_variable_name_with_pos_list) + $default reduce using rule 508 (let_variable_name_with_pos_list) -State 577 +State 576 - 511 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options . "end of expression" - 512 | let_variable_name_with_pos_list ':' type_declaration_no_options . copy_or_move_or_clone expr "end of expression" + 510 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options . "end of expression" + 511 | let_variable_name_with_pos_list ':' type_declaration_no_options . copy_or_move_or_clone expr "end of expression" - "<-" shift, and go to state 578 - ":=" shift, and go to state 579 + "<-" shift, and go to state 577 + ":=" shift, and go to state 578 "end of expression" shift, and go to state 772 - '=' shift, and go to state 580 + '=' shift, and go to state 579 copy_or_move_or_clone go to state 773 -State 578 +State 577 - 502 copy_or_move_or_clone: "<-" . + 501 copy_or_move_or_clone: "<-" . - $default reduce using rule 502 (copy_or_move_or_clone) + $default reduce using rule 501 (copy_or_move_or_clone) -State 579 +State 578 - 503 copy_or_move_or_clone: ":=" . + 502 copy_or_move_or_clone: ":=" . - $default reduce using rule 503 (copy_or_move_or_clone) + $default reduce using rule 502 (copy_or_move_or_clone) -State 580 +State 579 - 501 copy_or_move_or_clone: '=' . + 500 copy_or_move_or_clone: '=' . - $default reduce using rule 501 (copy_or_move_or_clone) + $default reduce using rule 500 (copy_or_move_or_clone) -State 581 +State 580 - 513 let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone . expr "end of expression" + 512 let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone . expr "end of expression" "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -11306,65 +10956,65 @@ State 581 array_comprehension go to state 480 -State 582 +State 581 - 626 type_declaration_no_options_no_dim: "type" '<' $@37 type_declaration . '>' $@38 - 684 type_declaration: type_declaration . '|' type_declaration_no_options - 685 | type_declaration . '|' '#' + 625 type_declaration_no_options_no_dim: "type" '<' $@37 type_declaration . '>' $@38 + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' '|' shift, and go to state 372 '>' shift, and go to state 775 -State 583 +State 582 - 649 type_declaration_no_options_no_dim: "array" '<' $@42 type_declaration . '>' $@43 - 684 type_declaration: type_declaration . '|' type_declaration_no_options - 685 | type_declaration . '|' '#' + 648 type_declaration_no_options_no_dim: "array" '<' $@42 type_declaration . '>' $@43 + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' '|' shift, and go to state 372 '>' shift, and go to state 776 -State 584 +State 583 - 652 type_declaration_no_options_no_dim: "table" '<' $@44 table_type_pair . '>' $@45 + 651 type_declaration_no_options_no_dim: "table" '<' $@44 table_type_pair . '>' $@45 '>' shift, and go to state 777 -State 585 +State 584 - 612 table_type_pair: type_declaration . - 613 | type_declaration . "end of expression" type_declaration - 684 type_declaration: type_declaration . '|' type_declaration_no_options - 685 | type_declaration . '|' '#' + 611 table_type_pair: type_declaration . + 612 | type_declaration . "end of expression" type_declaration + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' "end of expression" shift, and go to state 778 '|' shift, and go to state 372 - $default reduce using rule 612 (table_type_pair) + $default reduce using rule 611 (table_type_pair) -State 586 +State 585 - 718 make_struct_decl: "struct" '<' . $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' + 717 make_struct_decl: "struct" '<' . $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' - $default reduce using rule 716 ($@73) + $default reduce using rule 715 ($@73) $@73 go to state 779 -State 587 +State 586 - 721 make_struct_decl: "class" '<' . $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' + 720 make_struct_decl: "class" '<' . $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' - $default reduce using rule 719 ($@75) + $default reduce using rule 718 ($@75) $@75 go to state 780 -State 588 +State 587 246 new_type_declaration: '<' . $@3 type_declaration '>' $@4 @@ -11373,7 +11023,7 @@ State 588 $@3 go to state 781 -State 589 +State 588 249 expr_new: "new" new_type_declaration . '(' use_initializer ')' 250 | "new" new_type_declaration . '(' use_initializer make_struct_single ')' @@ -11381,61 +11031,28 @@ State 589 '(' shift, and go to state 782 -State 590 +State 589 247 expr_new: "new" structure_type_declaration . 248 | "new" structure_type_declaration . '(' optional_expr_list ')' '(' shift, and go to state 783 - '(' [reduce using rule 247 (expr_new)] $default reduce using rule 247 (expr_new) - shift/reduce conflict on token '(': - 247 expr_new: "new" structure_type_declaration . - 248 expr_new: "new" structure_type_declaration . '(' optional_expr_list ')' - First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' "new" structure_type_declaration . '(' optional_expr_list ')' expression_any "end of code block" $end - Shift derivation - $accept - `-> 0: program $end - `-> 6: program global_function_declaration - `-> 204: optional_annotation_list "def" function_declaration - `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block - `-> 211: "begin of code block" expressions "end of code block" - `-> 233: expressions expression_any - `-> 233: expressions expression_with_alias - `-> 74: "assume" "name" '=' expr - `-> 433: expr_new - `-> 248: "new" structure_type_declaration . '(' optional_expr_list ')' - Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' "new" structure_type_declaration . '(' expr_list optional_comma ')' "end of expression" "end of code block" $end - Reduce derivation - $accept - `-> 0: program $end - `-> 6: program global_function_declaration - `-> 204: optional_annotation_list "def" function_declaration - `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block - `-> 211: "begin of code block" expressions "end of code block" - `-> 233: expressions expression_any - `-> 233: expressions expression_any `-> 215: expr_assign "end of expression" - `-> 221: expression_with_alias `-> 315: expr - `-> 74: "assume" "name" '=' expr `-> 399: '(' expr_list optional_comma ')' - `-> 433: expr_new - `-> 247: "new" structure_type_declaration . - - -State 591 +State 590 251 expr_new: "new" make_decl . $default reduce using rule 251 (expr_new) -State 592 +State 591 - 286 expr_type_info: "typeinfo" '(' . name_in_namespace expr ')' - 287 | "typeinfo" '(' . name_in_namespace '<' "name" '>' expr ')' - 288 | "typeinfo" '(' . name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' + 285 expr_type_info: "typeinfo" '(' . name_in_namespace expr ')' + 286 | "typeinfo" '(' . name_in_namespace '<' "name" '>' expr ')' + 287 | "typeinfo" '(' . name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' "::" shift, and go to state 55 "name" shift, and go to state 56 @@ -11443,48 +11060,48 @@ State 592 name_in_namespace go to state 784 -State 593 +State 592 - 285 expr_type_decl: "type" '<' . $@11 type_declaration '>' $@12 + 284 expr_type_decl: "type" '<' . $@11 type_declaration '>' $@12 - $default reduce using rule 283 ($@11) + $default reduce using rule 282 ($@11) $@11 go to state 785 -State 594 +State 593 - 737 make_dim_decl: "array" "struct" . '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' + 736 make_dim_decl: "array" "struct" . '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' '<' shift, and go to state 786 -State 595 +State 594 - 740 make_dim_decl: "array" "tuple" . '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' + 739 make_dim_decl: "array" "tuple" . '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' '<' shift, and go to state 787 -State 596 +State 595 - 743 make_dim_decl: "array" "variant" . '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' + 742 make_dim_decl: "array" "variant" . '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' '<' shift, and go to state 788 -State 597 +State 596 - 747 make_dim_decl: "array" '<' . $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' + 746 make_dim_decl: "array" '<' . $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' - $default reduce using rule 745 ($@89) + $default reduce using rule 744 ($@89) $@89 go to state 789 -State 598 +State 597 - 744 make_dim_decl: "array" '(' . expr_list optional_comma ')' + 743 make_dim_decl: "array" '(' . expr_list optional_comma ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -11581,7 +11198,7 @@ State 598 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 634 + expr go to state 633 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -11592,10 +11209,10 @@ State 598 array_comprehension go to state 480 -State 599 +State 598 - 756 make_table_decl: "table" '<' . type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' - 757 | "table" '<' . type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + 755 make_table_decl: "table" '<' . type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + 756 | "table" '<' . type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -11650,9 +11267,9 @@ State 599 type_declaration_no_options_no_dim go to state 263 -State 600 +State 599 - 755 make_table_decl: "table" '(' . expr_map_tuple_list optional_comma ')' + 754 make_table_decl: "table" '(' . expr_map_tuple_list optional_comma ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -11748,12 +11365,12 @@ State 600 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 623 + expr go to state 622 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 make_struct_decl go to state 476 - make_map_tuple go to state 624 + make_map_tuple go to state 623 make_tuple_call go to state 477 make_dim_decl go to state 478 expr_map_tuple_list go to state 792 @@ -11761,9 +11378,9 @@ State 600 array_comprehension go to state 480 -State 601 +State 600 - 409 expr: "deref" '(' . expr ')' + 408 expr: "deref" '(' . expr ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -11870,27 +11487,27 @@ State 601 array_comprehension go to state 480 -State 602 +State 601 - 276 expr_cast: "cast" '<' . $@5 type_declaration_no_options '>' $@6 expr + 275 expr_cast: "cast" '<' . $@5 type_declaration_no_options '>' $@6 expr - $default reduce using rule 274 ($@5) + $default reduce using rule 273 ($@5) $@5 go to state 794 -State 603 +State 602 - 279 expr_cast: "upcast" '<' . $@7 type_declaration_no_options '>' $@8 expr + 278 expr_cast: "upcast" '<' . $@7 type_declaration_no_options '>' $@8 expr - $default reduce using rule 277 ($@7) + $default reduce using rule 276 ($@7) $@7 go to state 795 -State 604 +State 603 - 410 expr: "addr" '(' . expr ')' + 409 expr: "addr" '(' . expr ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -11997,27 +11614,27 @@ State 604 array_comprehension go to state 480 -State 605 +State 604 - 282 expr_cast: "reinterpret" '<' . $@9 type_declaration_no_options '>' $@10 expr + 281 expr_cast: "reinterpret" '<' . $@9 type_declaration_no_options '>' $@10 expr - $default reduce using rule 280 ($@9) + $default reduce using rule 279 ($@9) $@9 go to state 797 -State 606 +State 605 - 751 make_dim_decl: "fixed_array" '<' . $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' + 750 make_dim_decl: "fixed_array" '<' . $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' - $default reduce using rule 749 ($@91) + $default reduce using rule 748 ($@91) $@91 go to state 798 -State 607 +State 606 - 748 make_dim_decl: "fixed_array" '(' . expr_list optional_comma ')' + 747 make_dim_decl: "fixed_array" '(' . expr_list optional_comma ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -12114,7 +11731,7 @@ State 607 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 634 + expr go to state 633 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -12125,27 +11742,27 @@ State 607 array_comprehension go to state 480 -State 608 +State 607 - 727 make_struct_decl: "default" '<' . $@79 type_declaration_no_options '>' $@80 use_initializer + 726 make_struct_decl: "default" '<' . $@79 type_declaration_no_options '>' $@80 use_initializer - $default reduce using rule 725 ($@79) + $default reduce using rule 724 ($@79) $@79 go to state 800 -State 609 +State 608 - 733 make_tuple_call: "tuple" '<' . $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' + 732 make_tuple_call: "tuple" '<' . $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' - $default reduce using rule 731 ($@81) + $default reduce using rule 730 ($@81) $@81 go to state 801 -State 610 +State 609 - 730 make_tuple_call: "tuple" '(' . expr_list optional_comma ')' + 729 make_tuple_call: "tuple" '(' . expr_list optional_comma ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -12242,7 +11859,7 @@ State 610 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 634 + expr go to state 633 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -12253,19 +11870,19 @@ State 610 array_comprehension go to state 480 -State 611 +State 610 - 724 make_struct_decl: "variant" '<' . $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim ')' + 723 make_struct_decl: "variant" '<' . $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim ')' - $default reduce using rule 722 ($@77) + $default reduce using rule 721 ($@77) $@77 go to state 803 -State 612 +State 611 - 411 expr: "generator" '<' . type_declaration_no_options '>' optional_capture_list '(' ')' - 412 | "generator" '<' . type_declaration_no_options '>' optional_capture_list '(' expr ')' + 410 expr: "generator" '<' . type_declaration_no_options '>' optional_capture_list '(' ')' + 411 | "generator" '<' . type_declaration_no_options '>' optional_capture_list '(' expr ')' "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -12320,163 +11937,163 @@ State 612 type_declaration_no_options_no_dim go to state 263 -State 613 +State 612 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 395 | "++" expr . - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "->" shift, and go to state 653 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 394 | "++" expr . + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "->" shift, and go to state 652 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 395 (expr) + $default reduce using rule 394 (expr) -State 614 +State 613 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 396 | "--" expr . - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "->" shift, and go to state 653 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 395 | "--" expr . + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "->" shift, and go to state 652 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 396 (expr) + $default reduce using rule 395 (expr) -State 615 +State 614 - 441 expr_mtag: "$$" '(' . expr ')' + 440 expr_mtag: "$$" '(' . expr ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -12583,9 +12200,9 @@ State 615 array_comprehension go to state 480 -State 616 +State 615 - 442 expr_mtag: "$i" '(' . expr ')' + 441 expr_mtag: "$i" '(' . expr ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -12692,9 +12309,9 @@ State 616 array_comprehension go to state 480 -State 617 +State 616 - 443 expr_mtag: "$v" '(' . expr ')' + 442 expr_mtag: "$v" '(' . expr ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -12801,9 +12418,9 @@ State 617 array_comprehension go to state 480 -State 618 +State 617 - 444 expr_mtag: "$b" '(' . expr ')' + 443 expr_mtag: "$b" '(' . expr ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -12910,9 +12527,9 @@ State 618 array_comprehension go to state 480 -State 619 +State 618 - 445 expr_mtag: "$a" '(' . expr ')' + 444 expr_mtag: "$a" '(' . expr ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -13019,10 +12636,10 @@ State 619 array_comprehension go to state 480 -State 620 +State 619 - 447 expr_mtag: "$c" '(' . expr ')' '(' ')' - 448 | "$c" '(' . expr ')' '(' expr_list ')' + 446 expr_mtag: "$c" '(' . expr ')' '(' ')' + 447 | "$c" '(' . expr ')' '(' expr_list ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -13129,7 +12746,7 @@ State 620 array_comprehension go to state 480 -State 621 +State 620 29 string_builder_body: string_builder_body . character_sequence 30 | string_builder_body . "{" expr "}" @@ -13143,665 +12760,665 @@ State 621 character_sequence go to state 813 -State 622 +State 621 - 764 array_comprehension: "begin of code block" "for" . variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" + 763 array_comprehension: "begin of code block" "for" . variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" - "$i" shift, and go to state 712 - "name" shift, and go to state 713 + "$i" shift, and go to state 711 + "name" shift, and go to state 712 variable_name_with_pos_list go to state 814 -State 623 +State 622 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 728 make_map_tuple: expr . "=>" expr - 729 | expr . - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 727 make_map_tuple: expr . "=>" expr + 728 | expr . + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 "=>" shift, and go to state 815 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 - - $default reduce using rule 729 (make_map_tuple) + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 + $default reduce using rule 728 (make_map_tuple) -State 624 - 752 expr_map_tuple_list: make_map_tuple . +State 623 - $default reduce using rule 752 (expr_map_tuple_list) + 751 expr_map_tuple_list: make_map_tuple . + $default reduce using rule 751 (expr_map_tuple_list) -State 625 - 753 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple - 754 make_table_decl: "begin of code block" expr_map_tuple_list . optional_comma "end of code block" +State 624 + + 752 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple + 753 make_table_decl: "begin of code block" expr_map_tuple_list . optional_comma "end of code block" ',' shift, and go to state 816 - $default reduce using rule 760 (optional_comma) + $default reduce using rule 759 (optional_comma) optional_comma go to state 817 +State 625 + + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 371 expr: '-' expr . + 372 | expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "->" shift, and go to state 652 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + '.' shift, and go to state 675 + '[' shift, and go to state 676 + + $default reduce using rule 371 (expr) + + State 626 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 372 expr: '-' expr . - 373 | expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "->" shift, and go to state 653 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 370 expr: '+' expr . + 372 | expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "->" shift, and go to state 652 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 372 (expr) + $default reduce using rule 370 (expr) State 627 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 371 expr: '+' expr . - 373 | expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "->" shift, and go to state 653 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - '.' shift, and go to state 676 - '[' shift, and go to state 677 - - $default reduce using rule 371 (expr) + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 407 | '*' expr . + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + '.' shift, and go to state 675 + '[' shift, and go to state 676 + + $default reduce using rule 407 (expr) State 628 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 408 | '*' expr . - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 369 expr: '~' expr . + 372 | expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "->" shift, and go to state 652 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 408 (expr) + $default reduce using rule 369 (expr) State 629 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 370 expr: '~' expr . - 373 | expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "->" shift, and go to state 653 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 368 expr: '!' expr . + 372 | expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "->" shift, and go to state 652 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 370 (expr) + $default reduce using rule 368 (expr) State 630 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 369 expr: '!' expr . - 373 | expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "->" shift, and go to state 653 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - '.' shift, and go to state 676 - '[' shift, and go to state 677 - - $default reduce using rule 369 (expr) - - -State 631 - - 762 array_comprehension: '[' "for" . variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 761 array_comprehension: '[' "for" . variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - "$i" shift, and go to state 712 - "name" shift, and go to state 713 + "$i" shift, and go to state 711 + "name" shift, and go to state 712 variable_name_with_pos_list go to state 818 -State 632 +State 631 - 763 array_comprehension: '[' "iterator" . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 762 array_comprehension: '[' "iterator" . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' "for" shift, and go to state 819 -State 633 +State 632 - 290 expr_list: expr_list . ',' expr - 734 make_dim_decl: '[' expr_list . optional_comma ']' + 289 expr_list: expr_list . ',' expr + 733 make_dim_decl: '[' expr_list . optional_comma ']' ',' shift, and go to state 820 - $default reduce using rule 760 (optional_comma) + $default reduce using rule 759 (optional_comma) optional_comma go to state 821 -State 634 +State 633 - 289 expr_list: expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 288 expr_list: expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 + + $default reduce using rule 288 (expr_list) - $default reduce using rule 289 (expr_list) +State 634 -State 635 - - 290 expr_list: expr_list . ',' expr - 399 expr: '(' expr_list . optional_comma ')' + 289 expr_list: expr_list . ',' expr + 398 expr: '(' expr_list . optional_comma ')' ',' shift, and go to state 820 - $default reduce using rule 760 (optional_comma) + $default reduce using rule 759 (optional_comma) optional_comma go to state 822 -State 636 +State 635 - 296 block_or_lambda: '@' '@' . - 340 func_addr_expr: '@' '@' . func_addr_name - 343 | '@' '@' . '<' $@13 type_declaration_no_options '>' $@14 func_addr_name - 346 | '@' '@' . '<' $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name - 456 expr_mtag: '@' '@' . "$c" '(' expr ')' + 295 block_or_lambda: '@' '@' . + 339 func_addr_expr: '@' '@' . func_addr_name + 342 | '@' '@' . '<' $@13 type_declaration_no_options '>' $@14 func_addr_name + 345 | '@' '@' . '<' $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name + 455 expr_mtag: '@' '@' . "$c" '(' expr ')' "::" shift, and go to state 55 "$i" shift, and go to state 823 @@ -13809,19 +13426,19 @@ State 636 "name" shift, and go to state 56 '<' shift, and go to state 825 - $default reduce using rule 296 (block_or_lambda) + $default reduce using rule 295 (block_or_lambda) name_in_namespace go to state 826 func_addr_name go to state 827 -State 637 +State 636 - 334 expr_named_call: name_in_namespace '(' . '[' make_struct_fields ']' ')' - 335 | name_in_namespace '(' . expr_list ',' '[' make_struct_fields ']' ')' - 354 expr_call: name_in_namespace '(' . ')' - 355 | name_in_namespace '(' . make_struct_single ')' - 356 | name_in_namespace '(' . expr_list ')' + 333 expr_named_call: name_in_namespace '(' . '[' make_struct_fields ']' ')' + 334 | name_in_namespace '(' . expr_list ',' '[' make_struct_fields ']' ')' + 353 expr_call: name_in_namespace '(' . ')' + 354 | name_in_namespace '(' . make_struct_single ')' + 355 | name_in_namespace '(' . expr_list ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -13920,7 +13537,7 @@ State 637 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 634 + expr go to state 633 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -13933,39 +13550,39 @@ State 637 array_comprehension go to state 480 -State 638 +State 637 - 305 expr_full_block: block_or_lambda optional_annotation_list . optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block + 304 expr_full_block: block_or_lambda optional_annotation_list . optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block '[' shift, and go to state 835 - $default reduce using rule 303 (optional_capture_list) + $default reduce using rule 302 (optional_capture_list) optional_capture_list go to state 836 -State 639 +State 638 - 307 expr_full_block_assumed_piped: "begin of code block" . expressions "end of code block" + 306 expr_full_block_assumed_piped: "begin of code block" . expressions "end of code block" $default reduce using rule 232 (expressions) expressions go to state 837 -State 640 +State 639 - 295 block_or_lambda: '@' . - 296 | '@' . '@' + 294 block_or_lambda: '@' . + 295 | '@' . '@' '@' shift, and go to state 838 - $default reduce using rule 295 (block_or_lambda) + $default reduce using rule 294 (block_or_lambda) -State 641 +State 640 - 306 expr_full_block_assumed_piped: block_or_lambda . optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block + 305 expr_full_block_assumed_piped: block_or_lambda . optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block '[' shift, and go to state 15 @@ -13974,49 +13591,20 @@ State 641 optional_annotation_list go to state 839 - shift/reduce conflict on token '[': - 112 optional_annotation_list: %empty . - 113 optional_annotation_list: . '[' annotation_list ']' - First example: program kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation "$i" '(' block_or_lambda . '[' annotation_list ']' optional_capture_list optional_function_argument_list optional_function_type expression_block expr_full_block_assumed_piped ')' ':' type_declaration_no_options "end of expression" $end - Shift derivation - $accept - `-> 0: program $end - `-> 5: program global_let - `-> 524: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration - `-> 511: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" - `-> 507: "$i" '(' expr ')' - `-> 440: expr_call_pipe - `-> 213: expr_full_block_assumed_piped expr_full_block_assumed_piped - `-> 306: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block - `-> 113: . '[' annotation_list ']' - Second example: program kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation "$i" '(' expr_call block_or_lambda . '[' '[' capture_list ']' ']' optional_function_argument_list optional_function_type expression_block ')' ':' type_declaration_no_options "end of expression" $end - Reduce derivation - $accept - `-> 0: program $end - `-> 5: program global_let - `-> 524: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration - `-> 511: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" - `-> 507: "$i" '(' expr ')' - `-> 440: expr_call_pipe - `-> 213: expr_call expr_full_block_assumed_piped - `-> 306: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block - `-> 112: %empty . `-> 304: '[' '[' capture_list ']' ']' - - -State 642 +State 641 213 expr_call_pipe: expr_call expr_full_block_assumed_piped . $default reduce using rule 213 (expr_call_pipe) -State 643 +State 642 - 417 expr: expr "is" . "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr "is" . basic_type_declaration - 419 | expr "is" . "name" - 455 expr_mtag: expr "is" . "$f" '(' expr ')' + 416 expr: expr "is" . "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr "is" . basic_type_declaration + 418 | expr "is" . "name" + 454 expr_mtag: expr "is" . "$f" '(' expr ')' "type" shift, and go to state 840 "bool" shift, and go to state 222 @@ -14052,12 +13640,12 @@ State 643 basic_type_declaration go to state 843 -State 644 +State 643 - 420 expr: expr "as" . "name" - 423 | expr "as" . "type" '<' $@21 type_declaration '>' $@22 - 424 | expr "as" . basic_type_declaration - 453 expr_mtag: expr "as" . "$f" '(' expr ')' + 419 expr: expr "as" . "name" + 422 | expr "as" . "type" '<' $@21 type_declaration '>' $@22 + 423 | expr "as" . basic_type_declaration + 452 expr_mtag: expr "as" . "$f" '(' expr ')' "type" shift, and go to state 844 "bool" shift, and go to state 222 @@ -14093,9 +13681,9 @@ State 644 basic_type_declaration go to state 847 -State 645 +State 644 - 373 expr: expr "<<" . expr + 372 expr: expr "<<" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -14202,9 +13790,9 @@ State 645 array_comprehension go to state 480 -State 646 +State 645 - 374 expr: expr ">>" . expr + 373 expr: expr ">>" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -14311,23 +13899,23 @@ State 646 array_comprehension go to state 480 -State 647 +State 646 - 397 expr: expr "++" . + 396 expr: expr "++" . - $default reduce using rule 397 (expr) + $default reduce using rule 396 (expr) -State 648 +State 647 - 398 expr: expr "--" . + 397 expr: expr "--" . - $default reduce using rule 398 (expr) + $default reduce using rule 397 (expr) -State 649 +State 648 - 386 expr: expr "<=" . expr + 385 expr: expr "<=" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -14434,9 +14022,9 @@ State 649 array_comprehension go to state 480 -State 650 +State 649 - 387 expr: expr ">=" . expr + 386 expr: expr ">=" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -14543,9 +14131,9 @@ State 650 array_comprehension go to state 480 -State 651 +State 650 - 384 expr: expr "==" . expr + 383 expr: expr "==" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -14652,9 +14240,9 @@ State 651 array_comprehension go to state 480 -State 652 +State 651 - 385 expr: expr "!=" . expr + 384 expr: expr "!=" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -14761,17 +14349,17 @@ State 652 array_comprehension go to state 480 -State 653 +State 652 - 336 expr_method_call: expr "->" . "name" '(' ')' - 337 | expr "->" . "name" '(' expr_list ')' + 335 expr_method_call: expr "->" . "name" '(' ')' + 336 | expr "->" . "name" '(' expr_list ')' "name" shift, and go to state 854 -State 654 +State 653 - 413 expr: expr "??" . expr + 412 expr: expr "??" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -14878,18 +14466,18 @@ State 654 array_comprehension go to state 480 -State 655 +State 654 - 404 expr: expr "?." . "name" - 450 expr_mtag: expr "?." . "$f" '(' expr ')' + 403 expr: expr "?." . "name" + 449 expr_mtag: expr "?." . "$f" '(' expr ')' "$f" shift, and go to state 856 "name" shift, and go to state 857 -State 656 +State 655 - 402 expr: expr "?[" . expr ']' + 401 expr: expr "?[" . expr ']' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -14996,9 +14584,9 @@ State 656 array_comprehension go to state 480 -State 657 +State 656 - 437 expr: expr "<|" . expr + 436 expr: expr "<|" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -15105,10 +14693,10 @@ State 657 array_comprehension go to state 480 -State 658 +State 657 - 438 expr: expr "|>" . expr - 439 | expr "|>" . basic_type_declaration + 437 expr: expr "|>" . expr + 438 | expr "|>" . basic_type_declaration "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -15215,9 +14803,9 @@ State 658 array_comprehension go to state 480 -State 659 +State 658 - 375 expr: expr "<<<" . expr + 374 expr: expr "<<<" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -15324,9 +14912,9 @@ State 659 array_comprehension go to state 480 -State 660 +State 659 - 376 expr: expr ">>>" . expr + 375 expr: expr ">>>" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -15433,9 +15021,9 @@ State 660 array_comprehension go to state 480 -State 661 +State 660 - 391 expr: expr "&&" . expr + 390 expr: expr "&&" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -15542,9 +15130,9 @@ State 661 array_comprehension go to state 480 -State 662 +State 661 - 392 expr: expr "||" . expr + 391 expr: expr "||" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -15651,9 +15239,9 @@ State 662 array_comprehension go to state 480 -State 663 +State 662 - 393 expr: expr "^^" . expr + 392 expr: expr "^^" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -15760,9 +15348,9 @@ State 663 array_comprehension go to state 480 -State 664 +State 663 - 394 expr: expr ".." . expr + 393 expr: expr ".." . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -15869,13 +15457,13 @@ State 664 array_comprehension go to state 480 -State 665 +State 664 - 414 expr: expr '?' . expr ':' expr - 425 | expr '?' . "as" "name" - 428 | expr '?' . "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr '?' . "as" basic_type_declaration - 454 expr_mtag: expr '?' . "as" "$f" '(' expr ')' + 413 expr: expr '?' . expr ':' expr + 424 | expr '?' . "as" "name" + 427 | expr '?' . "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr '?' . "as" basic_type_declaration + 453 expr_mtag: expr '?' . "as" "$f" '(' expr ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -15983,9 +15571,9 @@ State 665 array_comprehension go to state 480 -State 666 +State 665 - 389 expr: expr '|' . expr + 388 expr: expr '|' . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -16092,9 +15680,9 @@ State 666 array_comprehension go to state 480 -State 667 +State 666 - 390 expr: expr '^' . expr + 389 expr: expr '^' . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -16201,9 +15789,9 @@ State 667 array_comprehension go to state 480 -State 668 +State 667 - 388 expr: expr '&' . expr + 387 expr: expr '&' . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -16310,9 +15898,9 @@ State 668 array_comprehension go to state 480 -State 669 +State 668 - 382 expr: expr '<' . expr + 381 expr: expr '<' . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -16419,9 +16007,9 @@ State 669 array_comprehension go to state 480 -State 670 +State 669 - 383 expr: expr '>' . expr + 382 expr: expr '>' . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -16528,9 +16116,9 @@ State 670 array_comprehension go to state 480 -State 671 +State 670 - 378 expr: expr '-' . expr + 377 expr: expr '-' . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -16637,9 +16225,9 @@ State 671 array_comprehension go to state 480 -State 672 +State 671 - 377 expr: expr '+' . expr + 376 expr: expr '+' . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -16746,9 +16334,9 @@ State 672 array_comprehension go to state 480 -State 673 +State 672 - 379 expr: expr '*' . expr + 378 expr: expr '*' . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -16855,9 +16443,9 @@ State 673 array_comprehension go to state 480 -State 674 +State 673 - 380 expr: expr '/' . expr + 379 expr: expr '/' . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -16964,9 +16552,9 @@ State 674 array_comprehension go to state 480 -State 675 +State 674 - 381 expr: expr '%' . expr + 380 expr: expr '%' . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -17073,19 +16661,19 @@ State 675 array_comprehension go to state 480 -State 676 +State 675 - 347 expr_field: expr '.' . "name" - 348 | expr '.' . '.' "name" - 349 | expr '.' . "name" '(' ')' - 350 | expr '.' . "name" '(' expr_list ')' - 353 | expr '.' . $@17 error $@18 - 401 expr: expr '.' . '[' expr ']' - 403 | expr '.' . "?[" expr ']' - 405 | expr '.' . "?." "name" - 449 expr_mtag: expr '.' . "$f" '(' expr ')' - 451 | expr '.' . '.' "$f" '(' expr ')' - 452 | expr '.' . "?." "$f" '(' expr ')' + 346 expr_field: expr '.' . "name" + 347 | expr '.' . '.' "name" + 348 | expr '.' . "name" '(' ')' + 349 | expr '.' . "name" '(' expr_list ')' + 352 | expr '.' . $@17 error $@18 + 400 expr: expr '.' . '[' expr ']' + 402 | expr '.' . "?[" expr ']' + 404 | expr '.' . "?." "name" + 448 expr_mtag: expr '.' . "$f" '(' expr ')' + 450 | expr '.' . '.' "$f" '(' expr ')' + 451 | expr '.' . "?." "$f" '(' expr ')' "?." shift, and go to state 880 "?[" shift, and go to state 881 @@ -17094,14 +16682,14 @@ State 676 '.' shift, and go to state 884 '[' shift, and go to state 885 - $default reduce using rule 351 ($@17) + $default reduce using rule 350 ($@17) $@17 go to state 886 -State 677 +State 676 - 400 expr: expr '[' . expr ']' + 399 expr: expr '[' . expr ']' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -17208,17 +16796,17 @@ State 677 array_comprehension go to state 480 -State 678 +State 677 - 627 type_declaration_no_options_no_dim: "typedecl" '(' expr ')' . + 626 type_declaration_no_options_no_dim: "typedecl" '(' expr ')' . - $default reduce using rule 627 (type_declaration_no_options_no_dim) + $default reduce using rule 626 (type_declaration_no_options_no_dim) -State 679 +State 678 - 357 expr_call: basic_type_declaration '(' . ')' - 358 | basic_type_declaration '(' . expr_list ')' + 356 expr_call: basic_type_declaration '(' . ')' + 357 | basic_type_declaration '(' . expr_list ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -17316,7 +16904,7 @@ State 679 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 634 + expr go to state 633 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -17327,62 +16915,62 @@ State 679 array_comprehension go to state 480 -State 680 +State 679 - 655 type_declaration_no_options_no_dim: "iterator" '<' $@46 type_declaration . '>' $@47 - 684 type_declaration: type_declaration . '|' type_declaration_no_options - 685 | type_declaration . '|' '#' + 654 type_declaration_no_options_no_dim: "iterator" '<' $@46 type_declaration . '>' $@47 + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' '|' shift, and go to state 372 '>' shift, and go to state 890 -State 681 +State 680 - 645 type_declaration_no_options_no_dim: "smart_ptr" '<' $@40 type_declaration . '>' $@41 - 684 type_declaration: type_declaration . '|' type_declaration_no_options - 685 | type_declaration . '|' '#' + 644 type_declaration_no_options_no_dim: "smart_ptr" '<' $@40 type_declaration . '>' $@41 + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' '|' shift, and go to state 372 '>' shift, and go to state 891 -State 682 +State 681 - 602 auto_type_declaration: "auto" '(' "name" ')' . + 601 auto_type_declaration: "auto" '(' "name" ')' . - $default reduce using rule 602 (auto_type_declaration) + $default reduce using rule 601 (auto_type_declaration) -State 683 +State 682 - 604 bitfield_bits: "name" . + 603 bitfield_bits: "name" . - $default reduce using rule 604 (bitfield_bits) + $default reduce using rule 603 (bitfield_bits) -State 684 +State 683 - 605 bitfield_bits: bitfield_bits . "end of expression" "name" - 611 bitfield_type_declaration: "bitfield" '<' $@35 bitfield_bits . '>' $@36 + 604 bitfield_bits: bitfield_bits . "end of expression" "name" + 610 bitfield_type_declaration: "bitfield" '<' $@35 bitfield_bits . '>' $@36 "end of expression" shift, and go to state 892 '>' shift, and go to state 893 -State 685 +State 684 - 659 type_declaration_no_options_no_dim: "block" '<' $@48 type_declaration . '>' $@49 - 684 type_declaration: type_declaration . '|' type_declaration_no_options - 685 | type_declaration . '|' '#' + 658 type_declaration_no_options_no_dim: "block" '<' $@48 type_declaration . '>' $@49 + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' '|' shift, and go to state 372 '>' shift, and go to state 894 -State 686 +State 685 - 662 type_declaration_no_options_no_dim: "block" '<' $@50 optional_function_argument_list . optional_function_type '>' $@51 + 661 type_declaration_no_options_no_dim: "block" '<' $@50 optional_function_argument_list . optional_function_type '>' $@51 ':' shift, and go to state 389 @@ -17391,19 +16979,19 @@ State 686 optional_function_type go to state 895 -State 687 +State 686 - 666 type_declaration_no_options_no_dim: "function" '<' $@52 type_declaration . '>' $@53 - 684 type_declaration: type_declaration . '|' type_declaration_no_options - 685 | type_declaration . '|' '#' + 665 type_declaration_no_options_no_dim: "function" '<' $@52 type_declaration . '>' $@53 + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' '|' shift, and go to state 372 '>' shift, and go to state 896 -State 688 +State 687 - 669 type_declaration_no_options_no_dim: "function" '<' $@54 optional_function_argument_list . optional_function_type '>' $@55 + 668 type_declaration_no_options_no_dim: "function" '<' $@54 optional_function_argument_list . optional_function_type '>' $@55 ':' shift, and go to state 389 @@ -17412,19 +17000,19 @@ State 688 optional_function_type go to state 897 -State 689 +State 688 - 673 type_declaration_no_options_no_dim: "lambda" '<' $@56 type_declaration . '>' $@57 - 684 type_declaration: type_declaration . '|' type_declaration_no_options - 685 | type_declaration . '|' '#' + 672 type_declaration_no_options_no_dim: "lambda" '<' $@56 type_declaration . '>' $@57 + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' '|' shift, and go to state 372 '>' shift, and go to state 898 -State 690 +State 689 - 676 type_declaration_no_options_no_dim: "lambda" '<' $@58 optional_function_argument_list . optional_function_type '>' $@59 + 675 type_declaration_no_options_no_dim: "lambda" '<' $@58 optional_function_argument_list . optional_function_type '>' $@59 ':' shift, and go to state 389 @@ -17433,48 +17021,48 @@ State 690 optional_function_type go to state 899 -State 691 +State 690 - 483 tuple_type_list: tuple_type . + 482 tuple_type_list: tuple_type . - $default reduce using rule 483 (tuple_type_list) + $default reduce using rule 482 (tuple_type_list) -State 692 +State 691 - 484 tuple_type_list: tuple_type_list . "end of expression" tuple_type - 679 type_declaration_no_options_no_dim: "tuple" '<' $@60 tuple_type_list . '>' $@61 + 483 tuple_type_list: tuple_type_list . "end of expression" tuple_type + 678 type_declaration_no_options_no_dim: "tuple" '<' $@60 tuple_type_list . '>' $@61 "end of expression" shift, and go to state 900 '>' shift, and go to state 901 -State 693 +State 692 - 489 variant_type_list: variant_type . + 488 variant_type_list: variant_type . - $default reduce using rule 489 (variant_type_list) + $default reduce using rule 488 (variant_type_list) -State 694 +State 693 - 490 variant_type_list: variant_type_list . "end of expression" variant_type - 682 type_declaration_no_options_no_dim: "variant" '<' $@62 variant_type_list . '>' $@63 + 489 variant_type_list: variant_type_list . "end of expression" variant_type + 681 type_declaration_no_options_no_dim: "variant" '<' $@62 variant_type_list . '>' $@63 "end of expression" shift, and go to state 902 '>' shift, and go to state 903 -State 695 +State 694 - 603 auto_type_declaration: "$t" '(' expr ')' . + 602 auto_type_declaration: "$t" '(' expr ')' . - $default reduce using rule 603 (auto_type_declaration) + $default reduce using rule 602 (auto_type_declaration) -State 696 +State 695 - 630 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 . type_declaration_no_options_list '>' '(' optional_expr_list ')' + 629 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 . type_declaration_no_options_list '>' '(' optional_expr_list ')' "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -17531,161 +17119,161 @@ State 696 type_declaration go to state 905 -State 697 +State 696 - 628 type_declaration_no_options_no_dim: '$' name_in_namespace '(' optional_expr_list . ')' + 627 type_declaration_no_options_no_dim: '$' name_in_namespace '(' optional_expr_list . ')' ')' shift, and go to state 906 -State 698 +State 697 236 optional_expr_list: expr_list . - 290 expr_list: expr_list . ',' expr + 289 expr_list: expr_list . ',' expr ',' shift, and go to state 907 $default reduce using rule 236 (optional_expr_list) -State 699 +State 698 - 631 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '[' ']' . + 630 type_declaration_no_options_no_dim: type_declaration_no_options_no_dim '-' '[' ']' . - $default reduce using rule 631 (type_declaration_no_options_no_dim) + $default reduce using rule 630 (type_declaration_no_options_no_dim) -State 700 +State 699 - 614 dim_list: '[' expr ']' . + 613 dim_list: '[' expr ']' . - $default reduce using rule 614 (dim_list) + $default reduce using rule 613 (dim_list) -State 701 +State 700 - 617 dim_list: dim_list '[' ']' . + 616 dim_list: dim_list '[' ']' . - $default reduce using rule 617 (dim_list) + $default reduce using rule 616 (dim_list) -State 702 +State 701 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 616 dim_list: dim_list '[' expr . ']' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 615 dim_list: dim_list '[' expr . ']' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ']' shift, and go to state 908 -State 703 +State 702 - 608 bitfield_alias_bits: bitfield_alias_bits ',' "name" . + 607 bitfield_alias_bits: bitfield_alias_bits ',' "name" . - $default reduce using rule 608 (bitfield_alias_bits) + $default reduce using rule 607 (bitfield_alias_bits) -State 704 +State 703 - 697 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 . "end of code block" + 696 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 . "end of code block" "end of code block" shift, and go to state 909 -State 705 +State 704 - 482 tuple_type: "name" ':' . type_declaration + 481 tuple_type: "name" ':' . type_declaration "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -17741,23 +17329,23 @@ State 705 type_declaration go to state 910 -State 706 +State 705 - 487 tuple_alias_type_list: tuple_alias_type_list tuple_type "end of expression" . + 486 tuple_alias_type_list: tuple_alias_type_list tuple_type "end of expression" . - $default reduce using rule 487 (tuple_alias_type_list) + $default reduce using rule 486 (tuple_alias_type_list) -State 707 +State 706 - 689 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" . + 688 tuple_alias_declaration: "tuple" optional_public_or_private_alias "name" $@64 "begin of code block" $@65 tuple_alias_type_list $@66 "end of code block" . - $default reduce using rule 689 (tuple_alias_declaration) + $default reduce using rule 688 (tuple_alias_declaration) -State 708 +State 707 - 488 variant_type: "name" ':' . type_declaration + 487 variant_type: "name" ':' . type_declaration "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -17813,153 +17401,153 @@ State 708 type_declaration go to state 911 -State 709 +State 708 - 493 variant_alias_type_list: variant_alias_type_list variant_type "end of expression" . + 492 variant_alias_type_list: variant_alias_type_list variant_type "end of expression" . - $default reduce using rule 493 (variant_alias_type_list) + $default reduce using rule 492 (variant_alias_type_list) -State 710 +State 709 - 693 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" . + 692 variant_alias_declaration: "variant" optional_public_or_private_alias "name" $@67 "begin of code block" $@68 variant_alias_type_list $@69 "end of code block" . - $default reduce using rule 693 (variant_alias_declaration) + $default reduce using rule 692 (variant_alias_declaration) -State 711 +State 710 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 478 function_argument_declaration: "$a" '(' expr . ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 477 function_argument_declaration: "$a" '(' expr . ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ')' shift, and go to state 912 -State 712 +State 711 - 561 variable_name_with_pos_list: "$i" . '(' expr ')' + 560 variable_name_with_pos_list: "$i" . '(' expr ')' '(' shift, and go to state 913 -State 713 +State 712 - 560 variable_name_with_pos_list: "name" . - 562 | "name" . "aka" "name" + 559 variable_name_with_pos_list: "name" . + 561 | "name" . "aka" "name" "aka" shift, and go to state 914 - $default reduce using rule 560 (variable_name_with_pos_list) + $default reduce using rule 559 (variable_name_with_pos_list) -State 714 +State 713 - 477 function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing variable_declaration . + 476 function_argument_declaration: optional_field_annotation kwd_let_var_or_nothing variable_declaration . - $default reduce using rule 477 (function_argument_declaration) + $default reduce using rule 476 (function_argument_declaration) -State 715 +State 714 - 496 variable_declaration: variable_name_with_pos_list . - 497 | variable_name_with_pos_list . '&' - 498 | variable_name_with_pos_list . ':' type_declaration - 499 | variable_name_with_pos_list . ':' type_declaration copy_or_move expr - 500 | variable_name_with_pos_list . copy_or_move expr - 563 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" - 564 | variable_name_with_pos_list . ',' "name" "aka" "name" + 495 variable_declaration: variable_name_with_pos_list . + 496 | variable_name_with_pos_list . '&' + 497 | variable_name_with_pos_list . ':' type_declaration + 498 | variable_name_with_pos_list . ':' type_declaration copy_or_move expr + 499 | variable_name_with_pos_list . copy_or_move expr + 562 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" + 563 | variable_name_with_pos_list . ',' "name" "aka" "name" "<-" shift, and go to state 915 ',' shift, and go to state 916 @@ -17967,131 +17555,131 @@ State 715 ':' shift, and go to state 918 '&' shift, and go to state 919 - $default reduce using rule 496 (variable_declaration) + $default reduce using rule 495 (variable_declaration) copy_or_move go to state 920 -State 716 +State 715 - 480 function_argument_list: function_argument_list "end of expression" function_argument_declaration . + 479 function_argument_list: function_argument_list "end of expression" function_argument_declaration . - $default reduce using rule 480 (function_argument_list) + $default reduce using rule 479 (function_argument_list) -State 717 +State 716 72 expression_while_loop: "while" expr . expression_block - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 "begin of code block" shift, and go to state 323 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 expression_block go to state 921 -State 718 +State 717 70 expression_for_loop: "for" '(' . variable_name_with_pos_list "in" expr_list ')' expression_block - "$i" shift, and go to state 712 - "name" shift, and go to state 713 + "$i" shift, and go to state 711 + "name" shift, and go to state 712 variable_name_with_pos_list go to state 922 -State 719 +State 718 256 expression_return: "return" "<-" . expr @@ -18200,115 +17788,115 @@ State 719 array_comprehension go to state 480 -State 720 +State 719 255 expression_return: "return" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 $default reduce using rule 255 (expression_return) -State 721 +State 720 - 260 expression_try_catch: "try" expression_block . "recover" expression_block + 259 expression_try_catch: "try" expression_block . "recover" expression_block "recover" shift, and go to state 924 -State 722 +State 721 243 expression_delete: "delete" "explicit" . expr @@ -18417,348 +18005,348 @@ State 722 array_comprehension go to state 480 -State 723 +State 722 242 expression_delete: "delete" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 $default reduce using rule 242 (expression_delete) -State 724 +State 723 73 expression_with: "with" expr . expression_block - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 "begin of code block" shift, and go to state 323 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 expression_block go to state 926 -State 725 +State 724 74 expression_with_alias: "assume" "name" . '=' expr '=' shift, and go to state 927 -State 726 +State 725 231 expression_any: "pass" "end of expression" . $default reduce using rule 231 (expression_any) -State 727 +State 726 51 expression_label: "label" "integer constant" . ':' ':' shift, and go to state 928 -State 728 +State 727 52 expression_goto: "goto" "label" . "integer constant" "integer constant" shift, and go to state 929 -State 729 +State 728 53 expression_goto: "goto" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 $default reduce using rule 53 (expression_goto) -State 730 +State 729 71 expression_unsafe: "unsafe" expression_block . $default reduce using rule 71 (expression_unsafe) -State 731 +State 730 - 258 expression_yield_no_pipe: "yield" "<-" . expr + 258 expression_yield: "yield" "<-" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -18865,129 +18453,129 @@ State 731 array_comprehension go to state 480 -State 732 +State 731 - 257 expression_yield_no_pipe: "yield" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 - - $default reduce using rule 257 (expression_yield_no_pipe) + 257 expression_yield: "yield" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 + + $default reduce using rule 257 (expression_yield) -State 733 +State 732 212 expression_block: "begin of code block" expressions "end of code block" "finally" . "begin of code block" expressions "end of code block" "begin of code block" shift, and go to state 931 -State 734 +State 733 229 expression_any: expression_label "end of expression" . $default reduce using rule 229 (expression_any) -State 735 +State 734 230 expression_any: expression_goto "end of expression" . $default reduce using rule 230 (expression_any) -State 736 +State 735 68 expression_if_then_else: if_or_static_if '(' . expr ')' expression_block expression_else @@ -19096,13 +18684,20 @@ State 736 array_comprehension go to state 480 -State 737 +State 736 69 expression_if_then_else: expression_if_one_liner "if" . '(' expr ')' expression_else_one_liner "end of expression" '(' shift, and go to state 933 +State 737 + + 221 expression_any: expression_with_alias "end of expression" . + + $default reduce using rule 221 (expression_any) + + State 738 216 expression_any: expression_delete "end of expression" . @@ -19133,22 +18728,22 @@ State 741 State 742 - 259 expression_yield: expression_yield_no_pipe "end of expression" . + 226 expression_any: expression_yield "end of expression" . - $default reduce using rule 259 (expression_yield) + $default reduce using rule 226 (expression_any) State 743 - 266 optional_in_scope: "inscope" . + 265 optional_in_scope: "inscope" . - $default reduce using rule 266 (optional_in_scope) + $default reduce using rule 265 (optional_in_scope) State 744 - 272 expression_let: kwd_let optional_in_scope . let_variable_declaration - 273 | kwd_let optional_in_scope . tuple_expansion_variable_declaration + 271 expression_let: kwd_let optional_in_scope . let_variable_declaration + 272 | kwd_let optional_in_scope . tuple_expansion_variable_declaration "$i" shift, and go to state 341 "name" shift, and go to state 342 @@ -19168,7 +18763,7 @@ State 745 State 746 - 325 expr_assign: expr "+=" . expr + 324 expr_assign: expr "+=" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -19277,7 +18872,7 @@ State 746 State 747 - 326 expr_assign: expr "-=" . expr + 325 expr_assign: expr "-=" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -19386,7 +18981,7 @@ State 747 State 748 - 328 expr_assign: expr "/=" . expr + 327 expr_assign: expr "/=" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -19495,7 +19090,7 @@ State 748 State 749 - 327 expr_assign: expr "*=" . expr + 326 expr_assign: expr "*=" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -19604,7 +19199,7 @@ State 749 State 750 - 329 expr_assign: expr "%=" . expr + 328 expr_assign: expr "%=" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -19713,7 +19308,7 @@ State 750 State 751 - 319 expr_assign: expr "&=" . expr + 318 expr_assign: expr "&=" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -19822,7 +19417,7 @@ State 751 State 752 - 320 expr_assign: expr "|=" . expr + 319 expr_assign: expr "|=" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -19931,7 +19526,7 @@ State 752 State 753 - 321 expr_assign: expr "^=" . expr + 320 expr_assign: expr "^=" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -20040,7 +19635,7 @@ State 753 State 754 - 330 expr_assign: expr "<<=" . expr + 329 expr_assign: expr "<<=" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -20149,7 +19744,7 @@ State 754 State 755 - 331 expr_assign: expr ">>=" . expr + 330 expr_assign: expr ">>=" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -20258,7 +19853,7 @@ State 755 State 756 - 317 expr_assign: expr "<-" . expr + 316 expr_assign: expr "<-" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -20367,7 +19962,7 @@ State 756 State 757 - 318 expr_assign: expr ":=" . expr + 317 expr_assign: expr ":=" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -20476,7 +20071,7 @@ State 757 State 758 - 332 expr_assign: expr "<<<=" . expr + 331 expr_assign: expr "<<<=" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -20585,7 +20180,7 @@ State 758 State 759 - 333 expr_assign: expr ">>>=" . expr + 332 expr_assign: expr ">>>=" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -20694,7 +20289,7 @@ State 759 State 760 - 322 expr_assign: expr "&&=" . expr + 321 expr_assign: expr "&&=" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -20803,7 +20398,7 @@ State 760 State 761 - 323 expr_assign: expr "||=" . expr + 322 expr_assign: expr "||=" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -20912,7 +20507,7 @@ State 761 State 762 - 324 expr_assign: expr "^^=" . expr + 323 expr_assign: expr "^^=" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -21021,7 +20616,7 @@ State 762 State 763 - 316 expr_assign: expr '=' . expr + 315 expr_assign: expr '=' . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -21130,7 +20725,7 @@ State 763 State 764 - 526 enum_expression: "name" '=' . expr + 525 enum_expression: "name" '=' . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -21239,47 +20834,47 @@ State 764 State 765 - 529 enum_list: enum_list ',' . enum_expression - 761 optional_comma: ',' . + 528 enum_list: enum_list ',' . enum_expression + 760 optional_comma: ',' . - "name" shift, and go to state 568 + "name" shift, and go to state 567 - $default reduce using rule 761 (optional_comma) + $default reduce using rule 760 (optional_comma) enum_expression go to state 956 State 766 - 544 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma . $@32 "end of code block" + 543 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma . $@32 "end of code block" - $default reduce using rule 543 ($@32) + $default reduce using rule 542 ($@32) $@32 go to state 957 State 767 - 556 optional_struct_variable_declaration_list: "begin of code block" struct_variable_declaration_list "end of code block" . + 555 optional_struct_variable_declaration_list: "begin of code block" struct_variable_declaration_list "end of code block" . - $default reduce using rule 556 (optional_struct_variable_declaration_list) + $default reduce using rule 555 (optional_struct_variable_declaration_list) State 768 - 474 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list . "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" - 476 | struct_variable_declaration_list optional_annotation_list . "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block + 473 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list . "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" + 475 | struct_variable_declaration_list optional_annotation_list . "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block "def" shift, and go to state 958 State 769 - 472 struct_variable_declaration_list: struct_variable_declaration_list $@25 . structure_variable_declaration "end of expression" + 471 struct_variable_declaration_list: struct_variable_declaration_list $@25 . structure_variable_declaration "end of expression" '@' shift, and go to state 208 - $default reduce using rule 457 (optional_field_annotation) + $default reduce using rule 456 (optional_field_annotation) metadata_argument_list go to state 209 optional_field_annotation go to state 959 @@ -21288,28 +20883,28 @@ State 769 State 770 - 507 let_variable_name_with_pos_list: "$i" '(' expr ')' . + 506 let_variable_name_with_pos_list: "$i" '(' expr ')' . - $default reduce using rule 507 (let_variable_name_with_pos_list) + $default reduce using rule 506 (let_variable_name_with_pos_list) State 771 - 510 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" "aka" . "name" + 509 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" "aka" . "name" "name" shift, and go to state 961 State 772 - 511 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" . + 510 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" . - $default reduce using rule 511 (let_variable_declaration) + $default reduce using rule 510 (let_variable_declaration) State 773 - 512 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone . expr "end of expression" + 511 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone . expr "end of expression" "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -21418,134 +21013,134 @@ State 773 State 774 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 513 let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr . "end of expression" - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 512 let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr . "end of expression" + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 "end of expression" shift, and go to state 963 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 State 775 - 626 type_declaration_no_options_no_dim: "type" '<' $@37 type_declaration '>' . $@38 + 625 type_declaration_no_options_no_dim: "type" '<' $@37 type_declaration '>' . $@38 - $default reduce using rule 625 ($@38) + $default reduce using rule 624 ($@38) $@38 go to state 964 State 776 - 649 type_declaration_no_options_no_dim: "array" '<' $@42 type_declaration '>' . $@43 + 648 type_declaration_no_options_no_dim: "array" '<' $@42 type_declaration '>' . $@43 - $default reduce using rule 648 ($@43) + $default reduce using rule 647 ($@43) $@43 go to state 965 State 777 - 652 type_declaration_no_options_no_dim: "table" '<' $@44 table_type_pair '>' . $@45 + 651 type_declaration_no_options_no_dim: "table" '<' $@44 table_type_pair '>' . $@45 - $default reduce using rule 651 ($@45) + $default reduce using rule 650 ($@45) $@45 go to state 966 State 778 - 613 table_type_pair: type_declaration "end of expression" . type_declaration + 612 table_type_pair: type_declaration "end of expression" . type_declaration "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -21603,7 +21198,7 @@ State 778 State 779 - 718 make_struct_decl: "struct" '<' $@73 . type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' + 717 make_struct_decl: "struct" '<' $@73 . type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -21660,7 +21255,7 @@ State 779 State 780 - 721 make_struct_decl: "class" '<' $@75 . type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' + 720 make_struct_decl: "class" '<' $@75 . type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -21780,7 +21375,7 @@ State 782 "uninitialized" shift, and go to state 971 - $default reduce using rule 714 (use_initializer) + $default reduce using rule 713 (use_initializer) use_initializer go to state 972 @@ -21878,7 +21473,7 @@ State 783 expr_cast go to state 461 expr_type_decl go to state 462 expr_type_info go to state 463 - expr_list go to state 698 + expr_list go to state 697 block_or_lambda go to state 464 expr_full_block go to state 465 expr_numeric_const go to state 466 @@ -21887,7 +21482,7 @@ State 783 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 634 + expr go to state 633 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -21900,9 +21495,9 @@ State 783 State 784 - 286 expr_type_info: "typeinfo" '(' name_in_namespace . expr ')' - 287 | "typeinfo" '(' name_in_namespace . '<' "name" '>' expr ')' - 288 | "typeinfo" '(' name_in_namespace . '<' "name" "end of expression" "name" '>' expr ')' + 285 expr_type_info: "typeinfo" '(' name_in_namespace . expr ')' + 286 | "typeinfo" '(' name_in_namespace . '<' "name" '>' expr ')' + 287 | "typeinfo" '(' name_in_namespace . '<' "name" "end of expression" "name" '>' expr ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -22012,7 +21607,7 @@ State 784 State 785 - 285 expr_type_decl: "type" '<' $@11 . type_declaration '>' $@12 + 284 expr_type_decl: "type" '<' $@11 . type_declaration '>' $@12 "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -22070,34 +21665,34 @@ State 785 State 786 - 737 make_dim_decl: "array" "struct" '<' . $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' + 736 make_dim_decl: "array" "struct" '<' . $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' - $default reduce using rule 735 ($@83) + $default reduce using rule 734 ($@83) $@83 go to state 977 State 787 - 740 make_dim_decl: "array" "tuple" '<' . $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' + 739 make_dim_decl: "array" "tuple" '<' . $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' - $default reduce using rule 738 ($@85) + $default reduce using rule 737 ($@85) $@85 go to state 978 State 788 - 743 make_dim_decl: "array" "variant" '<' . $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' + 742 make_dim_decl: "array" "variant" '<' . $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' - $default reduce using rule 741 ($@87) + $default reduce using rule 740 ($@87) $@87 go to state 979 State 789 - 747 make_dim_decl: "array" '<' $@89 . type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' + 746 make_dim_decl: "array" '<' $@89 . type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -22154,20 +21749,20 @@ State 789 State 790 - 290 expr_list: expr_list . ',' expr - 744 make_dim_decl: "array" '(' expr_list . optional_comma ')' + 289 expr_list: expr_list . ',' expr + 743 make_dim_decl: "array" '(' expr_list . optional_comma ')' ',' shift, and go to state 820 - $default reduce using rule 760 (optional_comma) + $default reduce using rule 759 (optional_comma) optional_comma go to state 981 State 791 - 756 make_table_decl: "table" '<' type_declaration_no_options . '>' '(' expr_map_tuple_list optional_comma ')' - 757 | "table" '<' type_declaration_no_options . "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + 755 make_table_decl: "table" '<' type_declaration_no_options . '>' '(' expr_map_tuple_list optional_comma ')' + 756 | "table" '<' type_declaration_no_options . "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' "end of expression" shift, and go to state 982 '>' shift, and go to state 983 @@ -22175,119 +21770,119 @@ State 791 State 792 - 753 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple - 755 make_table_decl: "table" '(' expr_map_tuple_list . optional_comma ')' + 752 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple + 754 make_table_decl: "table" '(' expr_map_tuple_list . optional_comma ')' ',' shift, and go to state 816 - $default reduce using rule 760 (optional_comma) + $default reduce using rule 759 (optional_comma) optional_comma go to state 984 State 793 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 409 | "deref" '(' expr . ')' - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 408 | "deref" '(' expr . ')' + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ')' shift, and go to state 985 State 794 - 276 expr_cast: "cast" '<' $@5 . type_declaration_no_options '>' $@6 expr + 275 expr_cast: "cast" '<' $@5 . type_declaration_no_options '>' $@6 expr "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -22344,7 +21939,7 @@ State 794 State 795 - 279 expr_cast: "upcast" '<' $@7 . type_declaration_no_options '>' $@8 expr + 278 expr_cast: "upcast" '<' $@7 . type_declaration_no_options '>' $@8 expr "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -22401,107 +21996,107 @@ State 795 State 796 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 410 | "addr" '(' expr . ')' - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 409 | "addr" '(' expr . ')' + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ')' shift, and go to state 988 State 797 - 282 expr_cast: "reinterpret" '<' $@9 . type_declaration_no_options '>' $@10 expr + 281 expr_cast: "reinterpret" '<' $@9 . type_declaration_no_options '>' $@10 expr "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -22558,7 +22153,7 @@ State 797 State 798 - 751 make_dim_decl: "fixed_array" '<' $@91 . type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' + 750 make_dim_decl: "fixed_array" '<' $@91 . type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -22615,19 +22210,19 @@ State 798 State 799 - 290 expr_list: expr_list . ',' expr - 748 make_dim_decl: "fixed_array" '(' expr_list . optional_comma ')' + 289 expr_list: expr_list . ',' expr + 747 make_dim_decl: "fixed_array" '(' expr_list . optional_comma ')' ',' shift, and go to state 820 - $default reduce using rule 760 (optional_comma) + $default reduce using rule 759 (optional_comma) optional_comma go to state 991 State 800 - 727 make_struct_decl: "default" '<' $@79 . type_declaration_no_options '>' $@80 use_initializer + 726 make_struct_decl: "default" '<' $@79 . type_declaration_no_options '>' $@80 use_initializer "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -22684,7 +22279,7 @@ State 800 State 801 - 733 make_tuple_call: "tuple" '<' $@81 . type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' + 732 make_tuple_call: "tuple" '<' $@81 . type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -22741,19 +22336,19 @@ State 801 State 802 - 290 expr_list: expr_list . ',' expr - 730 make_tuple_call: "tuple" '(' expr_list . optional_comma ')' + 289 expr_list: expr_list . ',' expr + 729 make_tuple_call: "tuple" '(' expr_list . optional_comma ')' ',' shift, and go to state 820 - $default reduce using rule 760 (optional_comma) + $default reduce using rule 759 (optional_comma) optional_comma go to state 994 State 803 - 724 make_struct_decl: "variant" '<' $@77 . type_declaration_no_options '>' $@78 '(' make_struct_dim ')' + 723 make_struct_decl: "variant" '<' $@77 . type_declaration_no_options '>' $@78 '(' make_struct_dim ')' "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -22810,610 +22405,610 @@ State 803 State 804 - 411 expr: "generator" '<' type_declaration_no_options . '>' optional_capture_list '(' ')' - 412 | "generator" '<' type_declaration_no_options . '>' optional_capture_list '(' expr ')' + 410 expr: "generator" '<' type_declaration_no_options . '>' optional_capture_list '(' ')' + 411 | "generator" '<' type_declaration_no_options . '>' optional_capture_list '(' expr ')' '>' shift, and go to state 996 State 805 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 441 expr_mtag: "$$" '(' expr . ')' - 449 | expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 440 expr_mtag: "$$" '(' expr . ')' + 448 | expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ')' shift, and go to state 997 State 806 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 442 expr_mtag: "$i" '(' expr . ')' - 449 | expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 441 expr_mtag: "$i" '(' expr . ')' + 448 | expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ')' shift, and go to state 998 State 807 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 443 expr_mtag: "$v" '(' expr . ')' - 449 | expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 442 expr_mtag: "$v" '(' expr . ')' + 448 | expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ')' shift, and go to state 999 State 808 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 444 expr_mtag: "$b" '(' expr . ')' - 449 | expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 443 expr_mtag: "$b" '(' expr . ')' + 448 | expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ')' shift, and go to state 1000 State 809 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 445 expr_mtag: "$a" '(' expr . ')' - 449 | expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 444 expr_mtag: "$a" '(' expr . ')' + 448 | expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ')' shift, and go to state 1001 State 810 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 447 expr_mtag: "$c" '(' expr . ')' '(' ')' - 448 | "$c" '(' expr . ')' '(' expr_list ')' - 449 | expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 446 expr_mtag: "$c" '(' expr . ')' '(' ')' + 447 | "$c" '(' expr . ')' '(' expr_list ')' + 448 | expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ')' shift, and go to state 1002 @@ -23546,69 +23141,12 @@ State 813 STRING_CHARACTER_ESC [reduce using rule 29 (string_builder_body)] $default reduce using rule 29 (string_builder_body) - shift/reduce conflict on token STRING_CHARACTER: - 29 string_builder_body: string_builder_body character_sequence . - 25 character_sequence: character_sequence . STRING_CHARACTER - First example: program kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation "$i" '(' "start of the string" string_builder_body character_sequence . STRING_CHARACTER "end of the string" ')' ':' type_declaration_no_options "end of expression" $end - Shift derivation - $accept - `-> 0: program $end - `-> 5: program global_let - `-> 524: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration - `-> 511: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" - `-> 507: "$i" '(' expr ')' - `-> 363: string_builder - `-> 31: "start of the string" string_builder_body "end of the string" - `-> 29: string_builder_body character_sequence - `-> 25: character_sequence . STRING_CHARACTER - Second example: program kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation "$i" '(' "start of the string" string_builder_body character_sequence . STRING_CHARACTER "end of the string" ')' ':' type_declaration_no_options "end of expression" $end - Reduce derivation - $accept - `-> 0: program $end - `-> 5: program global_let - `-> 524: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration - `-> 511: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" - `-> 507: "$i" '(' expr ')' - `-> 363: string_builder - `-> 31: "start of the string" string_builder_body "end of the string" - `-> 29: string_builder_body character_sequence - `-> 29: string_builder_body character_sequence . `-> 23: STRING_CHARACTER - - shift/reduce conflict on token STRING_CHARACTER_ESC: - 29 string_builder_body: string_builder_body character_sequence . - 26 character_sequence: character_sequence . STRING_CHARACTER_ESC - First example: program kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation "$i" '(' "start of the string" string_builder_body character_sequence . STRING_CHARACTER_ESC "end of the string" ')' ':' type_declaration_no_options "end of expression" $end - Shift derivation - $accept - `-> 0: program $end - `-> 5: program global_let - `-> 524: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration - `-> 511: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" - `-> 507: "$i" '(' expr ')' - `-> 363: string_builder - `-> 31: "start of the string" string_builder_body "end of the string" - `-> 29: string_builder_body character_sequence - `-> 26: character_sequence . STRING_CHARACTER_ESC - Second example: program kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation "$i" '(' "start of the string" string_builder_body character_sequence . STRING_CHARACTER_ESC "end of the string" ')' ':' type_declaration_no_options "end of expression" $end - Reduce derivation - $accept - `-> 0: program $end - `-> 5: program global_let - `-> 524: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration - `-> 511: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" - `-> 507: "$i" '(' expr ')' - `-> 363: string_builder - `-> 31: "start of the string" string_builder_body "end of the string" - `-> 29: string_builder_body character_sequence - `-> 29: string_builder_body character_sequence . `-> 24: STRING_CHARACTER_ESC - - State 814 - 563 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" - 564 | variable_name_with_pos_list . ',' "name" "aka" "name" - 764 array_comprehension: "begin of code block" "for" variable_name_with_pos_list . "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" + 562 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" + 563 | variable_name_with_pos_list . ',' "name" "aka" "name" + 763 array_comprehension: "begin of code block" "for" variable_name_with_pos_list . "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" "in" shift, and go to state 1004 ',' shift, and go to state 916 @@ -23616,7 +23154,7 @@ State 814 State 815 - 728 make_map_tuple: expr "=>" . expr + 727 make_map_tuple: expr "=>" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -23725,8 +23263,8 @@ State 815 State 816 - 753 expr_map_tuple_list: expr_map_tuple_list ',' . make_map_tuple - 761 optional_comma: ',' . + 752 expr_map_tuple_list: expr_map_tuple_list ',' . make_map_tuple + 760 optional_comma: ',' . "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -23806,7 +23344,7 @@ State 816 '$' shift, and go to state 454 '@' shift, and go to state 455 - $default reduce using rule 761 (optional_comma) + $default reduce using rule 760 (optional_comma) string_builder go to state 456 expr_reader go to state 457 @@ -23824,7 +23362,7 @@ State 816 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 623 + expr go to state 622 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -23838,16 +23376,16 @@ State 816 State 817 - 754 make_table_decl: "begin of code block" expr_map_tuple_list optional_comma . "end of code block" + 753 make_table_decl: "begin of code block" expr_map_tuple_list optional_comma . "end of code block" "end of code block" shift, and go to state 1007 State 818 - 563 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" - 564 | variable_name_with_pos_list . ',' "name" "aka" "name" - 762 array_comprehension: '[' "for" variable_name_with_pos_list . "in" expr_list "end of expression" expr array_comprehension_where ']' + 562 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" + 563 | variable_name_with_pos_list . ',' "name" "aka" "name" + 761 array_comprehension: '[' "for" variable_name_with_pos_list . "in" expr_list "end of expression" expr array_comprehension_where ']' "in" shift, and go to state 1008 ',' shift, and go to state 916 @@ -23855,18 +23393,18 @@ State 818 State 819 - 763 array_comprehension: '[' "iterator" "for" . variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 762 array_comprehension: '[' "iterator" "for" . variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - "$i" shift, and go to state 712 - "name" shift, and go to state 713 + "$i" shift, and go to state 711 + "name" shift, and go to state 712 variable_name_with_pos_list go to state 1009 State 820 - 290 expr_list: expr_list ',' . expr - 761 optional_comma: ',' . + 289 expr_list: expr_list ',' . expr + 760 optional_comma: ',' . "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -23946,7 +23484,7 @@ State 820 '$' shift, and go to state 454 '@' shift, and go to state 455 - $default reduce using rule 761 (optional_comma) + $default reduce using rule 760 (optional_comma) string_builder go to state 456 expr_reader go to state 457 @@ -23977,41 +23515,41 @@ State 820 State 821 - 734 make_dim_decl: '[' expr_list optional_comma . ']' + 733 make_dim_decl: '[' expr_list optional_comma . ']' ']' shift, and go to state 1011 State 822 - 399 expr: '(' expr_list optional_comma . ')' + 398 expr: '(' expr_list optional_comma . ')' ')' shift, and go to state 1012 State 823 - 339 func_addr_name: "$i" . '(' expr ')' + 338 func_addr_name: "$i" . '(' expr ')' '(' shift, and go to state 1013 State 824 - 456 expr_mtag: '@' '@' "$c" . '(' expr ')' + 455 expr_mtag: '@' '@' "$c" . '(' expr ')' '(' shift, and go to state 1014 State 825 - 343 func_addr_expr: '@' '@' '<' . $@13 type_declaration_no_options '>' $@14 func_addr_name - 346 | '@' '@' '<' . $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name + 342 func_addr_expr: '@' '@' '<' . $@13 type_declaration_no_options '>' $@14 func_addr_name + 345 | '@' '@' '<' . $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name - ':' reduce using rule 344 ($@15) - '>' reduce using rule 344 ($@15) - '(' reduce using rule 344 ($@15) - $default reduce using rule 341 ($@13) + ':' reduce using rule 343 ($@15) + '>' reduce using rule 343 ($@15) + '(' reduce using rule 343 ($@15) + $default reduce using rule 340 ($@13) $@13 go to state 1015 $@15 go to state 1016 @@ -24019,22 +23557,22 @@ State 825 State 826 - 338 func_addr_name: name_in_namespace . + 337 func_addr_name: name_in_namespace . - $default reduce using rule 338 (func_addr_name) + $default reduce using rule 337 (func_addr_name) State 827 - 340 func_addr_expr: '@' '@' func_addr_name . + 339 func_addr_expr: '@' '@' func_addr_name . - $default reduce using rule 340 (func_addr_expr) + $default reduce using rule 339 (func_addr_expr) State 828 - 707 make_struct_fields: "$f" . '(' expr ')' copy_or_move expr - 708 | "$f" . '(' expr ')' ":=" expr + 706 make_struct_fields: "$f" . '(' expr ')' copy_or_move expr + 707 | "$f" . '(' expr ')' ":=" expr '(' shift, and go to state 1017 @@ -24043,8 +23581,8 @@ State 829 239 name_in_namespace: "name" . 240 | "name" . "::" "name" - 703 make_struct_fields: "name" . copy_or_move expr - 704 | "name" . ":=" expr + 702 make_struct_fields: "name" . copy_or_move expr + 703 | "name" . ":=" expr "<-" shift, and go to state 915 ":=" shift, and go to state 1018 @@ -24058,14 +23596,14 @@ State 829 State 830 - 334 expr_named_call: name_in_namespace '(' '[' . make_struct_fields ']' ')' - 734 make_dim_decl: '[' . expr_list optional_comma ']' - 762 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - 763 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 333 expr_named_call: name_in_namespace '(' '[' . make_struct_fields ']' ')' + 733 make_dim_decl: '[' . expr_list optional_comma ']' + 761 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 762 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' "struct" shift, and go to state 408 "class" shift, and go to state 409 - "for" shift, and go to state 631 + "for" shift, and go to state 630 "true" shift, and go to state 410 "false" shift, and go to state 411 "new" shift, and go to state 412 @@ -24077,7 +23615,7 @@ State 830 "deref" shift, and go to state 418 "cast" shift, and go to state 419 "upcast" shift, and go to state 420 - "iterator" shift, and go to state 632 + "iterator" shift, and go to state 631 "addr" shift, and go to state 421 "reinterpret" shift, and go to state 422 "fixed_array" shift, and go to state 423 @@ -24152,7 +23690,7 @@ State 830 expr_cast go to state 461 expr_type_decl go to state 462 expr_type_info go to state 463 - expr_list go to state 633 + expr_list go to state 632 block_or_lambda go to state 464 expr_full_block go to state 465 expr_numeric_const go to state 466 @@ -24161,7 +23699,7 @@ State 830 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 634 + expr go to state 633 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -24175,16 +23713,16 @@ State 830 State 831 - 354 expr_call: name_in_namespace '(' ')' . + 353 expr_call: name_in_namespace '(' ')' . - $default reduce using rule 354 (expr_call) + $default reduce using rule 353 (expr_call) State 832 - 290 expr_list: expr_list . ',' expr - 335 expr_named_call: name_in_namespace '(' expr_list . ',' '[' make_struct_fields ']' ')' - 356 expr_call: name_in_namespace '(' expr_list . ')' + 289 expr_list: expr_list . ',' expr + 334 expr_named_call: name_in_namespace '(' expr_list . ',' '[' make_struct_fields ']' ')' + 355 expr_call: name_in_namespace '(' expr_list . ')' ',' shift, and go to state 1021 ')' shift, and go to state 1022 @@ -24192,34 +23730,34 @@ State 832 State 833 - 705 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr - 706 | make_struct_fields . ',' "name" ":=" expr - 709 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr - 710 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr - 711 make_struct_single: make_struct_fields . + 704 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr + 705 | make_struct_fields . ',' "name" ":=" expr + 708 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr + 709 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr + 710 make_struct_single: make_struct_fields . ',' shift, and go to state 1023 - $default reduce using rule 711 (make_struct_single) + $default reduce using rule 710 (make_struct_single) State 834 - 355 expr_call: name_in_namespace '(' make_struct_single . ')' + 354 expr_call: name_in_namespace '(' make_struct_single . ')' ')' shift, and go to state 1024 State 835 - 304 optional_capture_list: '[' . '[' capture_list ']' ']' + 303 optional_capture_list: '[' . '[' capture_list ']' ']' '[' shift, and go to state 1025 State 836 - 305 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list . optional_function_argument_list optional_function_type block_or_simple_block + 304 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list . optional_function_argument_list optional_function_type block_or_simple_block '(' shift, and go to state 321 @@ -24232,7 +23770,7 @@ State 837 233 expressions: expressions . expression_any 234 | expressions . error - 307 expr_full_block_assumed_piped: "begin of code block" expressions . "end of code block" + 306 expr_full_block_assumed_piped: "begin of code block" expressions . "end of code block" error shift, and go to state 527 "struct" shift, and go to state 408 @@ -24333,1568 +23871,1567 @@ State 837 '$' shift, and go to state 454 '@' shift, and go to state 455 - string_builder go to state 456 - expr_reader go to state 457 - expression_label go to state 546 - expression_goto go to state 547 - if_or_static_if go to state 548 - expression_if_one_liner go to state 549 - expression_if_then_else go to state 550 - expression_for_loop go to state 551 - expression_unsafe go to state 552 - expression_while_loop go to state 553 - expression_with go to state 554 - expression_with_alias go to state 555 - expr_call_pipe go to state 458 - expression_any go to state 556 - name_in_namespace go to state 459 - expression_delete go to state 557 - expr_new go to state 460 - expression_break go to state 558 - expression_continue go to state 559 - expression_return go to state 560 - expression_yield_no_pipe go to state 561 - expression_yield go to state 562 - expression_try_catch go to state 563 - kwd_let go to state 564 - expression_let go to state 565 - expr_cast go to state 461 - expr_type_decl go to state 462 - expr_type_info go to state 463 - block_or_lambda go to state 464 - expr_full_block go to state 465 - expr_numeric_const go to state 466 - expr_assign go to state 566 - expr_named_call go to state 467 - expr_method_call go to state 468 - func_addr_expr go to state 469 - expr_field go to state 470 - expr_call go to state 471 - expr go to state 567 - expr_mtag go to state 473 - basic_type_declaration go to state 474 - make_decl go to state 475 - make_struct_decl go to state 476 - make_tuple_call go to state 477 - make_dim_decl go to state 478 - make_table_decl go to state 479 - array_comprehension go to state 480 + string_builder go to state 456 + expr_reader go to state 457 + expression_label go to state 546 + expression_goto go to state 547 + if_or_static_if go to state 548 + expression_if_one_liner go to state 549 + expression_if_then_else go to state 550 + expression_for_loop go to state 551 + expression_unsafe go to state 552 + expression_while_loop go to state 553 + expression_with go to state 554 + expression_with_alias go to state 555 + expr_call_pipe go to state 458 + expression_any go to state 556 + name_in_namespace go to state 459 + expression_delete go to state 557 + expr_new go to state 460 + expression_break go to state 558 + expression_continue go to state 559 + expression_return go to state 560 + expression_yield go to state 561 + expression_try_catch go to state 562 + kwd_let go to state 563 + expression_let go to state 564 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_assign go to state 565 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 566 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 838 - 296 block_or_lambda: '@' '@' . + 295 block_or_lambda: '@' '@' . - $default reduce using rule 296 (block_or_lambda) + $default reduce using rule 295 (block_or_lambda) State 839 - 306 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list . optional_capture_list optional_function_argument_list optional_function_type expression_block + 305 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list . optional_capture_list optional_function_argument_list optional_function_type expression_block '[' shift, and go to state 835 - $default reduce using rule 303 (optional_capture_list) + $default reduce using rule 302 (optional_capture_list) optional_capture_list go to state 1028 State 840 - 417 expr: expr "is" "type" . '<' $@19 type_declaration_no_options '>' $@20 + 416 expr: expr "is" "type" . '<' $@19 type_declaration_no_options '>' $@20 '<' shift, and go to state 1029 State 841 - 455 expr_mtag: expr "is" "$f" . '(' expr ')' + 454 expr_mtag: expr "is" "$f" . '(' expr ')' '(' shift, and go to state 1030 State 842 - 419 expr: expr "is" "name" . + 418 expr: expr "is" "name" . - $default reduce using rule 419 (expr) + $default reduce using rule 418 (expr) State 843 - 418 expr: expr "is" basic_type_declaration . + 417 expr: expr "is" basic_type_declaration . - $default reduce using rule 418 (expr) + $default reduce using rule 417 (expr) State 844 - 423 expr: expr "as" "type" . '<' $@21 type_declaration '>' $@22 + 422 expr: expr "as" "type" . '<' $@21 type_declaration '>' $@22 '<' shift, and go to state 1031 State 845 - 453 expr_mtag: expr "as" "$f" . '(' expr ')' + 452 expr_mtag: expr "as" "$f" . '(' expr ')' '(' shift, and go to state 1032 State 846 - 420 expr: expr "as" "name" . + 419 expr: expr "as" "name" . - $default reduce using rule 420 (expr) + $default reduce using rule 419 (expr) State 847 - 424 expr: expr "as" basic_type_declaration . + 423 expr: expr "as" basic_type_declaration . - $default reduce using rule 424 (expr) + $default reduce using rule 423 (expr) State 848 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 373 | expr "<<" expr . - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 372 | expr "<<" expr . + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 373 (expr) + $default reduce using rule 372 (expr) State 849 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 374 | expr ">>" expr . - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 373 | expr ">>" expr . + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 374 (expr) + $default reduce using rule 373 (expr) State 850 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 386 | expr "<=" expr . - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 385 | expr "<=" expr . + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 386 (expr) + $default reduce using rule 385 (expr) State 851 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 387 | expr ">=" expr . - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 386 | expr ">=" expr . + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 387 (expr) + $default reduce using rule 386 (expr) State 852 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 384 | expr "==" expr . - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 383 | expr "==" expr . + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 384 (expr) + $default reduce using rule 383 (expr) State 853 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 385 | expr "!=" expr . - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 384 | expr "!=" expr . + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 385 (expr) + $default reduce using rule 384 (expr) State 854 - 336 expr_method_call: expr "->" "name" . '(' ')' - 337 | expr "->" "name" . '(' expr_list ')' + 335 expr_method_call: expr "->" "name" . '(' ')' + 336 | expr "->" "name" . '(' expr_list ')' '(' shift, and go to state 1033 State 855 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 413 | expr "??" expr . - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 412 | expr "??" expr . + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 413 (expr) + $default reduce using rule 412 (expr) State 856 - 450 expr_mtag: expr "?." "$f" . '(' expr ')' + 449 expr_mtag: expr "?." "$f" . '(' expr ')' '(' shift, and go to state 1034 State 857 - 404 expr: expr "?." "name" . + 403 expr: expr "?." "name" . - $default reduce using rule 404 (expr) + $default reduce using rule 403 (expr) State 858 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 402 | expr "?[" expr . ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 401 | expr "?[" expr . ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ']' shift, and go to state 1035 State 859 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 437 | expr "<|" expr . - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "->" shift, and go to state 653 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 436 | expr "<|" expr . + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "->" shift, and go to state 652 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 437 (expr) + $default reduce using rule 436 (expr) State 860 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 438 | expr "|>" expr . - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "->" shift, and go to state 653 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 437 | expr "|>" expr . + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "->" shift, and go to state 652 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 438 (expr) + $default reduce using rule 437 (expr) State 861 - 357 expr_call: basic_type_declaration . '(' ')' - 358 | basic_type_declaration . '(' expr_list ')' - 439 expr: expr "|>" basic_type_declaration . + 356 expr_call: basic_type_declaration . '(' ')' + 357 | basic_type_declaration . '(' expr_list ')' + 438 expr: expr "|>" basic_type_declaration . - '(' shift, and go to state 679 + '(' shift, and go to state 678 - $default reduce using rule 439 (expr) + $default reduce using rule 438 (expr) State 862 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 375 | expr "<<<" expr . - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 374 | expr "<<<" expr . + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 375 (expr) + $default reduce using rule 374 (expr) State 863 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 376 | expr ">>>" expr . - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 375 | expr ">>>" expr . + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 376 (expr) + $default reduce using rule 375 (expr) State 864 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 391 | expr "&&" expr . - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 390 | expr "&&" expr . + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 391 (expr) + $default reduce using rule 390 (expr) State 865 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 392 | expr "||" expr . - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "^^" shift, and go to state 663 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 391 | expr "||" expr . + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "^^" shift, and go to state 662 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 392 (expr) + $default reduce using rule 391 (expr) State 866 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 393 | expr "^^" expr . - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 392 | expr "^^" expr . + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 393 (expr) + $default reduce using rule 392 (expr) State 867 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 394 | expr ".." expr . - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 393 | expr ".." expr . + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ".." error (nonassociative) - $default reduce using rule 394 (expr) + $default reduce using rule 393 (expr) State 868 - 425 expr: expr '?' "as" . "name" - 428 | expr '?' "as" . "type" '<' $@23 type_declaration '>' $@24 - 429 | expr '?' "as" . basic_type_declaration - 454 expr_mtag: expr '?' "as" . "$f" '(' expr ')' + 424 expr: expr '?' "as" . "name" + 427 | expr '?' "as" . "type" '<' $@23 type_declaration '>' $@24 + 428 | expr '?' "as" . basic_type_declaration + 453 expr_mtag: expr '?' "as" . "$f" '(' expr ')' "type" shift, and go to state 1036 "bool" shift, and go to state 222 @@ -25932,960 +25469,960 @@ State 868 State 869 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 414 | expr '?' expr . ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 413 | expr '?' expr . ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 ':' shift, and go to state 1040 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 State 870 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 389 | expr '|' expr . - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 388 | expr '|' expr . + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 389 (expr) + $default reduce using rule 388 (expr) State 871 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 390 | expr '^' expr . - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 389 | expr '^' expr . + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 390 (expr) + $default reduce using rule 389 (expr) State 872 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 388 | expr '&' expr . - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 387 | expr '&' expr . + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 388 (expr) + $default reduce using rule 387 (expr) State 873 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 382 | expr '<' expr . - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 381 | expr '<' expr . + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 382 (expr) + $default reduce using rule 381 (expr) State 874 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 383 | expr '>' expr . - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 382 | expr '>' expr . + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 383 (expr) + $default reduce using rule 382 (expr) State 875 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 378 | expr '-' expr . - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 377 | expr '-' expr . + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 378 (expr) + $default reduce using rule 377 (expr) State 876 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 377 | expr '+' expr . - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 376 | expr '+' expr . + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 377 (expr) + $default reduce using rule 376 (expr) State 877 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 379 | expr '*' expr . - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 378 | expr '*' expr . + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 379 (expr) + $default reduce using rule 378 (expr) State 878 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 380 | expr '/' expr . - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 379 | expr '/' expr . + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 380 (expr) + $default reduce using rule 379 (expr) State 879 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 381 | expr '%' expr . - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 380 | expr '%' expr . + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 381 (expr) + $default reduce using rule 380 (expr) State 880 - 405 expr: expr '.' "?." . "name" - 452 expr_mtag: expr '.' "?." . "$f" '(' expr ')' + 404 expr: expr '.' "?." . "name" + 451 expr_mtag: expr '.' "?." . "$f" '(' expr ')' "$f" shift, and go to state 1041 "name" shift, and go to state 1042 @@ -26893,7 +26430,7 @@ State 880 State 881 - 403 expr: expr '.' "?[" . expr ']' + 402 expr: expr '.' "?[" . expr ']' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -27002,90 +26539,26 @@ State 881 State 882 - 449 expr_mtag: expr '.' "$f" . '(' expr ')' + 448 expr_mtag: expr '.' "$f" . '(' expr ')' '(' shift, and go to state 1044 State 883 - 347 expr_field: expr '.' "name" . - 349 | expr '.' "name" . '(' ')' - 350 | expr '.' "name" . '(' expr_list ')' + 346 expr_field: expr '.' "name" . + 348 | expr '.' "name" . '(' ')' + 349 | expr '.' "name" . '(' expr_list ')' '(' shift, and go to state 1045 - '(' [reduce using rule 347 (expr_field)] - $default reduce using rule 347 (expr_field) - - shift/reduce conflict on token '(': - 347 expr_field: expr '.' "name" . - 349 expr_field: expr '.' "name" . '(' ')' - First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' expr '.' "name" . '(' ')' expression_any "end of code block" $end - Shift derivation - $accept - `-> 0: program $end - `-> 6: program global_function_declaration - `-> 204: optional_annotation_list "def" function_declaration - `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block - `-> 211: "begin of code block" expressions "end of code block" - `-> 233: expressions expression_any - `-> 233: expressions expression_with_alias - `-> 74: "assume" "name" '=' expr - `-> 367: expr_field - `-> 349: expr '.' "name" . '(' ')' - Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' expr '.' "name" . '(' expr_list optional_comma ')' "end of expression" "end of code block" $end - Reduce derivation - $accept - `-> 0: program $end - `-> 6: program global_function_declaration - `-> 204: optional_annotation_list "def" function_declaration - `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block - `-> 211: "begin of code block" expressions "end of code block" - `-> 233: expressions expression_any - `-> 233: expressions expression_any `-> 215: expr_assign "end of expression" - `-> 221: expression_with_alias `-> 315: expr - `-> 74: "assume" "name" '=' expr `-> 399: '(' expr_list optional_comma ')' - `-> 367: expr_field - `-> 347: expr '.' "name" . - - shift/reduce conflict on token '(': - 347 expr_field: expr '.' "name" . - 350 expr_field: expr '.' "name" . '(' expr_list ')' - First example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' expr '.' "name" . '(' expr_list ')' expression_any "end of code block" $end - Shift derivation - $accept - `-> 0: program $end - `-> 6: program global_function_declaration - `-> 204: optional_annotation_list "def" function_declaration - `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block - `-> 211: "begin of code block" expressions "end of code block" - `-> 233: expressions expression_any - `-> 233: expressions expression_with_alias - `-> 74: "assume" "name" '=' expr - `-> 367: expr_field - `-> 350: expr '.' "name" . '(' expr_list ')' - Second example: program optional_annotation_list "def" optional_public_or_private_function $@2 function_declaration_header "begin of code block" expressions "assume" "name" '=' expr '.' "name" . '(' expr_list optional_comma ')' "end of expression" "end of code block" $end - Reduce derivation - $accept - `-> 0: program $end - `-> 6: program global_function_declaration - `-> 204: optional_annotation_list "def" function_declaration - `-> 210: optional_public_or_private_function $@2 function_declaration_header expression_block - `-> 211: "begin of code block" expressions "end of code block" - `-> 233: expressions expression_any - `-> 233: expressions expression_any `-> 215: expr_assign "end of expression" - `-> 221: expression_with_alias `-> 315: expr - `-> 74: "assume" "name" '=' expr `-> 399: '(' expr_list optional_comma ')' - `-> 367: expr_field - `-> 347: expr '.' "name" . - + $default reduce using rule 346 (expr_field) State 884 - 348 expr_field: expr '.' '.' . "name" - 451 expr_mtag: expr '.' '.' . "$f" '(' expr ')' + 347 expr_field: expr '.' '.' . "name" + 450 expr_mtag: expr '.' '.' . "$f" '(' expr ')' "$f" shift, and go to state 1046 "name" shift, and go to state 1047 @@ -27093,7 +26566,7 @@ State 884 State 885 - 401 expr: expr '.' '[' . expr ']' + 400 expr: expr '.' '[' . expr ']' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -27202,122 +26675,122 @@ State 885 State 886 - 353 expr_field: expr '.' $@17 . error $@18 + 352 expr_field: expr '.' $@17 . error $@18 error shift, and go to state 1049 State 887 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 400 | expr '[' expr . ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 399 | expr '[' expr . ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ']' shift, and go to state 1050 State 888 - 357 expr_call: basic_type_declaration '(' ')' . + 356 expr_call: basic_type_declaration '(' ')' . - $default reduce using rule 357 (expr_call) + $default reduce using rule 356 (expr_call) State 889 - 290 expr_list: expr_list . ',' expr - 358 expr_call: basic_type_declaration '(' expr_list . ')' + 289 expr_list: expr_list . ',' expr + 357 expr_call: basic_type_declaration '(' expr_list . ')' ',' shift, and go to state 907 ')' shift, and go to state 1051 @@ -27325,89 +26798,89 @@ State 889 State 890 - 655 type_declaration_no_options_no_dim: "iterator" '<' $@46 type_declaration '>' . $@47 + 654 type_declaration_no_options_no_dim: "iterator" '<' $@46 type_declaration '>' . $@47 - $default reduce using rule 654 ($@47) + $default reduce using rule 653 ($@47) $@47 go to state 1052 State 891 - 645 type_declaration_no_options_no_dim: "smart_ptr" '<' $@40 type_declaration '>' . $@41 + 644 type_declaration_no_options_no_dim: "smart_ptr" '<' $@40 type_declaration '>' . $@41 - $default reduce using rule 644 ($@41) + $default reduce using rule 643 ($@41) $@41 go to state 1053 State 892 - 605 bitfield_bits: bitfield_bits "end of expression" . "name" + 604 bitfield_bits: bitfield_bits "end of expression" . "name" "name" shift, and go to state 1054 State 893 - 611 bitfield_type_declaration: "bitfield" '<' $@35 bitfield_bits '>' . $@36 + 610 bitfield_type_declaration: "bitfield" '<' $@35 bitfield_bits '>' . $@36 - $default reduce using rule 610 ($@36) + $default reduce using rule 609 ($@36) $@36 go to state 1055 State 894 - 659 type_declaration_no_options_no_dim: "block" '<' $@48 type_declaration '>' . $@49 + 658 type_declaration_no_options_no_dim: "block" '<' $@48 type_declaration '>' . $@49 - $default reduce using rule 658 ($@49) + $default reduce using rule 657 ($@49) $@49 go to state 1056 State 895 - 662 type_declaration_no_options_no_dim: "block" '<' $@50 optional_function_argument_list optional_function_type . '>' $@51 + 661 type_declaration_no_options_no_dim: "block" '<' $@50 optional_function_argument_list optional_function_type . '>' $@51 '>' shift, and go to state 1057 State 896 - 666 type_declaration_no_options_no_dim: "function" '<' $@52 type_declaration '>' . $@53 + 665 type_declaration_no_options_no_dim: "function" '<' $@52 type_declaration '>' . $@53 - $default reduce using rule 665 ($@53) + $default reduce using rule 664 ($@53) $@53 go to state 1058 State 897 - 669 type_declaration_no_options_no_dim: "function" '<' $@54 optional_function_argument_list optional_function_type . '>' $@55 + 668 type_declaration_no_options_no_dim: "function" '<' $@54 optional_function_argument_list optional_function_type . '>' $@55 '>' shift, and go to state 1059 State 898 - 673 type_declaration_no_options_no_dim: "lambda" '<' $@56 type_declaration '>' . $@57 + 672 type_declaration_no_options_no_dim: "lambda" '<' $@56 type_declaration '>' . $@57 - $default reduce using rule 672 ($@57) + $default reduce using rule 671 ($@57) $@57 go to state 1060 State 899 - 676 type_declaration_no_options_no_dim: "lambda" '<' $@58 optional_function_argument_list optional_function_type . '>' $@59 + 675 type_declaration_no_options_no_dim: "lambda" '<' $@58 optional_function_argument_list optional_function_type . '>' $@59 '>' shift, and go to state 1061 State 900 - 484 tuple_type_list: tuple_type_list "end of expression" . tuple_type + 483 tuple_type_list: tuple_type_list "end of expression" . tuple_type "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -27466,16 +26939,16 @@ State 900 State 901 - 679 type_declaration_no_options_no_dim: "tuple" '<' $@60 tuple_type_list '>' . $@61 + 678 type_declaration_no_options_no_dim: "tuple" '<' $@60 tuple_type_list '>' . $@61 - $default reduce using rule 678 ($@61) + $default reduce using rule 677 ($@61) $@61 go to state 1063 State 902 - 490 variant_type_list: variant_type_list "end of expression" . variant_type + 489 variant_type_list: variant_type_list "end of expression" . variant_type "name" shift, and go to state 514 @@ -27484,9 +26957,9 @@ State 902 State 903 - 682 type_declaration_no_options_no_dim: "variant" '<' $@62 variant_type_list '>' . $@63 + 681 type_declaration_no_options_no_dim: "variant" '<' $@62 variant_type_list '>' . $@63 - $default reduce using rule 681 ($@63) + $default reduce using rule 680 ($@63) $@63 go to state 1065 @@ -27494,7 +26967,7 @@ State 903 State 904 238 type_declaration_no_options_list: type_declaration_no_options_list . "end of expression" type_declaration - 630 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list . '>' '(' optional_expr_list ')' + 629 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list . '>' '(' optional_expr_list ')' "end of expression" shift, and go to state 1066 '>' shift, and go to state 1067 @@ -27503,8 +26976,8 @@ State 904 State 905 237 type_declaration_no_options_list: type_declaration . - 684 type_declaration: type_declaration . '|' type_declaration_no_options - 685 | type_declaration . '|' '#' + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' '|' shift, and go to state 372 @@ -27513,14 +26986,14 @@ State 905 State 906 - 628 type_declaration_no_options_no_dim: '$' name_in_namespace '(' optional_expr_list ')' . + 627 type_declaration_no_options_no_dim: '$' name_in_namespace '(' optional_expr_list ')' . - $default reduce using rule 628 (type_declaration_no_options_no_dim) + $default reduce using rule 627 (type_declaration_no_options_no_dim) State 907 - 290 expr_list: expr_list ',' . expr + 289 expr_list: expr_list ',' . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -27629,50 +27102,50 @@ State 907 State 908 - 616 dim_list: dim_list '[' expr ']' . + 615 dim_list: dim_list '[' expr ']' . - $default reduce using rule 616 (dim_list) + $default reduce using rule 615 (dim_list) State 909 - 697 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" . + 696 bitfield_alias_declaration: "bitfield" optional_public_or_private_alias "name" $@70 "begin of code block" $@71 bitfield_alias_bits optional_comma $@72 "end of code block" . - $default reduce using rule 697 (bitfield_alias_declaration) + $default reduce using rule 696 (bitfield_alias_declaration) State 910 - 482 tuple_type: "name" ':' type_declaration . - 684 type_declaration: type_declaration . '|' type_declaration_no_options - 685 | type_declaration . '|' '#' + 481 tuple_type: "name" ':' type_declaration . + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' '|' shift, and go to state 372 - $default reduce using rule 482 (tuple_type) + $default reduce using rule 481 (tuple_type) State 911 - 488 variant_type: "name" ':' type_declaration . - 684 type_declaration: type_declaration . '|' type_declaration_no_options - 685 | type_declaration . '|' '#' + 487 variant_type: "name" ':' type_declaration . + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' '|' shift, and go to state 372 - $default reduce using rule 488 (variant_type) + $default reduce using rule 487 (variant_type) State 912 - 478 function_argument_declaration: "$a" '(' expr ')' . + 477 function_argument_declaration: "$a" '(' expr ')' . - $default reduce using rule 478 (function_argument_declaration) + $default reduce using rule 477 (function_argument_declaration) State 913 - 561 variable_name_with_pos_list: "$i" '(' . expr ')' + 560 variable_name_with_pos_list: "$i" '(' . expr ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -27781,37 +27254,37 @@ State 913 State 914 - 562 variable_name_with_pos_list: "name" "aka" . "name" + 561 variable_name_with_pos_list: "name" "aka" . "name" "name" shift, and go to state 1069 State 915 - 495 copy_or_move: "<-" . + 494 copy_or_move: "<-" . - $default reduce using rule 495 (copy_or_move) + $default reduce using rule 494 (copy_or_move) State 916 - 563 variable_name_with_pos_list: variable_name_with_pos_list ',' . "name" - 564 | variable_name_with_pos_list ',' . "name" "aka" "name" + 562 variable_name_with_pos_list: variable_name_with_pos_list ',' . "name" + 563 | variable_name_with_pos_list ',' . "name" "aka" "name" "name" shift, and go to state 1070 State 917 - 494 copy_or_move: '=' . + 493 copy_or_move: '=' . - $default reduce using rule 494 (copy_or_move) + $default reduce using rule 493 (copy_or_move) State 918 - 498 variable_declaration: variable_name_with_pos_list ':' . type_declaration - 499 | variable_name_with_pos_list ':' . type_declaration copy_or_move expr + 497 variable_declaration: variable_name_with_pos_list ':' . type_declaration + 498 | variable_name_with_pos_list ':' . type_declaration copy_or_move expr "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -27869,14 +27342,14 @@ State 918 State 919 - 497 variable_declaration: variable_name_with_pos_list '&' . + 496 variable_declaration: variable_name_with_pos_list '&' . - $default reduce using rule 497 (variable_declaration) + $default reduce using rule 496 (variable_declaration) State 920 - 500 variable_declaration: variable_name_with_pos_list copy_or_move . expr + 499 variable_declaration: variable_name_with_pos_list copy_or_move . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -27993,8 +27466,8 @@ State 921 State 922 70 expression_for_loop: "for" '(' variable_name_with_pos_list . "in" expr_list ')' expression_block - 563 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" - 564 | variable_name_with_pos_list . ',' "name" "aka" "name" + 562 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" + 563 | variable_name_with_pos_list . ',' "name" "aka" "name" "in" shift, and go to state 1073 ',' shift, and go to state 916 @@ -28003,107 +27476,107 @@ State 922 State 923 256 expression_return: "return" "<-" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 $default reduce using rule 256 (expression_return) State 924 - 260 expression_try_catch: "try" expression_block "recover" . expression_block + 259 expression_try_catch: "try" expression_block "recover" . expression_block "begin of code block" shift, and go to state 323 @@ -28113,100 +27586,100 @@ State 924 State 925 243 expression_delete: "delete" "explicit" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 $default reduce using rule 243 (expression_delete) @@ -28343,103 +27816,103 @@ State 929 State 930 - 258 expression_yield_no_pipe: "yield" "<-" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 - - $default reduce using rule 258 (expression_yield_no_pipe) + 258 expression_yield: "yield" "<-" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 + + $default reduce using rule 258 (expression_yield) State 931 @@ -28454,100 +27927,100 @@ State 931 State 932 68 expression_if_then_else: if_or_static_if '(' expr . ')' expression_block expression_else - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ')' shift, and go to state 1077 @@ -28662,8 +28135,8 @@ State 933 State 934 - 270 tuple_expansion_variable_declaration: '(' . tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 271 | '(' . tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" + 269 tuple_expansion_variable_declaration: '(' . tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 270 | '(' . tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" "name" shift, and go to state 1079 @@ -28672,2138 +28145,2138 @@ State 934 State 935 - 273 expression_let: kwd_let optional_in_scope tuple_expansion_variable_declaration . + 272 expression_let: kwd_let optional_in_scope tuple_expansion_variable_declaration . - $default reduce using rule 273 (expression_let) + $default reduce using rule 272 (expression_let) State 936 - 272 expression_let: kwd_let optional_in_scope let_variable_declaration . + 271 expression_let: kwd_let optional_in_scope let_variable_declaration . - $default reduce using rule 272 (expression_let) + $default reduce using rule 271 (expression_let) State 937 - 325 expr_assign: expr "+=" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 324 expr_assign: expr "+=" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 325 (expr_assign) + $default reduce using rule 324 (expr_assign) State 938 - 326 expr_assign: expr "-=" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 325 expr_assign: expr "-=" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 326 (expr_assign) + $default reduce using rule 325 (expr_assign) State 939 - 328 expr_assign: expr "/=" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 327 expr_assign: expr "/=" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 328 (expr_assign) + $default reduce using rule 327 (expr_assign) State 940 - 327 expr_assign: expr "*=" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 326 expr_assign: expr "*=" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 327 (expr_assign) + $default reduce using rule 326 (expr_assign) State 941 - 329 expr_assign: expr "%=" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 328 expr_assign: expr "%=" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 329 (expr_assign) + $default reduce using rule 328 (expr_assign) State 942 - 319 expr_assign: expr "&=" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 318 expr_assign: expr "&=" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 319 (expr_assign) + $default reduce using rule 318 (expr_assign) State 943 - 320 expr_assign: expr "|=" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 319 expr_assign: expr "|=" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 320 (expr_assign) + $default reduce using rule 319 (expr_assign) State 944 - 321 expr_assign: expr "^=" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 320 expr_assign: expr "^=" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 321 (expr_assign) + $default reduce using rule 320 (expr_assign) State 945 - 330 expr_assign: expr "<<=" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 329 expr_assign: expr "<<=" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 330 (expr_assign) + $default reduce using rule 329 (expr_assign) State 946 - 331 expr_assign: expr ">>=" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 330 expr_assign: expr ">>=" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 331 (expr_assign) + $default reduce using rule 330 (expr_assign) State 947 - 317 expr_assign: expr "<-" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 316 expr_assign: expr "<-" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 317 (expr_assign) + $default reduce using rule 316 (expr_assign) State 948 - 318 expr_assign: expr ":=" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 317 expr_assign: expr ":=" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 318 (expr_assign) + $default reduce using rule 317 (expr_assign) State 949 - 332 expr_assign: expr "<<<=" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 331 expr_assign: expr "<<<=" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 332 (expr_assign) + $default reduce using rule 331 (expr_assign) State 950 - 333 expr_assign: expr ">>>=" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 - - $default reduce using rule 333 (expr_assign) + 332 expr_assign: expr ">>>=" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 + + $default reduce using rule 332 (expr_assign) State 951 - 322 expr_assign: expr "&&=" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 321 expr_assign: expr "&&=" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 322 (expr_assign) + $default reduce using rule 321 (expr_assign) State 952 - 323 expr_assign: expr "||=" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 322 expr_assign: expr "||=" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 323 (expr_assign) + $default reduce using rule 322 (expr_assign) State 953 - 324 expr_assign: expr "^^=" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 323 expr_assign: expr "^^=" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 324 (expr_assign) + $default reduce using rule 323 (expr_assign) State 954 - 316 expr_assign: expr '=' expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 - - $default reduce using rule 316 (expr_assign) + 315 expr_assign: expr '=' expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 + + $default reduce using rule 315 (expr_assign) State 955 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 526 enum_expression: "name" '=' expr . - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 - - $default reduce using rule 526 (enum_expression) + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 525 enum_expression: "name" '=' expr . + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 + + $default reduce using rule 525 (enum_expression) State 956 - 529 enum_list: enum_list ',' enum_expression . + 528 enum_list: enum_list ',' enum_expression . - $default reduce using rule 529 (enum_list) + $default reduce using rule 528 (enum_list) State 957 - 544 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 . "end of code block" + 543 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 . "end of code block" "end of code block" shift, and go to state 1081 State 958 - 474 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" . optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" - 476 | struct_variable_declaration_list optional_annotation_list "def" . optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block + 473 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" . optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" + 475 | struct_variable_declaration_list optional_annotation_list "def" . optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block "public" shift, and go to state 1082 "private" shift, and go to state 1083 - $default reduce using rule 464 (optional_public_or_private_member_variable) + $default reduce using rule 463 (optional_public_or_private_member_variable) optional_public_or_private_member_variable go to state 1084 State 959 - 469 structure_variable_declaration: optional_field_annotation . optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration + 468 structure_variable_declaration: optional_field_annotation . optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration "static" shift, and go to state 1085 - $default reduce using rule 467 (optional_static_member_variable) + $default reduce using rule 466 (optional_static_member_variable) optional_static_member_variable go to state 1086 State 960 - 472 struct_variable_declaration_list: struct_variable_declaration_list $@25 structure_variable_declaration . "end of expression" + 471 struct_variable_declaration_list: struct_variable_declaration_list $@25 structure_variable_declaration . "end of expression" "end of expression" shift, and go to state 1087 State 961 - 510 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" "aka" "name" . + 509 let_variable_name_with_pos_list: let_variable_name_with_pos_list ',' "name" "aka" "name" . - $default reduce using rule 510 (let_variable_name_with_pos_list) + $default reduce using rule 509 (let_variable_name_with_pos_list) State 962 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 512 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr . "end of expression" - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 511 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr . "end of expression" + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 "end of expression" shift, and go to state 1088 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 State 963 - 513 let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr "end of expression" . + 512 let_variable_declaration: let_variable_name_with_pos_list optional_ref copy_or_move_or_clone expr "end of expression" . - $default reduce using rule 513 (let_variable_declaration) + $default reduce using rule 512 (let_variable_declaration) State 964 - 626 type_declaration_no_options_no_dim: "type" '<' $@37 type_declaration '>' $@38 . + 625 type_declaration_no_options_no_dim: "type" '<' $@37 type_declaration '>' $@38 . - $default reduce using rule 626 (type_declaration_no_options_no_dim) + $default reduce using rule 625 (type_declaration_no_options_no_dim) State 965 - 649 type_declaration_no_options_no_dim: "array" '<' $@42 type_declaration '>' $@43 . + 648 type_declaration_no_options_no_dim: "array" '<' $@42 type_declaration '>' $@43 . - $default reduce using rule 649 (type_declaration_no_options_no_dim) + $default reduce using rule 648 (type_declaration_no_options_no_dim) State 966 - 652 type_declaration_no_options_no_dim: "table" '<' $@44 table_type_pair '>' $@45 . + 651 type_declaration_no_options_no_dim: "table" '<' $@44 table_type_pair '>' $@45 . - $default reduce using rule 652 (type_declaration_no_options_no_dim) + $default reduce using rule 651 (type_declaration_no_options_no_dim) State 967 - 613 table_type_pair: type_declaration "end of expression" type_declaration . - 684 type_declaration: type_declaration . '|' type_declaration_no_options - 685 | type_declaration . '|' '#' + 612 table_type_pair: type_declaration "end of expression" type_declaration . + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' '|' shift, and go to state 372 - $default reduce using rule 613 (table_type_pair) + $default reduce using rule 612 (table_type_pair) State 968 - 718 make_struct_decl: "struct" '<' $@73 type_declaration_no_options . '>' $@74 '(' use_initializer make_struct_dim ')' + 717 make_struct_decl: "struct" '<' $@73 type_declaration_no_options . '>' $@74 '(' use_initializer make_struct_dim ')' '>' shift, and go to state 1089 State 969 - 721 make_struct_decl: "class" '<' $@75 type_declaration_no_options . '>' $@76 '(' use_initializer make_struct_dim ')' + 720 make_struct_decl: "class" '<' $@75 type_declaration_no_options . '>' $@76 '(' use_initializer make_struct_dim ')' '>' shift, and go to state 1090 @@ -30811,8 +30284,8 @@ State 969 State 970 246 new_type_declaration: '<' $@3 type_declaration . '>' $@4 - 684 type_declaration: type_declaration . '|' type_declaration_no_options - 685 | type_declaration . '|' '#' + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' '|' shift, and go to state 372 '>' shift, and go to state 1091 @@ -30820,9 +30293,9 @@ State 970 State 971 - 715 use_initializer: "uninitialized" . + 714 use_initializer: "uninitialized" . - $default reduce using rule 715 (use_initializer) + $default reduce using rule 714 (use_initializer) State 972 @@ -30847,117 +30320,117 @@ State 973 State 974 - 287 expr_type_info: "typeinfo" '(' name_in_namespace '<' . "name" '>' expr ')' - 288 | "typeinfo" '(' name_in_namespace '<' . "name" "end of expression" "name" '>' expr ')' + 286 expr_type_info: "typeinfo" '(' name_in_namespace '<' . "name" '>' expr ')' + 287 | "typeinfo" '(' name_in_namespace '<' . "name" "end of expression" "name" '>' expr ')' "name" shift, and go to state 1096 State 975 - 286 expr_type_info: "typeinfo" '(' name_in_namespace expr . ')' - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 285 expr_type_info: "typeinfo" '(' name_in_namespace expr . ')' + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ')' shift, and go to state 1097 State 976 - 285 expr_type_decl: "type" '<' $@11 type_declaration . '>' $@12 - 684 type_declaration: type_declaration . '|' type_declaration_no_options - 685 | type_declaration . '|' '#' + 284 expr_type_decl: "type" '<' $@11 type_declaration . '>' $@12 + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' '|' shift, and go to state 372 '>' shift, and go to state 1098 @@ -30965,7 +30438,7 @@ State 976 State 977 - 737 make_dim_decl: "array" "struct" '<' $@83 . type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' + 736 make_dim_decl: "array" "struct" '<' $@83 . type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -31022,7 +30495,7 @@ State 977 State 978 - 740 make_dim_decl: "array" "tuple" '<' $@85 . type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' + 739 make_dim_decl: "array" "tuple" '<' $@85 . type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -31079,7 +30552,7 @@ State 978 State 979 - 743 make_dim_decl: "array" "variant" '<' $@87 . type_declaration_no_options '>' $@88 '(' make_struct_dim ')' + 742 make_dim_decl: "array" "variant" '<' $@87 . type_declaration_no_options '>' $@88 '(' make_struct_dim ')' "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -31136,21 +30609,21 @@ State 979 State 980 - 747 make_dim_decl: "array" '<' $@89 type_declaration_no_options . '>' $@90 '(' expr_list optional_comma ')' + 746 make_dim_decl: "array" '<' $@89 type_declaration_no_options . '>' $@90 '(' expr_list optional_comma ')' '>' shift, and go to state 1102 State 981 - 744 make_dim_decl: "array" '(' expr_list optional_comma . ')' + 743 make_dim_decl: "array" '(' expr_list optional_comma . ')' ')' shift, and go to state 1103 State 982 - 757 make_table_decl: "table" '<' type_declaration_no_options "end of expression" . type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' + 756 make_table_decl: "table" '<' type_declaration_no_options "end of expression" . type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -31207,146 +30680,146 @@ State 982 State 983 - 756 make_table_decl: "table" '<' type_declaration_no_options '>' . '(' expr_map_tuple_list optional_comma ')' + 755 make_table_decl: "table" '<' type_declaration_no_options '>' . '(' expr_map_tuple_list optional_comma ')' '(' shift, and go to state 1105 State 984 - 755 make_table_decl: "table" '(' expr_map_tuple_list optional_comma . ')' + 754 make_table_decl: "table" '(' expr_map_tuple_list optional_comma . ')' ')' shift, and go to state 1106 State 985 - 409 expr: "deref" '(' expr ')' . + 408 expr: "deref" '(' expr ')' . - $default reduce using rule 409 (expr) + $default reduce using rule 408 (expr) State 986 - 276 expr_cast: "cast" '<' $@5 type_declaration_no_options . '>' $@6 expr + 275 expr_cast: "cast" '<' $@5 type_declaration_no_options . '>' $@6 expr '>' shift, and go to state 1107 State 987 - 279 expr_cast: "upcast" '<' $@7 type_declaration_no_options . '>' $@8 expr + 278 expr_cast: "upcast" '<' $@7 type_declaration_no_options . '>' $@8 expr '>' shift, and go to state 1108 State 988 - 410 expr: "addr" '(' expr ')' . + 409 expr: "addr" '(' expr ')' . - $default reduce using rule 410 (expr) + $default reduce using rule 409 (expr) State 989 - 282 expr_cast: "reinterpret" '<' $@9 type_declaration_no_options . '>' $@10 expr + 281 expr_cast: "reinterpret" '<' $@9 type_declaration_no_options . '>' $@10 expr '>' shift, and go to state 1109 State 990 - 751 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options . '>' $@92 '(' expr_list optional_comma ')' + 750 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options . '>' $@92 '(' expr_list optional_comma ')' '>' shift, and go to state 1110 State 991 - 748 make_dim_decl: "fixed_array" '(' expr_list optional_comma . ')' + 747 make_dim_decl: "fixed_array" '(' expr_list optional_comma . ')' ')' shift, and go to state 1111 State 992 - 727 make_struct_decl: "default" '<' $@79 type_declaration_no_options . '>' $@80 use_initializer + 726 make_struct_decl: "default" '<' $@79 type_declaration_no_options . '>' $@80 use_initializer '>' shift, and go to state 1112 State 993 - 733 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options . '>' $@82 '(' use_initializer make_struct_dim ')' + 732 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options . '>' $@82 '(' use_initializer make_struct_dim ')' '>' shift, and go to state 1113 State 994 - 730 make_tuple_call: "tuple" '(' expr_list optional_comma . ')' + 729 make_tuple_call: "tuple" '(' expr_list optional_comma . ')' ')' shift, and go to state 1114 State 995 - 724 make_struct_decl: "variant" '<' $@77 type_declaration_no_options . '>' $@78 '(' make_struct_dim ')' + 723 make_struct_decl: "variant" '<' $@77 type_declaration_no_options . '>' $@78 '(' make_struct_dim ')' '>' shift, and go to state 1115 State 996 - 411 expr: "generator" '<' type_declaration_no_options '>' . optional_capture_list '(' ')' - 412 | "generator" '<' type_declaration_no_options '>' . optional_capture_list '(' expr ')' + 410 expr: "generator" '<' type_declaration_no_options '>' . optional_capture_list '(' ')' + 411 | "generator" '<' type_declaration_no_options '>' . optional_capture_list '(' expr ')' '[' shift, and go to state 835 - $default reduce using rule 303 (optional_capture_list) + $default reduce using rule 302 (optional_capture_list) optional_capture_list go to state 1116 State 997 - 441 expr_mtag: "$$" '(' expr ')' . + 440 expr_mtag: "$$" '(' expr ')' . - $default reduce using rule 441 (expr_mtag) + $default reduce using rule 440 (expr_mtag) State 998 - 442 expr_mtag: "$i" '(' expr ')' . + 441 expr_mtag: "$i" '(' expr ')' . - $default reduce using rule 442 (expr_mtag) + $default reduce using rule 441 (expr_mtag) State 999 - 443 expr_mtag: "$v" '(' expr ')' . + 442 expr_mtag: "$v" '(' expr ')' . - $default reduce using rule 443 (expr_mtag) + $default reduce using rule 442 (expr_mtag) State 1000 - 444 expr_mtag: "$b" '(' expr ')' . + 443 expr_mtag: "$b" '(' expr ')' . - $default reduce using rule 444 (expr_mtag) + $default reduce using rule 443 (expr_mtag) State 1001 - 445 expr_mtag: "$a" '(' expr ')' . + 444 expr_mtag: "$a" '(' expr ')' . - $default reduce using rule 445 (expr_mtag) + $default reduce using rule 444 (expr_mtag) State 1002 - 447 expr_mtag: "$c" '(' expr ')' . '(' ')' - 448 | "$c" '(' expr ')' . '(' expr_list ')' + 446 expr_mtag: "$c" '(' expr ')' . '(' ')' + 447 | "$c" '(' expr ')' . '(' expr_list ')' '(' shift, and go to state 1117 @@ -31354,106 +30827,106 @@ State 1002 State 1003 30 string_builder_body: string_builder_body "{" expr . "}" - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 "}" shift, and go to state 1118 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 State 1004 - 764 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" . expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" + 763 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" . expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -31550,7 +31023,7 @@ State 1004 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 634 + expr go to state 633 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -31563,122 +31036,122 @@ State 1004 State 1005 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 728 make_map_tuple: expr "=>" expr . - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 - - $default reduce using rule 728 (make_map_tuple) + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 727 make_map_tuple: expr "=>" expr . + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 + + $default reduce using rule 727 (make_map_tuple) State 1006 - 753 expr_map_tuple_list: expr_map_tuple_list ',' make_map_tuple . + 752 expr_map_tuple_list: expr_map_tuple_list ',' make_map_tuple . - $default reduce using rule 753 (expr_map_tuple_list) + $default reduce using rule 752 (expr_map_tuple_list) State 1007 - 754 make_table_decl: "begin of code block" expr_map_tuple_list optional_comma "end of code block" . + 753 make_table_decl: "begin of code block" expr_map_tuple_list optional_comma "end of code block" . - $default reduce using rule 754 (make_table_decl) + $default reduce using rule 753 (make_table_decl) State 1008 - 762 array_comprehension: '[' "for" variable_name_with_pos_list "in" . expr_list "end of expression" expr array_comprehension_where ']' + 761 array_comprehension: '[' "for" variable_name_with_pos_list "in" . expr_list "end of expression" expr array_comprehension_where ']' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -31775,7 +31248,7 @@ State 1008 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 634 + expr go to state 633 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -31788,9 +31261,9 @@ State 1008 State 1009 - 563 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" - 564 | variable_name_with_pos_list . ',' "name" "aka" "name" - 763 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list . "in" expr_list "end of expression" expr array_comprehension_where ']' + 562 variable_name_with_pos_list: variable_name_with_pos_list . ',' "name" + 563 | variable_name_with_pos_list . ',' "name" "aka" "name" + 762 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list . "in" expr_list "end of expression" expr array_comprehension_where ']' "in" shift, and go to state 1121 ',' shift, and go to state 916 @@ -31798,122 +31271,122 @@ State 1009 State 1010 - 290 expr_list: expr_list ',' expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 - - $default reduce using rule 290 (expr_list) + 289 expr_list: expr_list ',' expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 + + $default reduce using rule 289 (expr_list) State 1011 - 734 make_dim_decl: '[' expr_list optional_comma ']' . + 733 make_dim_decl: '[' expr_list optional_comma ']' . - $default reduce using rule 734 (make_dim_decl) + $default reduce using rule 733 (make_dim_decl) State 1012 - 399 expr: '(' expr_list optional_comma ')' . + 398 expr: '(' expr_list optional_comma ')' . - $default reduce using rule 399 (expr) + $default reduce using rule 398 (expr) State 1013 - 339 func_addr_name: "$i" '(' . expr ')' + 338 func_addr_name: "$i" '(' . expr ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -32022,7 +31495,7 @@ State 1013 State 1014 - 456 expr_mtag: '@' '@' "$c" '(' . expr ')' + 455 expr_mtag: '@' '@' "$c" '(' . expr ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -32131,7 +31604,7 @@ State 1014 State 1015 - 343 func_addr_expr: '@' '@' '<' $@13 . type_declaration_no_options '>' $@14 func_addr_name + 342 func_addr_expr: '@' '@' '<' $@13 . type_declaration_no_options '>' $@14 func_addr_name "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -32188,7 +31661,7 @@ State 1015 State 1016 - 346 func_addr_expr: '@' '@' '<' $@15 . optional_function_argument_list optional_function_type '>' $@16 func_addr_name + 345 func_addr_expr: '@' '@' '<' $@15 . optional_function_argument_list optional_function_type '>' $@16 func_addr_name '(' shift, and go to state 321 @@ -32199,8 +31672,8 @@ State 1016 State 1017 - 707 make_struct_fields: "$f" '(' . expr ')' copy_or_move expr - 708 | "$f" '(' . expr ')' ":=" expr + 706 make_struct_fields: "$f" '(' . expr ')' copy_or_move expr + 707 | "$f" '(' . expr ')' ":=" expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -32309,7 +31782,7 @@ State 1017 State 1018 - 704 make_struct_fields: "name" ":=" . expr + 703 make_struct_fields: "name" ":=" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -32418,7 +31891,7 @@ State 1018 State 1019 - 703 make_struct_fields: "name" copy_or_move . expr + 702 make_struct_fields: "name" copy_or_move . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -32527,11 +32000,11 @@ State 1019 State 1020 - 334 expr_named_call: name_in_namespace '(' '[' make_struct_fields . ']' ')' - 705 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr - 706 | make_struct_fields . ',' "name" ":=" expr - 709 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr - 710 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr + 333 expr_named_call: name_in_namespace '(' '[' make_struct_fields . ']' ')' + 704 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr + 705 | make_struct_fields . ',' "name" ":=" expr + 708 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr + 709 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr ',' shift, and go to state 1023 ']' shift, and go to state 1129 @@ -32539,8 +32012,8 @@ State 1020 State 1021 - 290 expr_list: expr_list ',' . expr - 335 expr_named_call: name_in_namespace '(' expr_list ',' . '[' make_struct_fields ']' ')' + 289 expr_list: expr_list ',' . expr + 334 expr_named_call: name_in_namespace '(' expr_list ',' . '[' make_struct_fields ']' ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -32649,17 +32122,17 @@ State 1021 State 1022 - 356 expr_call: name_in_namespace '(' expr_list ')' . + 355 expr_call: name_in_namespace '(' expr_list ')' . - $default reduce using rule 356 (expr_call) + $default reduce using rule 355 (expr_call) State 1023 - 705 make_struct_fields: make_struct_fields ',' . "name" copy_or_move expr - 706 | make_struct_fields ',' . "name" ":=" expr - 709 | make_struct_fields ',' . "$f" '(' expr ')' copy_or_move expr - 710 | make_struct_fields ',' . "$f" '(' expr ')' ":=" expr + 704 make_struct_fields: make_struct_fields ',' . "name" copy_or_move expr + 705 | make_struct_fields ',' . "name" ":=" expr + 708 | make_struct_fields ',' . "$f" '(' expr ')' copy_or_move expr + 709 | make_struct_fields ',' . "$f" '(' expr ')' ":=" expr "$f" shift, and go to state 1131 "name" shift, and go to state 1132 @@ -32667,14 +32140,14 @@ State 1023 State 1024 - 355 expr_call: name_in_namespace '(' make_struct_single ')' . + 354 expr_call: name_in_namespace '(' make_struct_single ')' . - $default reduce using rule 355 (expr_call) + $default reduce using rule 354 (expr_call) State 1025 - 304 optional_capture_list: '[' '[' . capture_list ']' ']' + 303 optional_capture_list: '[' '[' . capture_list ']' ']' "<-" shift, and go to state 1133 ":=" shift, and go to state 1134 @@ -32687,7 +32160,7 @@ State 1025 State 1026 - 305 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list . optional_function_type block_or_simple_block + 304 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list . optional_function_type block_or_simple_block ':' shift, and go to state 389 @@ -32698,14 +32171,14 @@ State 1026 State 1027 - 307 expr_full_block_assumed_piped: "begin of code block" expressions "end of code block" . + 306 expr_full_block_assumed_piped: "begin of code block" expressions "end of code block" . - $default reduce using rule 307 (expr_full_block_assumed_piped) + $default reduce using rule 306 (expr_full_block_assumed_piped) State 1028 - 306 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list . optional_function_argument_list optional_function_type expression_block + 305 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list . optional_function_argument_list optional_function_type expression_block '(' shift, and go to state 321 @@ -32716,16 +32189,16 @@ State 1028 State 1029 - 417 expr: expr "is" "type" '<' . $@19 type_declaration_no_options '>' $@20 + 416 expr: expr "is" "type" '<' . $@19 type_declaration_no_options '>' $@20 - $default reduce using rule 415 ($@19) + $default reduce using rule 414 ($@19) $@19 go to state 1141 State 1030 - 455 expr_mtag: expr "is" "$f" '(' . expr ')' + 454 expr_mtag: expr "is" "$f" '(' . expr ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -32834,16 +32307,16 @@ State 1030 State 1031 - 423 expr: expr "as" "type" '<' . $@21 type_declaration '>' $@22 + 422 expr: expr "as" "type" '<' . $@21 type_declaration '>' $@22 - $default reduce using rule 421 ($@21) + $default reduce using rule 420 ($@21) $@21 go to state 1143 State 1032 - 453 expr_mtag: expr "as" "$f" '(' . expr ')' + 452 expr_mtag: expr "as" "$f" '(' . expr ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -32952,8 +32425,8 @@ State 1032 State 1033 - 336 expr_method_call: expr "->" "name" '(' . ')' - 337 | expr "->" "name" '(' . expr_list ')' + 335 expr_method_call: expr "->" "name" '(' . ')' + 336 | expr "->" "name" '(' . expr_list ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -33051,7 +32524,7 @@ State 1033 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 634 + expr go to state 633 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -33064,7 +32537,7 @@ State 1033 State 1034 - 450 expr_mtag: expr "?." "$f" '(' . expr ')' + 449 expr_mtag: expr "?." "$f" '(' . expr ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -33173,42 +32646,42 @@ State 1034 State 1035 - 402 expr: expr "?[" expr ']' . + 401 expr: expr "?[" expr ']' . - $default reduce using rule 402 (expr) + $default reduce using rule 401 (expr) State 1036 - 428 expr: expr '?' "as" "type" . '<' $@23 type_declaration '>' $@24 + 427 expr: expr '?' "as" "type" . '<' $@23 type_declaration '>' $@24 '<' shift, and go to state 1148 State 1037 - 454 expr_mtag: expr '?' "as" "$f" . '(' expr ')' + 453 expr_mtag: expr '?' "as" "$f" . '(' expr ')' '(' shift, and go to state 1149 State 1038 - 425 expr: expr '?' "as" "name" . + 424 expr: expr '?' "as" "name" . - $default reduce using rule 425 (expr) + $default reduce using rule 424 (expr) State 1039 - 429 expr: expr '?' "as" basic_type_declaration . + 428 expr: expr '?' "as" basic_type_declaration . - $default reduce using rule 429 (expr) + $default reduce using rule 428 (expr) State 1040 - 414 expr: expr '?' expr ':' . expr + 413 expr: expr '?' expr ':' . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -33317,121 +32790,121 @@ State 1040 State 1041 - 452 expr_mtag: expr '.' "?." "$f" . '(' expr ')' + 451 expr_mtag: expr '.' "?." "$f" . '(' expr ')' '(' shift, and go to state 1151 State 1042 - 405 expr: expr '.' "?." "name" . + 404 expr: expr '.' "?." "name" . - $default reduce using rule 405 (expr) + $default reduce using rule 404 (expr) State 1043 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 403 | expr '.' "?[" expr . ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 402 | expr '.' "?[" expr . ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ']' shift, and go to state 1152 State 1044 - 449 expr_mtag: expr '.' "$f" '(' . expr ')' + 448 expr_mtag: expr '.' "$f" '(' . expr ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -33540,8 +33013,8 @@ State 1044 State 1045 - 349 expr_field: expr '.' "name" '(' . ')' - 350 | expr '.' "name" '(' . expr_list ')' + 348 expr_field: expr '.' "name" '(' . ')' + 349 | expr '.' "name" '(' . expr_list ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -33639,7 +33112,7 @@ State 1045 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 634 + expr go to state 633 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -33652,243 +33125,243 @@ State 1045 State 1046 - 451 expr_mtag: expr '.' '.' "$f" . '(' expr ')' + 450 expr_mtag: expr '.' '.' "$f" . '(' expr ')' '(' shift, and go to state 1156 State 1047 - 348 expr_field: expr '.' '.' "name" . + 347 expr_field: expr '.' '.' "name" . - $default reduce using rule 348 (expr_field) + $default reduce using rule 347 (expr_field) State 1048 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 401 | expr '.' '[' expr . ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 400 | expr '.' '[' expr . ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ']' shift, and go to state 1157 State 1049 - 353 expr_field: expr '.' $@17 error . $@18 + 352 expr_field: expr '.' $@17 error . $@18 - $default reduce using rule 352 ($@18) + $default reduce using rule 351 ($@18) $@18 go to state 1158 State 1050 - 400 expr: expr '[' expr ']' . + 399 expr: expr '[' expr ']' . - $default reduce using rule 400 (expr) + $default reduce using rule 399 (expr) State 1051 - 358 expr_call: basic_type_declaration '(' expr_list ')' . + 357 expr_call: basic_type_declaration '(' expr_list ')' . - $default reduce using rule 358 (expr_call) + $default reduce using rule 357 (expr_call) State 1052 - 655 type_declaration_no_options_no_dim: "iterator" '<' $@46 type_declaration '>' $@47 . + 654 type_declaration_no_options_no_dim: "iterator" '<' $@46 type_declaration '>' $@47 . - $default reduce using rule 655 (type_declaration_no_options_no_dim) + $default reduce using rule 654 (type_declaration_no_options_no_dim) State 1053 - 645 type_declaration_no_options_no_dim: "smart_ptr" '<' $@40 type_declaration '>' $@41 . + 644 type_declaration_no_options_no_dim: "smart_ptr" '<' $@40 type_declaration '>' $@41 . - $default reduce using rule 645 (type_declaration_no_options_no_dim) + $default reduce using rule 644 (type_declaration_no_options_no_dim) State 1054 - 605 bitfield_bits: bitfield_bits "end of expression" "name" . + 604 bitfield_bits: bitfield_bits "end of expression" "name" . - $default reduce using rule 605 (bitfield_bits) + $default reduce using rule 604 (bitfield_bits) State 1055 - 611 bitfield_type_declaration: "bitfield" '<' $@35 bitfield_bits '>' $@36 . + 610 bitfield_type_declaration: "bitfield" '<' $@35 bitfield_bits '>' $@36 . - $default reduce using rule 611 (bitfield_type_declaration) + $default reduce using rule 610 (bitfield_type_declaration) State 1056 - 659 type_declaration_no_options_no_dim: "block" '<' $@48 type_declaration '>' $@49 . + 658 type_declaration_no_options_no_dim: "block" '<' $@48 type_declaration '>' $@49 . - $default reduce using rule 659 (type_declaration_no_options_no_dim) + $default reduce using rule 658 (type_declaration_no_options_no_dim) State 1057 - 662 type_declaration_no_options_no_dim: "block" '<' $@50 optional_function_argument_list optional_function_type '>' . $@51 + 661 type_declaration_no_options_no_dim: "block" '<' $@50 optional_function_argument_list optional_function_type '>' . $@51 - $default reduce using rule 661 ($@51) + $default reduce using rule 660 ($@51) $@51 go to state 1159 State 1058 - 666 type_declaration_no_options_no_dim: "function" '<' $@52 type_declaration '>' $@53 . + 665 type_declaration_no_options_no_dim: "function" '<' $@52 type_declaration '>' $@53 . - $default reduce using rule 666 (type_declaration_no_options_no_dim) + $default reduce using rule 665 (type_declaration_no_options_no_dim) State 1059 - 669 type_declaration_no_options_no_dim: "function" '<' $@54 optional_function_argument_list optional_function_type '>' . $@55 + 668 type_declaration_no_options_no_dim: "function" '<' $@54 optional_function_argument_list optional_function_type '>' . $@55 - $default reduce using rule 668 ($@55) + $default reduce using rule 667 ($@55) $@55 go to state 1160 State 1060 - 673 type_declaration_no_options_no_dim: "lambda" '<' $@56 type_declaration '>' $@57 . + 672 type_declaration_no_options_no_dim: "lambda" '<' $@56 type_declaration '>' $@57 . - $default reduce using rule 673 (type_declaration_no_options_no_dim) + $default reduce using rule 672 (type_declaration_no_options_no_dim) State 1061 - 676 type_declaration_no_options_no_dim: "lambda" '<' $@58 optional_function_argument_list optional_function_type '>' . $@59 + 675 type_declaration_no_options_no_dim: "lambda" '<' $@58 optional_function_argument_list optional_function_type '>' . $@59 - $default reduce using rule 675 ($@59) + $default reduce using rule 674 ($@59) $@59 go to state 1161 State 1062 - 484 tuple_type_list: tuple_type_list "end of expression" tuple_type . + 483 tuple_type_list: tuple_type_list "end of expression" tuple_type . - $default reduce using rule 484 (tuple_type_list) + $default reduce using rule 483 (tuple_type_list) State 1063 - 679 type_declaration_no_options_no_dim: "tuple" '<' $@60 tuple_type_list '>' $@61 . + 678 type_declaration_no_options_no_dim: "tuple" '<' $@60 tuple_type_list '>' $@61 . - $default reduce using rule 679 (type_declaration_no_options_no_dim) + $default reduce using rule 678 (type_declaration_no_options_no_dim) State 1064 - 490 variant_type_list: variant_type_list "end of expression" variant_type . + 489 variant_type_list: variant_type_list "end of expression" variant_type . - $default reduce using rule 490 (variant_type_list) + $default reduce using rule 489 (variant_type_list) State 1065 - 682 type_declaration_no_options_no_dim: "variant" '<' $@62 variant_type_list '>' $@63 . + 681 type_declaration_no_options_no_dim: "variant" '<' $@62 variant_type_list '>' $@63 . - $default reduce using rule 682 (type_declaration_no_options_no_dim) + $default reduce using rule 681 (type_declaration_no_options_no_dim) State 1066 @@ -33951,243 +33424,243 @@ State 1066 State 1067 - 630 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' . '(' optional_expr_list ')' + 629 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' . '(' optional_expr_list ')' '(' shift, and go to state 1163 State 1068 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 561 variable_name_with_pos_list: "$i" '(' expr . ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 560 variable_name_with_pos_list: "$i" '(' expr . ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ')' shift, and go to state 1164 State 1069 - 562 variable_name_with_pos_list: "name" "aka" "name" . + 561 variable_name_with_pos_list: "name" "aka" "name" . - $default reduce using rule 562 (variable_name_with_pos_list) + $default reduce using rule 561 (variable_name_with_pos_list) State 1070 - 563 variable_name_with_pos_list: variable_name_with_pos_list ',' "name" . - 564 | variable_name_with_pos_list ',' "name" . "aka" "name" + 562 variable_name_with_pos_list: variable_name_with_pos_list ',' "name" . + 563 | variable_name_with_pos_list ',' "name" . "aka" "name" "aka" shift, and go to state 1165 - $default reduce using rule 563 (variable_name_with_pos_list) + $default reduce using rule 562 (variable_name_with_pos_list) State 1071 - 498 variable_declaration: variable_name_with_pos_list ':' type_declaration . - 499 | variable_name_with_pos_list ':' type_declaration . copy_or_move expr - 684 type_declaration: type_declaration . '|' type_declaration_no_options - 685 | type_declaration . '|' '#' + 497 variable_declaration: variable_name_with_pos_list ':' type_declaration . + 498 | variable_name_with_pos_list ':' type_declaration . copy_or_move expr + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' "<-" shift, and go to state 915 '=' shift, and go to state 917 '|' shift, and go to state 372 - $default reduce using rule 498 (variable_declaration) + $default reduce using rule 497 (variable_declaration) copy_or_move go to state 1166 State 1072 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 500 variable_declaration: variable_name_with_pos_list copy_or_move expr . - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 - - $default reduce using rule 500 (variable_declaration) + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 499 variable_declaration: variable_name_with_pos_list copy_or_move expr . + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 + + $default reduce using rule 499 (variable_declaration) State 1073 @@ -34289,7 +33762,7 @@ State 1073 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 634 + expr go to state 633 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -34302,108 +33775,108 @@ State 1073 State 1074 - 260 expression_try_catch: "try" expression_block "recover" expression_block . + 259 expression_try_catch: "try" expression_block "recover" expression_block . - $default reduce using rule 260 (expression_try_catch) + $default reduce using rule 259 (expression_try_catch) State 1075 74 expression_with_alias: "assume" "name" '=' expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 $default reduce using rule 74 (expression_with_alias) @@ -34513,52 +33986,51 @@ State 1076 '$' shift, and go to state 454 '@' shift, and go to state 455 - string_builder go to state 456 - expr_reader go to state 457 - expression_label go to state 546 - expression_goto go to state 547 - if_or_static_if go to state 548 - expression_if_one_liner go to state 549 - expression_if_then_else go to state 550 - expression_for_loop go to state 551 - expression_unsafe go to state 552 - expression_while_loop go to state 553 - expression_with go to state 554 - expression_with_alias go to state 555 - expr_call_pipe go to state 458 - expression_any go to state 556 - name_in_namespace go to state 459 - expression_delete go to state 557 - expr_new go to state 460 - expression_break go to state 558 - expression_continue go to state 559 - expression_return go to state 560 - expression_yield_no_pipe go to state 561 - expression_yield go to state 562 - expression_try_catch go to state 563 - kwd_let go to state 564 - expression_let go to state 565 - expr_cast go to state 461 - expr_type_decl go to state 462 - expr_type_info go to state 463 - block_or_lambda go to state 464 - expr_full_block go to state 465 - expr_numeric_const go to state 466 - expr_assign go to state 566 - expr_named_call go to state 467 - expr_method_call go to state 468 - func_addr_expr go to state 469 - expr_field go to state 470 - expr_call go to state 471 - expr go to state 567 - expr_mtag go to state 473 - basic_type_declaration go to state 474 - make_decl go to state 475 - make_struct_decl go to state 476 - make_tuple_call go to state 477 - make_dim_decl go to state 478 - make_table_decl go to state 479 - array_comprehension go to state 480 + string_builder go to state 456 + expr_reader go to state 457 + expression_label go to state 546 + expression_goto go to state 547 + if_or_static_if go to state 548 + expression_if_one_liner go to state 549 + expression_if_then_else go to state 550 + expression_for_loop go to state 551 + expression_unsafe go to state 552 + expression_while_loop go to state 553 + expression_with go to state 554 + expression_with_alias go to state 555 + expr_call_pipe go to state 458 + expression_any go to state 556 + name_in_namespace go to state 459 + expression_delete go to state 557 + expr_new go to state 460 + expression_break go to state 558 + expression_continue go to state 559 + expression_return go to state 560 + expression_yield go to state 561 + expression_try_catch go to state 562 + kwd_let go to state 563 + expression_let go to state 564 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_assign go to state 565 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 566 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1077 @@ -34573,115 +34045,115 @@ State 1077 State 1078 69 expression_if_then_else: expression_if_one_liner "if" '(' expr . ')' expression_else_one_liner "end of expression" - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ')' shift, and go to state 1170 State 1079 - 268 tuple_expansion: "name" . + 267 tuple_expansion: "name" . - $default reduce using rule 268 (tuple_expansion) + $default reduce using rule 267 (tuple_expansion) State 1080 - 269 tuple_expansion: tuple_expansion . ',' "name" - 270 tuple_expansion_variable_declaration: '(' tuple_expansion . ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 271 | '(' tuple_expansion . ')' optional_ref copy_or_move_or_clone expr "end of expression" + 268 tuple_expansion: tuple_expansion . ',' "name" + 269 tuple_expansion_variable_declaration: '(' tuple_expansion . ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 270 | '(' tuple_expansion . ')' optional_ref copy_or_move_or_clone expr "end of expression" ',' shift, and go to state 1171 ')' shift, and go to state 1172 @@ -34689,85 +34161,85 @@ State 1080 State 1081 - 544 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" . + 543 enum_declaration: optional_annotation_list "enum" optional_public_or_private_enum enum_name optional_enum_basic_type_declaration "begin of code block" $@31 enum_list optional_comma $@32 "end of code block" . - $default reduce using rule 544 (enum_declaration) + $default reduce using rule 543 (enum_declaration) State 1082 - 465 optional_public_or_private_member_variable: "public" . + 464 optional_public_or_private_member_variable: "public" . - $default reduce using rule 465 (optional_public_or_private_member_variable) + $default reduce using rule 464 (optional_public_or_private_member_variable) State 1083 - 466 optional_public_or_private_member_variable: "private" . + 465 optional_public_or_private_member_variable: "private" . - $default reduce using rule 466 (optional_public_or_private_member_variable) + $default reduce using rule 465 (optional_public_or_private_member_variable) State 1084 - 474 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable . "abstract" optional_constant $@26 function_declaration_header "end of expression" - 476 | struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable . optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block + 473 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable . "abstract" optional_constant $@26 function_declaration_header "end of expression" + 475 | struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable . optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block "abstract" shift, and go to state 1173 "static" shift, and go to state 1085 - $default reduce using rule 467 (optional_static_member_variable) + $default reduce using rule 466 (optional_static_member_variable) optional_static_member_variable go to state 1174 State 1085 - 468 optional_static_member_variable: "static" . + 467 optional_static_member_variable: "static" . - $default reduce using rule 468 (optional_static_member_variable) + $default reduce using rule 467 (optional_static_member_variable) State 1086 - 469 structure_variable_declaration: optional_field_annotation optional_static_member_variable . optional_override optional_public_or_private_member_variable variable_declaration + 468 structure_variable_declaration: optional_field_annotation optional_static_member_variable . optional_override optional_public_or_private_member_variable variable_declaration "override" shift, and go to state 1175 "sealed" shift, and go to state 1176 - $default reduce using rule 459 (optional_override) + $default reduce using rule 458 (optional_override) optional_override go to state 1177 State 1087 - 472 struct_variable_declaration_list: struct_variable_declaration_list $@25 structure_variable_declaration "end of expression" . + 471 struct_variable_declaration_list: struct_variable_declaration_list $@25 structure_variable_declaration "end of expression" . - $default reduce using rule 472 (struct_variable_declaration_list) + $default reduce using rule 471 (struct_variable_declaration_list) State 1088 - 512 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" . + 511 let_variable_declaration: let_variable_name_with_pos_list ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" . - $default reduce using rule 512 (let_variable_declaration) + $default reduce using rule 511 (let_variable_declaration) State 1089 - 718 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' . $@74 '(' use_initializer make_struct_dim ')' + 717 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' . $@74 '(' use_initializer make_struct_dim ')' - $default reduce using rule 717 ($@74) + $default reduce using rule 716 ($@74) $@74 go to state 1178 State 1090 - 721 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' . $@76 '(' use_initializer make_struct_dim ')' + 720 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' . $@76 '(' use_initializer make_struct_dim ')' - $default reduce using rule 720 ($@76) + $default reduce using rule 719 ($@76) $@76 go to state 1179 @@ -34783,8 +34255,8 @@ State 1091 State 1092 - 703 make_struct_fields: "name" . copy_or_move expr - 704 | "name" . ":=" expr + 702 make_struct_fields: "name" . copy_or_move expr + 703 | "name" . ":=" expr "<-" shift, and go to state 915 ":=" shift, and go to state 1018 @@ -34816,8 +34288,8 @@ State 1095 State 1096 - 287 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" . '>' expr ')' - 288 | "typeinfo" '(' name_in_namespace '<' "name" . "end of expression" "name" '>' expr ')' + 286 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" . '>' expr ')' + 287 | "typeinfo" '(' name_in_namespace '<' "name" . "end of expression" "name" '>' expr ')' "end of expression" shift, and go to state 1182 '>' shift, and go to state 1183 @@ -34825,67 +34297,67 @@ State 1096 State 1097 - 286 expr_type_info: "typeinfo" '(' name_in_namespace expr ')' . + 285 expr_type_info: "typeinfo" '(' name_in_namespace expr ')' . - $default reduce using rule 286 (expr_type_info) + $default reduce using rule 285 (expr_type_info) State 1098 - 285 expr_type_decl: "type" '<' $@11 type_declaration '>' . $@12 + 284 expr_type_decl: "type" '<' $@11 type_declaration '>' . $@12 - $default reduce using rule 284 ($@12) + $default reduce using rule 283 ($@12) $@12 go to state 1184 State 1099 - 737 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options . '>' $@84 '(' use_initializer make_struct_dim ')' + 736 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options . '>' $@84 '(' use_initializer make_struct_dim ')' '>' shift, and go to state 1185 State 1100 - 740 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options . '>' $@86 '(' use_initializer make_struct_dim ')' + 739 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options . '>' $@86 '(' use_initializer make_struct_dim ')' '>' shift, and go to state 1186 State 1101 - 743 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options . '>' $@88 '(' make_struct_dim ')' + 742 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options . '>' $@88 '(' make_struct_dim ')' '>' shift, and go to state 1187 State 1102 - 747 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' . $@90 '(' expr_list optional_comma ')' + 746 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' . $@90 '(' expr_list optional_comma ')' - $default reduce using rule 746 ($@90) + $default reduce using rule 745 ($@90) $@90 go to state 1188 State 1103 - 744 make_dim_decl: "array" '(' expr_list optional_comma ')' . + 743 make_dim_decl: "array" '(' expr_list optional_comma ')' . - $default reduce using rule 744 (make_dim_decl) + $default reduce using rule 743 (make_dim_decl) State 1104 - 757 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options . '>' '(' expr_map_tuple_list optional_comma ')' + 756 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options . '>' '(' expr_map_tuple_list optional_comma ')' '>' shift, and go to state 1189 State 1105 - 756 make_table_decl: "table" '<' type_declaration_no_options '>' '(' . expr_map_tuple_list optional_comma ')' + 755 make_table_decl: "table" '<' type_declaration_no_options '>' '(' . expr_map_tuple_list optional_comma ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -34981,12 +34453,12 @@ State 1105 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 623 + expr go to state 622 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 make_struct_decl go to state 476 - make_map_tuple go to state 624 + make_map_tuple go to state 623 make_tuple_call go to state 477 make_dim_decl go to state 478 expr_map_tuple_list go to state 1190 @@ -34996,100 +34468,100 @@ State 1105 State 1106 - 755 make_table_decl: "table" '(' expr_map_tuple_list optional_comma ')' . + 754 make_table_decl: "table" '(' expr_map_tuple_list optional_comma ')' . - $default reduce using rule 755 (make_table_decl) + $default reduce using rule 754 (make_table_decl) State 1107 - 276 expr_cast: "cast" '<' $@5 type_declaration_no_options '>' . $@6 expr + 275 expr_cast: "cast" '<' $@5 type_declaration_no_options '>' . $@6 expr - $default reduce using rule 275 ($@6) + $default reduce using rule 274 ($@6) $@6 go to state 1191 State 1108 - 279 expr_cast: "upcast" '<' $@7 type_declaration_no_options '>' . $@8 expr + 278 expr_cast: "upcast" '<' $@7 type_declaration_no_options '>' . $@8 expr - $default reduce using rule 278 ($@8) + $default reduce using rule 277 ($@8) $@8 go to state 1192 State 1109 - 282 expr_cast: "reinterpret" '<' $@9 type_declaration_no_options '>' . $@10 expr + 281 expr_cast: "reinterpret" '<' $@9 type_declaration_no_options '>' . $@10 expr - $default reduce using rule 281 ($@10) + $default reduce using rule 280 ($@10) $@10 go to state 1193 State 1110 - 751 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' . $@92 '(' expr_list optional_comma ')' + 750 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' . $@92 '(' expr_list optional_comma ')' - $default reduce using rule 750 ($@92) + $default reduce using rule 749 ($@92) $@92 go to state 1194 State 1111 - 748 make_dim_decl: "fixed_array" '(' expr_list optional_comma ')' . + 747 make_dim_decl: "fixed_array" '(' expr_list optional_comma ')' . - $default reduce using rule 748 (make_dim_decl) + $default reduce using rule 747 (make_dim_decl) State 1112 - 727 make_struct_decl: "default" '<' $@79 type_declaration_no_options '>' . $@80 use_initializer + 726 make_struct_decl: "default" '<' $@79 type_declaration_no_options '>' . $@80 use_initializer - $default reduce using rule 726 ($@80) + $default reduce using rule 725 ($@80) $@80 go to state 1195 State 1113 - 733 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' . $@82 '(' use_initializer make_struct_dim ')' + 732 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' . $@82 '(' use_initializer make_struct_dim ')' - $default reduce using rule 732 ($@82) + $default reduce using rule 731 ($@82) $@82 go to state 1196 State 1114 - 730 make_tuple_call: "tuple" '(' expr_list optional_comma ')' . + 729 make_tuple_call: "tuple" '(' expr_list optional_comma ')' . - $default reduce using rule 730 (make_tuple_call) + $default reduce using rule 729 (make_tuple_call) State 1115 - 724 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' . $@78 '(' make_struct_dim ')' + 723 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' . $@78 '(' make_struct_dim ')' - $default reduce using rule 723 ($@78) + $default reduce using rule 722 ($@78) $@78 go to state 1197 State 1116 - 411 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list . '(' ')' - 412 | "generator" '<' type_declaration_no_options '>' optional_capture_list . '(' expr ')' + 410 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list . '(' ')' + 411 | "generator" '<' type_declaration_no_options '>' optional_capture_list . '(' expr ')' '(' shift, and go to state 1198 State 1117 - 447 expr_mtag: "$c" '(' expr ')' '(' . ')' - 448 | "$c" '(' expr ')' '(' . expr_list ')' + 446 expr_mtag: "$c" '(' expr ')' '(' . ')' + 447 | "$c" '(' expr ')' '(' . expr_list ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -35187,7 +34659,7 @@ State 1117 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 634 + expr go to state 633 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -35207,8 +34679,8 @@ State 1118 State 1119 - 290 expr_list: expr_list . ',' expr - 764 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list . "end of expression" make_map_tuple array_comprehension_where "end of code block" + 289 expr_list: expr_list . ',' expr + 763 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list . "end of expression" make_map_tuple array_comprehension_where "end of code block" "end of expression" shift, and go to state 1201 ',' shift, and go to state 907 @@ -35216,8 +34688,8 @@ State 1119 State 1120 - 290 expr_list: expr_list . ',' expr - 762 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list . "end of expression" expr array_comprehension_where ']' + 289 expr_list: expr_list . ',' expr + 761 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list . "end of expression" expr array_comprehension_where ']' "end of expression" shift, and go to state 1202 ',' shift, and go to state 907 @@ -35225,7 +34697,7 @@ State 1120 State 1121 - 763 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" . expr_list "end of expression" expr array_comprehension_where ']' + 762 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" . expr_list "end of expression" expr array_comprehension_where ']' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -35322,7 +34794,7 @@ State 1121 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 634 + expr go to state 633 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -35335,214 +34807,214 @@ State 1121 State 1122 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 339 func_addr_name: "$i" '(' expr . ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 338 func_addr_name: "$i" '(' expr . ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ')' shift, and go to state 1204 State 1123 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 456 | '@' '@' "$c" '(' expr . ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 455 | '@' '@' "$c" '(' expr . ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ')' shift, and go to state 1205 State 1124 - 343 func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options . '>' $@14 func_addr_name + 342 func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options . '>' $@14 func_addr_name '>' shift, and go to state 1206 State 1125 - 346 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list . optional_function_type '>' $@16 func_addr_name + 345 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list . optional_function_type '>' $@16 func_addr_name ':' shift, and go to state 389 @@ -35553,324 +35025,324 @@ State 1125 State 1126 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 707 make_struct_fields: "$f" '(' expr . ')' copy_or_move expr - 708 | "$f" '(' expr . ')' ":=" expr - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 706 make_struct_fields: "$f" '(' expr . ')' copy_or_move expr + 707 | "$f" '(' expr . ')' ":=" expr + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ')' shift, and go to state 1208 State 1127 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 704 make_struct_fields: "name" ":=" expr . - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 703 make_struct_fields: "name" ":=" expr . + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 704 (make_struct_fields) + $default reduce using rule 703 (make_struct_fields) State 1128 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 703 make_struct_fields: "name" copy_or_move expr . - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 - - $default reduce using rule 703 (make_struct_fields) + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 702 make_struct_fields: "name" copy_or_move expr . + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 + + $default reduce using rule 702 (make_struct_fields) State 1129 - 334 expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' . ')' + 333 expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' . ')' ')' shift, and go to state 1209 State 1130 - 335 expr_named_call: name_in_namespace '(' expr_list ',' '[' . make_struct_fields ']' ')' - 734 make_dim_decl: '[' . expr_list optional_comma ']' - 762 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' - 763 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 334 expr_named_call: name_in_namespace '(' expr_list ',' '[' . make_struct_fields ']' ')' + 733 make_dim_decl: '[' . expr_list optional_comma ']' + 761 array_comprehension: '[' . "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' + 762 | '[' . "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' "struct" shift, and go to state 408 "class" shift, and go to state 409 - "for" shift, and go to state 631 + "for" shift, and go to state 630 "true" shift, and go to state 410 "false" shift, and go to state 411 "new" shift, and go to state 412 @@ -35882,7 +35354,7 @@ State 1130 "deref" shift, and go to state 418 "cast" shift, and go to state 419 "upcast" shift, and go to state 420 - "iterator" shift, and go to state 632 + "iterator" shift, and go to state 631 "addr" shift, and go to state 421 "reinterpret" shift, and go to state 422 "fixed_array" shift, and go to state 423 @@ -35957,7 +35429,7 @@ State 1130 expr_cast go to state 461 expr_type_decl go to state 462 expr_type_info go to state 463 - expr_list go to state 633 + expr_list go to state 632 block_or_lambda go to state 464 expr_full_block go to state 465 expr_numeric_const go to state 466 @@ -35966,7 +35438,7 @@ State 1130 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 634 + expr go to state 633 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -35980,16 +35452,16 @@ State 1130 State 1131 - 709 make_struct_fields: make_struct_fields ',' "$f" . '(' expr ')' copy_or_move expr - 710 | make_struct_fields ',' "$f" . '(' expr ')' ":=" expr + 708 make_struct_fields: make_struct_fields ',' "$f" . '(' expr ')' copy_or_move expr + 709 | make_struct_fields ',' "$f" . '(' expr ')' ":=" expr '(' shift, and go to state 1211 State 1132 - 705 make_struct_fields: make_struct_fields ',' "name" . copy_or_move expr - 706 | make_struct_fields ',' "name" . ":=" expr + 704 make_struct_fields: make_struct_fields ',' "name" . copy_or_move expr + 705 | make_struct_fields ',' "name" . ":=" expr "<-" shift, and go to state 915 ":=" shift, and go to state 1212 @@ -36000,43 +35472,43 @@ State 1132 State 1133 - 299 capture_entry: "<-" . "name" + 298 capture_entry: "<-" . "name" "name" shift, and go to state 1214 State 1134 - 300 capture_entry: ":=" . "name" + 299 capture_entry: ":=" . "name" "name" shift, and go to state 1215 State 1135 - 298 capture_entry: '=' . "name" + 297 capture_entry: '=' . "name" "name" shift, and go to state 1216 State 1136 - 297 capture_entry: '&' . "name" + 296 capture_entry: '&' . "name" "name" shift, and go to state 1217 State 1137 - 301 capture_list: capture_entry . + 300 capture_list: capture_entry . - $default reduce using rule 301 (capture_list) + $default reduce using rule 300 (capture_list) State 1138 - 302 capture_list: capture_list . ',' capture_entry - 304 optional_capture_list: '[' '[' capture_list . ']' ']' + 301 capture_list: capture_list . ',' capture_entry + 303 optional_capture_list: '[' '[' capture_list . ']' ']' ',' shift, and go to state 1218 ']' shift, and go to state 1219 @@ -36044,7 +35516,7 @@ State 1138 State 1139 - 305 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type . block_or_simple_block + 304 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type . block_or_simple_block "=>" shift, and go to state 1220 "begin of code block" shift, and go to state 323 @@ -36055,7 +35527,7 @@ State 1139 State 1140 - 306 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list . optional_function_type expression_block + 305 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list . optional_function_type expression_block ':' shift, and go to state 389 @@ -36066,7 +35538,7 @@ State 1140 State 1141 - 417 expr: expr "is" "type" '<' $@19 . type_declaration_no_options '>' $@20 + 416 expr: expr "is" "type" '<' $@19 . type_declaration_no_options '>' $@20 "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -36123,107 +35595,107 @@ State 1141 State 1142 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 455 | expr "is" "$f" '(' expr . ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 454 | expr "is" "$f" '(' expr . ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ')' shift, and go to state 1225 State 1143 - 423 expr: expr "as" "type" '<' $@21 . type_declaration '>' $@22 + 422 expr: expr "as" "type" '<' $@21 . type_declaration '>' $@22 "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -36281,115 +35753,115 @@ State 1143 State 1144 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 453 | expr "as" "$f" '(' expr . ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 452 | expr "as" "$f" '(' expr . ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ')' shift, and go to state 1227 State 1145 - 336 expr_method_call: expr "->" "name" '(' ')' . + 335 expr_method_call: expr "->" "name" '(' ')' . - $default reduce using rule 336 (expr_method_call) + $default reduce using rule 335 (expr_method_call) State 1146 - 290 expr_list: expr_list . ',' expr - 337 expr_method_call: expr "->" "name" '(' expr_list . ')' + 289 expr_list: expr_list . ',' expr + 336 expr_method_call: expr "->" "name" '(' expr_list . ')' ',' shift, and go to state 907 ')' shift, and go to state 1228 @@ -36397,116 +35869,116 @@ State 1146 State 1147 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 450 | expr "?." "$f" '(' expr . ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 449 | expr "?." "$f" '(' expr . ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ')' shift, and go to state 1229 State 1148 - 428 expr: expr '?' "as" "type" '<' . $@23 type_declaration '>' $@24 + 427 expr: expr '?' "as" "type" '<' . $@23 type_declaration '>' $@24 - $default reduce using rule 426 ($@23) + $default reduce using rule 425 ($@23) $@23 go to state 1230 State 1149 - 454 expr_mtag: expr '?' "as" "$f" '(' . expr ')' + 453 expr_mtag: expr '?' "as" "$f" '(' . expr ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -36615,107 +36087,107 @@ State 1149 State 1150 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 414 | expr '?' expr ':' expr . - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 - - $default reduce using rule 414 (expr) + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 413 | expr '?' expr ':' expr . + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 + + $default reduce using rule 413 (expr) State 1151 - 452 expr_mtag: expr '.' "?." "$f" '(' . expr ')' + 451 expr_mtag: expr '.' "?." "$f" '(' . expr ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -36824,122 +36296,122 @@ State 1151 State 1152 - 403 expr: expr '.' "?[" expr ']' . + 402 expr: expr '.' "?[" expr ']' . - $default reduce using rule 403 (expr) + $default reduce using rule 402 (expr) State 1153 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 449 | expr '.' "$f" '(' expr . ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 448 | expr '.' "$f" '(' expr . ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ')' shift, and go to state 1233 State 1154 - 349 expr_field: expr '.' "name" '(' ')' . + 348 expr_field: expr '.' "name" '(' ')' . - $default reduce using rule 349 (expr_field) + $default reduce using rule 348 (expr_field) State 1155 - 290 expr_list: expr_list . ',' expr - 350 expr_field: expr '.' "name" '(' expr_list . ')' + 289 expr_list: expr_list . ',' expr + 349 expr_field: expr '.' "name" '(' expr_list . ')' ',' shift, and go to state 907 ')' shift, and go to state 1234 @@ -36947,7 +36419,7 @@ State 1155 State 1156 - 451 expr_mtag: expr '.' '.' "$f" '(' . expr ')' + 450 expr_mtag: expr '.' '.' "$f" '(' . expr ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -37056,44 +36528,44 @@ State 1156 State 1157 - 401 expr: expr '.' '[' expr ']' . + 400 expr: expr '.' '[' expr ']' . - $default reduce using rule 401 (expr) + $default reduce using rule 400 (expr) State 1158 - 353 expr_field: expr '.' $@17 error $@18 . + 352 expr_field: expr '.' $@17 error $@18 . - $default reduce using rule 353 (expr_field) + $default reduce using rule 352 (expr_field) State 1159 - 662 type_declaration_no_options_no_dim: "block" '<' $@50 optional_function_argument_list optional_function_type '>' $@51 . + 661 type_declaration_no_options_no_dim: "block" '<' $@50 optional_function_argument_list optional_function_type '>' $@51 . - $default reduce using rule 662 (type_declaration_no_options_no_dim) + $default reduce using rule 661 (type_declaration_no_options_no_dim) State 1160 - 669 type_declaration_no_options_no_dim: "function" '<' $@54 optional_function_argument_list optional_function_type '>' $@55 . + 668 type_declaration_no_options_no_dim: "function" '<' $@54 optional_function_argument_list optional_function_type '>' $@55 . - $default reduce using rule 669 (type_declaration_no_options_no_dim) + $default reduce using rule 668 (type_declaration_no_options_no_dim) State 1161 - 676 type_declaration_no_options_no_dim: "lambda" '<' $@58 optional_function_argument_list optional_function_type '>' $@59 . + 675 type_declaration_no_options_no_dim: "lambda" '<' $@58 optional_function_argument_list optional_function_type '>' $@59 . - $default reduce using rule 676 (type_declaration_no_options_no_dim) + $default reduce using rule 675 (type_declaration_no_options_no_dim) State 1162 238 type_declaration_no_options_list: type_declaration_no_options_list "end of expression" type_declaration . - 684 type_declaration: type_declaration . '|' type_declaration_no_options - 685 | type_declaration . '|' '#' + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' '|' shift, and go to state 372 @@ -37102,7 +36574,7 @@ State 1162 State 1163 - 630 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' . optional_expr_list ')' + 629 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' . optional_expr_list ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -37193,7 +36665,7 @@ State 1163 expr_cast go to state 461 expr_type_decl go to state 462 expr_type_info go to state 463 - expr_list go to state 698 + expr_list go to state 697 block_or_lambda go to state 464 expr_full_block go to state 465 expr_numeric_const go to state 466 @@ -37202,7 +36674,7 @@ State 1163 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 634 + expr go to state 633 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -37215,21 +36687,21 @@ State 1163 State 1164 - 561 variable_name_with_pos_list: "$i" '(' expr ')' . + 560 variable_name_with_pos_list: "$i" '(' expr ')' . - $default reduce using rule 561 (variable_name_with_pos_list) + $default reduce using rule 560 (variable_name_with_pos_list) State 1165 - 564 variable_name_with_pos_list: variable_name_with_pos_list ',' "name" "aka" . "name" + 563 variable_name_with_pos_list: variable_name_with_pos_list ',' "name" "aka" . "name" "name" shift, and go to state 1237 State 1166 - 499 variable_declaration: variable_name_with_pos_list ':' type_declaration copy_or_move . expr + 498 variable_declaration: variable_name_with_pos_list ':' type_declaration copy_or_move . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -37339,7 +36811,7 @@ State 1166 State 1167 70 expression_for_loop: "for" '(' variable_name_with_pos_list "in" expr_list . ')' expression_block - 290 expr_list: expr_list . ',' expr + 289 expr_list: expr_list . ',' expr ',' shift, and go to state 907 ')' shift, and go to state 1239 @@ -37379,83 +36851,83 @@ State 1170 State 1171 - 269 tuple_expansion: tuple_expansion ',' . "name" + 268 tuple_expansion: tuple_expansion ',' . "name" "name" shift, and go to state 1247 State 1172 - 270 tuple_expansion_variable_declaration: '(' tuple_expansion ')' . ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" - 271 | '(' tuple_expansion ')' . optional_ref copy_or_move_or_clone expr "end of expression" + 269 tuple_expansion_variable_declaration: '(' tuple_expansion ')' . ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 270 | '(' tuple_expansion ')' . optional_ref copy_or_move_or_clone expr "end of expression" ':' shift, and go to state 1248 '&' shift, and go to state 403 - $default reduce using rule 504 (optional_ref) + $default reduce using rule 503 (optional_ref) optional_ref go to state 1249 State 1173 - 474 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" . optional_constant $@26 function_declaration_header "end of expression" + 473 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" . optional_constant $@26 function_declaration_header "end of expression" "const" shift, and go to state 1250 - $default reduce using rule 462 (optional_constant) + $default reduce using rule 461 (optional_constant) optional_constant go to state 1251 State 1174 - 476 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable . optional_override optional_constant $@27 function_declaration_header expression_block + 475 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable . optional_override optional_constant $@27 function_declaration_header expression_block "override" shift, and go to state 1175 "sealed" shift, and go to state 1176 - $default reduce using rule 459 (optional_override) + $default reduce using rule 458 (optional_override) optional_override go to state 1252 State 1175 - 460 optional_override: "override" . + 459 optional_override: "override" . - $default reduce using rule 460 (optional_override) + $default reduce using rule 459 (optional_override) State 1176 - 461 optional_override: "sealed" . + 460 optional_override: "sealed" . - $default reduce using rule 461 (optional_override) + $default reduce using rule 460 (optional_override) State 1177 - 469 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override . optional_public_or_private_member_variable variable_declaration + 468 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override . optional_public_or_private_member_variable variable_declaration "public" shift, and go to state 1082 "private" shift, and go to state 1083 - $default reduce using rule 464 (optional_public_or_private_member_variable) + $default reduce using rule 463 (optional_public_or_private_member_variable) optional_public_or_private_member_variable go to state 1253 State 1178 - 718 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 . '(' use_initializer make_struct_dim ')' + 717 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 . '(' use_initializer make_struct_dim ')' '(' shift, and go to state 1254 State 1179 - 721 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 . '(' use_initializer make_struct_dim ')' + 720 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 . '(' use_initializer make_struct_dim ')' '(' shift, and go to state 1255 @@ -37476,14 +36948,14 @@ State 1181 State 1182 - 288 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" . "name" '>' expr ')' + 287 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" . "name" '>' expr ')' "name" shift, and go to state 1256 State 1183 - 287 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' . expr ')' + 286 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' . expr ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -37592,67 +37064,67 @@ State 1183 State 1184 - 285 expr_type_decl: "type" '<' $@11 type_declaration '>' $@12 . + 284 expr_type_decl: "type" '<' $@11 type_declaration '>' $@12 . - $default reduce using rule 285 (expr_type_decl) + $default reduce using rule 284 (expr_type_decl) State 1185 - 737 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' . $@84 '(' use_initializer make_struct_dim ')' + 736 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' . $@84 '(' use_initializer make_struct_dim ')' - $default reduce using rule 736 ($@84) + $default reduce using rule 735 ($@84) $@84 go to state 1258 State 1186 - 740 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' . $@86 '(' use_initializer make_struct_dim ')' + 739 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' . $@86 '(' use_initializer make_struct_dim ')' - $default reduce using rule 739 ($@86) + $default reduce using rule 738 ($@86) $@86 go to state 1259 State 1187 - 743 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' . $@88 '(' make_struct_dim ')' + 742 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' . $@88 '(' make_struct_dim ')' - $default reduce using rule 742 ($@88) + $default reduce using rule 741 ($@88) $@88 go to state 1260 State 1188 - 747 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 . '(' expr_list optional_comma ')' + 746 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 . '(' expr_list optional_comma ')' '(' shift, and go to state 1261 State 1189 - 757 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' . '(' expr_map_tuple_list optional_comma ')' + 756 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' . '(' expr_map_tuple_list optional_comma ')' '(' shift, and go to state 1262 State 1190 - 753 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple - 756 make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list . optional_comma ')' + 752 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple + 755 make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list . optional_comma ')' ',' shift, and go to state 816 - $default reduce using rule 760 (optional_comma) + $default reduce using rule 759 (optional_comma) optional_comma go to state 1263 State 1191 - 276 expr_cast: "cast" '<' $@5 type_declaration_no_options '>' $@6 . expr + 275 expr_cast: "cast" '<' $@5 type_declaration_no_options '>' $@6 . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -37761,7 +37233,7 @@ State 1191 State 1192 - 279 expr_cast: "upcast" '<' $@7 type_declaration_no_options '>' $@8 . expr + 278 expr_cast: "upcast" '<' $@7 type_declaration_no_options '>' $@8 . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -37870,7 +37342,7 @@ State 1192 State 1193 - 282 expr_cast: "reinterpret" '<' $@9 type_declaration_no_options '>' $@10 . expr + 281 expr_cast: "reinterpret" '<' $@9 type_declaration_no_options '>' $@10 . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -37979,40 +37451,40 @@ State 1193 State 1194 - 751 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 . '(' expr_list optional_comma ')' + 750 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 . '(' expr_list optional_comma ')' '(' shift, and go to state 1267 State 1195 - 727 make_struct_decl: "default" '<' $@79 type_declaration_no_options '>' $@80 . use_initializer + 726 make_struct_decl: "default" '<' $@79 type_declaration_no_options '>' $@80 . use_initializer "uninitialized" shift, and go to state 971 - $default reduce using rule 714 (use_initializer) + $default reduce using rule 713 (use_initializer) use_initializer go to state 1268 State 1196 - 733 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 . '(' use_initializer make_struct_dim ')' + 732 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 . '(' use_initializer make_struct_dim ')' '(' shift, and go to state 1269 State 1197 - 724 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 . '(' make_struct_dim ')' + 723 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 . '(' make_struct_dim ')' '(' shift, and go to state 1270 State 1198 - 411 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' . ')' - 412 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' . expr ')' + 410 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' . ')' + 411 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' . expr ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -38122,15 +37594,15 @@ State 1198 State 1199 - 447 expr_mtag: "$c" '(' expr ')' '(' ')' . + 446 expr_mtag: "$c" '(' expr ')' '(' ')' . - $default reduce using rule 447 (expr_mtag) + $default reduce using rule 446 (expr_mtag) State 1200 - 290 expr_list: expr_list . ',' expr - 448 expr_mtag: "$c" '(' expr ')' '(' expr_list . ')' + 289 expr_list: expr_list . ',' expr + 447 expr_mtag: "$c" '(' expr ')' '(' expr_list . ')' ',' shift, and go to state 907 ')' shift, and go to state 1273 @@ -38138,7 +37610,7 @@ State 1200 State 1201 - 764 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" . make_map_tuple array_comprehension_where "end of code block" + 763 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" . make_map_tuple array_comprehension_where "end of code block" "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -38234,7 +37706,7 @@ State 1201 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 623 + expr go to state 622 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -38248,7 +37720,7 @@ State 1201 State 1202 - 762 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" . expr array_comprehension_where ']' + 761 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" . expr array_comprehension_where ']' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -38357,8 +37829,8 @@ State 1202 State 1203 - 290 expr_list: expr_list . ',' expr - 763 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list . "end of expression" expr array_comprehension_where ']' + 289 expr_list: expr_list . ',' expr + 762 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list . "end of expression" expr array_comprehension_where ']' "end of expression" shift, and go to state 1276 ',' shift, and go to state 907 @@ -38366,38 +37838,38 @@ State 1203 State 1204 - 339 func_addr_name: "$i" '(' expr ')' . + 338 func_addr_name: "$i" '(' expr ')' . - $default reduce using rule 339 (func_addr_name) + $default reduce using rule 338 (func_addr_name) State 1205 - 456 expr_mtag: '@' '@' "$c" '(' expr ')' . + 455 expr_mtag: '@' '@' "$c" '(' expr ')' . - $default reduce using rule 456 (expr_mtag) + $default reduce using rule 455 (expr_mtag) State 1206 - 343 func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options '>' . $@14 func_addr_name + 342 func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options '>' . $@14 func_addr_name - $default reduce using rule 342 ($@14) + $default reduce using rule 341 ($@14) $@14 go to state 1277 State 1207 - 346 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type . '>' $@16 func_addr_name + 345 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type . '>' $@16 func_addr_name '>' shift, and go to state 1278 State 1208 - 707 make_struct_fields: "$f" '(' expr ')' . copy_or_move expr - 708 | "$f" '(' expr ')' . ":=" expr + 706 make_struct_fields: "$f" '(' expr ')' . copy_or_move expr + 707 | "$f" '(' expr ')' . ":=" expr "<-" shift, and go to state 915 ":=" shift, and go to state 1279 @@ -38408,18 +37880,18 @@ State 1208 State 1209 - 334 expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' ')' . + 333 expr_named_call: name_in_namespace '(' '[' make_struct_fields ']' ')' . - $default reduce using rule 334 (expr_named_call) + $default reduce using rule 333 (expr_named_call) State 1210 - 335 expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields . ']' ')' - 705 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr - 706 | make_struct_fields . ',' "name" ":=" expr - 709 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr - 710 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr + 334 expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields . ']' ')' + 704 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr + 705 | make_struct_fields . ',' "name" ":=" expr + 708 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr + 709 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr ',' shift, and go to state 1023 ']' shift, and go to state 1281 @@ -38427,8 +37899,8 @@ State 1210 State 1211 - 709 make_struct_fields: make_struct_fields ',' "$f" '(' . expr ')' copy_or_move expr - 710 | make_struct_fields ',' "$f" '(' . expr ')' ":=" expr + 708 make_struct_fields: make_struct_fields ',' "$f" '(' . expr ')' copy_or_move expr + 709 | make_struct_fields ',' "$f" '(' . expr ')' ":=" expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -38537,7 +38009,7 @@ State 1211 State 1212 - 706 make_struct_fields: make_struct_fields ',' "name" ":=" . expr + 705 make_struct_fields: make_struct_fields ',' "name" ":=" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -38646,7 +38118,7 @@ State 1212 State 1213 - 705 make_struct_fields: make_struct_fields ',' "name" copy_or_move . expr + 704 make_struct_fields: make_struct_fields ',' "name" copy_or_move . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -38755,35 +38227,35 @@ State 1213 State 1214 - 299 capture_entry: "<-" "name" . + 298 capture_entry: "<-" "name" . - $default reduce using rule 299 (capture_entry) + $default reduce using rule 298 (capture_entry) State 1215 - 300 capture_entry: ":=" "name" . + 299 capture_entry: ":=" "name" . - $default reduce using rule 300 (capture_entry) + $default reduce using rule 299 (capture_entry) State 1216 - 298 capture_entry: '=' "name" . + 297 capture_entry: '=' "name" . - $default reduce using rule 298 (capture_entry) + $default reduce using rule 297 (capture_entry) State 1217 - 297 capture_entry: '&' "name" . + 296 capture_entry: '&' "name" . - $default reduce using rule 297 (capture_entry) + $default reduce using rule 296 (capture_entry) State 1218 - 302 capture_list: capture_list ',' . capture_entry + 301 capture_list: capture_list ',' . capture_entry "<-" shift, and go to state 1133 ":=" shift, and go to state 1134 @@ -38795,15 +38267,15 @@ State 1218 State 1219 - 304 optional_capture_list: '[' '[' capture_list ']' . ']' + 303 optional_capture_list: '[' '[' capture_list ']' . ']' ']' shift, and go to state 1286 State 1220 - 292 block_or_simple_block: "=>" . expr - 293 | "=>" . "<-" expr + 291 block_or_simple_block: "=>" . expr + 292 | "=>" . "<-" expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -38913,21 +38385,21 @@ State 1220 State 1221 - 291 block_or_simple_block: expression_block . + 290 block_or_simple_block: expression_block . - $default reduce using rule 291 (block_or_simple_block) + $default reduce using rule 290 (block_or_simple_block) State 1222 - 305 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block . + 304 expr_full_block: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block . - $default reduce using rule 305 (expr_full_block) + $default reduce using rule 304 (expr_full_block) State 1223 - 306 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type . expression_block + 305 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type . expression_block "begin of code block" shift, and go to state 323 @@ -38936,23 +38408,23 @@ State 1223 State 1224 - 417 expr: expr "is" "type" '<' $@19 type_declaration_no_options . '>' $@20 + 416 expr: expr "is" "type" '<' $@19 type_declaration_no_options . '>' $@20 '>' shift, and go to state 1290 State 1225 - 455 expr_mtag: expr "is" "$f" '(' expr ')' . + 454 expr_mtag: expr "is" "$f" '(' expr ')' . - $default reduce using rule 455 (expr_mtag) + $default reduce using rule 454 (expr_mtag) State 1226 - 423 expr: expr "as" "type" '<' $@21 type_declaration . '>' $@22 - 684 type_declaration: type_declaration . '|' type_declaration_no_options - 685 | type_declaration . '|' '#' + 422 expr: expr "as" "type" '<' $@21 type_declaration . '>' $@22 + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' '|' shift, and go to state 372 '>' shift, and go to state 1291 @@ -38960,28 +38432,28 @@ State 1226 State 1227 - 453 expr_mtag: expr "as" "$f" '(' expr ')' . + 452 expr_mtag: expr "as" "$f" '(' expr ')' . - $default reduce using rule 453 (expr_mtag) + $default reduce using rule 452 (expr_mtag) State 1228 - 337 expr_method_call: expr "->" "name" '(' expr_list ')' . + 336 expr_method_call: expr "->" "name" '(' expr_list ')' . - $default reduce using rule 337 (expr_method_call) + $default reduce using rule 336 (expr_method_call) State 1229 - 450 expr_mtag: expr "?." "$f" '(' expr ')' . + 449 expr_mtag: expr "?." "$f" '(' expr ')' . - $default reduce using rule 450 (expr_mtag) + $default reduce using rule 449 (expr_mtag) State 1230 - 428 expr: expr '?' "as" "type" '<' $@23 . type_declaration '>' $@24 + 427 expr: expr '?' "as" "type" '<' $@23 . type_declaration '>' $@24 "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -39039,431 +38511,431 @@ State 1230 State 1231 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 454 | expr '?' "as" "$f" '(' expr . ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 453 | expr '?' "as" "$f" '(' expr . ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ')' shift, and go to state 1293 State 1232 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 452 | expr '.' "?." "$f" '(' expr . ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 451 | expr '.' "?." "$f" '(' expr . ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ')' shift, and go to state 1294 State 1233 - 449 expr_mtag: expr '.' "$f" '(' expr ')' . + 448 expr_mtag: expr '.' "$f" '(' expr ')' . - $default reduce using rule 449 (expr_mtag) + $default reduce using rule 448 (expr_mtag) State 1234 - 350 expr_field: expr '.' "name" '(' expr_list ')' . + 349 expr_field: expr '.' "name" '(' expr_list ')' . - $default reduce using rule 350 (expr_field) + $default reduce using rule 349 (expr_field) State 1235 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 451 | expr '.' '.' "$f" '(' expr . ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 450 | expr '.' '.' "$f" '(' expr . ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ')' shift, and go to state 1295 State 1236 - 630 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list . ')' + 629 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list . ')' ')' shift, and go to state 1296 State 1237 - 564 variable_name_with_pos_list: variable_name_with_pos_list ',' "name" "aka" "name" . + 563 variable_name_with_pos_list: variable_name_with_pos_list ',' "name" "aka" "name" . - $default reduce using rule 564 (variable_name_with_pos_list) + $default reduce using rule 563 (variable_name_with_pos_list) State 1238 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 499 variable_declaration: variable_name_with_pos_list ':' type_declaration copy_or_move expr . - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 498 variable_declaration: variable_name_with_pos_list ':' type_declaration copy_or_move expr . + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 499 (variable_declaration) + $default reduce using rule 498 (variable_declaration) State 1239 @@ -39598,36 +39070,36 @@ State 1245 '$' shift, and go to state 454 '@' shift, and go to state 455 - string_builder go to state 456 - expr_reader go to state 457 - expression_if_one_liner go to state 1300 - expr_call_pipe go to state 458 - name_in_namespace go to state 459 - expr_new go to state 460 - expression_break go to state 1301 - expression_continue go to state 1302 - expression_return go to state 1303 - expression_yield_no_pipe go to state 1304 - expr_cast go to state 461 - expr_type_decl go to state 462 - expr_type_info go to state 463 - block_or_lambda go to state 464 - expr_full_block go to state 465 - expr_numeric_const go to state 466 - expr_named_call go to state 467 - expr_method_call go to state 468 - func_addr_expr go to state 469 - expr_field go to state 470 - expr_call go to state 471 - expr go to state 1305 - expr_mtag go to state 473 - basic_type_declaration go to state 474 - make_decl go to state 475 - make_struct_decl go to state 476 - make_tuple_call go to state 477 - make_dim_decl go to state 478 - make_table_decl go to state 479 - array_comprehension go to state 480 + string_builder go to state 456 + expr_reader go to state 457 + expression_if_one_liner go to state 1300 + expr_call_pipe go to state 458 + name_in_namespace go to state 459 + expr_new go to state 460 + expression_break go to state 1301 + expression_continue go to state 1302 + expression_return go to state 1303 + expression_yield go to state 1304 + expr_cast go to state 461 + expr_type_decl go to state 462 + expr_type_info go to state 463 + block_or_lambda go to state 464 + expr_full_block go to state 465 + expr_numeric_const go to state 466 + expr_named_call go to state 467 + expr_method_call go to state 468 + func_addr_expr go to state 469 + expr_field go to state 470 + expr_call go to state 471 + expr go to state 1305 + expr_mtag go to state 473 + basic_type_declaration go to state 474 + make_decl go to state 475 + make_struct_decl go to state 476 + make_tuple_call go to state 477 + make_dim_decl go to state 478 + make_table_decl go to state 479 + array_comprehension go to state 480 State 1246 @@ -39639,14 +39111,14 @@ State 1246 State 1247 - 269 tuple_expansion: tuple_expansion ',' "name" . + 268 tuple_expansion: tuple_expansion ',' "name" . - $default reduce using rule 269 (tuple_expansion) + $default reduce using rule 268 (tuple_expansion) State 1248 - 270 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' . type_declaration_no_options copy_or_move_or_clone expr "end of expression" + 269 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' . type_declaration_no_options copy_or_move_or_clone expr "end of expression" "type" shift, and go to state 216 "array" shift, and go to state 217 @@ -39703,206 +39175,206 @@ State 1248 State 1249 - 271 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref . copy_or_move_or_clone expr "end of expression" + 270 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref . copy_or_move_or_clone expr "end of expression" - "<-" shift, and go to state 578 - ":=" shift, and go to state 579 - '=' shift, and go to state 580 + "<-" shift, and go to state 577 + ":=" shift, and go to state 578 + '=' shift, and go to state 579 copy_or_move_or_clone go to state 1308 State 1250 - 463 optional_constant: "const" . + 462 optional_constant: "const" . - $default reduce using rule 463 (optional_constant) + $default reduce using rule 462 (optional_constant) State 1251 - 474 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant . $@26 function_declaration_header "end of expression" + 473 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant . $@26 function_declaration_header "end of expression" - $default reduce using rule 473 ($@26) + $default reduce using rule 472 ($@26) $@26 go to state 1309 State 1252 - 476 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override . optional_constant $@27 function_declaration_header expression_block + 475 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override . optional_constant $@27 function_declaration_header expression_block "const" shift, and go to state 1250 - $default reduce using rule 462 (optional_constant) + $default reduce using rule 461 (optional_constant) optional_constant go to state 1310 State 1253 - 469 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable . variable_declaration + 468 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable . variable_declaration - "$i" shift, and go to state 712 - "name" shift, and go to state 713 + "$i" shift, and go to state 711 + "name" shift, and go to state 712 variable_declaration go to state 1311 - variable_name_with_pos_list go to state 715 + variable_name_with_pos_list go to state 714 State 1254 - 718 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' . use_initializer make_struct_dim ')' + 717 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' . use_initializer make_struct_dim ')' "uninitialized" shift, and go to state 971 - $default reduce using rule 714 (use_initializer) + $default reduce using rule 713 (use_initializer) use_initializer go to state 1312 State 1255 - 721 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' . use_initializer make_struct_dim ')' + 720 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' . use_initializer make_struct_dim ')' "uninitialized" shift, and go to state 971 - $default reduce using rule 714 (use_initializer) + $default reduce using rule 713 (use_initializer) use_initializer go to state 1313 State 1256 - 288 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" . '>' expr ')' + 287 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" . '>' expr ')' '>' shift, and go to state 1314 State 1257 - 287 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' expr . ')' - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 286 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' expr . ')' + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ')' shift, and go to state 1315 State 1258 - 737 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 . '(' use_initializer make_struct_dim ')' + 736 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 . '(' use_initializer make_struct_dim ')' '(' shift, and go to state 1316 State 1259 - 740 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 . '(' use_initializer make_struct_dim ')' + 739 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 . '(' use_initializer make_struct_dim ')' '(' shift, and go to state 1317 State 1260 - 743 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 . '(' make_struct_dim ')' + 742 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 . '(' make_struct_dim ')' '(' shift, and go to state 1318 State 1261 - 747 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' . expr_list optional_comma ')' + 746 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' . expr_list optional_comma ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -39999,7 +39471,7 @@ State 1261 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 634 + expr go to state 633 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -40012,7 +39484,7 @@ State 1261 State 1262 - 757 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' . expr_map_tuple_list optional_comma ')' + 756 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' . expr_map_tuple_list optional_comma ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -40108,12 +39580,12 @@ State 1262 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 623 + expr go to state 622 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 make_struct_decl go to state 476 - make_map_tuple go to state 624 + make_map_tuple go to state 623 make_tuple_call go to state 477 make_dim_decl go to state 478 expr_map_tuple_list go to state 1320 @@ -40123,275 +39595,275 @@ State 1262 State 1263 - 756 make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma . ')' + 755 make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma . ')' ')' shift, and go to state 1321 State 1264 - 276 expr_cast: "cast" '<' $@5 type_declaration_no_options '>' $@6 expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 - - $default reduce using rule 276 (expr_cast) + 275 expr_cast: "cast" '<' $@5 type_declaration_no_options '>' $@6 expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 + + $default reduce using rule 275 (expr_cast) State 1265 - 279 expr_cast: "upcast" '<' $@7 type_declaration_no_options '>' $@8 expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 - - $default reduce using rule 279 (expr_cast) + 278 expr_cast: "upcast" '<' $@7 type_declaration_no_options '>' $@8 expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 + + $default reduce using rule 278 (expr_cast) State 1266 - 282 expr_cast: "reinterpret" '<' $@9 type_declaration_no_options '>' $@10 expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 - - $default reduce using rule 282 (expr_cast) + 281 expr_cast: "reinterpret" '<' $@9 type_declaration_no_options '>' $@10 expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 + + $default reduce using rule 281 (expr_cast) State 1267 - 751 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' . expr_list optional_comma ')' + 750 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' . expr_list optional_comma ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -40488,7 +39960,7 @@ State 1267 func_addr_expr go to state 469 expr_field go to state 470 expr_call go to state 471 - expr go to state 634 + expr go to state 633 expr_mtag go to state 473 basic_type_declaration go to state 474 make_decl go to state 475 @@ -40501,25 +39973,25 @@ State 1267 State 1268 - 727 make_struct_decl: "default" '<' $@79 type_declaration_no_options '>' $@80 use_initializer . + 726 make_struct_decl: "default" '<' $@79 type_declaration_no_options '>' $@80 use_initializer . - $default reduce using rule 727 (make_struct_decl) + $default reduce using rule 726 (make_struct_decl) State 1269 - 733 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' . use_initializer make_struct_dim ')' + 732 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' . use_initializer make_struct_dim ')' "uninitialized" shift, and go to state 971 - $default reduce using rule 714 (use_initializer) + $default reduce using rule 713 (use_initializer) use_initializer go to state 1323 State 1270 - 724 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 '(' . make_struct_dim ')' + 723 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 '(' . make_struct_dim ')' "$f" shift, and go to state 828 "name" shift, and go to state 1092 @@ -40530,236 +40002,236 @@ State 1270 State 1271 - 411 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' ')' . + 410 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' ')' . - $default reduce using rule 411 (expr) + $default reduce using rule 410 (expr) State 1272 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 412 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr . ')' - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 411 | "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr . ')' + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ')' shift, and go to state 1326 State 1273 - 448 expr_mtag: "$c" '(' expr ')' '(' expr_list ')' . + 447 expr_mtag: "$c" '(' expr ')' '(' expr_list ')' . - $default reduce using rule 448 (expr_mtag) + $default reduce using rule 447 (expr_mtag) State 1274 - 764 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple . array_comprehension_where "end of code block" + 763 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple . array_comprehension_where "end of code block" "end of expression" shift, and go to state 1327 - $default reduce using rule 758 (array_comprehension_where) + $default reduce using rule 757 (array_comprehension_where) array_comprehension_where go to state 1328 State 1275 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 762 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr . array_comprehension_where ']' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 761 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr . array_comprehension_where ']' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 "end of expression" shift, and go to state 1327 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 - - $default reduce using rule 758 (array_comprehension_where) + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 + + $default reduce using rule 757 (array_comprehension_where) array_comprehension_where go to state 1329 State 1276 - 763 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" . expr array_comprehension_where ']' + 762 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" . expr array_comprehension_where ']' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -40868,7 +40340,7 @@ State 1276 State 1277 - 343 func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options '>' $@14 . func_addr_name + 342 func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options '>' $@14 . func_addr_name "::" shift, and go to state 55 "$i" shift, and go to state 823 @@ -40880,16 +40352,16 @@ State 1277 State 1278 - 346 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type '>' . $@16 func_addr_name + 345 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type '>' . $@16 func_addr_name - $default reduce using rule 345 ($@16) + $default reduce using rule 344 ($@16) $@16 go to state 1332 State 1279 - 708 make_struct_fields: "$f" '(' expr ')' ":=" . expr + 707 make_struct_fields: "$f" '(' expr ')' ":=" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -40998,7 +40470,7 @@ State 1279 State 1280 - 707 make_struct_fields: "$f" '(' expr ')' copy_or_move . expr + 706 make_struct_fields: "$f" '(' expr ')' copy_or_move . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -41107,331 +40579,331 @@ State 1280 State 1281 - 335 expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' . ')' + 334 expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' . ')' ')' shift, and go to state 1335 State 1282 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 709 make_struct_fields: make_struct_fields ',' "$f" '(' expr . ')' copy_or_move expr - 710 | make_struct_fields ',' "$f" '(' expr . ')' ":=" expr - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 708 make_struct_fields: make_struct_fields ',' "$f" '(' expr . ')' copy_or_move expr + 709 | make_struct_fields ',' "$f" '(' expr . ')' ":=" expr + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ')' shift, and go to state 1336 State 1283 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 706 make_struct_fields: make_struct_fields ',' "name" ":=" expr . - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 705 make_struct_fields: make_struct_fields ',' "name" ":=" expr . + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 706 (make_struct_fields) + $default reduce using rule 705 (make_struct_fields) State 1284 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 705 make_struct_fields: make_struct_fields ',' "name" copy_or_move expr . - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 704 make_struct_fields: make_struct_fields ',' "name" copy_or_move expr . + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 705 (make_struct_fields) + $default reduce using rule 704 (make_struct_fields) State 1285 - 302 capture_list: capture_list ',' capture_entry . + 301 capture_list: capture_list ',' capture_entry . - $default reduce using rule 302 (capture_list) + $default reduce using rule 301 (capture_list) State 1286 - 304 optional_capture_list: '[' '[' capture_list ']' ']' . + 303 optional_capture_list: '[' '[' capture_list ']' ']' . - $default reduce using rule 304 (optional_capture_list) + $default reduce using rule 303 (optional_capture_list) State 1287 - 293 block_or_simple_block: "=>" "<-" . expr + 292 block_or_simple_block: "=>" "<-" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -41540,136 +41012,136 @@ State 1287 State 1288 - 292 block_or_simple_block: "=>" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 291 block_or_simple_block: "=>" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ".." error (nonassociative) - $default reduce using rule 292 (block_or_simple_block) + $default reduce using rule 291 (block_or_simple_block) State 1289 - 306 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block . + 305 expr_full_block_assumed_piped: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block . - $default reduce using rule 306 (expr_full_block_assumed_piped) + $default reduce using rule 305 (expr_full_block_assumed_piped) State 1290 - 417 expr: expr "is" "type" '<' $@19 type_declaration_no_options '>' . $@20 + 416 expr: expr "is" "type" '<' $@19 type_declaration_no_options '>' . $@20 - $default reduce using rule 416 ($@20) + $default reduce using rule 415 ($@20) $@20 go to state 1338 State 1291 - 423 expr: expr "as" "type" '<' $@21 type_declaration '>' . $@22 + 422 expr: expr "as" "type" '<' $@21 type_declaration '>' . $@22 - $default reduce using rule 422 ($@22) + $default reduce using rule 421 ($@22) $@22 go to state 1339 State 1292 - 428 expr: expr '?' "as" "type" '<' $@23 type_declaration . '>' $@24 - 684 type_declaration: type_declaration . '|' type_declaration_no_options - 685 | type_declaration . '|' '#' + 427 expr: expr '?' "as" "type" '<' $@23 type_declaration . '>' $@24 + 683 type_declaration: type_declaration . '|' type_declaration_no_options + 684 | type_declaration . '|' '#' '|' shift, and go to state 372 '>' shift, and go to state 1340 @@ -41677,30 +41149,30 @@ State 1292 State 1293 - 454 expr_mtag: expr '?' "as" "$f" '(' expr ')' . + 453 expr_mtag: expr '?' "as" "$f" '(' expr ')' . - $default reduce using rule 454 (expr_mtag) + $default reduce using rule 453 (expr_mtag) State 1294 - 452 expr_mtag: expr '.' "?." "$f" '(' expr ')' . + 451 expr_mtag: expr '.' "?." "$f" '(' expr ')' . - $default reduce using rule 452 (expr_mtag) + $default reduce using rule 451 (expr_mtag) State 1295 - 451 expr_mtag: expr '.' '.' "$f" '(' expr ')' . + 450 expr_mtag: expr '.' '.' "$f" '(' expr ')' . - $default reduce using rule 451 (expr_mtag) + $default reduce using rule 450 (expr_mtag) State 1296 - 630 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' . + 629 type_declaration_no_options_no_dim: '$' name_in_namespace '<' $@39 type_declaration_no_options_list '>' '(' optional_expr_list ')' . - $default reduce using rule 630 (type_declaration_no_options_no_dim) + $default reduce using rule 629 (type_declaration_no_options_no_dim) State 1297 @@ -41856,7 +41328,7 @@ State 1303 State 1304 - 65 expression_if_one_liner: expression_yield_no_pipe . + 65 expression_if_one_liner: expression_yield . $default reduce using rule 65 (expression_if_one_liner) @@ -41864,100 +41336,100 @@ State 1304 State 1305 63 expression_if_one_liner: expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 $default reduce using rule 63 (expression_if_one_liner) @@ -41971,18 +41443,18 @@ State 1306 State 1307 - 270 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options . copy_or_move_or_clone expr "end of expression" + 269 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options . copy_or_move_or_clone expr "end of expression" - "<-" shift, and go to state 578 - ":=" shift, and go to state 579 - '=' shift, and go to state 580 + "<-" shift, and go to state 577 + ":=" shift, and go to state 578 + '=' shift, and go to state 579 copy_or_move_or_clone go to state 1342 State 1308 - 271 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone . expr "end of expression" + 270 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone . expr "end of expression" "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -42091,7 +41563,7 @@ State 1308 State 1309 - 474 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 . function_declaration_header "end of expression" + 473 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 . function_declaration_header "end of expression" "operator" shift, and go to state 171 "bool" shift, and go to state 172 @@ -42129,23 +41601,23 @@ State 1309 State 1310 - 476 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant . $@27 function_declaration_header expression_block + 475 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant . $@27 function_declaration_header expression_block - $default reduce using rule 475 ($@27) + $default reduce using rule 474 ($@27) $@27 go to state 1345 State 1311 - 469 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration . + 468 structure_variable_declaration: optional_field_annotation optional_static_member_variable optional_override optional_public_or_private_member_variable variable_declaration . - $default reduce using rule 469 (structure_variable_declaration) + $default reduce using rule 468 (structure_variable_declaration) State 1312 - 718 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer . make_struct_dim ')' + 717 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer . make_struct_dim ')' "$f" shift, and go to state 828 "name" shift, and go to state 1092 @@ -42156,7 +41628,7 @@ State 1312 State 1313 - 721 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer . make_struct_dim ')' + 720 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer . make_struct_dim ')' "$f" shift, and go to state 828 "name" shift, and go to state 1092 @@ -42167,7 +41639,7 @@ State 1313 State 1314 - 288 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' . expr ')' + 287 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' . expr ')' "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -42276,36 +41748,36 @@ State 1314 State 1315 - 287 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' expr ')' . + 286 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" '>' expr ')' . - $default reduce using rule 287 (expr_type_info) + $default reduce using rule 286 (expr_type_info) State 1316 - 737 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' . use_initializer make_struct_dim ')' + 736 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' . use_initializer make_struct_dim ')' "uninitialized" shift, and go to state 971 - $default reduce using rule 714 (use_initializer) + $default reduce using rule 713 (use_initializer) use_initializer go to state 1349 State 1317 - 740 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' . use_initializer make_struct_dim ')' + 739 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' . use_initializer make_struct_dim ')' "uninitialized" shift, and go to state 971 - $default reduce using rule 714 (use_initializer) + $default reduce using rule 713 (use_initializer) use_initializer go to state 1350 State 1318 - 743 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' . make_struct_dim ')' + 742 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' . make_struct_dim ')' "$f" shift, and go to state 828 "name" shift, and go to state 1092 @@ -42316,50 +41788,50 @@ State 1318 State 1319 - 290 expr_list: expr_list . ',' expr - 747 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list . optional_comma ')' + 289 expr_list: expr_list . ',' expr + 746 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list . optional_comma ')' ',' shift, and go to state 820 - $default reduce using rule 760 (optional_comma) + $default reduce using rule 759 (optional_comma) optional_comma go to state 1352 State 1320 - 753 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple - 757 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list . optional_comma ')' + 752 expr_map_tuple_list: expr_map_tuple_list . ',' make_map_tuple + 756 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list . optional_comma ')' ',' shift, and go to state 816 - $default reduce using rule 760 (optional_comma) + $default reduce using rule 759 (optional_comma) optional_comma go to state 1353 State 1321 - 756 make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' . + 755 make_table_decl: "table" '<' type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' . - $default reduce using rule 756 (make_table_decl) + $default reduce using rule 755 (make_table_decl) State 1322 - 290 expr_list: expr_list . ',' expr - 751 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list . optional_comma ')' + 289 expr_list: expr_list . ',' expr + 750 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list . optional_comma ')' ',' shift, and go to state 820 - $default reduce using rule 760 (optional_comma) + $default reduce using rule 759 (optional_comma) optional_comma go to state 1354 State 1323 - 733 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer . make_struct_dim ')' + 732 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer . make_struct_dim ')' "$f" shift, and go to state 828 "name" shift, and go to state 1092 @@ -42370,21 +41842,21 @@ State 1323 State 1324 - 705 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr - 706 | make_struct_fields . ',' "name" ":=" expr - 709 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr - 710 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr - 712 make_struct_dim: make_struct_fields . + 704 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr + 705 | make_struct_fields . ',' "name" ":=" expr + 708 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr + 709 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr + 711 make_struct_dim: make_struct_fields . ',' shift, and go to state 1023 - $default reduce using rule 712 (make_struct_dim) + $default reduce using rule 711 (make_struct_dim) State 1325 - 713 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 724 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim . ')' + 712 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 723 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim . ')' "end of expression" shift, and go to state 1356 ')' shift, and go to state 1357 @@ -42392,146 +41864,146 @@ State 1325 State 1326 - 412 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' . + 411 expr: "generator" '<' type_declaration_no_options '>' optional_capture_list '(' expr ')' . - $default reduce using rule 412 (expr) + $default reduce using rule 411 (expr) State 1327 - 759 array_comprehension_where: "end of expression" . "where" expr + 758 array_comprehension_where: "end of expression" . "where" expr "where" shift, and go to state 1358 State 1328 - 764 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where . "end of code block" + 763 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where . "end of code block" "end of code block" shift, and go to state 1359 State 1329 - 762 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where . ']' + 761 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where . ']' ']' shift, and go to state 1360 State 1330 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 763 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr . array_comprehension_where ']' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 762 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr . array_comprehension_where ']' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 "end of expression" shift, and go to state 1327 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 - - $default reduce using rule 758 (array_comprehension_where) + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 + + $default reduce using rule 757 (array_comprehension_where) array_comprehension_where go to state 1361 State 1331 - 343 func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options '>' $@14 func_addr_name . + 342 func_addr_expr: '@' '@' '<' $@13 type_declaration_no_options '>' $@14 func_addr_name . - $default reduce using rule 343 (func_addr_expr) + $default reduce using rule 342 (func_addr_expr) State 1332 - 346 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type '>' $@16 . func_addr_name + 345 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type '>' $@16 . func_addr_name "::" shift, and go to state 55 "$i" shift, and go to state 823 @@ -42543,217 +42015,217 @@ State 1332 State 1333 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 708 make_struct_fields: "$f" '(' expr ')' ":=" expr . - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 707 make_struct_fields: "$f" '(' expr ')' ":=" expr . + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 708 (make_struct_fields) + $default reduce using rule 707 (make_struct_fields) State 1334 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 707 make_struct_fields: "$f" '(' expr ')' copy_or_move expr . - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 706 make_struct_fields: "$f" '(' expr ')' copy_or_move expr . + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 707 (make_struct_fields) + $default reduce using rule 706 (make_struct_fields) State 1335 - 335 expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' ')' . + 334 expr_named_call: name_in_namespace '(' expr_list ',' '[' make_struct_fields ']' ')' . - $default reduce using rule 335 (expr_named_call) + $default reduce using rule 334 (expr_named_call) State 1336 - 709 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' . copy_or_move expr - 710 | make_struct_fields ',' "$f" '(' expr ')' . ":=" expr + 708 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' . copy_or_move expr + 709 | make_struct_fields ',' "$f" '(' expr ')' . ":=" expr "<-" shift, and go to state 915 ":=" shift, and go to state 1363 @@ -42764,123 +42236,123 @@ State 1336 State 1337 - 293 block_or_simple_block: "=>" "<-" expr . - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 - - $default reduce using rule 293 (block_or_simple_block) + 292 block_or_simple_block: "=>" "<-" expr . + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 + + $default reduce using rule 292 (block_or_simple_block) State 1338 - 417 expr: expr "is" "type" '<' $@19 type_declaration_no_options '>' $@20 . + 416 expr: expr "is" "type" '<' $@19 type_declaration_no_options '>' $@20 . - $default reduce using rule 417 (expr) + $default reduce using rule 416 (expr) State 1339 - 423 expr: expr "as" "type" '<' $@21 type_declaration '>' $@22 . + 422 expr: expr "as" "type" '<' $@21 type_declaration '>' $@22 . - $default reduce using rule 423 (expr) + $default reduce using rule 422 (expr) State 1340 - 428 expr: expr '?' "as" "type" '<' $@23 type_declaration '>' . $@24 + 427 expr: expr '?' "as" "type" '<' $@23 type_declaration '>' . $@24 - $default reduce using rule 427 ($@24) + $default reduce using rule 426 ($@24) $@24 go to state 1365 @@ -42888,106 +42360,106 @@ State 1340 State 1341 58 expression_else: elif_or_static_elif '(' expr . ')' expression_block expression_else - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ')' shift, and go to state 1366 State 1342 - 270 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone . expr "end of expression" + 269 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone . expr "end of expression" "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -43096,114 +42568,114 @@ State 1342 State 1343 - 271 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr . "end of expression" - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 + 270 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr . "end of expression" + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 "end of expression" shift, and go to state 1368 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 State 1344 - 474 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header . "end of expression" + 473 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header . "end of expression" "end of expression" shift, and go to state 1369 State 1345 - 476 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 . function_declaration_header expression_block + 475 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 . function_declaration_header expression_block "operator" shift, and go to state 171 "bool" shift, and go to state 172 @@ -43241,8 +42713,8 @@ State 1345 State 1346 - 713 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 718 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim . ')' + 712 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 717 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim . ')' "end of expression" shift, and go to state 1356 ')' shift, and go to state 1371 @@ -43250,8 +42722,8 @@ State 1346 State 1347 - 713 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 721 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim . ')' + 712 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 720 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim . ')' "end of expression" shift, and go to state 1356 ')' shift, and go to state 1372 @@ -43259,107 +42731,107 @@ State 1347 State 1348 - 288 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr . ')' - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 287 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr . ')' + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 ')' shift, and go to state 1373 State 1349 - 737 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer . make_struct_dim ')' + 736 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer . make_struct_dim ')' "$f" shift, and go to state 828 "name" shift, and go to state 1092 @@ -43370,7 +42842,7 @@ State 1349 State 1350 - 740 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer . make_struct_dim ')' + 739 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer . make_struct_dim ')' "$f" shift, and go to state 828 "name" shift, and go to state 1092 @@ -43381,8 +42853,8 @@ State 1350 State 1351 - 713 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 743 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim . ')' + 712 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 742 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim . ')' "end of expression" shift, and go to state 1356 ')' shift, and go to state 1376 @@ -43390,29 +42862,29 @@ State 1351 State 1352 - 747 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma . ')' + 746 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma . ')' ')' shift, and go to state 1377 State 1353 - 757 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma . ')' + 756 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma . ')' ')' shift, and go to state 1378 State 1354 - 751 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma . ')' + 750 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma . ')' ')' shift, and go to state 1379 State 1355 - 713 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 733 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim . ')' + 712 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 732 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim . ')' "end of expression" shift, and go to state 1356 ')' shift, and go to state 1380 @@ -43420,7 +42892,7 @@ State 1355 State 1356 - 713 make_struct_dim: make_struct_dim "end of expression" . make_struct_fields + 712 make_struct_dim: make_struct_dim "end of expression" . make_struct_fields "$f" shift, and go to state 828 "name" shift, and go to state 1092 @@ -43430,14 +42902,14 @@ State 1356 State 1357 - 724 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim ')' . + 723 make_struct_decl: "variant" '<' $@77 type_declaration_no_options '>' $@78 '(' make_struct_dim ')' . - $default reduce using rule 724 (make_struct_decl) + $default reduce using rule 723 (make_struct_decl) State 1358 - 759 array_comprehension_where: "end of expression" "where" . expr + 758 array_comprehension_where: "end of expression" "where" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -43546,35 +43018,35 @@ State 1358 State 1359 - 764 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" . + 763 array_comprehension: "begin of code block" "for" variable_name_with_pos_list "in" expr_list "end of expression" make_map_tuple array_comprehension_where "end of code block" . - $default reduce using rule 764 (array_comprehension) + $default reduce using rule 763 (array_comprehension) State 1360 - 762 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' . + 761 array_comprehension: '[' "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' . - $default reduce using rule 762 (array_comprehension) + $default reduce using rule 761 (array_comprehension) State 1361 - 763 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where . ']' + 762 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where . ']' ']' shift, and go to state 1383 State 1362 - 346 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name . + 345 func_addr_expr: '@' '@' '<' $@15 optional_function_argument_list optional_function_type '>' $@16 func_addr_name . - $default reduce using rule 346 (func_addr_expr) + $default reduce using rule 345 (func_addr_expr) State 1363 - 710 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' ":=" . expr + 709 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' ":=" . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -43683,7 +43155,7 @@ State 1363 State 1364 - 709 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' copy_or_move . expr + 708 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' copy_or_move . expr "struct" shift, and go to state 408 "class" shift, and go to state 409 @@ -43792,9 +43264,9 @@ State 1364 State 1365 - 428 expr: expr '?' "as" "type" '<' $@23 type_declaration '>' $@24 . + 427 expr: expr '?' "as" "type" '<' $@23 type_declaration '>' $@24 . - $default reduce using rule 428 (expr) + $default reduce using rule 427 (expr) State 1366 @@ -43808,121 +43280,121 @@ State 1366 State 1367 - 270 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr . "end of expression" - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 + 269 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr . "end of expression" + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 "end of expression" shift, and go to state 1387 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 State 1368 - 271 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" . + 270 tuple_expansion_variable_declaration: '(' tuple_expansion ')' optional_ref copy_or_move_or_clone expr "end of expression" . - $default reduce using rule 271 (tuple_expansion_variable_declaration) + $default reduce using rule 270 (tuple_expansion_variable_declaration) State 1369 - 474 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" . + 473 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable "abstract" optional_constant $@26 function_declaration_header "end of expression" . - $default reduce using rule 474 (struct_variable_declaration_list) + $default reduce using rule 473 (struct_variable_declaration_list) State 1370 - 476 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header . expression_block + 475 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header . expression_block "begin of code block" shift, and go to state 323 @@ -43931,29 +43403,29 @@ State 1370 State 1371 - 718 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' . + 717 make_struct_decl: "struct" '<' $@73 type_declaration_no_options '>' $@74 '(' use_initializer make_struct_dim ')' . - $default reduce using rule 718 (make_struct_decl) + $default reduce using rule 717 (make_struct_decl) State 1372 - 721 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' . + 720 make_struct_decl: "class" '<' $@75 type_declaration_no_options '>' $@76 '(' use_initializer make_struct_dim ')' . - $default reduce using rule 721 (make_struct_decl) + $default reduce using rule 720 (make_struct_decl) State 1373 - 288 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' . + 287 expr_type_info: "typeinfo" '(' name_in_namespace '<' "name" "end of expression" "name" '>' expr ')' . - $default reduce using rule 288 (expr_type_info) + $default reduce using rule 287 (expr_type_info) State 1374 - 713 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 737 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim . ')' + 712 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 736 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim . ')' "end of expression" shift, and go to state 1356 ')' shift, and go to state 1389 @@ -43961,8 +43433,8 @@ State 1374 State 1375 - 713 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields - 740 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim . ')' + 712 make_struct_dim: make_struct_dim . "end of expression" make_struct_fields + 739 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim . ')' "end of expression" shift, and go to state 1356 ')' shift, and go to state 1390 @@ -43970,360 +43442,360 @@ State 1375 State 1376 - 743 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' . + 742 make_dim_decl: "array" "variant" '<' $@87 type_declaration_no_options '>' $@88 '(' make_struct_dim ')' . - $default reduce using rule 743 (make_dim_decl) + $default reduce using rule 742 (make_dim_decl) State 1377 - 747 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' . + 746 make_dim_decl: "array" '<' $@89 type_declaration_no_options '>' $@90 '(' expr_list optional_comma ')' . - $default reduce using rule 747 (make_dim_decl) + $default reduce using rule 746 (make_dim_decl) State 1378 - 757 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' . + 756 make_table_decl: "table" '<' type_declaration_no_options "end of expression" type_declaration_no_options '>' '(' expr_map_tuple_list optional_comma ')' . - $default reduce using rule 757 (make_table_decl) + $default reduce using rule 756 (make_table_decl) State 1379 - 751 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' . + 750 make_dim_decl: "fixed_array" '<' $@91 type_declaration_no_options '>' $@92 '(' expr_list optional_comma ')' . - $default reduce using rule 751 (make_dim_decl) + $default reduce using rule 750 (make_dim_decl) State 1380 - 733 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' . + 732 make_tuple_call: "tuple" '<' $@81 type_declaration_no_options '>' $@82 '(' use_initializer make_struct_dim ')' . - $default reduce using rule 733 (make_tuple_call) + $default reduce using rule 732 (make_tuple_call) State 1381 - 705 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr - 706 | make_struct_fields . ',' "name" ":=" expr - 709 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr - 710 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr - 713 make_struct_dim: make_struct_dim "end of expression" make_struct_fields . + 704 make_struct_fields: make_struct_fields . ',' "name" copy_or_move expr + 705 | make_struct_fields . ',' "name" ":=" expr + 708 | make_struct_fields . ',' "$f" '(' expr ')' copy_or_move expr + 709 | make_struct_fields . ',' "$f" '(' expr ')' ":=" expr + 712 make_struct_dim: make_struct_dim "end of expression" make_struct_fields . ',' shift, and go to state 1023 - $default reduce using rule 713 (make_struct_dim) + $default reduce using rule 712 (make_struct_dim) State 1382 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 759 array_comprehension_where: "end of expression" "where" expr . - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 - - $default reduce using rule 759 (array_comprehension_where) + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 758 array_comprehension_where: "end of expression" "where" expr . + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 + + $default reduce using rule 758 (array_comprehension_where) State 1383 - 763 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' . + 762 array_comprehension: '[' "iterator" "for" variable_name_with_pos_list "in" expr_list "end of expression" expr array_comprehension_where ']' . - $default reduce using rule 763 (array_comprehension) + $default reduce using rule 762 (array_comprehension) State 1384 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 710 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' ":=" expr . - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 - - $default reduce using rule 710 (make_struct_fields) + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 709 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' ":=" expr . + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 + + $default reduce using rule 709 (make_struct_fields) State 1385 - 336 expr_method_call: expr . "->" "name" '(' ')' - 337 | expr . "->" "name" '(' expr_list ')' - 347 expr_field: expr . '.' "name" - 348 | expr . '.' '.' "name" - 349 | expr . '.' "name" '(' ')' - 350 | expr . '.' "name" '(' expr_list ')' - 353 | expr . '.' $@17 error $@18 - 373 expr: expr . "<<" expr - 374 | expr . ">>" expr - 375 | expr . "<<<" expr - 376 | expr . ">>>" expr - 377 | expr . '+' expr - 378 | expr . '-' expr - 379 | expr . '*' expr - 380 | expr . '/' expr - 381 | expr . '%' expr - 382 | expr . '<' expr - 383 | expr . '>' expr - 384 | expr . "==" expr - 385 | expr . "!=" expr - 386 | expr . "<=" expr - 387 | expr . ">=" expr - 388 | expr . '&' expr - 389 | expr . '|' expr - 390 | expr . '^' expr - 391 | expr . "&&" expr - 392 | expr . "||" expr - 393 | expr . "^^" expr - 394 | expr . ".." expr - 397 | expr . "++" - 398 | expr . "--" - 400 | expr . '[' expr ']' - 401 | expr . '.' '[' expr ']' - 402 | expr . "?[" expr ']' - 403 | expr . '.' "?[" expr ']' - 404 | expr . "?." "name" - 405 | expr . '.' "?." "name" - 413 | expr . "??" expr - 414 | expr . '?' expr ':' expr - 417 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 - 418 | expr . "is" basic_type_declaration - 419 | expr . "is" "name" - 420 | expr . "as" "name" - 423 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 - 424 | expr . "as" basic_type_declaration - 425 | expr . '?' "as" "name" - 428 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 - 429 | expr . '?' "as" basic_type_declaration - 437 | expr . "<|" expr - 438 | expr . "|>" expr - 439 | expr . "|>" basic_type_declaration - 449 expr_mtag: expr . '.' "$f" '(' expr ')' - 450 | expr . "?." "$f" '(' expr ')' - 451 | expr . '.' '.' "$f" '(' expr ')' - 452 | expr . '.' "?." "$f" '(' expr ')' - 453 | expr . "as" "$f" '(' expr ')' - 454 | expr . '?' "as" "$f" '(' expr ')' - 455 | expr . "is" "$f" '(' expr ')' - 709 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' copy_or_move expr . - - "is" shift, and go to state 643 - "as" shift, and go to state 644 - "<<" shift, and go to state 645 - ">>" shift, and go to state 646 - "++" shift, and go to state 647 - "--" shift, and go to state 648 - "<=" shift, and go to state 649 - ">=" shift, and go to state 650 - "==" shift, and go to state 651 - "!=" shift, and go to state 652 - "->" shift, and go to state 653 - "??" shift, and go to state 654 - "?." shift, and go to state 655 - "?[" shift, and go to state 656 - "<|" shift, and go to state 657 - "|>" shift, and go to state 658 - "<<<" shift, and go to state 659 - ">>>" shift, and go to state 660 - "&&" shift, and go to state 661 - "||" shift, and go to state 662 - "^^" shift, and go to state 663 - ".." shift, and go to state 664 - '?' shift, and go to state 665 - '|' shift, and go to state 666 - '^' shift, and go to state 667 - '&' shift, and go to state 668 - '<' shift, and go to state 669 - '>' shift, and go to state 670 - '-' shift, and go to state 671 - '+' shift, and go to state 672 - '*' shift, and go to state 673 - '/' shift, and go to state 674 - '%' shift, and go to state 675 - '.' shift, and go to state 676 - '[' shift, and go to state 677 + 335 expr_method_call: expr . "->" "name" '(' ')' + 336 | expr . "->" "name" '(' expr_list ')' + 346 expr_field: expr . '.' "name" + 347 | expr . '.' '.' "name" + 348 | expr . '.' "name" '(' ')' + 349 | expr . '.' "name" '(' expr_list ')' + 352 | expr . '.' $@17 error $@18 + 372 expr: expr . "<<" expr + 373 | expr . ">>" expr + 374 | expr . "<<<" expr + 375 | expr . ">>>" expr + 376 | expr . '+' expr + 377 | expr . '-' expr + 378 | expr . '*' expr + 379 | expr . '/' expr + 380 | expr . '%' expr + 381 | expr . '<' expr + 382 | expr . '>' expr + 383 | expr . "==" expr + 384 | expr . "!=" expr + 385 | expr . "<=" expr + 386 | expr . ">=" expr + 387 | expr . '&' expr + 388 | expr . '|' expr + 389 | expr . '^' expr + 390 | expr . "&&" expr + 391 | expr . "||" expr + 392 | expr . "^^" expr + 393 | expr . ".." expr + 396 | expr . "++" + 397 | expr . "--" + 399 | expr . '[' expr ']' + 400 | expr . '.' '[' expr ']' + 401 | expr . "?[" expr ']' + 402 | expr . '.' "?[" expr ']' + 403 | expr . "?." "name" + 404 | expr . '.' "?." "name" + 412 | expr . "??" expr + 413 | expr . '?' expr ':' expr + 416 | expr . "is" "type" '<' $@19 type_declaration_no_options '>' $@20 + 417 | expr . "is" basic_type_declaration + 418 | expr . "is" "name" + 419 | expr . "as" "name" + 422 | expr . "as" "type" '<' $@21 type_declaration '>' $@22 + 423 | expr . "as" basic_type_declaration + 424 | expr . '?' "as" "name" + 427 | expr . '?' "as" "type" '<' $@23 type_declaration '>' $@24 + 428 | expr . '?' "as" basic_type_declaration + 436 | expr . "<|" expr + 437 | expr . "|>" expr + 438 | expr . "|>" basic_type_declaration + 448 expr_mtag: expr . '.' "$f" '(' expr ')' + 449 | expr . "?." "$f" '(' expr ')' + 450 | expr . '.' '.' "$f" '(' expr ')' + 451 | expr . '.' "?." "$f" '(' expr ')' + 452 | expr . "as" "$f" '(' expr ')' + 453 | expr . '?' "as" "$f" '(' expr ')' + 454 | expr . "is" "$f" '(' expr ')' + 708 make_struct_fields: make_struct_fields ',' "$f" '(' expr ')' copy_or_move expr . + + "is" shift, and go to state 642 + "as" shift, and go to state 643 + "<<" shift, and go to state 644 + ">>" shift, and go to state 645 + "++" shift, and go to state 646 + "--" shift, and go to state 647 + "<=" shift, and go to state 648 + ">=" shift, and go to state 649 + "==" shift, and go to state 650 + "!=" shift, and go to state 651 + "->" shift, and go to state 652 + "??" shift, and go to state 653 + "?." shift, and go to state 654 + "?[" shift, and go to state 655 + "<|" shift, and go to state 656 + "|>" shift, and go to state 657 + "<<<" shift, and go to state 658 + ">>>" shift, and go to state 659 + "&&" shift, and go to state 660 + "||" shift, and go to state 661 + "^^" shift, and go to state 662 + ".." shift, and go to state 663 + '?' shift, and go to state 664 + '|' shift, and go to state 665 + '^' shift, and go to state 666 + '&' shift, and go to state 667 + '<' shift, and go to state 668 + '>' shift, and go to state 669 + '-' shift, and go to state 670 + '+' shift, and go to state 671 + '*' shift, and go to state 672 + '/' shift, and go to state 673 + '%' shift, and go to state 674 + '.' shift, and go to state 675 + '[' shift, and go to state 676 - $default reduce using rule 709 (make_struct_fields) + $default reduce using rule 708 (make_struct_fields) State 1386 @@ -44342,30 +43814,30 @@ State 1386 State 1387 - 270 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" . + 269 tuple_expansion_variable_declaration: '(' tuple_expansion ')' ':' type_declaration_no_options copy_or_move_or_clone expr "end of expression" . - $default reduce using rule 270 (tuple_expansion_variable_declaration) + $default reduce using rule 269 (tuple_expansion_variable_declaration) State 1388 - 476 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block . + 475 struct_variable_declaration_list: struct_variable_declaration_list optional_annotation_list "def" optional_public_or_private_member_variable optional_static_member_variable optional_override optional_constant $@27 function_declaration_header expression_block . - $default reduce using rule 476 (struct_variable_declaration_list) + $default reduce using rule 475 (struct_variable_declaration_list) State 1389 - 737 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' . + 736 make_dim_decl: "array" "struct" '<' $@83 type_declaration_no_options '>' $@84 '(' use_initializer make_struct_dim ')' . - $default reduce using rule 737 (make_dim_decl) + $default reduce using rule 736 (make_dim_decl) State 1390 - 740 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' . + 739 make_dim_decl: "array" "tuple" '<' $@85 type_declaration_no_options '>' $@86 '(' use_initializer make_struct_dim ')' . - $default reduce using rule 740 (make_dim_decl) + $default reduce using rule 739 (make_dim_decl) State 1391 diff --git a/src/parser/ds2_parser.ypp b/src/parser/ds2_parser.ypp index c30c82928..aeaa2cc01 100644 --- a/src/parser/ds2_parser.ypp +++ b/src/parser/ds2_parser.ypp @@ -446,7 +446,6 @@ %type expression_delete %type expression_return %type expression_yield -%type expression_yield_no_pipe %type expression_else %type expression_if_then_else %type expression_if_one_liner @@ -801,7 +800,7 @@ expression_else_one_liner expression_if_one_liner : expr[result] { $$ = $result; } | expression_return[result] { $$ = $result; } - | expression_yield_no_pipe[result] { $$ = $result; } + | expression_yield[result] { $$ = $result; } | expression_break[result] { $$ = $result; } | expression_continue[result] { $$ = $result; } ; @@ -1215,12 +1214,12 @@ expression_any | expression_while_loop[subexpr] { $$ = $subexpr; } | expression_unsafe[subexpr] { $$ = $subexpr; } | expression_with[subexpr] { $$ = $subexpr; } - | expression_with_alias[subexpr] { $$ = $subexpr; } + | expression_with_alias[subexpr] ';' { $$ = $subexpr; } | expression_for_loop[subexpr] { $$ = $subexpr; } | expression_break[subexpr] ';' { $$ = $subexpr; } | expression_continue[subexpr] ';' { $$ = $subexpr; } | expression_return[subexpr] ';' { $$ = $subexpr; } - | expression_yield[subexpr] { $$ = $subexpr; } + | expression_yield[subexpr] ';' { $$ = $subexpr; } | expression_if_then_else[subexpr] { $$ = $subexpr; } | expression_try_catch[subexpr] { $$ = $subexpr; } | expression_label[subexpr] ';' { $$ = $subexpr; } @@ -1340,7 +1339,7 @@ expression_return } ; -expression_yield_no_pipe +expression_yield : DAS_YIELD[loc] expr[subexpr] { $$ = new ExprYield(tokAt(scanner,@loc),ExpressionPtr($subexpr)); } @@ -1351,12 +1350,6 @@ expression_yield_no_pipe } ; -expression_yield - : expression_yield_no_pipe[result] ';' { - $$ = $result; - } - ; - expression_try_catch : DAS_TRY[loc] expression_block[tryBlock] DAS_CATCH expression_block[catchBlock] { $$ = new ExprTryCatch(tokAt(scanner,@loc),ExpressionPtr($tryBlock),ExpressionPtr($catchBlock)); From e183900c52752b520b7c4ed3578d98cfd0422385 Mon Sep 17 00:00:00 2001 From: Boris Batkin Date: Tue, 29 Oct 2024 17:15:08 -0700 Subject: [PATCH 5/5] upsie --- src/parser/ds2_parser.output | 115 +++++++++++++++++++++++++++++++++++ 1 file changed, 115 insertions(+) diff --git a/src/parser/ds2_parser.output b/src/parser/ds2_parser.output index 9649efcd4..6845690a9 100644 --- a/src/parser/ds2_parser.output +++ b/src/parser/ds2_parser.output @@ -2608,6 +2608,21 @@ State 56 "::" [reduce using rule 239 (name_in_namespace)] $default reduce using rule 239 (name_in_namespace) + shift/reduce conflict on token "::": + 239 name_in_namespace: "name" . + 240 name_in_namespace: "name" . "::" "name" + First example: "typeinfo" "name" . "::" "name" expr ')' + Shift derivation + expr_type_info + `-> 285: "typeinfo" name_in_namespace expr ')' + `-> 240: "name" . "::" "name" + Second example: "name" . "::" "name" ')' + Reduce derivation + expr_type_info + `-> 285: name_in_namespace "::" "name" expr ')' + `-> 239: "name" . `-> 359: %empty + + State 57 @@ -8185,6 +8200,32 @@ State 464 optional_annotation_list go to state 637 + shift/reduce conflict on token '[': + 112 optional_annotation_list: %empty . + 113 optional_annotation_list: . '[' annotation_list ']' + First example: program kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation "$i" '(' block_or_lambda . '[' annotation_list ']' optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block ')' ':' type_declaration_no_options "end of expression" $end + Shift derivation + $accept + `-> 0: program $end + `-> 5: program global_let + `-> 523: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration + `-> 510: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" + `-> 506: "$i" '(' expr_full_block ')' + `-> 304: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block + `-> 113: . '[' annotation_list ']' + Second example: program kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation "$i" '(' block_or_lambda . '[' '[' capture_list ']' ']' optional_function_argument_list optional_function_type block_or_simple_block ')' ':' type_declaration_no_options "end of expression" $end + Reduce derivation + $accept + `-> 0: program $end + `-> 5: program global_let + `-> 523: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration + `-> 510: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" + `-> 506: "$i" '(' expr ')' + `-> 435: expr_full_block + `-> 304: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type block_or_simple_block + `-> 112: %empty . `-> 303: '[' '[' capture_list ']' ']' + + State 465 @@ -8243,6 +8284,24 @@ State 471 block_or_lambda go to state 640 expr_full_block_assumed_piped go to state 641 + shift/reduce conflict on token "begin of code block": + 406 expr: expr_call . + 306 expr_full_block_assumed_piped: . "begin of code block" expressions "end of code block" + First example: expr_call . "begin of code block" "end of code block" expression_block + Shift derivation + expression_while_loop + `-> 72: expr expression_block + `-> 439: expr_call_pipe + `-> 213: expr_call expr_full_block_assumed_piped + `-> 306: . "begin of code block" expressions "end of code block" + `-> 306: %empty + Second example: "begin of code block" "end of code block" "end of code block" + Reduce derivation + expression_while_loop + `-> 72: "begin of code block" expressions expression_block + `-> 211: %empty `-> 211: "end of code block" "end of code block" + + State 472 @@ -13591,6 +13650,35 @@ State 640 optional_annotation_list go to state 839 + shift/reduce conflict on token '[': + 112 optional_annotation_list: %empty . + 113 optional_annotation_list: . '[' annotation_list ']' + First example: program kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation "$i" '(' block_or_lambda . '[' annotation_list ']' optional_capture_list optional_function_argument_list optional_function_type expression_block expr_full_block_assumed_piped ')' ':' type_declaration_no_options "end of expression" $end + Shift derivation + $accept + `-> 0: program $end + `-> 5: program global_let + `-> 523: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration + `-> 510: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" + `-> 506: "$i" '(' expr ')' + `-> 439: expr_call_pipe + `-> 213: expr_full_block_assumed_piped expr_full_block_assumed_piped + `-> 305: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block + `-> 113: . '[' annotation_list ']' + Second example: program kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation "$i" '(' expr_call block_or_lambda . '[' '[' capture_list ']' ']' optional_function_argument_list optional_function_type expression_block ')' ':' type_declaration_no_options "end of expression" $end + Reduce derivation + $accept + `-> 0: program $end + `-> 5: program global_let + `-> 523: kwd_let optional_shared optional_public_or_private_variable $@29 optional_field_annotation let_variable_declaration + `-> 510: let_variable_name_with_pos_list ':' type_declaration_no_options "end of expression" + `-> 506: "$i" '(' expr ')' + `-> 439: expr_call_pipe + `-> 213: expr_call expr_full_block_assumed_piped + `-> 305: block_or_lambda optional_annotation_list optional_capture_list optional_function_argument_list optional_function_type expression_block + `-> 112: %empty . `-> 303: '[' '[' capture_list ']' ']' + + State 641 @@ -23141,6 +23229,33 @@ State 813 STRING_CHARACTER_ESC [reduce using rule 29 (string_builder_body)] $default reduce using rule 29 (string_builder_body) + shift/reduce conflict on token STRING_CHARACTER: + 29 string_builder_body: string_builder_body character_sequence . + 25 character_sequence: character_sequence . STRING_CHARACTER + Example: string_builder_body character_sequence . STRING_CHARACTER + Shift derivation + string_builder_body + `-> 29: string_builder_body character_sequence + `-> 25: character_sequence . STRING_CHARACTER + Reduce derivation + string_builder_body + `-> 29: string_builder_body character_sequence + `-> 29: string_builder_body character_sequence . `-> 23: STRING_CHARACTER + + shift/reduce conflict on token STRING_CHARACTER_ESC: + 29 string_builder_body: string_builder_body character_sequence . + 26 character_sequence: character_sequence . STRING_CHARACTER_ESC + Example: string_builder_body character_sequence . STRING_CHARACTER_ESC + Shift derivation + string_builder_body + `-> 29: string_builder_body character_sequence + `-> 26: character_sequence . STRING_CHARACTER_ESC + Reduce derivation + string_builder_body + `-> 29: string_builder_body character_sequence + `-> 29: string_builder_body character_sequence . `-> 24: STRING_CHARACTER_ESC + + State 814